[PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc

Timothy Pearson posted 4 patches 1 month ago
There is a newer version of this series
[PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
Posted by Timothy Pearson 1 month ago
From: Shawn Anastasio <sanastasio@raptorengineering.com>

The Sony Cronos Platform Controller is a multi-purpose platform controller
that provides both a watchdog timer and an LED controller for the Sony
Interactive Entertainment Cronos x86 server platform. As both functions
are provided by the same CPLD, a multi-function device is exposed as the
parent of both functions.

Add a DT binding for this device.

Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com>
---
 .../bindings/mfd/sony,cronos-smc.yaml         | 128 ++++++++++++++++++
 1 file changed, 128 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/mfd/sony,cronos-smc.yaml

diff --git a/Documentation/devicetree/bindings/mfd/sony,cronos-smc.yaml b/Documentation/devicetree/bindings/mfd/sony,cronos-smc.yaml
new file mode 100644
index 000000000000..34ccd27e2996
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/sony,cronos-smc.yaml
@@ -0,0 +1,128 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+# Copyright 2025-2026 Raptor Engineering, LLC
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mfd/sony,cronos-smc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Sony Cronos Platform Controller CPLD multi-function device
+
+maintainers:
+  - Georgy Yakovlev <Georgy.Yakovlev@sony.com>
+
+description:
+  The Sony Cronos Platform Controller CPLD is a multi-purpose platform
+  controller that provides both a watchdog timer and an LED controller for the
+  Sony Interactive Entertainment Cronos x86 server platform. As both functions
+  are provided by the same CPLD, a multi-function device is exposed as the
+  parent of both functions.
+
+properties:
+  compatible:
+    const: sony,cronos-smc
+
+  reg:
+    maxItems: 1
+
+  leds:
+    type: object
+    $ref: /schemas/leds/common.yaml#
+    additionalProperties: false
+    description: |
+      The Cronos LED controller is a subfunction of the Cronos platform
+      controller, which is a multi-function device.
+
+      Each led is represented as a child node of sony,cronos-led. Fifteen RGB
+      LEDs are supported by the platform.
+
+    properties:
+      compatible:
+        const: sony,cronos-led
+
+      reg:
+        maxItems: 1
+
+      "#address-cells":
+        const: 1
+
+      "#size-cells":
+        const: 0
+
+    patternProperties:
+      "^multi-led@[0-9a-f]$":
+        type: object
+        $ref: /schemas/leds/leds-class-multicolor.yaml#
+        unevaluatedProperties: false
+
+        properties:
+          reg:
+            description:
+              LED channel number (0..14)
+            minimum: 0
+            maximum: 14
+
+        required:
+          - reg
+
+    required:
+      - compatible
+      - "#address-cells"
+      - "#size-cells"
+
+  watchdog:
+    type: object
+
+    $ref: /schemas/watchdog/watchdog.yaml
+
+    properties:
+      compatible:
+        const: sony,cronos-watchdog
+
+      timeout-sec: true
+
+    required:
+      - compatible
+
+    additionalProperties: false
+
+required:
+  - compatible
+  - reg
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/leds/common.h>
+    i2c {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        smc@3f {
+            compatible = "sony,cronos-smc";
+            reg = <0x3f>;
+
+            timeout-sec = <20>;
+
+            watchdog {
+                compatible = "sony,cronos-watchdog";
+            };
+
+            leds {
+                compatible = "sony,cronos-led";
+                #address-cells = <1>;
+                #size-cells = <0>;
+
+                multi-led@0 {
+                    /*
+                     * No subnodes are needed, this controller only supports RGB
+                     * LEDs.
+                     */
+                    reg = <0>;
+                    color = <LED_COLOR_ID_MULTI>;
+                    function = LED_FUNCTION_STATUS;
+                };
+            };
+        };
+    };
+
-- 
2.39.5
Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
Posted by Krzysztof Kozlowski 1 month ago
On Tue, Jan 06, 2026 at 06:21:33PM -0600, Timothy Pearson wrote:
> From: Shawn Anastasio <sanastasio@raptorengineering.com>
> 
> The Sony Cronos Platform Controller is a multi-purpose platform controller
> that provides both a watchdog timer and an LED controller for the Sony
> Interactive Entertainment Cronos x86 server platform. As both functions
> are provided by the same CPLD, a multi-function device is exposed as the
> parent of both functions.
> 
> Add a DT binding for this device.
> 
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com>
> ---
>  .../bindings/mfd/sony,cronos-smc.yaml         | 128 ++++++++++++++++++

How this can be a v6 with no changelog at all and still not tested?

What happened with this patchset? Where is it explained?

Best regards,
Krzysztof
Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
Posted by Timothy Pearson 1 month ago

----- Original Message -----
> From: "Krzysztof Kozlowski" <krzk@kernel.org>
> To: "Timothy Pearson" <tpearson@raptorengineering.com>
> Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel" <linux-kernel@vger.kernel.org>, "Rob Herring"
> <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
> "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>, "Shawn Anastasio"
> <sanastasio@raptorengineering.com>
> Sent: Wednesday, January 7, 2026 1:25:10 AM
> Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc

> On Tue, Jan 06, 2026 at 06:21:33PM -0600, Timothy Pearson wrote:
>> From: Shawn Anastasio <sanastasio@raptorengineering.com>
>> 
>> The Sony Cronos Platform Controller is a multi-purpose platform controller
>> that provides both a watchdog timer and an LED controller for the Sony
>> Interactive Entertainment Cronos x86 server platform. As both functions
>> are provided by the same CPLD, a multi-function device is exposed as the
>> parent of both functions.
>> 
>> Add a DT binding for this device.
>> 
>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>> Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com>
>> ---
>>  .../bindings/mfd/sony,cronos-smc.yaml         | 128 ++++++++++++++++++
> 
> How this can be a v6 with no changelog at all and still not tested?
> 
> What happened with this patchset? Where is it explained?

Changes have only been to fix issues identified in review and any posted autotest failures.

Please note that the tooling to check the DT bindings does NOT appear work properly, we've wasted a lot of time and effort attempting to get it running only to find that it's spitting out internal Python errors even for other drivers that are *already* in the kernel source tree.  This obviously creates a situation where it's difficult to pre-check the patch set for compliance; if you want to see this first hand, spin up a Debian Sid VM (which has a very recent version of the DT tooling from late 2025) and try to check any of the in-tree MFD drivers using the documented methods.

If this driver is simply something you don't want to see in the kernel that would be useful information for us to know, and would avoid having to go through another patch series.  That information would allow us to simply push this downstream to OpenBMC as a kernel patch set for this particular platform.
Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
Posted by Krzysztof Kozlowski 1 month ago
On 07/01/2026 18:09, Timothy Pearson wrote:
> 
> 
> ----- Original Message -----
>> From: "Krzysztof Kozlowski" <krzk@kernel.org>
>> To: "Timothy Pearson" <tpearson@raptorengineering.com>
>> Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel" <linux-kernel@vger.kernel.org>, "Rob Herring"
>> <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
>> "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>, "Shawn Anastasio"
>> <sanastasio@raptorengineering.com>
>> Sent: Wednesday, January 7, 2026 1:25:10 AM
>> Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
> 
>> On Tue, Jan 06, 2026 at 06:21:33PM -0600, Timothy Pearson wrote:
>>> From: Shawn Anastasio <sanastasio@raptorengineering.com>
>>>
>>> The Sony Cronos Platform Controller is a multi-purpose platform controller
>>> that provides both a watchdog timer and an LED controller for the Sony
>>> Interactive Entertainment Cronos x86 server platform. As both functions
>>> are provided by the same CPLD, a multi-function device is exposed as the
>>> parent of both functions.
>>>
>>> Add a DT binding for this device.
>>>
>>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>>> Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com>
>>> ---
>>>  .../bindings/mfd/sony,cronos-smc.yaml         | 128 ++++++++++++++++++
>>
>> How this can be a v6 with no changelog at all and still not tested?
>>
>> What happened with this patchset? Where is it explained?
> 
> Changes have only been to fix issues identified in review and any posted autotest failures.

And where is this explained? Please always provide detailed changelog in
the cover letter or individual patch.

> 
> Please note that the tooling to check the DT bindings does NOT appear work properly, we've wasted a lot of time and effort attempting to get it running only to find that it's spitting out internal Python errors even for other drivers that are *already* in the kernel source tree.  This obviously creates a situation where it's difficult to pre-check the patch set for compliance; if you want to see this first hand, spin up a Debian Sid VM (which has a very recent version of the DT tooling from late 2025) and try to check any of the in-tree MFD drivers using the documented methods.

I am using DT schema on multiple distros, including Debian but not Sid
but Trixie
(https://krzk.eu/#/builders/91/builds/116/steps/13/logs/stdio). Works
without problem...

On regular Debian based distro this is just few commands - pix install
and them make dt_binding_check - so I am surprised you spent a lot of
time on setting this up.

What is the problem exactly?

Please wrap your replies to match mailing list style.

Best regards,
Krzysztof
Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
Posted by Timothy Pearson 1 month ago

----- Original Message -----
> From: "Krzysztof Kozlowski" <krzk@kernel.org>
> To: "Timothy Pearson" <tpearson@raptorengineering.com>
> Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel" <linux-kernel@vger.kernel.org>, "Rob Herring"
> <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
> "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>, "Shawn Anastasio"
> <sanastasio@raptorengineering.com>
> Sent: Wednesday, January 7, 2026 11:18:09 AM
> Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc

> On 07/01/2026 18:09, Timothy Pearson wrote:
>> 
>> 
>> ----- Original Message -----
>>> From: "Krzysztof Kozlowski" <krzk@kernel.org>
>>> To: "Timothy Pearson" <tpearson@raptorengineering.com>
>>> Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel"
>>> <linux-kernel@vger.kernel.org>, "Rob Herring"
>>> <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof
>>> Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
>>> "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>,
>>> "Shawn Anastasio"
>>> <sanastasio@raptorengineering.com>
>>> Sent: Wednesday, January 7, 2026 1:25:10 AM
>>> Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
>> 
>>> On Tue, Jan 06, 2026 at 06:21:33PM -0600, Timothy Pearson wrote:
>>>> From: Shawn Anastasio <sanastasio@raptorengineering.com>
>>>>
>>>> The Sony Cronos Platform Controller is a multi-purpose platform controller
>>>> that provides both a watchdog timer and an LED controller for the Sony
>>>> Interactive Entertainment Cronos x86 server platform. As both functions
>>>> are provided by the same CPLD, a multi-function device is exposed as the
>>>> parent of both functions.
>>>>
>>>> Add a DT binding for this device.
>>>>
>>>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>>>> Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com>
>>>> ---
>>>>  .../bindings/mfd/sony,cronos-smc.yaml         | 128 ++++++++++++++++++
>>>
>>> How this can be a v6 with no changelog at all and still not tested?
>>>
>>> What happened with this patchset? Where is it explained?
>> 
>> Changes have only been to fix issues identified in review and any posted
>> autotest failures.
> 
> And where is this explained? Please always provide detailed changelog in
> the cover letter or individual patch.
> 
>> 
>> Please note that the tooling to check the DT bindings does NOT appear work
>> properly, we've wasted a lot of time and effort attempting to get it running
>> only to find that it's spitting out internal Python errors even for other
>> drivers that are *already* in the kernel source tree.  This obviously creates a
>> situation where it's difficult to pre-check the patch set for compliance; if
>> you want to see this first hand, spin up a Debian Sid VM (which has a very
>> recent version of the DT tooling from late 2025) and try to check any of the
>> in-tree MFD drivers using the documented methods.
> 
> I am using DT schema on multiple distros, including Debian but not Sid
> but Trixie
> (https://krzk.eu/#/builders/91/builds/116/steps/13/logs/stdio). Works
> without problem...

Good to know.  There is next to no documentation on the required software versions to make this work, which complicates

> On regular Debian based distro this is just few commands - pix install
> and them make dt_binding_check - so I am surprised you spent a lot of
> time on setting this up.
> 
> What is the problem exactly?

Good to know.  There is next to no documentation on the required software
versions to make this work, which complicates setup.  Bookworm's DT package was
too old when it was tried pre-Trixie release, and at the time Sid didn't work
either for some other reason.  The assumption was that the kernel needed a very
recent version of the DT tooling, so Sid was tried again this year.  Will try
Trixie before the next patch update.

Here is example output against an in-tree driver, using an up to date Sid system
(word wrap not applied so as to make the errors easier to read):

dt_binding_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/mfd/silergy,sy7636a.yaml

  CHKDT   ./Documentation/devicetree/bindings
Traceback (most recent call last):
  File "/usr/bin/dt-doc-validate", line 8, in <module>
    sys.exit(main())
             ~~~~^^
  File "/usr/lib/python3/dist-packages/dtschema/doc_validate.py", line 66, in main
    ret |= check_doc(f)
           ~~~~~~~~~^^^
  File "/usr/lib/python3/dist-packages/dtschema/doc_validate.py", line 29, in check_doc
    for error in sorted(dtsch.iter_errors(), key=lambda e: e.linecol):
                 ~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/dtschema/schema.py", line 167, in iter_errors
    self.validator = self.DtValidator(registry.contents(meta_schema_id), registry=registry)
                                      ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/referencing/_core.py", line 488, in contents
    return self[uri].contents
           ~~~~^^^^^
  File "/usr/lib/python3/dist-packages/referencing/_core.py", line 338, in __getitem__
    raise exceptions.NoSuchResource(ref=uri) from None
referencing.exceptions.NoSuchResource: 'http://devicetree.org/meta-schemas/core.yaml'
  LINT    ./Documentation/devicetree/bindings
  DTC [C] Documentation/devicetree/bindings/mfd/silergy,sy7636a.example.dtb
/home/test/linux/Documentation/devicetree/bindings/mfd/silergy,sy7636a.example.dtb: pmic@62 (silergy,sy7636a): #thermal-sensor-cells: 0 was expected
        from schema $id: http://devicetree.org/schemas/mfd/silergy,sy7636a.yaml
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/referencing/_core.py", line 428, in get_or_retrieve
    resource = registry._retrieve(uri)
  File "/usr/lib/python3/dist-packages/dtschema/validator.py", line 426, in retrieve
    return DRAFT201909.create_resource(self.schemas[uri])
                                       ~~~~~~~~~~~~^^^^^
KeyError: 'http://devicetree.org/schemas/types.yaml'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/referencing/_core.py", line 682, in lookup
    retrieved = self._registry.get_or_retrieve(uri)
  File "/usr/lib/python3/dist-packages/referencing/_core.py", line 435, in get_or_retrieve
    raise exceptions.Unretrievable(ref=uri) from error
referencing.exceptions.Unretrievable: 'http://devicetree.org/schemas/types.yaml'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/jsonschema/validators.py", line 463, in _validate_reference
    resolved = self._resolver.lookup(ref)
  File "/usr/lib/python3/dist-packages/referencing/_core.py", line 686, in lookup
    raise exceptions.Unresolvable(ref=ref) from error
referencing.exceptions.Unresolvable: /schemas/types.yaml#/definitions/string

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/bin/dt-validate", line 8, in <module>
    sys.exit(main())
             ~~~~^^
  File "/usr/lib/python3/dist-packages/dtschema/dtb_validate.py", line 158, in main
    sg.check_dtb(filename)
    ~~~~~~~~~~~~^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/dtschema/dtb_validate.py", line 95, in check_dtb
    self.check_subtree(dt, subtree, False, "/", "/", filename)
    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/dtschema/dtb_validate.py", line 88, in check_subtree
    self.check_subtree(tree, value, disabled, name, fullname + name, filename)
    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/dtschema/dtb_validate.py", line 88, in check_subtree
    self.check_subtree(tree, value, disabled, name, fullname + name, filename)
    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/dtschema/dtb_validate.py", line 88, in check_subtree
    self.check_subtree(tree, value, disabled, name, fullname + name, filename)
    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/dtschema/dtb_validate.py", line 83, in check_subtree
    self.check_node(tree, subtree, disabled, nodename, fullname, filename)
    ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/dtschema/dtb_validate.py", line 34, in check_node
    for error in self.validator.iter_errors(node, filter=match_schema_file,
                 ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                                            compatible_match=compatible_match):
                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/dtschema/validator.py", line 448, in iter_errors
    for error in self.DtValidator(schema, registry=self.registry).iter_errors(instance):
                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/jsonschema/validators.py", line 384, in iter_errors
    for error in errors:
                 ^^^^^^
  File "/usr/lib/python3/dist-packages/jsonschema/_keywords.py", line 296, in properties
    yield from validator.descend(
    ...<4 lines>...
    )
  File "/usr/lib/python3/dist-packages/jsonschema/validators.py", line 432, in descend
    for error in errors:
                 ^^^^^^
  File "/usr/lib/python3/dist-packages/jsonschema/_keywords.py", line 296, in properties
    yield from validator.descend(
    ...<4 lines>...
    )
  File "/usr/lib/python3/dist-packages/jsonschema/validators.py", line 432, in descend
    for error in errors:
                 ^^^^^^
  File "/usr/lib/python3/dist-packages/jsonschema/_keywords.py", line 275, in ref
    yield from validator._validate_reference(ref=ref, instance=instance)
  File "/usr/lib/python3/dist-packages/jsonschema/validators.py", line 432, in descend
    for error in errors:
                 ^^^^^^
  File "/usr/lib/python3/dist-packages/jsonschema/_keywords.py", line 296, in properties
    yield from validator.descend(
    ...<4 lines>...
    )
  File "/usr/lib/python3/dist-packages/jsonschema/validators.py", line 432, in descend
    for error in errors:
                 ^^^^^^
  File "/usr/lib/python3/dist-packages/jsonschema/_keywords.py", line 275, in ref
    yield from validator._validate_reference(ref=ref, instance=instance)
               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/jsonschema/validators.py", line 465, in _validate_reference
    raise exceptions._WrappedReferencingError(err) from err
jsonschema.exceptions._WrappedReferencingError: Unresolvable: /schemas/types.yaml#/definitions/string
Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
Posted by Rob Herring 1 month ago
On Wed, Jan 7, 2026 at 11:41 AM Timothy Pearson
<tpearson@raptorengineering.com> wrote:
>
>
>
> ----- Original Message -----
> > From: "Krzysztof Kozlowski" <krzk@kernel.org>
> > To: "Timothy Pearson" <tpearson@raptorengineering.com>
> > Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel" <linux-kernel@vger.kernel.org>, "Rob Herring"
> > <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
> > "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>, "Shawn Anastasio"
> > <sanastasio@raptorengineering.com>
> > Sent: Wednesday, January 7, 2026 11:18:09 AM
> > Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
>
> > On 07/01/2026 18:09, Timothy Pearson wrote:
> >>
> >>
> >> ----- Original Message -----
> >>> From: "Krzysztof Kozlowski" <krzk@kernel.org>
> >>> To: "Timothy Pearson" <tpearson@raptorengineering.com>
> >>> Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel"
> >>> <linux-kernel@vger.kernel.org>, "Rob Herring"
> >>> <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof
> >>> Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
> >>> "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>,
> >>> "Shawn Anastasio"
> >>> <sanastasio@raptorengineering.com>
> >>> Sent: Wednesday, January 7, 2026 1:25:10 AM
> >>> Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
> >>
> >>> On Tue, Jan 06, 2026 at 06:21:33PM -0600, Timothy Pearson wrote:
> >>>> From: Shawn Anastasio <sanastasio@raptorengineering.com>
> >>>>
> >>>> The Sony Cronos Platform Controller is a multi-purpose platform controller
> >>>> that provides both a watchdog timer and an LED controller for the Sony
> >>>> Interactive Entertainment Cronos x86 server platform. As both functions
> >>>> are provided by the same CPLD, a multi-function device is exposed as the
> >>>> parent of both functions.
> >>>>
> >>>> Add a DT binding for this device.
> >>>>
> >>>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> >>>> Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com>
> >>>> ---
> >>>>  .../bindings/mfd/sony,cronos-smc.yaml         | 128 ++++++++++++++++++
> >>>
> >>> How this can be a v6 with no changelog at all and still not tested?
> >>>
> >>> What happened with this patchset? Where is it explained?
> >>
> >> Changes have only been to fix issues identified in review and any posted
> >> autotest failures.
> >
> > And where is this explained? Please always provide detailed changelog in
> > the cover letter or individual patch.
> >
> >>
> >> Please note that the tooling to check the DT bindings does NOT appear work
> >> properly, we've wasted a lot of time and effort attempting to get it running
> >> only to find that it's spitting out internal Python errors even for other
> >> drivers that are *already* in the kernel source tree.  This obviously creates a
> >> situation where it's difficult to pre-check the patch set for compliance; if
> >> you want to see this first hand, spin up a Debian Sid VM (which has a very
> >> recent version of the DT tooling from late 2025) and try to check any of the
> >> in-tree MFD drivers using the documented methods.
> >
> > I am using DT schema on multiple distros, including Debian but not Sid
> > but Trixie
> > (https://krzk.eu/#/builders/91/builds/116/steps/13/logs/stdio). Works
> > without problem...
>
> Good to know.  There is next to no documentation on the required software versions to make this work, which complicates
>
> > On regular Debian based distro this is just few commands - pix install
> > and them make dt_binding_check - so I am surprised you spent a lot of
> > time on setting this up.
> >
> > What is the problem exactly?
>
> Good to know.  There is next to no documentation on the required software
> versions to make this work, which complicates setup.

$latest

It's as simple as that. There is some checking of a minimum version,
but maybe we need to bump it more aggressively. I haven't because
older versions might work.

>  Bookworm's DT package was
> too old when it was tried pre-Trixie release, and at the time Sid didn't work
> either for some other reason.  The assumption was that the kernel needed a very
> recent version of the DT tooling, so Sid was tried again this year.  Will try
> Trixie before the next patch update.

Don't use the distro version. There's no one checking that it works.

One problem here (and for distro packaging) has been json-schema pkg
breaking us. So we were stuck on <4.18 for a long time and now require
>=4.18.

Rob
Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
Posted by Timothy Pearson 2 weeks, 6 days ago

----- Original Message -----
> From: "Rob Herring" <robh+dt@kernel.org>
> To: "Timothy Pearson" <tpearson@raptorengineering.com>
> Cc: "Krzysztof Kozlowski" <krzk@kernel.org>, "devicetree" <devicetree@vger.kernel.org>, "linux-kernel"
> <linux-kernel@vger.kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof Kozlowski"
> <krzysztof.kozlowski+dt@linaro.org>, "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>, "Shawn
> Anastasio" <sanastasio@raptorengineering.com>
> Sent: Wednesday, January 7, 2026 6:20:25 PM
> Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc

> On Wed, Jan 7, 2026 at 11:41 AM Timothy Pearson
> <tpearson@raptorengineering.com> wrote:
>>
>>
>>
>> ----- Original Message -----
>> > From: "Krzysztof Kozlowski" <krzk@kernel.org>
>> > To: "Timothy Pearson" <tpearson@raptorengineering.com>
>> > Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel"
>> > <linux-kernel@vger.kernel.org>, "Rob Herring"
>> > <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof
>> > Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
>> > "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>,
>> > "Shawn Anastasio"
>> > <sanastasio@raptorengineering.com>
>> > Sent: Wednesday, January 7, 2026 11:18:09 AM
>> > Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
>>
>> > On 07/01/2026 18:09, Timothy Pearson wrote:
>> >>
>> >>
>> >> ----- Original Message -----
>> >>> From: "Krzysztof Kozlowski" <krzk@kernel.org>
>> >>> To: "Timothy Pearson" <tpearson@raptorengineering.com>
>> >>> Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel"
>> >>> <linux-kernel@vger.kernel.org>, "Rob Herring"
>> >>> <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof
>> >>> Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
>> >>> "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>,
>> >>> "Shawn Anastasio"
>> >>> <sanastasio@raptorengineering.com>
>> >>> Sent: Wednesday, January 7, 2026 1:25:10 AM
>> >>> Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
>> >>
>> >>> On Tue, Jan 06, 2026 at 06:21:33PM -0600, Timothy Pearson wrote:
>> >>>> From: Shawn Anastasio <sanastasio@raptorengineering.com>
>> >>>>
>> >>>> The Sony Cronos Platform Controller is a multi-purpose platform controller
>> >>>> that provides both a watchdog timer and an LED controller for the Sony
>> >>>> Interactive Entertainment Cronos x86 server platform. As both functions
>> >>>> are provided by the same CPLD, a multi-function device is exposed as the
>> >>>> parent of both functions.
>> >>>>
>> >>>> Add a DT binding for this device.
>> >>>>
>> >>>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>> >>>> Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com>
>> >>>> ---
>> >>>>  .../bindings/mfd/sony,cronos-smc.yaml         | 128 ++++++++++++++++++
>> >>>
>> >>> How this can be a v6 with no changelog at all and still not tested?
>> >>>
>> >>> What happened with this patchset? Where is it explained?
>> >>
>> >> Changes have only been to fix issues identified in review and any posted
>> >> autotest failures.
>> >
>> > And where is this explained? Please always provide detailed changelog in
>> > the cover letter or individual patch.
>> >
>> >>
>> >> Please note that the tooling to check the DT bindings does NOT appear work
>> >> properly, we've wasted a lot of time and effort attempting to get it running
>> >> only to find that it's spitting out internal Python errors even for other
>> >> drivers that are *already* in the kernel source tree.  This obviously creates a
>> >> situation where it's difficult to pre-check the patch set for compliance; if
>> >> you want to see this first hand, spin up a Debian Sid VM (which has a very
>> >> recent version of the DT tooling from late 2025) and try to check any of the
>> >> in-tree MFD drivers using the documented methods.
>> >
>> > I am using DT schema on multiple distros, including Debian but not Sid
>> > but Trixie
>> > (https://krzk.eu/#/builders/91/builds/116/steps/13/logs/stdio). Works
>> > without problem...
>>
>> Good to know.  There is next to no documentation on the required software
>> versions to make this work, which complicates
>>
>> > On regular Debian based distro this is just few commands - pix install
>> > and them make dt_binding_check - so I am surprised you spent a lot of
>> > time on setting this up.
>> >
>> > What is the problem exactly?
>>
>> Good to know.  There is next to no documentation on the required software
>> versions to make this work, which complicates setup.
> 
> $latest
> 
> It's as simple as that. There is some checking of a minimum version,
> but maybe we need to bump it more aggressively. I haven't because
> older versions might work.
> 
>>  Bookworm's DT package was
>> too old when it was tried pre-Trixie release, and at the time Sid didn't work
>> either for some other reason.  The assumption was that the kernel needed a very
>> recent version of the DT tooling, so Sid was tried again this year.  Will try
>> Trixie before the next patch update.
> 
> Don't use the distro version. There's no one checking that it works.
> 
> One problem here (and for distro packaging) has been json-schema pkg
> breaking us. So we were stuck on <4.18 for a long time and now require
>>=4.18.
> 
> Rob

OK, so this came back up while preparing v7 of this patch series.  Set up the isolated machine etc., installed both dtschema and yamllint from PyPI as recommended, and after rebasing on the latest kernel tree I get:

make dt_binding_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/mfd/sony,cronos-cpld.yaml
  SCHEMA  Documentation/devicetree/bindings/processed-schema.json
  CHKDT   ./Documentation/devicetree/bindings
  LINT    ./Documentation/devicetree/bindings
usage: yamllint [-h] [-] [-c CONFIG_FILE | -d CONFIG_DATA] [--list-files] [-f {parsable,standard,colored,github,auto}] [-s] [--no-warnings] [-v] [FILE_OR_DIR ...]
yamllint: error: one of the arguments FILE_OR_DIR - is required

Is there more magic $version / install method stuff needed?

Appreciate the assistance in getting this going.
Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
Posted by Rob Herring 2 weeks, 6 days ago
On Mon, Jan 19, 2026 at 9:41 AM Timothy Pearson
<tpearson@raptorengineering.com> wrote:
>
>
>
> ----- Original Message -----
> > From: "Rob Herring" <robh+dt@kernel.org>
> > To: "Timothy Pearson" <tpearson@raptorengineering.com>
> > Cc: "Krzysztof Kozlowski" <krzk@kernel.org>, "devicetree" <devicetree@vger.kernel.org>, "linux-kernel"
> > <linux-kernel@vger.kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof Kozlowski"
> > <krzysztof.kozlowski+dt@linaro.org>, "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>, "Shawn
> > Anastasio" <sanastasio@raptorengineering.com>
> > Sent: Wednesday, January 7, 2026 6:20:25 PM
> > Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
>
> > On Wed, Jan 7, 2026 at 11:41 AM Timothy Pearson
> > <tpearson@raptorengineering.com> wrote:
> >>
> >>
> >>
> >> ----- Original Message -----
> >> > From: "Krzysztof Kozlowski" <krzk@kernel.org>
> >> > To: "Timothy Pearson" <tpearson@raptorengineering.com>
> >> > Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel"
> >> > <linux-kernel@vger.kernel.org>, "Rob Herring"
> >> > <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof
> >> > Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
> >> > "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>,
> >> > "Shawn Anastasio"
> >> > <sanastasio@raptorengineering.com>
> >> > Sent: Wednesday, January 7, 2026 11:18:09 AM
> >> > Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
> >>
> >> > On 07/01/2026 18:09, Timothy Pearson wrote:
> >> >>
> >> >>
> >> >> ----- Original Message -----
> >> >>> From: "Krzysztof Kozlowski" <krzk@kernel.org>
> >> >>> To: "Timothy Pearson" <tpearson@raptorengineering.com>
> >> >>> Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel"
> >> >>> <linux-kernel@vger.kernel.org>, "Rob Herring"
> >> >>> <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof
> >> >>> Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
> >> >>> "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>,
> >> >>> "Shawn Anastasio"
> >> >>> <sanastasio@raptorengineering.com>
> >> >>> Sent: Wednesday, January 7, 2026 1:25:10 AM
> >> >>> Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
> >> >>
> >> >>> On Tue, Jan 06, 2026 at 06:21:33PM -0600, Timothy Pearson wrote:
> >> >>>> From: Shawn Anastasio <sanastasio@raptorengineering.com>
> >> >>>>
> >> >>>> The Sony Cronos Platform Controller is a multi-purpose platform controller
> >> >>>> that provides both a watchdog timer and an LED controller for the Sony
> >> >>>> Interactive Entertainment Cronos x86 server platform. As both functions
> >> >>>> are provided by the same CPLD, a multi-function device is exposed as the
> >> >>>> parent of both functions.
> >> >>>>
> >> >>>> Add a DT binding for this device.
> >> >>>>
> >> >>>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> >> >>>> Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com>
> >> >>>> ---
> >> >>>>  .../bindings/mfd/sony,cronos-smc.yaml         | 128 ++++++++++++++++++
> >> >>>
> >> >>> How this can be a v6 with no changelog at all and still not tested?
> >> >>>
> >> >>> What happened with this patchset? Where is it explained?
> >> >>
> >> >> Changes have only been to fix issues identified in review and any posted
> >> >> autotest failures.
> >> >
> >> > And where is this explained? Please always provide detailed changelog in
> >> > the cover letter or individual patch.
> >> >
> >> >>
> >> >> Please note that the tooling to check the DT bindings does NOT appear work
> >> >> properly, we've wasted a lot of time and effort attempting to get it running
> >> >> only to find that it's spitting out internal Python errors even for other
> >> >> drivers that are *already* in the kernel source tree.  This obviously creates a
> >> >> situation where it's difficult to pre-check the patch set for compliance; if
> >> >> you want to see this first hand, spin up a Debian Sid VM (which has a very
> >> >> recent version of the DT tooling from late 2025) and try to check any of the
> >> >> in-tree MFD drivers using the documented methods.
> >> >
> >> > I am using DT schema on multiple distros, including Debian but not Sid
> >> > but Trixie
> >> > (https://krzk.eu/#/builders/91/builds/116/steps/13/logs/stdio). Works
> >> > without problem...
> >>
> >> Good to know.  There is next to no documentation on the required software
> >> versions to make this work, which complicates
> >>
> >> > On regular Debian based distro this is just few commands - pix install
> >> > and them make dt_binding_check - so I am surprised you spent a lot of
> >> > time on setting this up.
> >> >
> >> > What is the problem exactly?
> >>
> >> Good to know.  There is next to no documentation on the required software
> >> versions to make this work, which complicates setup.
> >
> > $latest
> >
> > It's as simple as that. There is some checking of a minimum version,
> > but maybe we need to bump it more aggressively. I haven't because
> > older versions might work.
> >
> >>  Bookworm's DT package was
> >> too old when it was tried pre-Trixie release, and at the time Sid didn't work
> >> either for some other reason.  The assumption was that the kernel needed a very
> >> recent version of the DT tooling, so Sid was tried again this year.  Will try
> >> Trixie before the next patch update.
> >
> > Don't use the distro version. There's no one checking that it works.
> >
> > One problem here (and for distro packaging) has been json-schema pkg
> > breaking us. So we were stuck on <4.18 for a long time and now require
> >>=4.18.
> >
> > Rob
>
> OK, so this came back up while preparing v7 of this patch series.  Set up the isolated machine etc., installed both dtschema and yamllint from PyPI as recommended, and after rebasing on the latest kernel tree I get:
>
> make dt_binding_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/mfd/sony,cronos-cpld.yaml
>   SCHEMA  Documentation/devicetree/bindings/processed-schema.json
>   CHKDT   ./Documentation/devicetree/bindings
>   LINT    ./Documentation/devicetree/bindings
> usage: yamllint [-h] [-] [-c CONFIG_FILE | -d CONFIG_DATA] [--list-files] [-f {parsable,standard,colored,github,auto}] [-s] [--no-warnings] [-v] [FILE_OR_DIR ...]
> yamllint: error: one of the arguments FILE_OR_DIR - is required
>
> Is there more magic $version / install method stuff needed?

That only happens to me if DT_SCHEMA_FILES points to something that
doesn't match anything.

Rob
Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
Posted by Krzysztof Kozlowski 1 month ago
On 07/01/2026 18:41, Timothy Pearson wrote:
> 
> 
> ----- Original Message -----
>> From: "Krzysztof Kozlowski" <krzk@kernel.org>
>> To: "Timothy Pearson" <tpearson@raptorengineering.com>
>> Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel" <linux-kernel@vger.kernel.org>, "Rob Herring"
>> <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
>> "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>, "Shawn Anastasio"
>> <sanastasio@raptorengineering.com>
>> Sent: Wednesday, January 7, 2026 11:18:09 AM
>> Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
> 
>> On 07/01/2026 18:09, Timothy Pearson wrote:
>>>
>>>
>>> ----- Original Message -----
>>>> From: "Krzysztof Kozlowski" <krzk@kernel.org>
>>>> To: "Timothy Pearson" <tpearson@raptorengineering.com>
>>>> Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel"
>>>> <linux-kernel@vger.kernel.org>, "Rob Herring"
>>>> <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof
>>>> Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
>>>> "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>,
>>>> "Shawn Anastasio"
>>>> <sanastasio@raptorengineering.com>
>>>> Sent: Wednesday, January 7, 2026 1:25:10 AM
>>>> Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
>>>
>>>> On Tue, Jan 06, 2026 at 06:21:33PM -0600, Timothy Pearson wrote:
>>>>> From: Shawn Anastasio <sanastasio@raptorengineering.com>
>>>>>
>>>>> The Sony Cronos Platform Controller is a multi-purpose platform controller
>>>>> that provides both a watchdog timer and an LED controller for the Sony
>>>>> Interactive Entertainment Cronos x86 server platform. As both functions
>>>>> are provided by the same CPLD, a multi-function device is exposed as the
>>>>> parent of both functions.
>>>>>
>>>>> Add a DT binding for this device.
>>>>>
>>>>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>>>>> Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com>
>>>>> ---
>>>>>  .../bindings/mfd/sony,cronos-smc.yaml         | 128 ++++++++++++++++++
>>>>
>>>> How this can be a v6 with no changelog at all and still not tested?
>>>>
>>>> What happened with this patchset? Where is it explained?
>>>
>>> Changes have only been to fix issues identified in review and any posted
>>> autotest failures.
>>
>> And where is this explained? Please always provide detailed changelog in
>> the cover letter or individual patch.
>>
>>>
>>> Please note that the tooling to check the DT bindings does NOT appear work
>>> properly, we've wasted a lot of time and effort attempting to get it running
>>> only to find that it's spitting out internal Python errors even for other
>>> drivers that are *already* in the kernel source tree.  This obviously creates a
>>> situation where it's difficult to pre-check the patch set for compliance; if
>>> you want to see this first hand, spin up a Debian Sid VM (which has a very
>>> recent version of the DT tooling from late 2025) and try to check any of the
>>> in-tree MFD drivers using the documented methods.
>>
>> I am using DT schema on multiple distros, including Debian but not Sid
>> but Trixie
>> (https://krzk.eu/#/builders/91/builds/116/steps/13/logs/stdio). Works
>> without problem...
> 
> Good to know.  There is next to no documentation on the required software versions to make this work, which complicates
> 
>> On regular Debian based distro this is just few commands - pix install
>> and them make dt_binding_check - so I am surprised you spent a lot of
>> time on setting this up.
>>
>> What is the problem exactly?
> 
> Good to know.  There is next to no documentation on the required software
> versions to make this work, which complicates setup.  Bookworm's DT package was
> too old when it was tried pre-Trixie release, and at the time Sid didn't work
> either for some other reason.  The assumption was that the kernel needed a very
> recent version of the DT tooling, so Sid was tried again this year.  Will try
> Trixie before the next patch update.

So you mean from distro? We don't use it from the distro because it's
heavily outdated. It makes no sense. That's why I wrote - pipx.


> 
> Here is example output against an in-tree driver, using an up to date Sid system
> (word wrap not applied so as to make the errors easier to read):
> 
> dt_binding_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/mfd/silergy,sy7636a.yaml
> 
>   CHKDT   ./Documentation/devicetree/bindings
> Traceback (most recent call last):
>   File "/usr/bin/dt-doc-validate", line 8, in <module>
>     sys.exit(main())
>              ~~~~^^
>   File "/usr/lib/python3/dist-packages/dtschema/doc_validate.py", line 66, in main

Feels liks distro package. Never saw this, but again I have never used
distro and have absolutely never recommended even trying that. There
were problems with matching jsonschema package, but regardless - if you
use distro you will use very old schemas, so you will hit another
problem. It's just pointless to rely on distro here - no benefits for
you, but only stale/old package, especially that installing via pipx is
easy.

Best regards,
Krzysztof
Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
Posted by Timothy Pearson 1 month ago

----- Original Message -----
> From: "Krzysztof Kozlowski" <krzk@kernel.org>
> To: "Timothy Pearson" <tpearson@raptorengineering.com>
> Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel" <linux-kernel@vger.kernel.org>, "Rob Herring"
> <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
> "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>, "Shawn Anastasio"
> <sanastasio@raptorengineering.com>
> Sent: Wednesday, January 7, 2026 2:22:33 PM
> Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc

> On 07/01/2026 18:41, Timothy Pearson wrote:
>> 
>> 
>> ----- Original Message -----
>>> From: "Krzysztof Kozlowski" <krzk@kernel.org>
>>> To: "Timothy Pearson" <tpearson@raptorengineering.com>
>>> Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel"
>>> <linux-kernel@vger.kernel.org>, "Rob Herring"
>>> <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof
>>> Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
>>> "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>,
>>> "Shawn Anastasio"
>>> <sanastasio@raptorengineering.com>
>>> Sent: Wednesday, January 7, 2026 11:18:09 AM
>>> Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
>> 
>>> On 07/01/2026 18:09, Timothy Pearson wrote:
>>>>
>>>>
>>>> ----- Original Message -----
>>>>> From: "Krzysztof Kozlowski" <krzk@kernel.org>
>>>>> To: "Timothy Pearson" <tpearson@raptorengineering.com>
>>>>> Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel"
>>>>> <linux-kernel@vger.kernel.org>, "Rob Herring"
>>>>> <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof
>>>>> Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
>>>>> "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>,
>>>>> "Shawn Anastasio"
>>>>> <sanastasio@raptorengineering.com>
>>>>> Sent: Wednesday, January 7, 2026 1:25:10 AM
>>>>> Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
>>>>
>>>>> On Tue, Jan 06, 2026 at 06:21:33PM -0600, Timothy Pearson wrote:
>>>>>> From: Shawn Anastasio <sanastasio@raptorengineering.com>
>>>>>>
>>>>>> The Sony Cronos Platform Controller is a multi-purpose platform controller
>>>>>> that provides both a watchdog timer and an LED controller for the Sony
>>>>>> Interactive Entertainment Cronos x86 server platform. As both functions
>>>>>> are provided by the same CPLD, a multi-function device is exposed as the
>>>>>> parent of both functions.
>>>>>>
>>>>>> Add a DT binding for this device.
>>>>>>
>>>>>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
>>>>>> Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com>
>>>>>> ---
>>>>>>  .../bindings/mfd/sony,cronos-smc.yaml         | 128 ++++++++++++++++++
>>>>>
>>>>> How this can be a v6 with no changelog at all and still not tested?
>>>>>
>>>>> What happened with this patchset? Where is it explained?
>>>>
>>>> Changes have only been to fix issues identified in review and any posted
>>>> autotest failures.
>>>
>>> And where is this explained? Please always provide detailed changelog in
>>> the cover letter or individual patch.
>>>
>>>>
>>>> Please note that the tooling to check the DT bindings does NOT appear work
>>>> properly, we've wasted a lot of time and effort attempting to get it running
>>>> only to find that it's spitting out internal Python errors even for other
>>>> drivers that are *already* in the kernel source tree.  This obviously creates a
>>>> situation where it's difficult to pre-check the patch set for compliance; if
>>>> you want to see this first hand, spin up a Debian Sid VM (which has a very
>>>> recent version of the DT tooling from late 2025) and try to check any of the
>>>> in-tree MFD drivers using the documented methods.
>>>
>>> I am using DT schema on multiple distros, including Debian but not Sid
>>> but Trixie
>>> (https://krzk.eu/#/builders/91/builds/116/steps/13/logs/stdio). Works
>>> without problem...
>> 
>> Good to know.  There is next to no documentation on the required software
>> versions to make this work, which complicates
>> 
>>> On regular Debian based distro this is just few commands - pix install
>>> and them make dt_binding_check - so I am surprised you spent a lot of
>>> time on setting this up.
>>>
>>> What is the problem exactly?
>> 
>> Good to know.  There is next to no documentation on the required software
>> versions to make this work, which complicates setup.  Bookworm's DT package was
>> too old when it was tried pre-Trixie release, and at the time Sid didn't work
>> either for some other reason.  The assumption was that the kernel needed a very
>> recent version of the DT tooling, so Sid was tried again this year.  Will try
>> Trixie before the next patch update.
> 
> So you mean from distro? We don't use it from the distro because it's
> heavily outdated. It makes no sense. That's why I wrote - pipx.
> 
> 
>> 
>> Here is example output against an in-tree driver, using an up to date Sid system
>> (word wrap not applied so as to make the errors easier to read):
>> 
>> dt_binding_check
>> DT_SCHEMA_FILES=Documentation/devicetree/bindings/mfd/silergy,sy7636a.yaml
>> 
>>   CHKDT   ./Documentation/devicetree/bindings
>> Traceback (most recent call last):
>>   File "/usr/bin/dt-doc-validate", line 8, in <module>
>>     sys.exit(main())
>>              ~~~~^^
>>   File "/usr/lib/python3/dist-packages/dtschema/doc_validate.py", line 66, in main
> 
> Feels liks distro package. Never saw this, but again I have never used
> distro and have absolutely never recommended even trying that. There
> were problems with matching jsonschema package, but regardless - if you
> use distro you will use very old schemas, so you will hit another
> problem. It's just pointless to rely on distro here - no benefits for
> you, but only stale/old package, especially that installing via pipx is
> easy.

In my opinion, the distro package should be fixed.  There are security considerations with PyPI [1], and those concerns then require (per our policies) the use of isolated systems due to downloading and running unsigned and (at least on our end) unaudited code from the general Internet.  The distro packages are signed and built from source on known trusted systems, in contrast with pip's general mode of operation, and I can't imagine it would be that difficult to make sure that Debian and Fedora (the two most common base distros) ship a reasonably new version of the valdation tools, especially in unstable / bleeding edge releases (Sid).

That said, for now, I guess I'll spin up a new VM and give pipx a shot.  Thanks for the pointer in the right direction!

[1] https://carles-garcia.net/python/python_pip/
Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
Posted by Rob Herring 1 month ago
On Wed, Jan 7, 2026 at 3:05 PM Timothy Pearson
<tpearson@raptorengineering.com> wrote:
>
>
>
> ----- Original Message -----
> > From: "Krzysztof Kozlowski" <krzk@kernel.org>
> > To: "Timothy Pearson" <tpearson@raptorengineering.com>
> > Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel" <linux-kernel@vger.kernel.org>, "Rob Herring"
> > <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
> > "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>, "Shawn Anastasio"
> > <sanastasio@raptorengineering.com>
> > Sent: Wednesday, January 7, 2026 2:22:33 PM
> > Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
>
> > On 07/01/2026 18:41, Timothy Pearson wrote:
> >>
> >>
> >> ----- Original Message -----
> >>> From: "Krzysztof Kozlowski" <krzk@kernel.org>
> >>> To: "Timothy Pearson" <tpearson@raptorengineering.com>
> >>> Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel"
> >>> <linux-kernel@vger.kernel.org>, "Rob Herring"
> >>> <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof
> >>> Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
> >>> "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>,
> >>> "Shawn Anastasio"
> >>> <sanastasio@raptorengineering.com>
> >>> Sent: Wednesday, January 7, 2026 11:18:09 AM
> >>> Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
> >>
> >>> On 07/01/2026 18:09, Timothy Pearson wrote:
> >>>>
> >>>>
> >>>> ----- Original Message -----
> >>>>> From: "Krzysztof Kozlowski" <krzk@kernel.org>
> >>>>> To: "Timothy Pearson" <tpearson@raptorengineering.com>
> >>>>> Cc: "devicetree" <devicetree@vger.kernel.org>, "linux-kernel"
> >>>>> <linux-kernel@vger.kernel.org>, "Rob Herring"
> >>>>> <robh+dt@kernel.org>, "Conor Dooley" <conor+dt@kernel.org>, "Krzysztof
> >>>>> Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
> >>>>> "Lee Jones" <lee@kernel.org>, "Georgy Yakovlev" <Georgy.Yakovlev@sony.com>,
> >>>>> "Shawn Anastasio"
> >>>>> <sanastasio@raptorengineering.com>
> >>>>> Sent: Wednesday, January 7, 2026 1:25:10 AM
> >>>>> Subject: Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
> >>>>
> >>>>> On Tue, Jan 06, 2026 at 06:21:33PM -0600, Timothy Pearson wrote:
> >>>>>> From: Shawn Anastasio <sanastasio@raptorengineering.com>
> >>>>>>
> >>>>>> The Sony Cronos Platform Controller is a multi-purpose platform controller
> >>>>>> that provides both a watchdog timer and an LED controller for the Sony
> >>>>>> Interactive Entertainment Cronos x86 server platform. As both functions
> >>>>>> are provided by the same CPLD, a multi-function device is exposed as the
> >>>>>> parent of both functions.
> >>>>>>
> >>>>>> Add a DT binding for this device.
> >>>>>>
> >>>>>> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> >>>>>> Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com>
> >>>>>> ---
> >>>>>>  .../bindings/mfd/sony,cronos-smc.yaml         | 128 ++++++++++++++++++
> >>>>>
> >>>>> How this can be a v6 with no changelog at all and still not tested?
> >>>>>
> >>>>> What happened with this patchset? Where is it explained?
> >>>>
> >>>> Changes have only been to fix issues identified in review and any posted
> >>>> autotest failures.
> >>>
> >>> And where is this explained? Please always provide detailed changelog in
> >>> the cover letter or individual patch.
> >>>
> >>>>
> >>>> Please note that the tooling to check the DT bindings does NOT appear work
> >>>> properly, we've wasted a lot of time and effort attempting to get it running
> >>>> only to find that it's spitting out internal Python errors even for other
> >>>> drivers that are *already* in the kernel source tree.  This obviously creates a
> >>>> situation where it's difficult to pre-check the patch set for compliance; if
> >>>> you want to see this first hand, spin up a Debian Sid VM (which has a very
> >>>> recent version of the DT tooling from late 2025) and try to check any of the
> >>>> in-tree MFD drivers using the documented methods.
> >>>
> >>> I am using DT schema on multiple distros, including Debian but not Sid
> >>> but Trixie
> >>> (https://krzk.eu/#/builders/91/builds/116/steps/13/logs/stdio). Works
> >>> without problem...
> >>
> >> Good to know.  There is next to no documentation on the required software
> >> versions to make this work, which complicates
> >>
> >>> On regular Debian based distro this is just few commands - pix install
> >>> and them make dt_binding_check - so I am surprised you spent a lot of
> >>> time on setting this up.
> >>>
> >>> What is the problem exactly?
> >>
> >> Good to know.  There is next to no documentation on the required software
> >> versions to make this work, which complicates setup.  Bookworm's DT package was
> >> too old when it was tried pre-Trixie release, and at the time Sid didn't work
> >> either for some other reason.  The assumption was that the kernel needed a very
> >> recent version of the DT tooling, so Sid was tried again this year.  Will try
> >> Trixie before the next patch update.
> >
> > So you mean from distro? We don't use it from the distro because it's
> > heavily outdated. It makes no sense. That's why I wrote - pipx.
> >
> >
> >>
> >> Here is example output against an in-tree driver, using an up to date Sid system
> >> (word wrap not applied so as to make the errors easier to read):
> >>
> >> dt_binding_check
> >> DT_SCHEMA_FILES=Documentation/devicetree/bindings/mfd/silergy,sy7636a.yaml
> >>
> >>   CHKDT   ./Documentation/devicetree/bindings
> >> Traceback (most recent call last):
> >>   File "/usr/bin/dt-doc-validate", line 8, in <module>
> >>     sys.exit(main())
> >>              ~~~~^^
> >>   File "/usr/lib/python3/dist-packages/dtschema/doc_validate.py", line 66, in main
> >
> > Feels liks distro package. Never saw this, but again I have never used
> > distro and have absolutely never recommended even trying that. There
> > were problems with matching jsonschema package, but regardless - if you
> > use distro you will use very old schemas, so you will hit another
> > problem. It's just pointless to rely on distro here - no benefits for
> > you, but only stale/old package, especially that installing via pipx is
> > easy.
>
> In my opinion, the distro package should be fixed.  There are security considerations with PyPI [1], and those concerns then require (per our policies) the use of isolated systems due to downloading and running unsigned and (at least on our end) unaudited code from the general Internet.  The distro packages are signed and built from source on known trusted systems, in contrast with pip's general mode of operation, and I can't imagine it would be that difficult to make sure that Debian and Fedora (the two most common base distros) ship a reasonably new version of the valdation tools, especially in unstable / bleeding edge releases (Sid).

You can install all the dependencies from the distros (assuming
json-schema >= 4.18) and install dtschema from git.

Rob
Re: [PATCH v6 1/4] dt-bindings: mfd: Add sony,cronos-smc
Posted by Rob Herring (Arm) 1 month ago
On Tue, 06 Jan 2026 18:21:33 -0600, Timothy Pearson wrote:
> From: Shawn Anastasio <sanastasio@raptorengineering.com>
> 
> The Sony Cronos Platform Controller is a multi-purpose platform controller
> that provides both a watchdog timer and an LED controller for the Sony
> Interactive Entertainment Cronos x86 server platform. As both functions
> are provided by the same CPLD, a multi-function device is exposed as the
> parent of both functions.
> 
> Add a DT binding for this device.
> 
> Signed-off-by: Shawn Anastasio <sanastasio@raptorengineering.com>
> Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com>
> ---
>  .../bindings/mfd/sony,cronos-smc.yaml         | 128 ++++++++++++++++++
>  1 file changed, 128 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/mfd/sony,cronos-smc.yaml
> 

My bot found errors running 'make dt_binding_check' on your patch:

yamllint warnings/errors:

dtschema/dtc warnings/errors:
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/mfd/sony,cronos-smc.example.dtb: smc@3f (sony,cronos-smc): Unevaluated properties are not allowed ('timeout-sec' was unexpected)
	from schema $id: http://devicetree.org/schemas/mfd/sony,cronos-smc.yaml

doc reference errors (make refcheckdocs):

See https://patchwork.kernel.org/project/devicetree/patch/20260107002136.3121607-2-tpearson@raptorengineering.com

The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.