mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v8 0/3] dt-bindings: net: can: convert three bindings to DT schema
@ 2026-09-22 10:22 Quchaosheng
  2026-09-22 10:22 ` [PATCH v8 1/3] dt-bindings: net: can: ifi,canfd-1.0: Convert " Quchaosheng
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Quchaosheng @ 2026-09-22 10:22 UTC (permalink / raw)
  To: Marc Kleine-Budde, Vincent Mailhol, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: linux-can, devicetree, linux-kernel, quchaosheng000406

Three CAN controller bindings converted from free-form text to DT schema.

One series, one thread.

What changed since v7: v7 dropped the spi-peripheral-props.yaml reference
from holt,hi311x, on the grounds that the example does not use SPI
properties. That was wrong. The HI-3110 is an SPI peripheral, so its node
carries spi-max-frequency, and unevaluatedProperties: false rejects it
without the reference. dt_binding_check against a node carrying
spi-max-frequency fails without the reference and passes with it.

holt,hi311x is therefore back to exactly what Rob reviewed in v6. Only
patch 2/3 differs from v7; the other two are unchanged.

ifi,canfd-1.0
	Unchanged from v7.

holt,hi311x
	Restore the $ref to spi/spi-peripheral-props.yaml. Identical to v6 again.

fsl,mpc5xxx-mscan
	Unchanged from v7.


Quchaosheng (3):
  dt-bindings: net: can: ifi,canfd-1.0: Convert to DT schema
  dt-bindings: net: can: holt,hi311x: Convert to DT schema
  dt-bindings: net: can: fsl,mpc5xxx-mscan: Convert to DT schema

 .../bindings/net/can/fsl,mpc5xxx-mscan.yaml   | 109 ++++++++++++++++++
 .../bindings/net/can/holt,hi311x.yaml         |  67 +++++++++++
 .../bindings/net/can/holt_hi311x.txt          |  23 ----
 .../bindings/net/can/ifi,canfd.yaml           |  46 ++++++++
 .../devicetree/bindings/net/can/ifi_canfd.txt |  15 ---
 .../bindings/net/can/mpc5xxx-mscan.txt        |  53 ---------
 6 files changed, 222 insertions(+), 91 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/net/can/fsl,mpc5xxx-mscan.yaml
 create mode 100644 Documentation/devicetree/bindings/net/can/holt,hi311x.yaml
 delete mode 100644 Documentation/devicetree/bindings/net/can/holt_hi311x.txt
 create mode 100644 Documentation/devicetree/bindings/net/can/ifi,canfd.yaml
 delete mode 100644 Documentation/devicetree/bindings/net/can/ifi_canfd.txt
 delete mode 100644 Documentation/devicetree/bindings/net/can/mpc5xxx-mscan.txt

-- 
2.43.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v8 1/3] dt-bindings: net: can: ifi,canfd-1.0: Convert to DT schema
  2026-09-22 10:22 [PATCH v8 0/3] dt-bindings: net: can: convert three bindings to DT schema Quchaosheng
@ 2026-09-22 10:22 ` Quchaosheng
  2026-09-22 10:22 ` [PATCH v8 2/3] dt-bindings: net: can: holt,hi311x: " Quchaosheng
  2026-09-22 10:22 ` [PATCH v8 3/3] dt-bindings: net: can: fsl,mpc5xxx-mscan: " Quchaosheng
  2 siblings, 0 replies; 6+ messages in thread
From: Quchaosheng @ 2026-09-22 10:22 UTC (permalink / raw)
  To: Marc Kleine-Budde, Vincent Mailhol, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: linux-can, devicetree, linux-kernel, quchaosheng000406

Convert the IFI CAN-FD controller binding from free-form text to DT
schema.

Reference can-controller.yaml. interrupts is required: the driver obtains
it with platform_get_irq().

The example now uses the GIC and irq header defines instead of raw numbers.
The values are unchanged: GIC_SPI is 0, IRQ_TYPE_NONE is 0 and 1 is
IRQ_TYPE_EDGE_RISING. Rename the example node from canfd to can so that it
matches the $nodename pattern in can-controller.yaml.

Assisted-by: LLM
Signed-off-by: Quchaosheng <quchaosheng000406@163.com>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
---

v8:
 - No change.
 .../bindings/net/can/ifi,canfd.yaml           | 46 +++++++++++++++++++
 .../devicetree/bindings/net/can/ifi_canfd.txt | 15 ------
 2 files changed, 46 insertions(+), 15 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/net/can/ifi,canfd.yaml
 delete mode 100644 Documentation/devicetree/bindings/net/can/ifi_canfd.txt

diff --git a/Documentation/devicetree/bindings/net/can/ifi,canfd.yaml b/Documentation/devicetree/bindings/net/can/ifi,canfd.yaml
new file mode 100644
index 000000000000..c8c3105c727b
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/can/ifi,canfd.yaml
@@ -0,0 +1,46 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/net/can/ifi,canfd.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: IFI CAN-FD Controller
+
+maintainers:
+  - Marc Kleine-Budde <mkl@pengutronix.de>
+
+description:
+  The I/F/I CAN-FD soft IP block connected to the platform bus. It is most
+  often synthesised into an FPGA or CPLD.
+
+allOf:
+  - $ref: can-controller.yaml#
+
+properties:
+  compatible:
+    const: ifi,canfd-1.0
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    maxItems: 1
+
+required:
+  - compatible
+  - reg
+  - interrupts
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/interrupt-controller/arm-gic.h>
+    #include <dt-bindings/interrupt-controller/irq.h>
+
+    can@ff220000 {
+        compatible = "ifi,canfd-1.0";
+        reg = <0xff220000 0x1000>;
+        interrupts = <GIC_SPI 43 IRQ_TYPE_NONE>;
+    };
+...
diff --git a/Documentation/devicetree/bindings/net/can/ifi_canfd.txt b/Documentation/devicetree/bindings/net/can/ifi_canfd.txt
deleted file mode 100644
index 20ea5c70ab82..000000000000
--- a/Documentation/devicetree/bindings/net/can/ifi_canfd.txt
+++ /dev/null
@@ -1,15 +0,0 @@
-IFI CANFD controller
---------------------
-
-Required properties:
-  - compatible: Should be "ifi,canfd-1.0"
-  - reg: Should contain CAN controller registers location and length
-  - interrupts: Should contain IRQ line for the CAN controller
-
-Example:
-
-	canfd0: canfd@ff220000 {
-		compatible = "ifi,canfd-1.0";
-		reg = <0xff220000 0x00001000>;
-		interrupts = <0 43 0>;
-	};
-- 
2.43.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v8 2/3] dt-bindings: net: can: holt,hi311x: Convert to DT schema
  2026-09-22 10:22 [PATCH v8 0/3] dt-bindings: net: can: convert three bindings to DT schema Quchaosheng
  2026-09-22 10:22 ` [PATCH v8 1/3] dt-bindings: net: can: ifi,canfd-1.0: Convert " Quchaosheng
@ 2026-09-22 10:22 ` Quchaosheng
  2026-09-22 12:46   ` Rob Herring (Arm)
  2026-09-22 10:22 ` [PATCH v8 3/3] dt-bindings: net: can: fsl,mpc5xxx-mscan: " Quchaosheng
  2 siblings, 1 reply; 6+ messages in thread
From: Quchaosheng @ 2026-09-22 10:22 UTC (permalink / raw)
  To: Marc Kleine-Budde, Vincent Mailhol, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: linux-can, devicetree, linux-kernel, quchaosheng000406, Sashiko

Convert the Holt HI-311X binding from free-form text to DT schema.

Reference can-controller.yaml and spi/spi-peripheral-props.yaml. The
HI-3110 sits on an SPI bus, so its node carries the standard SPI
properties, spi-max-frequency among them. With unevaluatedProperties:
false and no reference to spi-peripheral-props.yaml, dtbs_check rejects
those properties:

  can@1 (holt,hi3110): Unevaluated properties are not allowed
    ('spi-max-frequency' was unexpected)

Keep the properties and the example as the original text describes them,
including clocks as a required property.

Assisted-by: LLM
Reported-by: Sashiko <sashiko-bot@kernel.org>
Link: https://sashiko.dev/#/patchset/20260922084542.104788-1-quchaosheng000406@163.com?part=2
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Quchaosheng <quchaosheng000406@163.com>
---

v8:
 - Put back the $ref to spi/spi-peripheral-props.yaml. v7 dropped it as
   redundant, but the HI-3110 is an SPI peripheral and its node carries
   spi-max-frequency. With unevaluatedProperties: false and no reference,
   dt_binding_check reports:

     can@1 (holt,hi3110): Unevaluated properties are not allowed
       ('spi-max-frequency' was unexpected)

   A node carrying spi-max-frequency fails without the reference and passes
   with it, so the reference is required. Reported by sashiko.

   The schema is identical to the v6 that Rob reviewed, so his Reviewed-by
   is kept.
 .../bindings/net/can/holt,hi311x.yaml         | 67 +++++++++++++++++++
 .../bindings/net/can/holt_hi311x.txt          | 23 -------
 2 files changed, 67 insertions(+), 23 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/net/can/holt,hi311x.yaml
 delete mode 100644 Documentation/devicetree/bindings/net/can/holt_hi311x.txt

diff --git a/Documentation/devicetree/bindings/net/can/holt,hi311x.yaml b/Documentation/devicetree/bindings/net/can/holt,hi311x.yaml
new file mode 100644
index 000000000000..9ec6abb1279a
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/can/holt,hi311x.yaml
@@ -0,0 +1,67 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/net/can/holt,hi311x.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Holt HI-311X stand-alone CAN controller
+
+maintainers:
+  - Marc Kleine-Budde <mkl@pengutronix.de>
+
+description:
+  The Holt HI-3110 is a stand-alone CAN controller with an SPI interface.
+
+allOf:
+  - $ref: can-controller.yaml#
+  - $ref: /schemas/spi/spi-peripheral-props.yaml#
+
+properties:
+  compatible:
+    const: holt,hi3110
+
+  reg:
+    description: SPI chip select.
+    maxItems: 1
+
+  clocks:
+    description: The clock feeding the CAN controller.
+    maxItems: 1
+
+  interrupts:
+    description: IRQ line for the CAN controller.
+    maxItems: 1
+
+  vdd-supply:
+    description: Regulator that powers the CAN controller.
+
+  xceiver-supply:
+    description: Regulator that powers the CAN transceiver.
+
+required:
+  - compatible
+  - reg
+  - clocks
+  - interrupts
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/interrupt-controller/irq.h>
+
+    spi {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        can@1 {
+            compatible = "holt,hi3110";
+            reg = <1>;
+            clocks = <&clk32m>;
+            interrupt-parent = <&gpio4>;
+            interrupts = <13 IRQ_TYPE_LEVEL_HIGH>;
+            vdd-supply = <&reg5v0>;
+            xceiver-supply = <&reg5v0>;
+        };
+    };
+...
diff --git a/Documentation/devicetree/bindings/net/can/holt_hi311x.txt b/Documentation/devicetree/bindings/net/can/holt_hi311x.txt
deleted file mode 100644
index 3a9926f99937..000000000000
--- a/Documentation/devicetree/bindings/net/can/holt_hi311x.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-* Holt HI-311X stand-alone CAN controller device tree bindings
-
-Required properties:
- - compatible: Should be one of the following:
-   - "holt,hi3110" for HI-3110
- - reg: SPI chip select.
- - clocks: The clock feeding the CAN controller.
- - interrupts: Should contain IRQ line for the CAN controller.
-
-Optional properties:
- - vdd-supply: Regulator that powers the CAN controller.
- - xceiver-supply: Regulator that powers the CAN transceiver.
-
-Example:
-	can0: can@1 {
-		compatible = "holt,hi3110";
-		reg = <1>;
-		clocks = <&clk32m>;
-		interrupt-parent = <&gpio4>;
-		interrupts = <13 IRQ_TYPE_LEVEL_HIGH>;
-		vdd-supply = <&reg5v0>;
-		xceiver-supply = <&reg5v0>;
-	};
-- 
2.43.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v8 3/3] dt-bindings: net: can: fsl,mpc5xxx-mscan: Convert to DT schema
  2026-09-22 10:22 [PATCH v8 0/3] dt-bindings: net: can: convert three bindings to DT schema Quchaosheng
  2026-09-22 10:22 ` [PATCH v8 1/3] dt-bindings: net: can: ifi,canfd-1.0: Convert " Quchaosheng
  2026-09-22 10:22 ` [PATCH v8 2/3] dt-bindings: net: can: holt,hi311x: " Quchaosheng
@ 2026-09-22 10:22 ` Quchaosheng
  2026-09-23 14:30   ` Rob Herring
  2 siblings, 1 reply; 6+ messages in thread
From: Quchaosheng @ 2026-09-22 10:22 UTC (permalink / raw)
  To: Marc Kleine-Budde, Vincent Mailhol, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: linux-can, devicetree, linux-kernel, quchaosheng000406

Convert the Freescale MPC5xxx MSCAN binding from free-form text to DT
schema.

The original text documents fsl,mpc5200-mscan and fsl,mpc5121-mscan in two
separate sections. Keep that split: fsl,mscan-clock-source takes "ip" or
"ref" on fsl,mpc5200-mscan, and "ip", "ref" or "sys" on fsl,mpc5121-mscan.

Add fsl,mpc5200b-mscan as a fallback of fsl,mpc5200-mscan. mpc5200b.dtsi
uses it.

Document clocks and clock-names, which the original text does not describe.
fsl,mpc5121-mscan requires the "ipg", "ips", "sys", "ref" and "mclk"
clocks in that order, as mpc5121.dtsi supplies them. MPC5200 does not use
DT clocks; it takes its frequency from the CDM block.

fsl,mscan-clock-divider divides the selected clock, so value 0 cannot be
used.

Keep the note that the MPC5121 Rev. 1 processor is not supported.

Assisted-by: LLM
Signed-off-by: Quchaosheng <quchaosheng000406@163.com>
---

v8:
 - No change.
 .../bindings/net/can/fsl,mpc5xxx-mscan.yaml   | 109 ++++++++++++++++++
 .../bindings/net/can/mpc5xxx-mscan.txt        |  53 ---------
 2 files changed, 109 insertions(+), 53 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/net/can/fsl,mpc5xxx-mscan.yaml
 delete mode 100644 Documentation/devicetree/bindings/net/can/mpc5xxx-mscan.txt

diff --git a/Documentation/devicetree/bindings/net/can/fsl,mpc5xxx-mscan.yaml b/Documentation/devicetree/bindings/net/can/fsl,mpc5xxx-mscan.yaml
new file mode 100644
index 000000000000..77aa46fd62ac
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/can/fsl,mpc5xxx-mscan.yaml
@@ -0,0 +1,109 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/net/can/fsl,mpc5xxx-mscan.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Freescale MPC5xxx MSCAN controller
+
+maintainers:
+  - Marc Kleine-Budde <mkl@pengutronix.de>
+
+description:
+  The MSCAN controller found on the Freescale MPC5200 and MPC5121 SoCs. The
+  MPC5121 Rev. 1 processor is not supported.
+
+properties:
+  compatible:
+    oneOf:
+      - items:
+          - enum:
+              - fsl,mpc5200b-mscan
+          - const: fsl,mpc5200-mscan
+      - enum:
+          - fsl,mpc5200-mscan
+          - fsl,mpc5121-mscan
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    maxItems: 1
+
+  clocks:
+    description:
+      Clocks feeding the controller. fsl,mpc5200-mscan takes its frequency
+      from the CDM block and does not use DT clocks.
+    minItems: 5
+    maxItems: 5
+
+  clock-names:
+    items:
+      - const: ipg
+      - const: ips
+      - const: sys
+      - const: ref
+      - const: mclk
+
+  fsl,mscan-clock-source:
+    description:
+      Clock source used for the controller. When the property is not present,
+      fsl,mpc5200-mscan uses the reference clock, while fsl,mpc5121-mscan
+      selects an optimal clock source and frequency based on the system clock
+      and uses the reference clock when that is not possible.
+    enum: [ip, ref, sys]
+
+  fsl,mscan-clock-divider:
+    description: Additional clock divider for the reference and system clocks.
+    $ref: /schemas/types.yaml#/definitions/uint32
+    minimum: 1
+    default: 1
+
+required:
+  - compatible
+  - reg
+  - interrupts
+
+allOf:
+  - $ref: can-controller.yaml#
+
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: fsl,mpc5200-mscan
+    then:
+      properties:
+        fsl,mscan-clock-source:
+          enum: [ip, ref]
+
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: fsl,mpc5121-mscan
+    then:
+      required:
+        - clocks
+        - clock-names
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/mpc512x-clock.h>
+    #include <dt-bindings/interrupt-controller/irq.h>
+
+    can@1300 {
+        compatible = "fsl,mpc5121-mscan";
+        reg = <0x1300 0x80>;
+        interrupts = <12 IRQ_TYPE_LEVEL_LOW>;
+        interrupt-parent = <&ipic>;
+        clocks = <&clks MPC512x_CLK_BDLC>, <&clks MPC512x_CLK_IPS>,
+                 <&clks MPC512x_CLK_SYS>, <&clks MPC512x_CLK_REF>,
+                 <&clks MPC512x_CLK_MSCAN0_MCLK>;
+        clock-names = "ipg", "ips", "sys", "ref", "mclk";
+        fsl,mscan-clock-source = "ref";
+        fsl,mscan-clock-divider = <3>;
+    };
+...
diff --git a/Documentation/devicetree/bindings/net/can/mpc5xxx-mscan.txt b/Documentation/devicetree/bindings/net/can/mpc5xxx-mscan.txt
deleted file mode 100644
index 2fa4fcd38fd6..000000000000
--- a/Documentation/devicetree/bindings/net/can/mpc5xxx-mscan.txt
+++ /dev/null
@@ -1,53 +0,0 @@
-CAN Device Tree Bindings
-------------------------
-
-(c) 2006-2009 Secret Lab Technologies Ltd
-Grant Likely <grant.likely@secretlab.ca>
-
-fsl,mpc5200-mscan nodes
------------------------
-In addition to the required compatible-, reg- and interrupt-properties, you can
-also specify which clock source shall be used for the controller:
-
-- fsl,mscan-clock-source : a string describing the clock source. Valid values
-			   are:	"ip" for ip bus clock
-				 "ref" for reference clock (XTAL)
-			   "ref" is default in case this property is not
-			   present.
-
-fsl,mpc5121-mscan nodes
------------------------
-In addition to the required compatible-, reg- and interrupt-properties, you can
-also specify which clock source and divider shall be used for the controller:
-
-- fsl,mscan-clock-source : a string describing the clock source. Valid values
-			   are:	"ip" for ip bus clock
-				"ref" for reference clock
-				"sys" for system clock
-			   If this property is not present, an optimal CAN
-			   clock source and frequency based on the system
-			   clock will be selected. If this is not possible,
-			   the reference clock will be used.
-
-- fsl,mscan-clock-divider: for the reference and system clock, an additional
-			   clock divider can be specified. By default, a
-			   value of 1 is used.
-
-Note that the MPC5121 Rev. 1 processor is not supported.
-
-Examples:
-	can@1300 {
-		compatible = "fsl,mpc5121-mscan";
-		interrupts = <12 0x8>;
-		interrupt-parent = <&ipic>;
-		reg = <0x1300 0x80>;
-	};
-
-	can@1380 {
-		compatible = "fsl,mpc5121-mscan";
-		interrupts = <13 0x8>;
-		interrupt-parent = <&ipic>;
-		reg = <0x1380 0x80>;
-		fsl,mscan-clock-source = "ref";
-		fsl,mscan-clock-divider = <3>;
-	};
-- 
2.43.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v8 2/3] dt-bindings: net: can: holt,hi311x: Convert to DT schema
  2026-09-22 10:22 ` [PATCH v8 2/3] dt-bindings: net: can: holt,hi311x: " Quchaosheng
@ 2026-09-22 12:46   ` Rob Herring (Arm)
  0 siblings, 0 replies; 6+ messages in thread
From: Rob Herring (Arm) @ 2026-09-22 12:46 UTC (permalink / raw)
  To: Quchaosheng
  Cc: Vincent Mailhol, linux-can, Krzysztof Kozlowski, linux-kernel,
	Sashiko, Marc Kleine-Budde, devicetree, Conor Dooley


On Tue, 22 Sep 2026 18:22:57 +0800, Quchaosheng wrote:
> Convert the Holt HI-311X binding from free-form text to DT schema.
> 
> Reference can-controller.yaml and spi/spi-peripheral-props.yaml. The
> HI-3110 sits on an SPI bus, so its node carries the standard SPI
> properties, spi-max-frequency among them. With unevaluatedProperties:
> false and no reference to spi-peripheral-props.yaml, dtbs_check rejects
> those properties:
> 
>   can@1 (holt,hi3110): Unevaluated properties are not allowed
>     ('spi-max-frequency' was unexpected)
> 
> Keep the properties and the example as the original text describes them,
> including clocks as a required property.
> 
> Assisted-by: LLM
> Reported-by: Sashiko <sashiko-bot@kernel.org>
> Link: https://sashiko.dev/#/patchset/20260922084542.104788-1-quchaosheng000406@163.com?part=2
> Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
> Signed-off-by: Quchaosheng <quchaosheng000406@163.com>
> ---
> 
> v8:
>  - Put back the $ref to spi/spi-peripheral-props.yaml. v7 dropped it as
>    redundant, but the HI-3110 is an SPI peripheral and its node carries
>    spi-max-frequency. With unevaluatedProperties: false and no reference,
>    dt_binding_check reports:
> 
>      can@1 (holt,hi3110): Unevaluated properties are not allowed
>        ('spi-max-frequency' was unexpected)
> 
>    A node carrying spi-max-frequency fails without the reference and passes
>    with it, so the reference is required. Reported by sashiko.
> 
>    The schema is identical to the v6 that Rob reviewed, so his Reviewed-by
>    is kept.
>  .../bindings/net/can/holt,hi311x.yaml         | 67 +++++++++++++++++++
>  .../bindings/net/can/holt_hi311x.txt          | 23 -------
>  2 files changed, 67 insertions(+), 23 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/net/can/holt,hi311x.yaml
>  delete mode 100644 Documentation/devicetree/bindings/net/can/holt_hi311x.txt
> 

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

yamllint warnings/errors:

dtschema/dtc warnings/errors:
Documentation/devicetree/bindings/memory-controllers/nvidia,tegra210-emc.example.dtb: emc-table@83400000 (nvidia,tegra210-emc-table): {'compatible': ['nvidia,tegra210-emc-table'], 'reg': [[2202009600, 65536]], 'phandle': 2, '$nodename': ['emc-table@83400000']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['reg']}
	from schema $id: http://devicetree.org/schemas/reserved-memory/nvidia,tegra210-emc-table.yaml
Documentation/devicetree/bindings/soc/fsl/fsl,qman-fqd.example.dtb: qman-fqd (fsl,qman-fqd): {'compatible': ['fsl,qman-fqd'], 'size': 4194304, 'alignment': 4194304, 'no-map': True, '$nodename': ['qman-fqd']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['size']}
	from schema $id: http://devicetree.org/schemas/soc/fsl/fsl,qman-fqd.yaml
Documentation/devicetree/bindings/soc/fsl/fsl,qman-fqd.example.dtb: qman-fqd (fsl,qman-fqd): Unevaluated properties are not allowed ('alignment', 'no-map', 'size' were unexpected)
	from schema $id: http://devicetree.org/schemas/soc/fsl/fsl,qman-fqd.yaml
Documentation/devicetree/bindings/remoteproc/ti,omap-remoteproc.example.dtb: dsp-memory@98000000 (shared-dma-pool): {'compatible': ['shared-dma-pool'], 'reg': [[2550136832, 8388608]], 'reusable': True, 'phandle': 1, '$nodename': ['dsp-memory@98000000']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['reg']}
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml
Documentation/devicetree/bindings/remoteproc/ti,omap-remoteproc.example.dtb: dsp-memory@98000000 (shared-dma-pool): Unevaluated properties are not allowed ('reg', 'reusable' were unexpected)
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml
Documentation/devicetree/bindings/remoteproc/ti,omap-remoteproc.example.dtb: ipu-memory@95800000 (shared-dma-pool): {'compatible': ['shared-dma-pool'], 'reg': [[0, 2508193792, 0, 58720256]], 'reusable': True, 'phandle': 2, '$nodename': ['ipu-memory@95800000']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['reg']}
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml
Documentation/devicetree/bindings/remoteproc/ti,omap-remoteproc.example.dtb: ipu-memory@95800000 (shared-dma-pool): Unevaluated properties are not allowed ('reg', 'reusable' were unexpected)
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml
Documentation/devicetree/bindings/remoteproc/ti,omap-remoteproc.example.dtb: dsp1-memory@99000000 (shared-dma-pool): {'compatible': ['shared-dma-pool'], 'reg': [[0, 2566914048, 0, 67108864]], 'reusable': True, 'phandle': 3, '$nodename': ['dsp1-memory@99000000']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['reg']}
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml
Documentation/devicetree/bindings/remoteproc/ti,omap-remoteproc.example.dtb: dsp1-memory@99000000 (shared-dma-pool): Unevaluated properties are not allowed ('reg', 'reusable' were unexpected)
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml
Documentation/devicetree/bindings/remoteproc/ti,k3-m4f-rproc.example.dtb: m4f-dma-memory@9cb00000 (shared-dma-pool): {'compatible': ['shared-dma-pool'], 'reg': [[0, 2628780032, 0, 1048576]], 'no-map': True, 'phandle': 2, '$nodename': ['m4f-dma-memory@9cb00000']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['reg']}
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml
Documentation/devicetree/bindings/remoteproc/ti,k3-m4f-rproc.example.dtb: m4f-dma-memory@9cb00000 (shared-dma-pool): Unevaluated properties are not allowed ('no-map', 'reg' were unexpected)
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml
Documentation/devicetree/bindings/remoteproc/ti,k3-m4f-rproc.example.dtb: m4f-memory@9cc00000 (shared-dma-pool): {'compatible': ['shared-dma-pool'], 'reg': [[0, 2629828608, 0, 14680064]], 'no-map': True, 'phandle': 3, '$nodename': ['m4f-memory@9cc00000']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['reg']}
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml
Documentation/devicetree/bindings/remoteproc/ti,k3-m4f-rproc.example.dtb: m4f-memory@9cc00000 (shared-dma-pool): Unevaluated properties are not allowed ('no-map', 'reg' were unexpected)
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml
Documentation/devicetree/bindings/dsp/fsl,dsp.example.dtb: vdev0buffer@94300000 (shared-dma-pool): {'compatible': ['shared-dma-pool'], 'reg': [[2486173696, 1048576]], 'no-map': True, 'phandle': 2, '$nodename': ['vdev0buffer@94300000']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['reg']}
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml
Documentation/devicetree/bindings/dsp/fsl,dsp.example.dtb: vdev0buffer@94300000 (shared-dma-pool): Unevaluated properties are not allowed ('no-map', 'reg' were unexpected)
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml
Documentation/devicetree/bindings/sound/google,cros-ec-codec.example.dtb: reserved-mem@52800000 (shared-dma-pool): {'compatible': ['shared-dma-pool'], 'reg': [[1384120320, 1048576]], 'no-map': True, 'phandle': 2, '$nodename': ['reserved-mem@52800000']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['reg']}
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml
Documentation/devicetree/bindings/sound/google,cros-ec-codec.example.dtb: reserved-mem@52800000 (shared-dma-pool): Unevaluated properties are not allowed ('no-map', 'reg' were unexpected)
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml
Documentation/devicetree/bindings/reserved-memory/nvidia,tegra264-bpmp-shmem.example.dtb: shmem@f1be0000 (nvidia,tegra264-bpmp-shmem): {'compatible': ['nvidia,tegra264-bpmp-shmem'], 'reg': [[0, 4055760896, 0, 8192]], 'no-map': True, '$nodename': ['shmem@f1be0000']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['reg']}
	from schema $id: http://devicetree.org/schemas/reserved-memory/nvidia,tegra264-bpmp-shmem.yaml
Documentation/devicetree/bindings/reserved-memory/nvidia,tegra264-bpmp-shmem.example.dtb: shmem@f1be0000 (nvidia,tegra264-bpmp-shmem): Unevaluated properties are not allowed ('no-map' was unexpected)
	from schema $id: http://devicetree.org/schemas/reserved-memory/nvidia,tegra264-bpmp-shmem.yaml
Documentation/devicetree/bindings/reserved-memory/phram.example.dtb: flash@12340000 (phram): {'compatible': ['phram'], 'label': ['rootfs'], 'reg': [[305397760, 8388608]], '$nodename': ['flash@12340000']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['reg']}
	from schema $id: http://devicetree.org/schemas/reserved-memory/phram.yaml
Documentation/devicetree/bindings/reserved-memory/ramoops.example.dtb: ramoops@bfdf0000 (ramoops): {'compatible': ['ramoops'], 'reg': [[3219062784, 65536]], 'console-size': 32768, 'record-size': 1024, 'ecc-size': 16, '$nodename': ['ramoops@bfdf0000']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['reg']}
	from schema $id: http://devicetree.org/schemas/reserved-memory/ramoops.yaml
Documentation/devicetree/bindings/reserved-memory/qcom,cmd-db.example.dtb: reserved-memory@85fe0000 (qcom,cmd-db): {'reg': [[2248015872, 131072]], 'compatible': ['qcom,cmd-db'], 'no-map': True, '$nodename': ['reserved-memory@85fe0000']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['reg']}
	from schema $id: http://devicetree.org/schemas/reserved-memory/qcom,cmd-db.yaml
Documentation/devicetree/bindings/reserved-memory/qcom,cmd-db.example.dtb: reserved-memory@85fe0000 (qcom,cmd-db): Unevaluated properties are not allowed ('no-map', 'reg' were unexpected)
	from schema $id: http://devicetree.org/schemas/reserved-memory/qcom,cmd-db.yaml
Documentation/devicetree/bindings/reserved-memory/intel,wakeup-mailbox.example.dtb: wakeup-mailbox@ffff0000 (intel,wakeup-mailbox): {'compatible': ['intel,wakeup-mailbox'], 'reg': [[0, 4294901760, 4096]], '$nodename': ['wakeup-mailbox@ffff0000']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['reg']}
	from schema $id: http://devicetree.org/schemas/reserved-memory/intel,wakeup-mailbox.yaml
Documentation/devicetree/bindings/reserved-memory/intel,wakeup-mailbox.example.dtb: wakeup-mailbox@ffff0000 (intel,wakeup-mailbox): Unevaluated properties are not allowed ('reg' was unexpected)
	from schema $id: http://devicetree.org/schemas/reserved-memory/intel,wakeup-mailbox.yaml
Documentation/devicetree/bindings/reserved-memory/google,open-dice.example.dtb: dice@12340000 (google,open-dice): {'compatible': ['google,open-dice'], 'reg': [[0, 305397760, 8192]], 'no-map': True, '$nodename': ['dice@12340000']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['reg']}
	from schema $id: http://devicetree.org/schemas/reserved-memory/google,open-dice.yaml
Documentation/devicetree/bindings/reserved-memory/google,open-dice.example.dtb: dice@12340000 (google,open-dice): Unevaluated properties are not allowed ('no-map' was unexpected)
	from schema $id: http://devicetree.org/schemas/reserved-memory/google,open-dice.yaml
Documentation/devicetree/bindings/reserved-memory/qcom,rmtfs-mem.example.dtb: rmtfs@86700000 (qcom,rmtfs-mem): {'compatible': ['qcom,rmtfs-mem'], 'reg': [[2255486976, 917504]], 'no-map': True, 'qcom,client-id': 1, '$nodename': ['rmtfs@86700000']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['reg']}
	from schema $id: http://devicetree.org/schemas/reserved-memory/qcom,rmtfs-mem.yaml
Documentation/devicetree/bindings/reserved-memory/qcom,rmtfs-mem.example.dtb: rmtfs@86700000 (qcom,rmtfs-mem): Unevaluated properties are not allowed ('no-map', 'reg' were unexpected)
	from schema $id: http://devicetree.org/schemas/reserved-memory/qcom,rmtfs-mem.yaml
Documentation/devicetree/bindings/display/msm/gpu.example.dtb: gpu@8f200000 (shared-dma-pool): {'compatible': ['shared-dma-pool'], 'reg': [[0, 2427453440, 0, 10485760]], 'no-map': True, 'phandle': 5, '$nodename': ['gpu@8f200000']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['reg']}
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml
Documentation/devicetree/bindings/display/msm/gpu.example.dtb: gpu@8f200000 (shared-dma-pool): Unevaluated properties are not allowed ('no-map', 'reg' were unexpected)
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml
Documentation/devicetree/bindings/display/imx/fsl,imx-lcdc.example.dtb: display0: fsl,pcr: b'\xf0\xc8\x80\x80' is not of type 'object', 'integer', 'array', 'boolean', 'null'
	from schema $id: http://devicetree.org/schemas/dt-core.yaml
Documentation/devicetree/bindings/firmware/intel,stratix10-svc.example.dtb: svcbuffer@0 (shared-dma-pool): {'compatible': ['shared-dma-pool'], 'reg': [[0, 0, 0, 16777216]], 'alignment': 4096, 'no-map': True, 'phandle': 1, '$nodename': ['svcbuffer@0']} is valid under each of {'if': {'required': ['iommu-addresses']}, 'then': {'required': ['reg']}}, {'required': ['reg']}
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml
Documentation/devicetree/bindings/firmware/intel,stratix10-svc.example.dtb: svcbuffer@0 (shared-dma-pool): Unevaluated properties are not allowed ('alignment', 'no-map', 'reg' were unexpected)
	from schema $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml

doc reference errors (make refcheckdocs):

See https://patchwork.kernel.org/project/devicetree/patch/20260922102258.138753-3-quchaosheng000406@163.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.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v8 3/3] dt-bindings: net: can: fsl,mpc5xxx-mscan: Convert to DT schema
  2026-09-22 10:22 ` [PATCH v8 3/3] dt-bindings: net: can: fsl,mpc5xxx-mscan: " Quchaosheng
@ 2026-09-23 14:30   ` Rob Herring
  0 siblings, 0 replies; 6+ messages in thread
From: Rob Herring @ 2026-09-23 14:30 UTC (permalink / raw)
  To: Quchaosheng
  Cc: Marc Kleine-Budde, Vincent Mailhol, Krzysztof Kozlowski,
	Conor Dooley, linux-can, devicetree, linux-kernel

On Tue, Sep 22, 2026 at 06:22:58PM +0800, Quchaosheng wrote:
> Convert the Freescale MPC5xxx MSCAN binding from free-form text to DT
> schema.
> 
> The original text documents fsl,mpc5200-mscan and fsl,mpc5121-mscan in two
> separate sections. Keep that split: fsl,mscan-clock-source takes "ip" or
> "ref" on fsl,mpc5200-mscan, and "ip", "ref" or "sys" on fsl,mpc5121-mscan.
> 
> Add fsl,mpc5200b-mscan as a fallback of fsl,mpc5200-mscan. mpc5200b.dtsi
> uses it.
> 
> Document clocks and clock-names, which the original text does not describe.
> fsl,mpc5121-mscan requires the "ipg", "ips", "sys", "ref" and "mclk"
> clocks in that order, as mpc5121.dtsi supplies them. MPC5200 does not use
> DT clocks; it takes its frequency from the CDM block.
> 
> fsl,mscan-clock-divider divides the selected clock, so value 0 cannot be
> used.
> 
> Keep the note that the MPC5121 Rev. 1 processor is not supported.
> 
> Assisted-by: LLM
> Signed-off-by: Quchaosheng <quchaosheng000406@163.com>
> ---
> 
> v8:
>  - No change.
>  .../bindings/net/can/fsl,mpc5xxx-mscan.yaml   | 109 ++++++++++++++++++
>  .../bindings/net/can/mpc5xxx-mscan.txt        |  53 ---------
>  2 files changed, 109 insertions(+), 53 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/net/can/fsl,mpc5xxx-mscan.yaml
>  delete mode 100644 Documentation/devicetree/bindings/net/can/mpc5xxx-mscan.txt

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2026-09-23 14:30 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-22 10:22 [PATCH v8 0/3] dt-bindings: net: can: convert three bindings to DT schema Quchaosheng
2026-09-22 10:22 ` [PATCH v8 1/3] dt-bindings: net: can: ifi,canfd-1.0: Convert " Quchaosheng
2026-09-22 10:22 ` [PATCH v8 2/3] dt-bindings: net: can: holt,hi311x: " Quchaosheng
2026-09-22 12:46   ` Rob Herring (Arm)
2026-09-22 10:22 ` [PATCH v8 3/3] dt-bindings: net: can: fsl,mpc5xxx-mscan: " Quchaosheng
2026-09-23 14:30   ` Rob Herring

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®