.../bindings/net/can/atmel,at91sam9263-can.yaml | 67 ++++++++++++++++++++++ .../devicetree/bindings/net/can/atmel-can.txt | 15 ----- 2 files changed, 67 insertions(+), 15 deletions(-)
Convert atmel-can documentation to yaml format
Signed-off-by: Charan Pedumuru <charan.pedumuru@microchip.com>
---
.../bindings/net/can/atmel,at91sam9263-can.yaml | 67 ++++++++++++++++++++++
.../devicetree/bindings/net/can/atmel-can.txt | 15 -----
2 files changed, 67 insertions(+), 15 deletions(-)
diff --git a/Documentation/devicetree/bindings/net/can/atmel,at91sam9263-can.yaml b/Documentation/devicetree/bindings/net/can/atmel,at91sam9263-can.yaml
new file mode 100644
index 000000000000..269af4c993a7
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/can/atmel,at91sam9263-can.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/atmel,at91sam9263-can.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Atmel CAN Controller
+
+maintainers:
+ - Nicolas Ferre <nicolas.ferre@microchip.com>
+
+properties:
+ compatible:
+ oneOf:
+ - enum:
+ - atmel,at91sam9263-can
+ - atmel,at91sam9x5-can
+ - microchip,sam9x60-can
+ - items:
+ - enum:
+ - microchip,sam9x60-can
+ - const: atmel,at91sam9x5-can
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ maxItems: 1
+
+ clocks:
+ maxItems: 1
+
+ clock-names:
+ items:
+ - const: can_clk
+
+required:
+ - compatible
+ - reg
+ - interrupts
+
+allOf:
+ - $ref: can-controller.yaml#
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - microchip,sam9x60-can
+ then:
+ required:
+ - compatible
+ - reg
+ - interrupts
+ - clocks
+ - clock-names
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/interrupt-controller/irq.h>
+ can0: can@f000c000 {
+ compatible = "atmel,at91sam9x5-can";
+ reg = <0xf000c000 0x300>;
+ interrupts = <30 IRQ_TYPE_LEVEL_HIGH 3>;
+ };
diff --git a/Documentation/devicetree/bindings/net/can/atmel-can.txt b/Documentation/devicetree/bindings/net/can/atmel-can.txt
deleted file mode 100644
index 218a3b3eb27e..000000000000
--- a/Documentation/devicetree/bindings/net/can/atmel-can.txt
+++ /dev/null
@@ -1,15 +0,0 @@
-* AT91 CAN *
-
-Required properties:
- - compatible: Should be "atmel,at91sam9263-can", "atmel,at91sam9x5-can" or
- "microchip,sam9x60-can"
- - reg: Should contain CAN controller registers location and length
- - interrupts: Should contain IRQ line for the CAN controller
-
-Example:
-
- can0: can@f000c000 {
- compatible = "atmel,at91sam9x5-can";
- reg = <0xf000c000 0x300>;
- interrupts = <40 4 5>
- };
---
base-commit: 32ffa5373540a8d1c06619f52d019c6cdc948bb4
change-id: 20240912-can-8eb7f8e7566d
Best regards,
--
Charan Pedumuru <charan.pedumuru@microchip.com>
On 12.09.2024 11:19:16, Charan Pedumuru wrote: > Convert atmel-can documentation to yaml format > > Signed-off-by: Charan Pedumuru <charan.pedumuru@microchip.com> > --- > .../bindings/net/can/atmel,at91sam9263-can.yaml | 67 ++++++++++++++++++++++ > .../devicetree/bindings/net/can/atmel-can.txt | 15 ----- > 2 files changed, 67 insertions(+), 15 deletions(-) > > diff --git a/Documentation/devicetree/bindings/net/can/atmel,at91sam9263-can.yaml b/Documentation/devicetree/bindings/net/can/atmel,at91sam9263-can.yaml > new file mode 100644 > index 000000000000..269af4c993a7 > --- /dev/null > +++ b/Documentation/devicetree/bindings/net/can/atmel,at91sam9263-can.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/atmel,at91sam9263-can.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Atmel CAN Controller > + > +maintainers: > + - Nicolas Ferre <nicolas.ferre@microchip.com> > + > +properties: > + compatible: > + oneOf: > + - enum: > + - atmel,at91sam9263-can > + - atmel,at91sam9x5-can > + - microchip,sam9x60-can The driver doesn't have a compatible for "microchip,sam9x60-can". > + - items: > + - enum: > + - microchip,sam9x60-can > + - const: atmel,at91sam9x5-can > + > + reg: > + maxItems: 1 > + > + interrupts: > + maxItems: 1 > + > + clocks: > + maxItems: 1 > + > + clock-names: > + items: > + - const: can_clk > + > +required: > + - compatible > + - reg > + - interrupts > + > +allOf: > + - $ref: can-controller.yaml# > + - if: > + properties: > + compatible: > + contains: > + enum: > + - microchip,sam9x60-can > + then: > + required: > + - compatible > + - reg > + - interrupts > + - clocks > + - clock-names AFAICS clock-names is required for all compatibles. > + > +unevaluatedProperties: false > + > +examples: > + - | > + #include <dt-bindings/interrupt-controller/irq.h> > + can0: can@f000c000 { I think unused labels should be removed. > + compatible = "atmel,at91sam9x5-can"; > + reg = <0xf000c000 0x300>; > + interrupts = <30 IRQ_TYPE_LEVEL_HIGH 3>; > + }; > diff --git a/Documentation/devicetree/bindings/net/can/atmel-can.txt b/Documentation/devicetree/bindings/net/can/atmel-can.txt > deleted file mode 100644 > index 218a3b3eb27e..000000000000 > --- a/Documentation/devicetree/bindings/net/can/atmel-can.txt > +++ /dev/null > @@ -1,15 +0,0 @@ > -* AT91 CAN * > - > -Required properties: > - - compatible: Should be "atmel,at91sam9263-can", "atmel,at91sam9x5-can" or > - "microchip,sam9x60-can" > - - reg: Should contain CAN controller registers location and length > - - interrupts: Should contain IRQ line for the CAN controller > - > -Example: > - > - can0: can@f000c000 { > - compatible = "atmel,at91sam9x5-can"; > - reg = <0xf000c000 0x300>; > - interrupts = <40 4 5> > - }; > > --- > base-commit: 32ffa5373540a8d1c06619f52d019c6cdc948bb4 > change-id: 20240912-can-8eb7f8e7566d > > Best regards, > -- > Charan Pedumuru <charan.pedumuru@microchip.com> > > > Marc -- Pengutronix e.K. | Marc Kleine-Budde | Embedded Linux | https://www.pengutronix.de | Vertretung Nürnberg | Phone: +49-5121-206917-129 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-9 |
On 12/09/24 13:05, Marc Kleine-Budde wrote: > On 12.09.2024 11:19:16, Charan Pedumuru wrote: >> Convert atmel-can documentation to yaml format >> >> Signed-off-by: Charan Pedumuru<charan.pedumuru@microchip.com> >> --- >> .../bindings/net/can/atmel,at91sam9263-can.yaml | 67 ++++++++++++++++++++++ >> .../devicetree/bindings/net/can/atmel-can.txt | 15 ----- >> 2 files changed, 67 insertions(+), 15 deletions(-) >> >> diff --git a/Documentation/devicetree/bindings/net/can/atmel,at91sam9263-can.yaml b/Documentation/devicetree/bindings/net/can/atmel,at91sam9263-can.yaml >> new file mode 100644 >> index 000000000000..269af4c993a7 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/net/can/atmel,at91sam9263-can.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/atmel,at91sam9263-can.yaml# >> +$schema:http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: Atmel CAN Controller >> + >> +maintainers: >> + - Nicolas Ferre<nicolas.ferre@microchip.com> >> + >> +properties: >> + compatible: >> + oneOf: >> + - enum: >> + - atmel,at91sam9263-can >> + - atmel,at91sam9x5-can >> + - microchip,sam9x60-can > The driver doesn't have a compatible for "microchip,sam9x60-can". Yes, I will remove it. > >> + - items: >> + - enum: >> + - microchip,sam9x60-can >> + - const: atmel,at91sam9x5-can >> + >> + reg: >> + maxItems: 1 >> + >> + interrupts: >> + maxItems: 1 >> + >> + clocks: >> + maxItems: 1 >> + >> + clock-names: >> + items: >> + - const: can_clk >> + >> +required: >> + - compatible >> + - reg >> + - interrupts >> + >> +allOf: >> + - $ref: can-controller.yaml# >> + - if: >> + properties: >> + compatible: >> + contains: >> + enum: >> + - microchip,sam9x60-can >> + then: >> + required: >> + - compatible >> + - reg >> + - interrupts >> + - clocks >> + - clock-names > AFAICS clock-names is required for all compatibles. In our case only sam9x60 is using clock-names property. > >> + >> +unevaluatedProperties: false >> + >> +examples: >> + - | >> + #include <dt-bindings/interrupt-controller/irq.h> >> + can0: can@f000c000 { > I think unused labels should be removed. Ok, I will remove the labels in next revision. Thanks. > >> + compatible = "atmel,at91sam9x5-can"; >> + reg = <0xf000c000 0x300>; >> + interrupts = <30 IRQ_TYPE_LEVEL_HIGH 3>; >> + }; >> diff --git a/Documentation/devicetree/bindings/net/can/atmel-can.txt b/Documentation/devicetree/bindings/net/can/atmel-can.txt >> deleted file mode 100644 >> index 218a3b3eb27e..000000000000 >> --- a/Documentation/devicetree/bindings/net/can/atmel-can.txt >> +++ /dev/null >> @@ -1,15 +0,0 @@ >> -* AT91 CAN * >> - >> -Required properties: >> - - compatible: Should be "atmel,at91sam9263-can", "atmel,at91sam9x5-can" or >> - "microchip,sam9x60-can" >> - - reg: Should contain CAN controller registers location and length >> - - interrupts: Should contain IRQ line for the CAN controller >> - >> -Example: >> - >> - can0: can@f000c000 { >> - compatible = "atmel,at91sam9x5-can"; >> - reg = <0xf000c000 0x300>; >> - interrupts = <40 4 5> >> - }; >> >> --- >> base-commit: 32ffa5373540a8d1c06619f52d019c6cdc948bb4 >> change-id: 20240912-can-8eb7f8e7566d >> >> Best regards, >> -- >> Charan Pedumuru<charan.pedumuru@microchip.com> >> >> >> > Marc -- Best Regards, Charan.
On 20.09.2024 04:51:57, Charan.Pedumuru@microchip.com wrote: > >> +allOf: > >> + - $ref: can-controller.yaml# > >> + - if: > >> + properties: > >> + compatible: > >> + contains: > >> + enum: > >> + - microchip,sam9x60-can > >> + then: > >> + required: > >> + - compatible > >> + - reg > >> + - interrupts > >> + - clocks > >> + - clock-names > > AFAICS clock-names is required for all compatibles. > In our case only sam9x60 is using clock-names property. No, the driver uses "clk_get(&pdev->dev, "can_clk")", so this property is mandatory. regards, Marc -- Pengutronix e.K. | Marc Kleine-Budde | Embedded Linux | https://www.pengutronix.de | Vertretung Nürnberg | Phone: +49-5121-206917-129 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-9 |
On 23/09/24 16:27, Marc Kleine-Budde wrote: > On 20.09.2024 04:51:57,Charan.Pedumuru@microchip.com wrote: >>>> +allOf: >>>> + - $ref: can-controller.yaml# >>>> + - if: >>>> + properties: >>>> + compatible: >>>> + contains: >>>> + enum: >>>> + - microchip,sam9x60-can >>>> + then: >>>> + required: >>>> + - compatible >>>> + - reg >>>> + - interrupts >>>> + - clocks >>>> + - clock-names >>> AFAICS clock-names is required for all compatibles. >> In our case only sam9x60 is using clock-names property. > No, the driver uses "clk_get(&pdev->dev, "can_clk")", so this property > is mandatory. Yes, what you said was correct, it was our mistake. I will remove the if statements and make clocks and clock-names as default required properties. I will fix this in next revision. > > regards, > Marc > > -- Pengutronix e.K. | Marc Kleine-Budde | Embedded Linux | > https://www.pengutronix.de | Vertretung Nürnberg | Phone: > +49-5121-206917-129 | Amtsgericht Hildesheim, HRA 2686 | Fax: > +49-5121-206917-9 | -- Best Regards, Charan.
On Thu, Sep 12, 2024 at 11:19:16AM +0530, Charan Pedumuru wrote: > Convert atmel-can documentation to yaml format > > Signed-off-by: Charan Pedumuru <charan.pedumuru@microchip.com> Please see the comments I left on the internal v2 of this patch. Thanks, Conor. > --- > .../bindings/net/can/atmel,at91sam9263-can.yaml | 67 ++++++++++++++++++++++ > .../devicetree/bindings/net/can/atmel-can.txt | 15 ----- > 2 files changed, 67 insertions(+), 15 deletions(-) > > diff --git a/Documentation/devicetree/bindings/net/can/atmel,at91sam9263-can.yaml b/Documentation/devicetree/bindings/net/can/atmel,at91sam9263-can.yaml > new file mode 100644 > index 000000000000..269af4c993a7 > --- /dev/null > +++ b/Documentation/devicetree/bindings/net/can/atmel,at91sam9263-can.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/atmel,at91sam9263-can.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Atmel CAN Controller > + > +maintainers: > + - Nicolas Ferre <nicolas.ferre@microchip.com> > + > +properties: > + compatible: > + oneOf: > + - enum: > + - atmel,at91sam9263-can > + - atmel,at91sam9x5-can > + - microchip,sam9x60-can > + - items: > + - enum: > + - microchip,sam9x60-can > + - const: atmel,at91sam9x5-can > + > + reg: > + maxItems: 1 > + > + interrupts: > + maxItems: 1 > + > + clocks: > + maxItems: 1 > + > + clock-names: > + items: > + - const: can_clk > + > +required: > + - compatible > + - reg > + - interrupts > + > +allOf: > + - $ref: can-controller.yaml# > + - if: > + properties: > + compatible: > + contains: > + enum: > + - microchip,sam9x60-can > + then: > + required: > + - compatible > + - reg > + - interrupts > + - clocks > + - clock-names > + > +unevaluatedProperties: false > + > +examples: > + - | > + #include <dt-bindings/interrupt-controller/irq.h> > + can0: can@f000c000 { > + compatible = "atmel,at91sam9x5-can"; > + reg = <0xf000c000 0x300>; > + interrupts = <30 IRQ_TYPE_LEVEL_HIGH 3>; > + }; > diff --git a/Documentation/devicetree/bindings/net/can/atmel-can.txt b/Documentation/devicetree/bindings/net/can/atmel-can.txt > deleted file mode 100644 > index 218a3b3eb27e..000000000000 > --- a/Documentation/devicetree/bindings/net/can/atmel-can.txt > +++ /dev/null > @@ -1,15 +0,0 @@ > -* AT91 CAN * > - > -Required properties: > - - compatible: Should be "atmel,at91sam9263-can", "atmel,at91sam9x5-can" or > - "microchip,sam9x60-can" > - - reg: Should contain CAN controller registers location and length > - - interrupts: Should contain IRQ line for the CAN controller > - > -Example: > - > - can0: can@f000c000 { > - compatible = "atmel,at91sam9x5-can"; > - reg = <0xf000c000 0x300>; > - interrupts = <40 4 5> > - }; > > --- > base-commit: 32ffa5373540a8d1c06619f52d019c6cdc948bb4 > change-id: 20240912-can-8eb7f8e7566d > > Best regards, > -- > Charan Pedumuru <charan.pedumuru@microchip.com> >
On 12/09/24 11:19 am, Charan Pedumuru wrote: > Convert atmel-can documentation to yaml format > > Signed-off-by: Charan Pedumuru <charan.pedumuru@microchip.com> Reviewed-by: Dharma Balasubiramani <dharma.b@microchip.com> > --- > .../bindings/net/can/atmel,at91sam9263-can.yaml | 67 ++++++++++++++++++++++ > .../devicetree/bindings/net/can/atmel-can.txt | 15 ----- > 2 files changed, 67 insertions(+), 15 deletions(-) > > diff --git a/Documentation/devicetree/bindings/net/can/atmel,at91sam9263-can.yaml b/Documentation/devicetree/bindings/net/can/atmel,at91sam9263-can.yaml > new file mode 100644 > index 000000000000..269af4c993a7 > --- /dev/null > +++ b/Documentation/devicetree/bindings/net/can/atmel,at91sam9263-can.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/atmel,at91sam9263-can.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Atmel CAN Controller > + > +maintainers: > + - Nicolas Ferre <nicolas.ferre@microchip.com> > + > +properties: > + compatible: > + oneOf: > + - enum: > + - atmel,at91sam9263-can > + - atmel,at91sam9x5-can > + - microchip,sam9x60-can > + - items: > + - enum: > + - microchip,sam9x60-can > + - const: atmel,at91sam9x5-can > + > + reg: > + maxItems: 1 > + > + interrupts: > + maxItems: 1 > + > + clocks: > + maxItems: 1 > + > + clock-names: > + items: > + - const: can_clk > + > +required: > + - compatible > + - reg > + - interrupts > + > +allOf: > + - $ref: can-controller.yaml# > + - if: > + properties: > + compatible: > + contains: > + enum: > + - microchip,sam9x60-can > + then: > + required: > + - compatible > + - reg > + - interrupts > + - clocks > + - clock-names > + > +unevaluatedProperties: false > + > +examples: > + - | > + #include <dt-bindings/interrupt-controller/irq.h> > + can0: can@f000c000 { > + compatible = "atmel,at91sam9x5-can"; > + reg = <0xf000c000 0x300>; > + interrupts = <30 IRQ_TYPE_LEVEL_HIGH 3>; > + }; > diff --git a/Documentation/devicetree/bindings/net/can/atmel-can.txt b/Documentation/devicetree/bindings/net/can/atmel-can.txt > deleted file mode 100644 > index 218a3b3eb27e..000000000000 > --- a/Documentation/devicetree/bindings/net/can/atmel-can.txt > +++ /dev/null > @@ -1,15 +0,0 @@ > -* AT91 CAN * > - > -Required properties: > - - compatible: Should be "atmel,at91sam9263-can", "atmel,at91sam9x5-can" or > - "microchip,sam9x60-can" > - - reg: Should contain CAN controller registers location and length > - - interrupts: Should contain IRQ line for the CAN controller > - > -Example: > - > - can0: can@f000c000 { > - compatible = "atmel,at91sam9x5-can"; > - reg = <0xf000c000 0x300>; > - interrupts = <40 4 5> > - }; > > --- > base-commit: 32ffa5373540a8d1c06619f52d019c6cdc948bb4 > change-id: 20240912-can-8eb7f8e7566d > > Best regards, -- With Best Regards, Dharma B.
© 2016 - 2024 Red Hat, Inc.