Message ID | 20240912-test-v1-18-458fa57c8ccf@analog.com |
---|---|
State | New |
Headers | show |
Series | Adding support of ADI ARMv8 ADSP-SC598 SoC. | expand |
On Thu, Sep 12, 2024 at 07:25:03PM +0100, Arturs Artamonovs wrote: > Add serial driver bindings. Don''t need 'documentation' in the the subject. That's redundant with 'dt-bindings'. > > Signed-off-by: Arturs Artamonovs <Arturs.Artamonovs@analog.com> Your S-o-b goes last since you are sending the patch. > Signed-off-by: Utsav Agarwal <Utsav.Agarwal@analog.com> Not clear what Utsav's role was. Needs Co-developed-by? > Co-developed-by: Nathan Barrett-Morrison <nathan.morrison@timesys.com> > Signed-off-by: Nathan Barrett-Morrison <nathan.morrison@timesys.com> > Co-developed-by: Greg Malysa <greg.malysa@timesys.com> > Signed-off-by: Greg Malysa <greg.malysa@timesys.com> > --- > .../devicetree/bindings/serial/adi,uart.yaml | 85 ++++++++++++++++++++++ > 1 file changed, 85 insertions(+) > > diff --git a/Documentation/devicetree/bindings/serial/adi,uart.yaml b/Documentation/devicetree/bindings/serial/adi,uart.yaml > new file mode 100644 > index 0000000000000000000000000000000000000000..de58059efa7e21acaa5b7f4984ffadca18f7f53a > --- /dev/null > +++ b/Documentation/devicetree/bindings/serial/adi,uart.yaml > @@ -0,0 +1,85 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/serial/adi,uart4.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Analog Devices UART Driver for SC5XX-family processors Bindings aren't a driver. > + > +maintainers: > + - Arturs Artamonovs <arturs.artamonovs@analog.com> > + - Utsav Agarwal <Utsav.Agarwal@analog.com> > + > +description: | Don't need '|'. > + Analog Devices UART Driver for SC59X-family processors > + > +properties: > + compatible: > + enum: > + - adi,uart Only 1 UART implementation for all of Analog Devices ever. compatibles should be specific to SoC. > + > + reg: > + maxItems: 1 > + > + dmas: > + maxItems: 2 > + minItems: 2 > + description: TX and RX DMA cluster numbers > + > + dma-names: > + maxItems: 2 > + minItems: 2 > + description: DMA channel names (tx and rx) Names need to be constraints, not freeform text. Plenty of examples to look at... > + > + clocks: > + maxItems: 1 > + description: Clock being used for UART That's obvious. Drop description or say something unique to this device. > + > + clock-names: > + maxItems: 1 > + description: Clock name (sclk0) > + > + interrupt-names: > + minItems: 3 > + maxItems: 3 > + description: Interrupt names (tx + rx + status) > + > + interrupts: > + minItems: 3 > + maxItems: 3 > + description: GIC interrupt numbers > + > + adi,use-edbo: > + type: boolean > + description: Enable divide by one in divisor Versus divide by ??? > + > +required: > + - compatible > + - reg > + - clocks > + - clock-names > + - interrupt-names > + - interrupts > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/interrupt-controller/arm-gic.h> > + #include <dt-bindings/interrupt-controller/irq.h> > + #include <dt-bindings/clock/adi-sc5xx-clock.h> > + > + uart0: uart@31003000 { serial@... Drop unused labels. > + compatible = "adi,uart"; > + reg = <0x31003000 0x40>; > + clocks = <&clk ADSP_SC598_CLK_CGU0_SCLK0>; > + clock-names = "sclk0"; > + interrupt-parent = <&gic>; > + interrupt-names = "tx", "rx", "status"; > + interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>, > + <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>, > + <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>; > + adi,use-edbo; > + status = "disabled"; Examples should be enabled. Drop. > + }; > + > > -- > 2.25.1 >
diff --git a/Documentation/devicetree/bindings/serial/adi,uart.yaml b/Documentation/devicetree/bindings/serial/adi,uart.yaml new file mode 100644 index 0000000000000000000000000000000000000000..de58059efa7e21acaa5b7f4984ffadca18f7f53a --- /dev/null +++ b/Documentation/devicetree/bindings/serial/adi,uart.yaml @@ -0,0 +1,85 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/serial/adi,uart4.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Analog Devices UART Driver for SC5XX-family processors + +maintainers: + - Arturs Artamonovs <arturs.artamonovs@analog.com> + - Utsav Agarwal <Utsav.Agarwal@analog.com> + +description: | + Analog Devices UART Driver for SC59X-family processors + +properties: + compatible: + enum: + - adi,uart + + reg: + maxItems: 1 + + dmas: + maxItems: 2 + minItems: 2 + description: TX and RX DMA cluster numbers + + dma-names: + maxItems: 2 + minItems: 2 + description: DMA channel names (tx and rx) + + clocks: + maxItems: 1 + description: Clock being used for UART + + clock-names: + maxItems: 1 + description: Clock name (sclk0) + + interrupt-names: + minItems: 3 + maxItems: 3 + description: Interrupt names (tx + rx + status) + + interrupts: + minItems: 3 + maxItems: 3 + description: GIC interrupt numbers + + adi,use-edbo: + type: boolean + description: Enable divide by one in divisor + +required: + - compatible + - reg + - clocks + - clock-names + - interrupt-names + - interrupts + +additionalProperties: false + +examples: + - | + #include <dt-bindings/interrupt-controller/arm-gic.h> + #include <dt-bindings/interrupt-controller/irq.h> + #include <dt-bindings/clock/adi-sc5xx-clock.h> + + uart0: uart@31003000 { + compatible = "adi,uart"; + reg = <0x31003000 0x40>; + clocks = <&clk ADSP_SC598_CLK_CGU0_SCLK0>; + clock-names = "sclk0"; + interrupt-parent = <&gic>; + interrupt-names = "tx", "rx", "status"; + interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>; + adi,use-edbo; + status = "disabled"; + }; +