* [PATCH v5 06/39] dt-bindings: soc: Add Cirrus EP93xx
2023-11-22 8:59 [PATCH v5 00/39] ep93xx device tree conversion Nikita Shubin via B4 Relay
@ 2023-11-22 8:59 ` Nikita Shubin via B4 Relay
2023-11-27 20:18 ` Rob Herring
2023-11-22 8:59 ` [PATCH v5 08/39] dt-bindings: dma: " Nikita Shubin via B4 Relay
` (14 subsequent siblings)
15 siblings, 1 reply; 34+ messages in thread
From: Nikita Shubin via B4 Relay @ 2023-11-22 8:59 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Nikita Shubin,
Alexander Sverdlin
Cc: devicetree, linux-kernel, Alexander Sverdlin
From: Nikita Shubin <nikita.shubin@maquefel.me>
Add device tree bindings for the Cirrus Logic EP93xx SoC.
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
---
.../bindings/arm/cirrus/cirrus,ep9301.yaml | 38 ++++++++++
.../bindings/soc/cirrus/cirrus,ep9301-syscon.yaml | 83 ++++++++++++++++++++++
include/dt-bindings/soc/cirrus,ep9301-syscon.h | 46 ++++++++++++
3 files changed, 167 insertions(+)
diff --git a/Documentation/devicetree/bindings/arm/cirrus/cirrus,ep9301.yaml b/Documentation/devicetree/bindings/arm/cirrus/cirrus,ep9301.yaml
new file mode 100644
index 000000000000..97dd8b6aefa9
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/cirrus/cirrus,ep9301.yaml
@@ -0,0 +1,38 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/arm/cirrus/cirrus,ep9301.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Cirrus Logic EP93xx platforms
+
+description:
+ The EP93xx SoC is a ARMv4T-based with 200 MHz ARM9 CPU.
+
+maintainers:
+ - Alexander Sverdlin <alexander.sverdlin@gmail.com>
+ - Nikita Shubin <nikita.shubin@maquefel.me>
+
+properties:
+ $nodename:
+ const: '/'
+ compatible:
+ oneOf:
+ - description: The TS-7250 is a compact, full-featured Single Board Computer (SBC)
+ based upon the Cirrus EP9302 ARM9 CPU
+ items:
+ - const: technologic,ts7250
+ - const: cirrus,ep9301
+
+ - description: The Liebherr BK3 is a derivate from ts7250 board
+ items:
+ - const: liebherr,bk3
+ - const: cirrus,ep9301
+
+ - description: EDB302 is an evaluation board by Cirrus Logic,
+ based on a Cirrus Logic EP9302 CPU
+ items:
+ - const: cirrus,edb9302
+ - const: cirrus,ep9301
+
+additionalProperties: true
diff --git a/Documentation/devicetree/bindings/soc/cirrus/cirrus,ep9301-syscon.yaml b/Documentation/devicetree/bindings/soc/cirrus/cirrus,ep9301-syscon.yaml
new file mode 100644
index 000000000000..283cf2386d95
--- /dev/null
+++ b/Documentation/devicetree/bindings/soc/cirrus/cirrus,ep9301-syscon.yaml
@@ -0,0 +1,83 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/soc/cirrus/cirrus,ep9301-syscon.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Cirrus Logic EP93xx Platforms System Controller
+
+maintainers:
+ - Alexander Sverdlin <alexander.sverdlin@gmail.com>
+ - Nikita Shubin <nikita.shubin@maquefel.me>
+
+properties:
+ compatible:
+ oneOf:
+ - items:
+ - enum:
+ - cirrus,ep9302-syscon
+ - cirrus,ep9307-syscon
+ - cirrus,ep9312-syscon
+ - cirrus,ep9315-syscon
+ - const: cirrus,ep9301-syscon
+ - const: syscon
+ - const: simple-mfd
+ - items:
+ - const: cirrus,ep9301-syscon
+ - const: syscon
+ - const: simple-mfd
+
+ reg:
+ maxItems: 1
+
+ "#clock-cells":
+ const: 1
+
+ clocks:
+ items:
+ - description: reference clock
+
+patternProperties:
+ '^pins-':
+ type: object
+ description: pin node
+ $ref: /schemas/pinctrl/pinmux-node.yaml
+
+ properties:
+ function:
+ enum: [ spi, ac97, i2s, pwm, keypad, pata, lcd, gpio ]
+
+ groups:
+ enum: [ ssp, ac97, i2s_on_ssp, i2s_on_ac97, pwm1, gpio1agrp,
+ gpio2agrp, gpio3agrp, gpio4agrp, gpio6agrp, gpio7agrp,
+ rasteronsdram0grp, rasteronsdram3grp, keypadgrp, idegrp ]
+
+ required:
+ - function
+ - groups
+
+ unevaluatedProperties: false
+
+required:
+ - compatible
+ - reg
+ - "#clock-cells"
+ - clocks
+
+additionalProperties: false
+
+examples:
+ - |
+ syscon@80930000 {
+ compatible = "cirrus,ep9301-syscon",
+ "syscon", "simple-mfd";
+ reg = <0x80930000 0x1000>;
+
+ #clock-cells = <1>;
+ clocks = <&xtali>;
+
+ spi_default_pins: pins-spi {
+ function = "spi";
+ groups = "ssp";
+ };
+ };
diff --git a/include/dt-bindings/soc/cirrus,ep9301-syscon.h b/include/dt-bindings/soc/cirrus,ep9301-syscon.h
new file mode 100644
index 000000000000..6bb8f532e7d0
--- /dev/null
+++ b/include/dt-bindings/soc/cirrus,ep9301-syscon.h
@@ -0,0 +1,46 @@
+/* SPDX-License-Identifier: (GPL-2.0 OR MIT) */
+#ifndef DT_BINDINGS_CIRRUS_EP93XX_CLOCK_H
+#define DT_BINDINGS_CIRRUS_EP93XX_CLOCK_H
+
+#define EP93XX_CLK_PLL1 0
+#define EP93XX_CLK_PLL2 1
+
+#define EP93XX_CLK_FCLK 2
+#define EP93XX_CLK_HCLK 3
+#define EP93XX_CLK_PCLK 4
+
+#define EP93XX_CLK_UART 5
+#define EP93XX_CLK_SPI 6
+#define EP93XX_CLK_PWM 7
+#define EP93XX_CLK_USB 8
+
+#define EP93XX_CLK_M2M0 9
+#define EP93XX_CLK_M2M1 10
+
+#define EP93XX_CLK_M2P0 11
+#define EP93XX_CLK_M2P1 12
+#define EP93XX_CLK_M2P2 13
+#define EP93XX_CLK_M2P3 14
+#define EP93XX_CLK_M2P4 15
+#define EP93XX_CLK_M2P5 16
+#define EP93XX_CLK_M2P6 17
+#define EP93XX_CLK_M2P7 18
+#define EP93XX_CLK_M2P8 19
+#define EP93XX_CLK_M2P9 20
+
+#define EP93XX_CLK_UART1 21
+#define EP93XX_CLK_UART2 22
+#define EP93XX_CLK_UART3 23
+
+#define EP93XX_CLK_ADC 24
+#define EP93XX_CLK_ADC_EN 25
+
+#define EP93XX_CLK_KEYPAD 26
+
+#define EP93XX_CLK_VIDEO 27
+
+#define EP93XX_CLK_I2S_MCLK 28
+#define EP93XX_CLK_I2S_SCLK 29
+#define EP93XX_CLK_I2S_LRCLK 30
+
+#endif /* DT_BINDINGS_CIRRUS_EP93XX_CLOCK_H */
--
2.41.0
^ permalink raw reply related [flat|nested] 34+ messages in thread
* Re: [PATCH v5 06/39] dt-bindings: soc: Add Cirrus EP93xx
2023-11-22 8:59 ` [PATCH v5 06/39] dt-bindings: soc: Add Cirrus EP93xx Nikita Shubin via B4 Relay
@ 2023-11-27 20:18 ` Rob Herring
2023-12-11 11:46 ` Nikita Shubin
0 siblings, 1 reply; 34+ messages in thread
From: Rob Herring @ 2023-11-27 20:18 UTC (permalink / raw)
To: Nikita Shubin
Cc: Krzysztof Kozlowski, Conor Dooley, Alexander Sverdlin, devicetree,
linux-kernel
On Wed, Nov 22, 2023 at 11:59:44AM +0300, Nikita Shubin wrote:
> Add device tree bindings for the Cirrus Logic EP93xx SoC.
>
> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> ---
> .../bindings/arm/cirrus/cirrus,ep9301.yaml | 38 ++++++++++
> .../bindings/soc/cirrus/cirrus,ep9301-syscon.yaml | 83 ++++++++++++++++++++++
> include/dt-bindings/soc/cirrus,ep9301-syscon.h | 46 ++++++++++++
This looks like it is mostly clocks. I'd put it in bindings/clock/ and
include/dt-bindings/clock/ instead.
> 3 files changed, 167 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/arm/cirrus/cirrus,ep9301.yaml b/Documentation/devicetree/bindings/arm/cirrus/cirrus,ep9301.yaml
> new file mode 100644
> index 000000000000..97dd8b6aefa9
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/arm/cirrus/cirrus,ep9301.yaml
> @@ -0,0 +1,38 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/arm/cirrus/cirrus,ep9301.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Cirrus Logic EP93xx platforms
> +
> +description:
> + The EP93xx SoC is a ARMv4T-based with 200 MHz ARM9 CPU.
> +
> +maintainers:
> + - Alexander Sverdlin <alexander.sverdlin@gmail.com>
> + - Nikita Shubin <nikita.shubin@maquefel.me>
> +
> +properties:
> + $nodename:
> + const: '/'
> + compatible:
> + oneOf:
> + - description: The TS-7250 is a compact, full-featured Single Board Computer (SBC)
> + based upon the Cirrus EP9302 ARM9 CPU
Wrap lines at 80 unless there's some advantage to going to 100. Here
there is not.
> + items:
> + - const: technologic,ts7250
> + - const: cirrus,ep9301
> +
> + - description: The Liebherr BK3 is a derivate from ts7250 board
> + items:
> + - const: liebherr,bk3
> + - const: cirrus,ep9301
> +
> + - description: EDB302 is an evaluation board by Cirrus Logic,
> + based on a Cirrus Logic EP9302 CPU
> + items:
> + - const: cirrus,edb9302
> + - const: cirrus,ep9301
> +
> +additionalProperties: true
> diff --git a/Documentation/devicetree/bindings/soc/cirrus/cirrus,ep9301-syscon.yaml b/Documentation/devicetree/bindings/soc/cirrus/cirrus,ep9301-syscon.yaml
> new file mode 100644
> index 000000000000..283cf2386d95
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/soc/cirrus/cirrus,ep9301-syscon.yaml
> @@ -0,0 +1,83 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/soc/cirrus/cirrus,ep9301-syscon.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Cirrus Logic EP93xx Platforms System Controller
> +
> +maintainers:
> + - Alexander Sverdlin <alexander.sverdlin@gmail.com>
> + - Nikita Shubin <nikita.shubin@maquefel.me>
> +
> +properties:
> + compatible:
> + oneOf:
> + - items:
> + - enum:
> + - cirrus,ep9302-syscon
> + - cirrus,ep9307-syscon
> + - cirrus,ep9312-syscon
> + - cirrus,ep9315-syscon
The registers of these are all the same as (or a superset of) the
EP9301? That's what you are claiming. Perhaps already discussed, but
there's no blurb here to explain the relationship.
'syscon' is a Linux term. Is this block really called this?
> + - const: cirrus,ep9301-syscon
> + - const: syscon
> + - const: simple-mfd
> + - items:
> + - const: cirrus,ep9301-syscon
> + - const: syscon
> + - const: simple-mfd
Doesn't look like an simple-mfd to me. You don't have independent child
blocks which don't depend on the parent node.
> +
> + reg:
> + maxItems: 1
> +
> + "#clock-cells":
> + const: 1
> +
> + clocks:
> + items:
> + - description: reference clock
> +
> +patternProperties:
> + '^pins-':
> + type: object
> + description: pin node
> + $ref: /schemas/pinctrl/pinmux-node.yaml
> +
> + properties:
> + function:
> + enum: [ spi, ac97, i2s, pwm, keypad, pata, lcd, gpio ]
> +
> + groups:
> + enum: [ ssp, ac97, i2s_on_ssp, i2s_on_ac97, pwm1, gpio1agrp,
> + gpio2agrp, gpio3agrp, gpio4agrp, gpio6agrp, gpio7agrp,
> + rasteronsdram0grp, rasteronsdram3grp, keypadgrp, idegrp ]
> +
> + required:
> + - function
> + - groups
> +
> + unevaluatedProperties: false
> +
> +required:
> + - compatible
> + - reg
> + - "#clock-cells"
> + - clocks
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + syscon@80930000 {
> + compatible = "cirrus,ep9301-syscon",
> + "syscon", "simple-mfd";
> + reg = <0x80930000 0x1000>;
> +
> + #clock-cells = <1>;
> + clocks = <&xtali>;
> +
> + spi_default_pins: pins-spi {
> + function = "spi";
> + groups = "ssp";
> + };
> + };
> diff --git a/include/dt-bindings/soc/cirrus,ep9301-syscon.h b/include/dt-bindings/soc/cirrus,ep9301-syscon.h
> new file mode 100644
> index 000000000000..6bb8f532e7d0
> --- /dev/null
> +++ b/include/dt-bindings/soc/cirrus,ep9301-syscon.h
> @@ -0,0 +1,46 @@
> +/* SPDX-License-Identifier: (GPL-2.0 OR MIT) */
> +#ifndef DT_BINDINGS_CIRRUS_EP93XX_CLOCK_H
> +#define DT_BINDINGS_CIRRUS_EP93XX_CLOCK_H
> +
> +#define EP93XX_CLK_PLL1 0
> +#define EP93XX_CLK_PLL2 1
> +
> +#define EP93XX_CLK_FCLK 2
> +#define EP93XX_CLK_HCLK 3
> +#define EP93XX_CLK_PCLK 4
> +
> +#define EP93XX_CLK_UART 5
> +#define EP93XX_CLK_SPI 6
> +#define EP93XX_CLK_PWM 7
> +#define EP93XX_CLK_USB 8
> +
> +#define EP93XX_CLK_M2M0 9
> +#define EP93XX_CLK_M2M1 10
> +
> +#define EP93XX_CLK_M2P0 11
> +#define EP93XX_CLK_M2P1 12
> +#define EP93XX_CLK_M2P2 13
> +#define EP93XX_CLK_M2P3 14
> +#define EP93XX_CLK_M2P4 15
> +#define EP93XX_CLK_M2P5 16
> +#define EP93XX_CLK_M2P6 17
> +#define EP93XX_CLK_M2P7 18
> +#define EP93XX_CLK_M2P8 19
> +#define EP93XX_CLK_M2P9 20
> +
> +#define EP93XX_CLK_UART1 21
> +#define EP93XX_CLK_UART2 22
> +#define EP93XX_CLK_UART3 23
> +
> +#define EP93XX_CLK_ADC 24
> +#define EP93XX_CLK_ADC_EN 25
> +
> +#define EP93XX_CLK_KEYPAD 26
> +
> +#define EP93XX_CLK_VIDEO 27
> +
> +#define EP93XX_CLK_I2S_MCLK 28
> +#define EP93XX_CLK_I2S_SCLK 29
> +#define EP93XX_CLK_I2S_LRCLK 30
> +
> +#endif /* DT_BINDINGS_CIRRUS_EP93XX_CLOCK_H */
>
> --
> 2.41.0
>
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [PATCH v5 06/39] dt-bindings: soc: Add Cirrus EP93xx
2023-11-27 20:18 ` Rob Herring
@ 2023-12-11 11:46 ` Nikita Shubin
0 siblings, 0 replies; 34+ messages in thread
From: Nikita Shubin @ 2023-12-11 11:46 UTC (permalink / raw)
To: Rob Herring
Cc: Krzysztof Kozlowski, Conor Dooley, Alexander Sverdlin, devicetree,
linux-kernel
Hello Robert!
On Mon, 2023-11-27 at 14:18 -0600, Rob Herring wrote:
> On Wed, Nov 22, 2023 at 11:59:44AM +0300, Nikita Shubin wrote:
> > Add device tree bindings for the Cirrus Logic EP93xx SoC.
> >
> > Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> > ---
> > .../bindings/arm/cirrus/cirrus,ep9301.yaml | 38 ++++++++++
>
> > .../bindings/soc/cirrus/cirrus,ep9301-syscon.yaml | 83
> > ++++++++++++++++++++++
> > include/dt-bindings/soc/cirrus,ep9301-syscon.h | 46
> > ++++++++++++
>
> This looks like it is mostly clocks. I'd put it in bindings/clock/
> and
> include/dt-bindings/clock/ instead.
>
> > 3 files changed, 167 insertions(+)
> >
> > diff --git
> > a/Documentation/devicetree/bindings/arm/cirrus/cirrus,ep9301.yaml
> > b/Documentation/devicetree/bindings/arm/cirrus/cirrus,ep9301.yaml
> > new file mode 100644
> > index 000000000000..97dd8b6aefa9
> > --- /dev/null
> > +++
> > b/Documentation/devicetree/bindings/arm/cirrus/cirrus,ep9301.yaml
> > @@ -0,0 +1,38 @@
> > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/arm/cirrus/cirrus,ep9301.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Cirrus Logic EP93xx platforms
> > +
> > +description:
> > + The EP93xx SoC is a ARMv4T-based with 200 MHz ARM9 CPU.
> > +
> > +maintainers:
> > + - Alexander Sverdlin <alexander.sverdlin@gmail.com>
> > + - Nikita Shubin <nikita.shubin@maquefel.me>
> > +
> > +properties:
> > + $nodename:
> > + const: '/'
> > + compatible:
> > + oneOf:
> > + - description: The TS-7250 is a compact, full-featured
> > Single Board Computer (SBC)
> > + based upon the Cirrus EP9302 ARM9 CPU
>
> Wrap lines at 80 unless there's some advantage to going to 100. Here
> there is not.
>
> > + items:
> > + - const: technologic,ts7250
> > + - const: cirrus,ep9301
> > +
> > + - description: The Liebherr BK3 is a derivate from ts7250
> > board
> > + items:
> > + - const: liebherr,bk3
> > + - const: cirrus,ep9301
> > +
> > + - description: EDB302 is an evaluation board by Cirrus
> > Logic,
> > + based on a Cirrus Logic EP9302 CPU
> > + items:
> > + - const: cirrus,edb9302
> > + - const: cirrus,ep9301
> > +
> > +additionalProperties: true
> > diff --git
> > a/Documentation/devicetree/bindings/soc/cirrus/cirrus,ep9301-
> > syscon.yaml
> > b/Documentation/devicetree/bindings/soc/cirrus/cirrus,ep9301-
> > syscon.yaml
> > new file mode 100644
> > index 000000000000..283cf2386d95
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/soc/cirrus/cirrus,ep9301-
> > syscon.yaml
> > @@ -0,0 +1,83 @@
> > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> > +%YAML 1.2
> > +---
> > +$id:
> > http://devicetree.org/schemas/soc/cirrus/cirrus,ep9301-syscon.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Cirrus Logic EP93xx Platforms System Controller
> > +
> > +maintainers:
> > + - Alexander Sverdlin <alexander.sverdlin@gmail.com>
> > + - Nikita Shubin <nikita.shubin@maquefel.me>
> > +
> > +properties:
> > + compatible:
> > + oneOf:
> > + - items:
> > + - enum:
> > + - cirrus,ep9302-syscon
> > + - cirrus,ep9307-syscon
> > + - cirrus,ep9312-syscon
> > + - cirrus,ep9315-syscon
>
> The registers of these are all the same as (or a superset of) the
> EP9301? That's what you are claiming. Perhaps already discussed, but
> there's no blurb here to explain the relationship.
>
> 'syscon' is a Linux term. Is this block really called this?
Citing documentation:
"The System Controller (Syscon) provides:
• Clock control
• Power management
• System configuration management
These central resources are controlled by a set of software-locked
registers, which can be
used to prevent accidental accesses. Syscon generates the various bus
and peripheral
clocks and controls the system startup configuration."
I'll put the following into description:
"Central resources are controlled by a set of software-locked
registers, which can be used to prevent accidental accesses. Syscon
generates the various bus and peripheral clocks and controls the system
startup configuration.
The System Controller (Syscon) provides:
- Clock control
- Power management
- System configuration management
Syscon registers are common for all EP93xx SoC's, through some actual
peripheral may be missing depending on actual SoC model."
>
> > + - const: cirrus,ep9301-syscon
> > + - const: syscon
> > + - const: simple-mfd
> > + - items:
> > + - const: cirrus,ep9301-syscon
> > + - const: syscon
> > + - const: simple-mfd
>
> Doesn't look like an simple-mfd to me. You don't have independent
> child
> blocks which don't depend on the parent node.
>
> > +
> > + reg:
> > + maxItems: 1
> > +
> > + "#clock-cells":
> > + const: 1
> > +
> > + clocks:
> > + items:
> > + - description: reference clock
> > +
> > +patternProperties:
> > + '^pins-':
> > + type: object
> > + description: pin node
> > + $ref: /schemas/pinctrl/pinmux-node.yaml
> > +
> > + properties:
> > + function:
> > + enum: [ spi, ac97, i2s, pwm, keypad, pata, lcd, gpio ]
> > +
> > + groups:
> > + enum: [ ssp, ac97, i2s_on_ssp, i2s_on_ac97, pwm1,
> > gpio1agrp,
> > + gpio2agrp, gpio3agrp, gpio4agrp, gpio6agrp,
> > gpio7agrp,
> > + rasteronsdram0grp, rasteronsdram3grp, keypadgrp,
> > idegrp ]
> > +
> > + required:
> > + - function
> > + - groups
> > +
> > + unevaluatedProperties: false
> > +
> > +required:
> > + - compatible
> > + - reg
> > + - "#clock-cells"
> > + - clocks
> > +
> > +additionalProperties: false
> > +
> > +examples:
> > + - |
> > + syscon@80930000 {
> > + compatible = "cirrus,ep9301-syscon",
> > + "syscon", "simple-mfd";
> > + reg = <0x80930000 0x1000>;
> > +
> > + #clock-cells = <1>;
> > + clocks = <&xtali>;
> > +
> > + spi_default_pins: pins-spi {
> > + function = "spi";
> > + groups = "ssp";
> > + };
> > + };
> > diff --git a/include/dt-bindings/soc/cirrus,ep9301-syscon.h
> > b/include/dt-bindings/soc/cirrus,ep9301-syscon.h
> > new file mode 100644
> > index 000000000000..6bb8f532e7d0
> > --- /dev/null
> > +++ b/include/dt-bindings/soc/cirrus,ep9301-syscon.h
> > @@ -0,0 +1,46 @@
> > +/* SPDX-License-Identifier: (GPL-2.0 OR MIT) */
> > +#ifndef DT_BINDINGS_CIRRUS_EP93XX_CLOCK_H
> > +#define DT_BINDINGS_CIRRUS_EP93XX_CLOCK_H
> > +
> > +#define EP93XX_CLK_PLL1 0
> > +#define EP93XX_CLK_PLL2 1
> > +
> > +#define EP93XX_CLK_FCLK 2
> > +#define EP93XX_CLK_HCLK 3
> > +#define EP93XX_CLK_PCLK 4
> > +
> > +#define EP93XX_CLK_UART 5
> > +#define EP93XX_CLK_SPI 6
> > +#define EP93XX_CLK_PWM 7
> > +#define EP93XX_CLK_USB 8
> > +
> > +#define EP93XX_CLK_M2M0 9
> > +#define EP93XX_CLK_M2M1 10
> > +
> > +#define EP93XX_CLK_M2P0 11
> > +#define EP93XX_CLK_M2P1 12
> > +#define EP93XX_CLK_M2P2 13
> > +#define EP93XX_CLK_M2P3 14
> > +#define EP93XX_CLK_M2P4 15
> > +#define EP93XX_CLK_M2P5 16
> > +#define EP93XX_CLK_M2P6 17
> > +#define EP93XX_CLK_M2P7 18
> > +#define EP93XX_CLK_M2P8 19
> > +#define EP93XX_CLK_M2P9 20
> > +
> > +#define EP93XX_CLK_UART1 21
> > +#define EP93XX_CLK_UART2 22
> > +#define EP93XX_CLK_UART3 23
> > +
> > +#define EP93XX_CLK_ADC 24
> > +#define EP93XX_CLK_ADC_EN 25
> > +
> > +#define EP93XX_CLK_KEYPAD 26
> > +
> > +#define EP93XX_CLK_VIDEO 27
> > +
> > +#define EP93XX_CLK_I2S_MCLK 28
> > +#define EP93XX_CLK_I2S_SCLK 29
> > +#define EP93XX_CLK_I2S_LRCLK 30
> > +
> > +#endif /* DT_BINDINGS_CIRRUS_EP93XX_CLOCK_H */
> >
> > --
> > 2.41.0
> >
^ permalink raw reply [flat|nested] 34+ messages in thread
* [PATCH v5 08/39] dt-bindings: dma: Add Cirrus EP93xx
2023-11-22 8:59 [PATCH v5 00/39] ep93xx device tree conversion Nikita Shubin via B4 Relay
2023-11-22 8:59 ` [PATCH v5 06/39] dt-bindings: soc: Add Cirrus EP93xx Nikita Shubin via B4 Relay
@ 2023-11-22 8:59 ` Nikita Shubin via B4 Relay
2023-11-22 11:02 ` Rob Herring
2023-11-22 18:26 ` Krzysztof Kozlowski
2023-11-22 8:59 ` [PATCH v5 10/39] dt-bindings: watchdog: Add Cirrus EP93x Nikita Shubin via B4 Relay
` (13 subsequent siblings)
15 siblings, 2 replies; 34+ messages in thread
From: Nikita Shubin via B4 Relay @ 2023-11-22 8:59 UTC (permalink / raw)
To: Vinod Koul, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Alexander Sverdlin, Nikita Shubin
Cc: dmaengine, devicetree, linux-kernel, Alexander Sverdlin
From: Nikita Shubin <nikita.shubin@maquefel.me>
Add YAML bindings for ep93xx SoC DMA.
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
---
.../bindings/dma/cirrus,ep9301-dma-m2m.yaml | 84 ++++++++++++
.../bindings/dma/cirrus,ep9301-dma-m2p.yaml | 144 +++++++++++++++++++++
2 files changed, 228 insertions(+)
diff --git a/Documentation/devicetree/bindings/dma/cirrus,ep9301-dma-m2m.yaml b/Documentation/devicetree/bindings/dma/cirrus,ep9301-dma-m2m.yaml
new file mode 100644
index 000000000000..46efdfd0329f
--- /dev/null
+++ b/Documentation/devicetree/bindings/dma/cirrus,ep9301-dma-m2m.yaml
@@ -0,0 +1,84 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/dma/cirrus,ep9301-dma-m2m.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Cirrus Logic ep93xx SoC DMA controller
+
+maintainers:
+ - Alexander Sverdlin <alexander.sverdlin@gmail.com>
+ - Nikita Shubin <nikita.shubin@maquefel.me>
+
+allOf:
+ - $ref: dma-controller.yaml#
+
+properties:
+ compatible:
+ oneOf:
+ - const: cirrus,ep9301-dma-m2m
+ - items:
+ - enum:
+ - cirrus,ep9302-dma-m2m
+ - cirrus,ep9307-dma-m2m
+ - cirrus,ep9312-dma-m2m
+ - cirrus,ep9315-dma-m2m
+ - const: cirrus,ep9301-dma-m2m
+
+ reg:
+ items:
+ - description: m2m0 channel registers
+ - description: m2m1 channel registers
+
+ clocks:
+ items:
+ - description: m2m0 channel gate clock
+ - description: m2m1 channel gate clock
+
+ clock-names:
+ items:
+ - const: m2m0
+ - const: m2m1
+
+ interrupts:
+ items:
+ - description: m2m0 channel interrupt
+ - description: m2m1 channel interrupt
+
+ '#dma-cells':
+ const: 2
+ description: |
+ The first cell is the unique device channel number as indicated by this
+ table for ep93xx:
+
+ 10: SPI controller
+ 11: IDE controller
+
+ The second cell is the DMA direction line number:
+
+ 1: Memory to device
+ 2: Device to memory
+
+required:
+ - compatible
+ - reg
+ - clocks
+ - clock-names
+ - interrupts
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/soc/cirrus,ep9301-syscon.h>
+ dma-controller@80000100 {
+ compatible = "cirrus,ep9301-dma-m2m";
+ reg = <0x80000100 0x0040>,
+ <0x80000140 0x0040>;
+ clocks = <&syscon EP93XX_CLK_M2M0>,
+ <&syscon EP93XX_CLK_M2M1>;
+ clock-names = "m2m0", "m2m1";
+ interrupt-parent = <&vic0>;
+ interrupts = <17>, <18>;
+ #dma-cells = <2>;
+ };
diff --git a/Documentation/devicetree/bindings/dma/cirrus,ep9301-dma-m2p.yaml b/Documentation/devicetree/bindings/dma/cirrus,ep9301-dma-m2p.yaml
new file mode 100644
index 000000000000..81b098cdb03c
--- /dev/null
+++ b/Documentation/devicetree/bindings/dma/cirrus,ep9301-dma-m2p.yaml
@@ -0,0 +1,144 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/dma/cirrus,ep9301-dma-m2p.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Cirrus Logic ep93xx SoC M2P DMA controller
+
+maintainers:
+ - Alexander Sverdlin <alexander.sverdlin@gmail.com>
+ - Nikita Shubin <nikita.shubin@maquefel.me>
+
+allOf:
+ - $ref: dma-controller.yaml#
+
+properties:
+ compatible:
+ oneOf:
+ - const: cirrus,ep9301-dma-m2p
+ - items:
+ - enum:
+ - cirrus,ep9302-dma-m2p
+ - cirrus,ep9307-dma-m2p
+ - cirrus,ep9312-dma-m2p
+ - cirrus,ep9315-dma-m2p
+ - const: cirrus,ep9301-dma-m2p
+
+ reg:
+ items:
+ - description: m2p0 channel registers
+ - description: m2p1 channel registers
+ - description: m2p2 channel registers
+ - description: m2p3 channel registers
+ - description: m2p4 channel registers
+ - description: m2p5 channel registers
+ - description: m2p6 channel registers
+ - description: m2p7 channel registers
+ - description: m2p8 channel registers
+ - description: m2p9 channel registers
+
+ clocks:
+ items:
+ - description: m2p0 channel gate clock
+ - description: m2p1 channel gate clock
+ - description: m2p2 channel gate clock
+ - description: m2p3 channel gate clock
+ - description: m2p4 channel gate clock
+ - description: m2p5 channel gate clock
+ - description: m2p6 channel gate clock
+ - description: m2p7 channel gate clock
+ - description: m2p8 channel gate clock
+ - description: m2p9 channel gate clock
+
+ clock-names:
+ items:
+ - const: m2p0
+ - const: m2p1
+ - const: m2p2
+ - const: m2p3
+ - const: m2p4
+ - const: m2p5
+ - const: m2p6
+ - const: m2p7
+ - const: m2p8
+ - const: m2p9
+
+ interrupts:
+ items:
+ - description: m2p0 channel interrupt
+ - description: m2p1 channel interrupt
+ - description: m2p2 channel interrupt
+ - description: m2p3 channel interrupt
+ - description: m2p4 channel interrupt
+ - description: m2p5 channel interrupt
+ - description: m2p6 channel interrupt
+ - description: m2p7 channel interrupt
+ - description: m2p8 channel interrupt
+ - description: m2p9 channel interrupt
+
+ '#dma-cells':
+ const: 2
+ description: |
+ The first cell is the unique device channel number as indicated by this
+ table for ep93xx:
+
+ 0: I2S channel 1
+ 1: I2S channel 2 (unused)
+ 2: AC97 channel 1 (unused)
+ 3: AC97 channel 2 (unused)
+ 4: AC97 channel 3 (unused)
+ 5: I2S channel 3 (unused)
+ 6: UART1 (unused)
+ 7: UART2 (unused)
+ 8: UART3 (unused)
+ 9: IRDA (unused)
+
+ The second cell is the DMA direction line number:
+
+ 1: Memory to device
+ 2: Device to memory
+
+required:
+ - compatible
+ - reg
+ - clocks
+ - clock-names
+ - interrupts
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/soc/cirrus,ep9301-syscon.h>
+ dma-controller@80000000 {
+ compatible = "cirrus,ep9301-dma-m2p";
+ reg = <0x80000000 0x0040>,
+ <0x80000040 0x0040>,
+ <0x80000080 0x0040>,
+ <0x800000c0 0x0040>,
+ <0x80000240 0x0040>,
+ <0x80000200 0x0040>,
+ <0x800002c0 0x0040>,
+ <0x80000280 0x0040>,
+ <0x80000340 0x0040>,
+ <0x80000300 0x0040>;
+ clocks = <&syscon EP93XX_CLK_M2P0>,
+ <&syscon EP93XX_CLK_M2P1>,
+ <&syscon EP93XX_CLK_M2P2>,
+ <&syscon EP93XX_CLK_M2P3>,
+ <&syscon EP93XX_CLK_M2P4>,
+ <&syscon EP93XX_CLK_M2P5>,
+ <&syscon EP93XX_CLK_M2P6>,
+ <&syscon EP93XX_CLK_M2P7>,
+ <&syscon EP93XX_CLK_M2P8>,
+ <&syscon EP93XX_CLK_M2P9>;
+ clock-names = "m2p0", "m2p1",
+ "m2p2", "m2p3",
+ "m2p4", "m2p5",
+ "m2p6", "m2p7",
+ "m2p8", "m2p9";
+ interrupt-parent = <&vic0>;
+ interrupts = <7>, <8>, <9>, <10>, <11>, <12>, <13>, <14>, <15>, <16>;
+ #dma-cells = <2>;
+ };
--
2.41.0
^ permalink raw reply related [flat|nested] 34+ messages in thread
* Re: [PATCH v5 08/39] dt-bindings: dma: Add Cirrus EP93xx
2023-11-22 8:59 ` [PATCH v5 08/39] dt-bindings: dma: " Nikita Shubin via B4 Relay
@ 2023-11-22 11:02 ` Rob Herring
2023-11-22 15:44 ` Rob Herring
2023-11-22 18:26 ` Krzysztof Kozlowski
1 sibling, 1 reply; 34+ messages in thread
From: Rob Herring @ 2023-11-22 11:02 UTC (permalink / raw)
To: Nikita Shubin
Cc: Vinod Koul, devicetree, Krzysztof Kozlowski, linux-kernel,
Alexander Sverdlin, dmaengine, Rob Herring, Conor Dooley
On Wed, 22 Nov 2023 11:59:46 +0300, Nikita Shubin wrote:
> Add YAML bindings for ep93xx SoC DMA.
>
> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> ---
> .../bindings/dma/cirrus,ep9301-dma-m2m.yaml | 84 ++++++++++++
> .../bindings/dma/cirrus,ep9301-dma-m2p.yaml | 144 +++++++++++++++++++++
> 2 files changed, 228 insertions(+)
>
My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):
yamllint warnings/errors:
dtschema/dtc warnings/errors:
Documentation/devicetree/bindings/dma/cirrus,ep9301-dma-m2p.example.dts:24:18: fatal error: dt-bindings/soc/cirrus,ep9301-syscon.h: No such file or directory
24 | #include <dt-bindings/soc/cirrus,ep9301-syscon.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [scripts/Makefile.lib:419: Documentation/devicetree/bindings/dma/cirrus,ep9301-dma-m2p.example.dtb] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [/builds/robherring/dt-review-ci/linux/Makefile:1424: dt_binding_check] Error 2
make: *** [Makefile:234: __sub-make] Error 2
doc reference errors (make refcheckdocs):
See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20231122-ep93xx-v5-8-d59a76d5df29@maquefel.me
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] 34+ messages in thread
* Re: [PATCH v5 08/39] dt-bindings: dma: Add Cirrus EP93xx
2023-11-22 11:02 ` Rob Herring
@ 2023-11-22 15:44 ` Rob Herring
0 siblings, 0 replies; 34+ messages in thread
From: Rob Herring @ 2023-11-22 15:44 UTC (permalink / raw)
To: Nikita Shubin
Cc: Vinod Koul, devicetree, Krzysztof Kozlowski, linux-kernel,
Alexander Sverdlin, dmaengine, Conor Dooley
On Wed, Nov 22, 2023 at 04:02:29AM -0700, Rob Herring wrote:
>
> On Wed, 22 Nov 2023 11:59:46 +0300, Nikita Shubin wrote:
> > Add YAML bindings for ep93xx SoC DMA.
> >
> > Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> > ---
> > .../bindings/dma/cirrus,ep9301-dma-m2m.yaml | 84 ++++++++++++
> > .../bindings/dma/cirrus,ep9301-dma-m2p.yaml | 144 +++++++++++++++++++++
> > 2 files changed, 228 insertions(+)
> >
>
> My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
> on your patch (DT_CHECKER_FLAGS is new in v5.13):
>
> yamllint warnings/errors:
>
> dtschema/dtc warnings/errors:
> Documentation/devicetree/bindings/dma/cirrus,ep9301-dma-m2p.example.dts:24:18: fatal error: dt-bindings/soc/cirrus,ep9301-syscon.h: No such file or directory
> 24 | #include <dt-bindings/soc/cirrus,ep9301-syscon.h>
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> compilation terminated.
> make[2]: *** [scripts/Makefile.lib:419: Documentation/devicetree/bindings/dma/cirrus,ep9301-dma-m2p.example.dtb] Error 1
> make[2]: *** Waiting for unfinished jobs....
> make[1]: *** [/builds/robherring/dt-review-ci/linux/Makefile:1424: dt_binding_check] Error 2
> make: *** [Makefile:234: __sub-make] Error 2
These can be ignored. Looks like patch 6 got delayed or something and
didn't get applied with the series.
Rob
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [PATCH v5 08/39] dt-bindings: dma: Add Cirrus EP93xx
2023-11-22 8:59 ` [PATCH v5 08/39] dt-bindings: dma: " Nikita Shubin via B4 Relay
2023-11-22 11:02 ` Rob Herring
@ 2023-11-22 18:26 ` Krzysztof Kozlowski
1 sibling, 0 replies; 34+ messages in thread
From: Krzysztof Kozlowski @ 2023-11-22 18:26 UTC (permalink / raw)
To: nikita.shubin, Vinod Koul, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Alexander Sverdlin
Cc: dmaengine, devicetree, linux-kernel
On 22/11/2023 09:59, Nikita Shubin via B4 Relay wrote:
> From: Nikita Shubin <nikita.shubin@maquefel.me>
>
> Add YAML bindings for ep93xx SoC DMA.
>
> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> ---
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 34+ messages in thread
* [PATCH v5 10/39] dt-bindings: watchdog: Add Cirrus EP93x
2023-11-22 8:59 [PATCH v5 00/39] ep93xx device tree conversion Nikita Shubin via B4 Relay
2023-11-22 8:59 ` [PATCH v5 06/39] dt-bindings: soc: Add Cirrus EP93xx Nikita Shubin via B4 Relay
2023-11-22 8:59 ` [PATCH v5 08/39] dt-bindings: dma: " Nikita Shubin via B4 Relay
@ 2023-11-22 8:59 ` Nikita Shubin via B4 Relay
2023-11-22 8:59 ` [PATCH v5 12/39] dt-bindings: pwm: Add Cirrus EP93xx Nikita Shubin via B4 Relay
` (12 subsequent siblings)
15 siblings, 0 replies; 34+ messages in thread
From: Nikita Shubin via B4 Relay @ 2023-11-22 8:59 UTC (permalink / raw)
To: Wim Van Sebroeck, Guenter Roeck, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Nikita Shubin, Alexander Sverdlin
Cc: linux-watchdog, devicetree, linux-kernel, Alexander Sverdlin,
Krzysztof Kozlowski
From: Nikita Shubin <nikita.shubin@maquefel.me>
Add device tree bindings for the Cirrus Logic EP93xx watchdog block
used in these SoCs.
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
---
.../bindings/watchdog/cirrus,ep9301-wdt.yaml | 42 ++++++++++++++++++++++
1 file changed, 42 insertions(+)
diff --git a/Documentation/devicetree/bindings/watchdog/cirrus,ep9301-wdt.yaml b/Documentation/devicetree/bindings/watchdog/cirrus,ep9301-wdt.yaml
new file mode 100644
index 000000000000..5dbe891c70c6
--- /dev/null
+++ b/Documentation/devicetree/bindings/watchdog/cirrus,ep9301-wdt.yaml
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/watchdog/cirrus,ep9301-wdt.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Cirrus Logic EP93xx Watchdog Timer
+
+maintainers:
+ - Nikita Shubin <nikita.shubin@maquefel.me>
+ - Alexander Sverdlin <alexander.sverdlin@gmail.com>
+
+allOf:
+ - $ref: watchdog.yaml#
+
+properties:
+ compatible:
+ oneOf:
+ - const: cirrus,ep9301-wdt
+ - items:
+ - enum:
+ - cirrus,ep9302-wdt
+ - cirrus,ep9307-wdt
+ - cirrus,ep9312-wdt
+ - cirrus,ep9315-wdt
+ - const: cirrus,ep9301-wdt
+
+ reg:
+ maxItems: 1
+
+required:
+ - compatible
+ - reg
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ watchdog@80940000 {
+ compatible = "cirrus,ep9301-wdt";
+ reg = <0x80940000 0x08>;
+ };
--
2.41.0
^ permalink raw reply related [flat|nested] 34+ messages in thread
* [PATCH v5 12/39] dt-bindings: pwm: Add Cirrus EP93xx
2023-11-22 8:59 [PATCH v5 00/39] ep93xx device tree conversion Nikita Shubin via B4 Relay
` (2 preceding siblings ...)
2023-11-22 8:59 ` [PATCH v5 10/39] dt-bindings: watchdog: Add Cirrus EP93x Nikita Shubin via B4 Relay
@ 2023-11-22 8:59 ` Nikita Shubin via B4 Relay
2023-11-22 18:27 ` Krzysztof Kozlowski
2023-11-22 8:59 ` [PATCH v5 14/39] dt-bindings: spi: " Nikita Shubin via B4 Relay
` (11 subsequent siblings)
15 siblings, 1 reply; 34+ messages in thread
From: Nikita Shubin via B4 Relay @ 2023-11-22 8:59 UTC (permalink / raw)
To: Thierry Reding, Uwe Kleine-König, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Alexander Sverdlin,
Nikita Shubin
Cc: linux-pwm, devicetree, linux-kernel, Alexander Sverdlin
From: Nikita Shubin <nikita.shubin@maquefel.me>
Add YAML bindings for ep93xx SoC PWM.
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
.../devicetree/bindings/pwm/cirrus,ep9301-pwm.yaml | 53 ++++++++++++++++++++++
1 file changed, 53 insertions(+)
diff --git a/Documentation/devicetree/bindings/pwm/cirrus,ep9301-pwm.yaml b/Documentation/devicetree/bindings/pwm/cirrus,ep9301-pwm.yaml
new file mode 100644
index 000000000000..67b0ce01d1a0
--- /dev/null
+++ b/Documentation/devicetree/bindings/pwm/cirrus,ep9301-pwm.yaml
@@ -0,0 +1,53 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/pwm/cirrus,ep9301-pwm.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Cirrus Logic ep93xx PWM controller
+
+maintainers:
+ - Alexander Sverdlin <alexander.sverdlin@gmail.com>
+ - Nikita Shubin <nikita.shubin@maquefel.me>
+
+allOf:
+ - $ref: pwm.yaml#
+
+properties:
+ compatible:
+ oneOf:
+ - const: cirrus,ep9301-pwm
+ - items:
+ - enum:
+ - cirrus,ep9302-pwm
+ - cirrus,ep9307-pwm
+ - cirrus,ep9312-pwm
+ - cirrus,ep9315-pwm
+ - const: cirrus,ep9301-pwm
+
+ reg:
+ maxItems: 1
+
+ clocks:
+ items:
+ - description: SoC PWM clock
+
+ "#pwm-cells":
+ const: 3
+
+required:
+ - compatible
+ - reg
+ - clocks
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/soc/cirrus,ep9301-syscon.h>
+ pwm@80910000 {
+ compatible = "cirrus,ep9301-pwm";
+ reg = <0x80910000 0x10>;
+ clocks = <&syscon EP93XX_CLK_PWM>;
+ #pwm-cells = <3>;
+ };
--
2.41.0
^ permalink raw reply related [flat|nested] 34+ messages in thread
* Re: [PATCH v5 12/39] dt-bindings: pwm: Add Cirrus EP93xx
2023-11-22 8:59 ` [PATCH v5 12/39] dt-bindings: pwm: Add Cirrus EP93xx Nikita Shubin via B4 Relay
@ 2023-11-22 18:27 ` Krzysztof Kozlowski
0 siblings, 0 replies; 34+ messages in thread
From: Krzysztof Kozlowski @ 2023-11-22 18:27 UTC (permalink / raw)
To: nikita.shubin, Thierry Reding, Uwe Kleine-König, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Alexander Sverdlin
Cc: linux-pwm, devicetree, linux-kernel
On 22/11/2023 09:59, Nikita Shubin via B4 Relay wrote:
> From: Nikita Shubin <nikita.shubin@maquefel.me>
>
> Add YAML bindings for ep93xx SoC PWM.
>
> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 34+ messages in thread
* [PATCH v5 14/39] dt-bindings: spi: Add Cirrus EP93xx
2023-11-22 8:59 [PATCH v5 00/39] ep93xx device tree conversion Nikita Shubin via B4 Relay
` (3 preceding siblings ...)
2023-11-22 8:59 ` [PATCH v5 12/39] dt-bindings: pwm: Add Cirrus EP93xx Nikita Shubin via B4 Relay
@ 2023-11-22 8:59 ` Nikita Shubin via B4 Relay
2023-11-22 12:03 ` Mark Brown
2023-11-22 8:59 ` [PATCH v5 16/39] dt-bindings: net: " Nikita Shubin via B4 Relay
` (10 subsequent siblings)
15 siblings, 1 reply; 34+ messages in thread
From: Nikita Shubin via B4 Relay @ 2023-11-22 8:59 UTC (permalink / raw)
To: Mark Brown, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Alexander Sverdlin, Nikita Shubin
Cc: linux-spi, devicetree, linux-kernel, Alexander Sverdlin,
Krzysztof Kozlowski
From: Nikita Shubin <nikita.shubin@maquefel.me>
Add YAML bindings for ep93xx SoC SPI.
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
---
.../devicetree/bindings/spi/cirrus,ep9301-spi.yaml | 70 ++++++++++++++++++++++
1 file changed, 70 insertions(+)
diff --git a/Documentation/devicetree/bindings/spi/cirrus,ep9301-spi.yaml b/Documentation/devicetree/bindings/spi/cirrus,ep9301-spi.yaml
new file mode 100644
index 000000000000..ba249840e7e5
--- /dev/null
+++ b/Documentation/devicetree/bindings/spi/cirrus,ep9301-spi.yaml
@@ -0,0 +1,70 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/spi/cirrus,ep9301-spi.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: EP93xx SoC SPI controller
+
+maintainers:
+ - Alexander Sverdlin <alexander.sverdlin@gmail.com>
+ - Nikita Shubin <nikita.shubin@maquefel.me>
+
+allOf:
+ - $ref: spi-controller.yaml#
+
+properties:
+ compatible:
+ oneOf:
+ - const: cirrus,ep9301-spi
+ - items:
+ - enum:
+ - cirrus,ep9302-spi
+ - cirrus,ep9307-spi
+ - cirrus,ep9312-spi
+ - cirrus,ep9315-spi
+ - const: cirrus,ep9301-spi
+
+ reg:
+ items:
+ - description: SPI registers region
+
+ interrupts:
+ maxItems: 1
+
+ clocks:
+ items:
+ - description: SPI Controller reference clock source
+
+ dmas:
+ items:
+ - description: rx DMA channel
+ - description: tx DMA channel
+
+ dma-names:
+ items:
+ - const: rx
+ - const: tx
+
+required:
+ - compatible
+ - reg
+ - interrupts
+ - clocks
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+ #include <dt-bindings/soc/cirrus,ep9301-syscon.h>
+ spi@808a0000 {
+ compatible = "cirrus,ep9301-spi";
+ reg = <0x808a0000 0x18>;
+ interrupt-parent = <&vic1>;
+ interrupts = <21>;
+ clocks = <&syscon EP93XX_CLK_SPI>;
+ dmas = <&dma1 10 2>, <&dma1 10 1>;
+ dma-names = "rx", "tx";
+ cs-gpios = <&gpio5 2 GPIO_ACTIVE_HIGH>;
+ };
--
2.41.0
^ permalink raw reply related [flat|nested] 34+ messages in thread
* Re: [PATCH v5 14/39] dt-bindings: spi: Add Cirrus EP93xx
2023-11-22 8:59 ` [PATCH v5 14/39] dt-bindings: spi: " Nikita Shubin via B4 Relay
@ 2023-11-22 12:03 ` Mark Brown
0 siblings, 0 replies; 34+ messages in thread
From: Mark Brown @ 2023-11-22 12:03 UTC (permalink / raw)
To: nikita.shubin
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Alexander Sverdlin, linux-spi, devicetree, linux-kernel,
Krzysztof Kozlowski
[-- Attachment #1: Type: text/plain, Size: 221 bytes --]
On Wed, Nov 22, 2023 at 11:59:52AM +0300, Nikita Shubin via B4 Relay wrote:
> From: Nikita Shubin <nikita.shubin@maquefel.me>
>
> Add YAML bindings for ep93xx SoC SPI.
Reviewed-by: Mark Brown <broonie@kernel.org>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 34+ messages in thread
* [PATCH v5 16/39] dt-bindings: net: Add Cirrus EP93xx
2023-11-22 8:59 [PATCH v5 00/39] ep93xx device tree conversion Nikita Shubin via B4 Relay
` (4 preceding siblings ...)
2023-11-22 8:59 ` [PATCH v5 14/39] dt-bindings: spi: " Nikita Shubin via B4 Relay
@ 2023-11-22 8:59 ` Nikita Shubin via B4 Relay
2023-11-22 11:02 ` Rob Herring
2023-11-22 8:59 ` [PATCH v5 18/39] dt-bindings: mtd: Add ts7200 nand-controller Nikita Shubin via B4 Relay
` (9 subsequent siblings)
15 siblings, 1 reply; 34+ messages in thread
From: Nikita Shubin via B4 Relay @ 2023-11-22 8:59 UTC (permalink / raw)
To: David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Alexander Sverdlin, Nikita Shubin
Cc: netdev, devicetree, linux-kernel, Alexander Sverdlin,
Krzysztof Kozlowski
From: Nikita Shubin <nikita.shubin@maquefel.me>
Add YAML bindings for ep93xx SoC Ethernet Controller.
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
---
.../devicetree/bindings/net/cirrus,ep9301-eth.yaml | 59 ++++++++++++++++++++++
1 file changed, 59 insertions(+)
diff --git a/Documentation/devicetree/bindings/net/cirrus,ep9301-eth.yaml b/Documentation/devicetree/bindings/net/cirrus,ep9301-eth.yaml
new file mode 100644
index 000000000000..ad0915307095
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/cirrus,ep9301-eth.yaml
@@ -0,0 +1,59 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/net/cirrus,ep9301-eth.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: EP93xx SoC Ethernet Controller
+
+maintainers:
+ - Alexander Sverdlin <alexander.sverdlin@gmail.com>
+ - Nikita Shubin <nikita.shubin@maquefel.me>
+
+allOf:
+ - $ref: ethernet-controller.yaml#
+
+properties:
+ compatible:
+ oneOf:
+ - const: cirrus,ep9301-eth
+ - items:
+ - enum:
+ - cirrus,ep9302-eth
+ - cirrus,ep9307-eth
+ - cirrus,ep9312-eth
+ - cirrus,ep9315-eth
+ - const: cirrus,ep9301-eth
+
+ reg:
+ items:
+ - description: The physical base address and size of IO range
+
+ interrupts:
+ items:
+ - description: Combined signal for various interrupt events
+
+ phy-handle: true
+
+ mdio:
+ $ref: mdio.yaml#
+ unevaluatedProperties: false
+ description: optional node for embedded MDIO controller
+
+required:
+ - compatible
+ - reg
+ - interrupts
+ - phy-handle
+
+additionalProperties: false
+
+examples:
+ - |
+ ethernet@80010000 {
+ compatible = "cirrus,ep9301-eth";
+ reg = <0x80010000 0x10000>;
+ interrupt-parent = <&vic1>;
+ interrupts = <7>;
+ phy-handle = <&phy0>;
+ };
--
2.41.0
^ permalink raw reply related [flat|nested] 34+ messages in thread
* Re: [PATCH v5 16/39] dt-bindings: net: Add Cirrus EP93xx
2023-11-22 8:59 ` [PATCH v5 16/39] dt-bindings: net: " Nikita Shubin via B4 Relay
@ 2023-11-22 11:02 ` Rob Herring
0 siblings, 0 replies; 34+ messages in thread
From: Rob Herring @ 2023-11-22 11:02 UTC (permalink / raw)
To: Nikita Shubin
Cc: linux-kernel, Krzysztof Kozlowski, netdev, Jakub Kicinski,
David S. Miller, Alexander Sverdlin, Eric Dumazet, devicetree,
Paolo Abeni, Rob Herring, Krzysztof Kozlowski, Conor Dooley
On Wed, 22 Nov 2023 11:59:54 +0300, Nikita Shubin wrote:
> Add YAML bindings for ep93xx SoC Ethernet Controller.
>
> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> ---
> .../devicetree/bindings/net/cirrus,ep9301-eth.yaml | 59 ++++++++++++++++++++++
> 1 file changed, 59 insertions(+)
>
My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):
yamllint warnings/errors:
dtschema/dtc warnings/errors:
doc reference errors (make refcheckdocs):
See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20231122-ep93xx-v5-16-d59a76d5df29@maquefel.me
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] 34+ messages in thread
* [PATCH v5 18/39] dt-bindings: mtd: Add ts7200 nand-controller
2023-11-22 8:59 [PATCH v5 00/39] ep93xx device tree conversion Nikita Shubin via B4 Relay
` (5 preceding siblings ...)
2023-11-22 8:59 ` [PATCH v5 16/39] dt-bindings: net: " Nikita Shubin via B4 Relay
@ 2023-11-22 8:59 ` Nikita Shubin via B4 Relay
2023-11-22 11:02 ` Rob Herring
2023-11-22 8:59 ` [PATCH v5 20/39] dt-bindings: ata: Add Cirrus EP93xx Nikita Shubin via B4 Relay
` (8 subsequent siblings)
15 siblings, 1 reply; 34+ messages in thread
From: Nikita Shubin via B4 Relay @ 2023-11-22 8:59 UTC (permalink / raw)
To: Miquel Raynal, Richard Weinberger, Vignesh Raghavendra,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Nikita Shubin
Cc: linux-mtd, devicetree, linux-kernel, Alexander Sverdlin,
Krzysztof Kozlowski
From: Nikita Shubin <nikita.shubin@maquefel.me>
Add YAML bindings for ts7200 NAND Controller.
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
---
.../devicetree/bindings/mtd/technologic,nand.yaml | 45 ++++++++++++++++++++++
1 file changed, 45 insertions(+)
diff --git a/Documentation/devicetree/bindings/mtd/technologic,nand.yaml b/Documentation/devicetree/bindings/mtd/technologic,nand.yaml
new file mode 100644
index 000000000000..f9d87c46094b
--- /dev/null
+++ b/Documentation/devicetree/bindings/mtd/technologic,nand.yaml
@@ -0,0 +1,45 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mtd/technologic,nand.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Technologic Systems NAND controller
+
+maintainers:
+ - Nikita Shubin <nikita.shubin@maquefel.me>
+
+allOf:
+ - $ref: nand-controller.yaml
+
+properties:
+ compatible:
+ oneOf:
+ - const: technologic,ts7200-nand
+ - items:
+ - enum:
+ - technologic,ts7300-nand
+ - technologic,ts7260-nand
+ - technologic,ts7250-nand
+ - const: technologic,ts7200-nand
+
+ reg:
+ maxItems: 1
+
+required:
+ - compatible
+ - reg
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ nand-controller@60000000 {
+ compatible = "technologic,ts7200-nand";
+ reg = <0x60000000 0x8000000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ nand@0 {
+ reg = <0>;
+ };
+ };
--
2.41.0
^ permalink raw reply related [flat|nested] 34+ messages in thread
* Re: [PATCH v5 18/39] dt-bindings: mtd: Add ts7200 nand-controller
2023-11-22 8:59 ` [PATCH v5 18/39] dt-bindings: mtd: Add ts7200 nand-controller Nikita Shubin via B4 Relay
@ 2023-11-22 11:02 ` Rob Herring
0 siblings, 0 replies; 34+ messages in thread
From: Rob Herring @ 2023-11-22 11:02 UTC (permalink / raw)
To: Nikita Shubin
Cc: Krzysztof Kozlowski, Krzysztof Kozlowski, linux-kernel,
Alexander Sverdlin, Rob Herring, Conor Dooley, Richard Weinberger,
devicetree, linux-mtd, Vignesh Raghavendra, Miquel Raynal
On Wed, 22 Nov 2023 11:59:56 +0300, Nikita Shubin wrote:
> Add YAML bindings for ts7200 NAND Controller.
>
> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> ---
> .../devicetree/bindings/mtd/technologic,nand.yaml | 45 ++++++++++++++++++++++
> 1 file changed, 45 insertions(+)
>
My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):
yamllint warnings/errors:
dtschema/dtc warnings/errors:
doc reference errors (make refcheckdocs):
See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20231122-ep93xx-v5-18-d59a76d5df29@maquefel.me
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] 34+ messages in thread
* [PATCH v5 20/39] dt-bindings: ata: Add Cirrus EP93xx
2023-11-22 8:59 [PATCH v5 00/39] ep93xx device tree conversion Nikita Shubin via B4 Relay
` (6 preceding siblings ...)
2023-11-22 8:59 ` [PATCH v5 18/39] dt-bindings: mtd: Add ts7200 nand-controller Nikita Shubin via B4 Relay
@ 2023-11-22 8:59 ` Nikita Shubin via B4 Relay
2023-11-22 11:02 ` Rob Herring
2023-11-22 9:00 ` [PATCH v5 22/39] dt-bindings: input: Add Cirrus EP93xx keypad Nikita Shubin via B4 Relay
` (7 subsequent siblings)
15 siblings, 1 reply; 34+ messages in thread
From: Nikita Shubin via B4 Relay @ 2023-11-22 8:59 UTC (permalink / raw)
To: Damien Le Moal, Rob Herring, Krzysztof Kozlowski, Conor Dooley
Cc: linux-ide, devicetree, linux-kernel, Alexander Sverdlin,
Krzysztof Kozlowski
From: Nikita Shubin <nikita.shubin@maquefel.me>
Add YAML bindings for ep93xx SoC PATA.
Acked-by: Damien Le Moal <dlemoal@kernel.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
---
.../bindings/ata/cirrus,ep9312-pata.yaml | 42 ++++++++++++++++++++++
1 file changed, 42 insertions(+)
diff --git a/Documentation/devicetree/bindings/ata/cirrus,ep9312-pata.yaml b/Documentation/devicetree/bindings/ata/cirrus,ep9312-pata.yaml
new file mode 100644
index 000000000000..8130923fdc72
--- /dev/null
+++ b/Documentation/devicetree/bindings/ata/cirrus,ep9312-pata.yaml
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/ata/cirrus,ep9312-pata.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Cirrus Logic EP9312 PATA controller
+
+maintainers:
+ - Damien Le Moal <dlemoal@kernel.org>
+
+properties:
+ compatible:
+ oneOf:
+ - const: cirrus,ep9312-pata
+ - items:
+ - const: cirrus,ep9315-pata
+ - const: cirrus,ep9312-pata
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ maxItems: 1
+
+required:
+ - compatible
+ - reg
+ - interrupts
+
+additionalProperties: false
+
+examples:
+ - |
+ ide@800a0000 {
+ compatible = "cirrus,ep9312-pata";
+ reg = <0x800a0000 0x38>;
+ interrupt-parent = <&vic1>;
+ interrupts = <8>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&ide_default_pins>;
+ };
--
2.41.0
^ permalink raw reply related [flat|nested] 34+ messages in thread
* Re: [PATCH v5 20/39] dt-bindings: ata: Add Cirrus EP93xx
2023-11-22 8:59 ` [PATCH v5 20/39] dt-bindings: ata: Add Cirrus EP93xx Nikita Shubin via B4 Relay
@ 2023-11-22 11:02 ` Rob Herring
0 siblings, 0 replies; 34+ messages in thread
From: Rob Herring @ 2023-11-22 11:02 UTC (permalink / raw)
To: Nikita Shubin
Cc: Rob Herring, linux-kernel, Conor Dooley, Krzysztof Kozlowski,
Alexander Sverdlin, Krzysztof Kozlowski, linux-ide,
Damien Le Moal, devicetree
On Wed, 22 Nov 2023 11:59:58 +0300, Nikita Shubin wrote:
> Add YAML bindings for ep93xx SoC PATA.
>
> Acked-by: Damien Le Moal <dlemoal@kernel.org>
> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> ---
> .../bindings/ata/cirrus,ep9312-pata.yaml | 42 ++++++++++++++++++++++
> 1 file changed, 42 insertions(+)
>
My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):
yamllint warnings/errors:
dtschema/dtc warnings/errors:
doc reference errors (make refcheckdocs):
See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20231122-ep93xx-v5-20-d59a76d5df29@maquefel.me
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] 34+ messages in thread
* [PATCH v5 22/39] dt-bindings: input: Add Cirrus EP93xx keypad
2023-11-22 8:59 [PATCH v5 00/39] ep93xx device tree conversion Nikita Shubin via B4 Relay
` (7 preceding siblings ...)
2023-11-22 8:59 ` [PATCH v5 20/39] dt-bindings: ata: Add Cirrus EP93xx Nikita Shubin via B4 Relay
@ 2023-11-22 9:00 ` Nikita Shubin via B4 Relay
2023-11-22 11:02 ` Rob Herring
2023-11-22 9:00 ` [PATCH v5 24/39] dt-bindings: wdt: Add ts72xx Nikita Shubin via B4 Relay
` (6 subsequent siblings)
15 siblings, 1 reply; 34+ messages in thread
From: Nikita Shubin via B4 Relay @ 2023-11-22 9:00 UTC (permalink / raw)
To: Dmitry Torokhov, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Alexander Sverdlin
Cc: linux-input, devicetree, linux-kernel, Alexander Sverdlin,
Krzysztof Kozlowski
From: Nikita Shubin <nikita.shubin@maquefel.me>
Add YAML bindings for ep93xx SoC keypad.
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
---
.../bindings/input/cirrus,ep9307-keypad.yaml | 87 ++++++++++++++++++++++
1 file changed, 87 insertions(+)
diff --git a/Documentation/devicetree/bindings/input/cirrus,ep9307-keypad.yaml b/Documentation/devicetree/bindings/input/cirrus,ep9307-keypad.yaml
new file mode 100644
index 000000000000..c4f9850d8cdd
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/cirrus,ep9307-keypad.yaml
@@ -0,0 +1,87 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/input/cirrus,ep9307-keypad.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Cirrus ep93xx keypad
+
+maintainers:
+ - Alexander Sverdlin <alexander.sverdlin@gmail.com>
+
+allOf:
+ - $ref: /schemas/input/matrix-keymap.yaml#
+
+description:
+ The KPP is designed to interface with a keypad matrix with 2-point contact
+ or 3-point contact keys. The KPP is designed to simplify the software task
+ of scanning a keypad matrix. The KPP is capable of detecting, debouncing,
+ and decoding one or multiple keys pressed simultaneously on a keypad.
+
+properties:
+ compatible:
+ oneOf:
+ - const: cirrus,ep9307-keypad
+ - items:
+ - enum:
+ - cirrus,ep9312-keypad
+ - cirrus,ep9315-keypad
+ - const: cirrus,ep9307-keypad
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ maxItems: 1
+
+ clocks:
+ maxItems: 1
+
+ debounce-delay-ms:
+ description: |
+ Time in microseconds that key must be pressed or
+ released for state change interrupt to trigger.
+
+ cirrus,prescale:
+ description: row/column counter pre-scaler load value
+ $ref: /schemas/types.yaml#/definitions/uint16
+ maximum: 1023
+
+required:
+ - compatible
+ - reg
+ - interrupts
+ - clocks
+ - linux,keymap
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/input/input.h>
+ #include <dt-bindings/soc/cirrus,ep9301-syscon.h>
+ keypad@800f0000 {
+ compatible = "cirrus,ep9307-keypad";
+ reg = <0x800f0000 0x0c>;
+ interrupt-parent = <&vic0>;
+ interrupts = <29>;
+ clocks = <&eclk EP93XX_CLK_KEYPAD>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&keypad_default_pins>;
+ linux,keymap = <KEY_UP>,
+ <KEY_DOWN>,
+ <KEY_VOLUMEDOWN>,
+ <KEY_HOME>,
+ <KEY_RIGHT>,
+ <KEY_LEFT>,
+ <KEY_ENTER>,
+ <KEY_VOLUMEUP>,
+ <KEY_F6>,
+ <KEY_F8>,
+ <KEY_F9>,
+ <KEY_F10>,
+ <KEY_F1>,
+ <KEY_F2>,
+ <KEY_F3>,
+ <KEY_POWER>;
+ };
--
2.41.0
^ permalink raw reply related [flat|nested] 34+ messages in thread
* Re: [PATCH v5 22/39] dt-bindings: input: Add Cirrus EP93xx keypad
2023-11-22 9:00 ` [PATCH v5 22/39] dt-bindings: input: Add Cirrus EP93xx keypad Nikita Shubin via B4 Relay
@ 2023-11-22 11:02 ` Rob Herring
0 siblings, 0 replies; 34+ messages in thread
From: Rob Herring @ 2023-11-22 11:02 UTC (permalink / raw)
To: Nikita Shubin
Cc: Conor Dooley, linux-kernel, Krzysztof Kozlowski, linux-input,
Rob Herring, Alexander Sverdlin, Dmitry Torokhov,
Krzysztof Kozlowski, devicetree
On Wed, 22 Nov 2023 12:00:00 +0300, Nikita Shubin wrote:
> Add YAML bindings for ep93xx SoC keypad.
>
> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> ---
> .../bindings/input/cirrus,ep9307-keypad.yaml | 87 ++++++++++++++++++++++
> 1 file changed, 87 insertions(+)
>
My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):
yamllint warnings/errors:
dtschema/dtc warnings/errors:
Documentation/devicetree/bindings/dma/cirrus,ep9301-dma-m2m.example.dts:24:18: fatal error: dt-bindings/soc/cirrus,ep9301-syscon.h: No such file or directory
make[2]: *** [scripts/Makefile.lib:419: Documentation/devicetree/bindings/dma/cirrus,ep9301-dma-m2m.example.dtb] Error 1
doc reference errors (make refcheckdocs):
See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20231122-ep93xx-v5-22-d59a76d5df29@maquefel.me
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] 34+ messages in thread
* [PATCH v5 24/39] dt-bindings: wdt: Add ts72xx
2023-11-22 8:59 [PATCH v5 00/39] ep93xx device tree conversion Nikita Shubin via B4 Relay
` (8 preceding siblings ...)
2023-11-22 9:00 ` [PATCH v5 22/39] dt-bindings: input: Add Cirrus EP93xx keypad Nikita Shubin via B4 Relay
@ 2023-11-22 9:00 ` Nikita Shubin via B4 Relay
2023-11-22 11:02 ` Rob Herring
2023-11-22 9:00 ` [PATCH v5 27/39] ASoC: dt-bindings: ep93xx: Document DMA support Nikita Shubin via B4 Relay
` (5 subsequent siblings)
15 siblings, 1 reply; 34+ messages in thread
From: Nikita Shubin via B4 Relay @ 2023-11-22 9:00 UTC (permalink / raw)
To: Wim Van Sebroeck, Guenter Roeck, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Nikita Shubin
Cc: linux-watchdog, devicetree, linux-kernel, Alexander Sverdlin,
Krzysztof Kozlowski
From: Nikita Shubin <nikita.shubin@maquefel.me>
Add DT binding for Technologic Systems TS-72xx watchdog.
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
---
.../bindings/watchdog/technologic,ts7200-wdt.yaml | 45 ++++++++++++++++++++++
1 file changed, 45 insertions(+)
diff --git a/Documentation/devicetree/bindings/watchdog/technologic,ts7200-wdt.yaml b/Documentation/devicetree/bindings/watchdog/technologic,ts7200-wdt.yaml
new file mode 100644
index 000000000000..7e4bfef152f8
--- /dev/null
+++ b/Documentation/devicetree/bindings/watchdog/technologic,ts7200-wdt.yaml
@@ -0,0 +1,45 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/watchdog/technologic,ts7200-wdt.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Technologic Systems TS-72xx based SBCs watchdog
+
+maintainers:
+ - Nikita Shubin <nikita.shubin@maquefel.me>
+
+allOf:
+ - $ref: watchdog.yaml#
+
+properties:
+ compatible:
+ oneOf:
+ - const: technologic,ts7200-wdt
+ - items:
+ - enum:
+ - technologic,ts7300-wdt
+ - technologic,ts7260-wdt
+ - technologic,ts7250-wdt
+ - const: technologic,ts7200-wdt
+
+ reg:
+ items:
+ - description: control register
+ - description: feed register
+
+required:
+ - compatible
+ - reg
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ watchdog@23800000 {
+ compatible = "technologic,ts7200-wdt";
+ reg = <0x23800000 0x01>, <0x23c00000 0x01>;
+ timeout-sec = <30>;
+ };
+
+...
--
2.41.0
^ permalink raw reply related [flat|nested] 34+ messages in thread
* Re: [PATCH v5 24/39] dt-bindings: wdt: Add ts72xx
2023-11-22 9:00 ` [PATCH v5 24/39] dt-bindings: wdt: Add ts72xx Nikita Shubin via B4 Relay
@ 2023-11-22 11:02 ` Rob Herring
0 siblings, 0 replies; 34+ messages in thread
From: Rob Herring @ 2023-11-22 11:02 UTC (permalink / raw)
To: Nikita Shubin
Cc: Guenter Roeck, Krzysztof Kozlowski, Alexander Sverdlin,
Wim Van Sebroeck, linux-kernel, devicetree, Krzysztof Kozlowski,
Rob Herring, linux-watchdog, Conor Dooley
On Wed, 22 Nov 2023 12:00:02 +0300, Nikita Shubin wrote:
> Add DT binding for Technologic Systems TS-72xx watchdog.
>
> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> ---
> .../bindings/watchdog/technologic,ts7200-wdt.yaml | 45 ++++++++++++++++++++++
> 1 file changed, 45 insertions(+)
>
My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):
yamllint warnings/errors:
dtschema/dtc warnings/errors:
doc reference errors (make refcheckdocs):
See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20231122-ep93xx-v5-24-d59a76d5df29@maquefel.me
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] 34+ messages in thread
* [PATCH v5 27/39] ASoC: dt-bindings: ep93xx: Document DMA support
2023-11-22 8:59 [PATCH v5 00/39] ep93xx device tree conversion Nikita Shubin via B4 Relay
` (9 preceding siblings ...)
2023-11-22 9:00 ` [PATCH v5 24/39] dt-bindings: wdt: Add ts72xx Nikita Shubin via B4 Relay
@ 2023-11-22 9:00 ` Nikita Shubin via B4 Relay
2023-11-22 11:02 ` Rob Herring
` (2 more replies)
2023-11-22 9:00 ` [PATCH v5 28/39] ASoC: dt-bindings: ep93xx: Document Audio Port support Nikita Shubin via B4 Relay
` (4 subsequent siblings)
15 siblings, 3 replies; 34+ messages in thread
From: Nikita Shubin via B4 Relay @ 2023-11-22 9:00 UTC (permalink / raw)
To: Hartley Sweeten, Alexander Sverdlin, Liam Girdwood, Mark Brown,
Rob Herring, Krzysztof Kozlowski, Conor Dooley
Cc: linux-arm-kernel, linux-sound, devicetree, linux-kernel,
Alexander Sverdlin
From: Nikita Shubin <nikita.shubin@maquefel.me>
Document DMA support in binding document.
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
---
.../devicetree/bindings/sound/cirrus,ep9301-i2s.yaml | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/Documentation/devicetree/bindings/sound/cirrus,ep9301-i2s.yaml b/Documentation/devicetree/bindings/sound/cirrus,ep9301-i2s.yaml
index 453d493c941f..36a320ddf534 100644
--- a/Documentation/devicetree/bindings/sound/cirrus,ep9301-i2s.yaml
+++ b/Documentation/devicetree/bindings/sound/cirrus,ep9301-i2s.yaml
@@ -40,6 +40,16 @@ properties:
- const: sclk
- const: lrclk
+ dmas:
+ items:
+ - description: out DMA channel
+ - description: in DMA channel
+
+ dma-names:
+ items:
+ - const: tx
+ - const: rx
+
required:
- compatible
- '#sound-dai-cells'
@@ -61,6 +71,8 @@ examples:
<&syscon 30>,
<&syscon 31>;
clock-names = "mclk", "sclk", "lrclk";
+ dmas = <&dma0 0 1>, <&dma0 0 2>;
+ dma-names = "tx", "rx";
};
...
--
2.41.0
^ permalink raw reply related [flat|nested] 34+ messages in thread
* Re: [PATCH v5 27/39] ASoC: dt-bindings: ep93xx: Document DMA support
2023-11-22 9:00 ` [PATCH v5 27/39] ASoC: dt-bindings: ep93xx: Document DMA support Nikita Shubin via B4 Relay
@ 2023-11-22 11:02 ` Rob Herring
2023-11-22 12:05 ` Mark Brown
2023-11-22 18:47 ` Krzysztof Kozlowski
2 siblings, 0 replies; 34+ messages in thread
From: Rob Herring @ 2023-11-22 11:02 UTC (permalink / raw)
To: Nikita Shubin
Cc: Alexander Sverdlin, Rob Herring, linux-arm-kernel, linux-sound,
Liam Girdwood, devicetree, Hartley Sweeten, linux-kernel,
Mark Brown, Conor Dooley, Krzysztof Kozlowski
On Wed, 22 Nov 2023 12:00:05 +0300, Nikita Shubin wrote:
> Document DMA support in binding document.
>
> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> ---
> .../devicetree/bindings/sound/cirrus,ep9301-i2s.yaml | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):
yamllint warnings/errors:
dtschema/dtc warnings/errors:
Documentation/devicetree/bindings/dma/cirrus,ep9301-dma-m2m.example.dts:24:18: fatal error: dt-bindings/soc/cirrus,ep9301-syscon.h: No such file or directory
make[2]: *** [scripts/Makefile.lib:419: Documentation/devicetree/bindings/dma/cirrus,ep9301-dma-m2m.example.dtb] Error 1
doc reference errors (make refcheckdocs):
See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20231122-ep93xx-v5-27-d59a76d5df29@maquefel.me
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] 34+ messages in thread
* Re: [PATCH v5 27/39] ASoC: dt-bindings: ep93xx: Document DMA support
2023-11-22 9:00 ` [PATCH v5 27/39] ASoC: dt-bindings: ep93xx: Document DMA support Nikita Shubin via B4 Relay
2023-11-22 11:02 ` Rob Herring
@ 2023-11-22 12:05 ` Mark Brown
2023-11-22 18:47 ` Krzysztof Kozlowski
2 siblings, 0 replies; 34+ messages in thread
From: Mark Brown @ 2023-11-22 12:05 UTC (permalink / raw)
To: nikita.shubin
Cc: Hartley Sweeten, Alexander Sverdlin, Liam Girdwood, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, linux-arm-kernel, linux-sound,
devicetree, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 225 bytes --]
On Wed, Nov 22, 2023 at 12:00:05PM +0300, Nikita Shubin via B4 Relay wrote:
> From: Nikita Shubin <nikita.shubin@maquefel.me>
>
> Document DMA support in binding document.
Reviewed-by: Mark Brown <broonie@kernel.org>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [PATCH v5 27/39] ASoC: dt-bindings: ep93xx: Document DMA support
2023-11-22 9:00 ` [PATCH v5 27/39] ASoC: dt-bindings: ep93xx: Document DMA support Nikita Shubin via B4 Relay
2023-11-22 11:02 ` Rob Herring
2023-11-22 12:05 ` Mark Brown
@ 2023-11-22 18:47 ` Krzysztof Kozlowski
2 siblings, 0 replies; 34+ messages in thread
From: Krzysztof Kozlowski @ 2023-11-22 18:47 UTC (permalink / raw)
To: nikita.shubin, Hartley Sweeten, Alexander Sverdlin, Liam Girdwood,
Mark Brown, Rob Herring, Krzysztof Kozlowski, Conor Dooley
Cc: linux-arm-kernel, linux-sound, devicetree, linux-kernel
On 22/11/2023 10:00, Nikita Shubin via B4 Relay wrote:
> From: Nikita Shubin <nikita.shubin@maquefel.me>
>
> Document DMA support in binding document.
>
> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> ---
> .../devicetree/bindings/sound/cirrus,ep9301-i2s.yaml | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
You could send it separately through ASoC.
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 34+ messages in thread
* [PATCH v5 28/39] ASoC: dt-bindings: ep93xx: Document Audio Port support
2023-11-22 8:59 [PATCH v5 00/39] ep93xx device tree conversion Nikita Shubin via B4 Relay
` (10 preceding siblings ...)
2023-11-22 9:00 ` [PATCH v5 27/39] ASoC: dt-bindings: ep93xx: Document DMA support Nikita Shubin via B4 Relay
@ 2023-11-22 9:00 ` Nikita Shubin via B4 Relay
2023-11-22 11:02 ` Rob Herring
2023-11-22 18:49 ` Krzysztof Kozlowski
2023-11-22 9:00 ` [PATCH v5 30/39] ARM: dts: add Cirrus EP93XX SoC .dtsi Nikita Shubin via B4 Relay
` (3 subsequent siblings)
15 siblings, 2 replies; 34+ messages in thread
From: Nikita Shubin via B4 Relay @ 2023-11-22 9:00 UTC (permalink / raw)
To: Hartley Sweeten, Alexander Sverdlin, Liam Girdwood, Mark Brown,
Rob Herring, Krzysztof Kozlowski, Conor Dooley
Cc: linux-arm-kernel, linux-sound, devicetree, linux-kernel,
Alexander Sverdlin
From: Nikita Shubin <nikita.shubin@maquefel.me>
Document Audio Graph Port support in binding document.
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
---
Documentation/devicetree/bindings/sound/cirrus,ep9301-i2s.yaml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/Documentation/devicetree/bindings/sound/cirrus,ep9301-i2s.yaml b/Documentation/devicetree/bindings/sound/cirrus,ep9301-i2s.yaml
index 36a320ddf534..4693e85aed37 100644
--- a/Documentation/devicetree/bindings/sound/cirrus,ep9301-i2s.yaml
+++ b/Documentation/devicetree/bindings/sound/cirrus,ep9301-i2s.yaml
@@ -50,6 +50,10 @@ properties:
- const: tx
- const: rx
+ port:
+ $ref: audio-graph-port.yaml#
+ unevaluatedProperties: false
+
required:
- compatible
- '#sound-dai-cells'
--
2.41.0
^ permalink raw reply related [flat|nested] 34+ messages in thread
* Re: [PATCH v5 28/39] ASoC: dt-bindings: ep93xx: Document Audio Port support
2023-11-22 9:00 ` [PATCH v5 28/39] ASoC: dt-bindings: ep93xx: Document Audio Port support Nikita Shubin via B4 Relay
@ 2023-11-22 11:02 ` Rob Herring
2023-11-22 18:49 ` Krzysztof Kozlowski
1 sibling, 0 replies; 34+ messages in thread
From: Rob Herring @ 2023-11-22 11:02 UTC (permalink / raw)
To: Nikita Shubin
Cc: Hartley Sweeten, Krzysztof Kozlowski, Rob Herring, devicetree,
linux-sound, Liam Girdwood, linux-arm-kernel, linux-kernel,
Mark Brown, Alexander Sverdlin, Conor Dooley
On Wed, 22 Nov 2023 12:00:06 +0300, Nikita Shubin wrote:
> Document Audio Graph Port support in binding document.
>
> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> ---
> Documentation/devicetree/bindings/sound/cirrus,ep9301-i2s.yaml | 4 ++++
> 1 file changed, 4 insertions(+)
>
My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):
yamllint warnings/errors:
dtschema/dtc warnings/errors:
doc reference errors (make refcheckdocs):
See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20231122-ep93xx-v5-28-d59a76d5df29@maquefel.me
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] 34+ messages in thread
* Re: [PATCH v5 28/39] ASoC: dt-bindings: ep93xx: Document Audio Port support
2023-11-22 9:00 ` [PATCH v5 28/39] ASoC: dt-bindings: ep93xx: Document Audio Port support Nikita Shubin via B4 Relay
2023-11-22 11:02 ` Rob Herring
@ 2023-11-22 18:49 ` Krzysztof Kozlowski
1 sibling, 0 replies; 34+ messages in thread
From: Krzysztof Kozlowski @ 2023-11-22 18:49 UTC (permalink / raw)
To: nikita.shubin, Hartley Sweeten, Alexander Sverdlin, Liam Girdwood,
Mark Brown, Rob Herring, Krzysztof Kozlowski, Conor Dooley
Cc: linux-arm-kernel, linux-sound, devicetree, linux-kernel
On 22/11/2023 10:00, Nikita Shubin via B4 Relay wrote:
> From: Nikita Shubin <nikita.shubin@maquefel.me>
>
> Document Audio Graph Port support in binding document.
>
> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
> ---
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 34+ messages in thread
* [PATCH v5 30/39] ARM: dts: add Cirrus EP93XX SoC .dtsi
2023-11-22 8:59 [PATCH v5 00/39] ep93xx device tree conversion Nikita Shubin via B4 Relay
` (11 preceding siblings ...)
2023-11-22 9:00 ` [PATCH v5 28/39] ASoC: dt-bindings: ep93xx: Document Audio Port support Nikita Shubin via B4 Relay
@ 2023-11-22 9:00 ` Nikita Shubin via B4 Relay
2023-11-22 9:00 ` [PATCH v5 31/39] ARM: dts: ep93xx: add ts7250 board Nikita Shubin via B4 Relay
` (2 subsequent siblings)
15 siblings, 0 replies; 34+ messages in thread
From: Nikita Shubin via B4 Relay @ 2023-11-22 9:00 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Alexander Sverdlin, Nikita Shubin
Cc: devicetree, linux-kernel, Alexander Sverdlin
From: Nikita Shubin <nikita.shubin@maquefel.me>
Add support for Cirrus Logic EP93XX SoC's family.
Co-developed-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
---
arch/arm/boot/dts/cirrus/ep93xx.dtsi | 442 +++++++++++++++++++++++++++++++++++
1 file changed, 442 insertions(+)
diff --git a/arch/arm/boot/dts/cirrus/ep93xx.dtsi b/arch/arm/boot/dts/cirrus/ep93xx.dtsi
new file mode 100644
index 000000000000..e00ebe7bae81
--- /dev/null
+++ b/arch/arm/boot/dts/cirrus/ep93xx.dtsi
@@ -0,0 +1,442 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Device Tree file for Cirrus Logic systems EP93XX SoC
+ */
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/leds/common.h>
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/soc/cirrus,ep9301-syscon.h>
+/ {
+ soc: soc {
+ compatible = "simple-bus";
+ ranges;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ syscon: syscon@80930000 {
+ compatible = "cirrus,ep9301-syscon",
+ "syscon", "simple-mfd";
+ reg = <0x80930000 0x1000>;
+
+ #clock-cells = <1>;
+ clocks = <&xtali>;
+
+ spi_default_pins: pins-spi {
+ function = "spi";
+ groups = "ssp";
+ };
+
+ ac97_default_pins: pins-ac97 {
+ function = "ac97";
+ groups = "ac97";
+ };
+
+ i2s_on_ssp_pins: pins-i2sonssp {
+ function = "i2s";
+ groups = "i2s_on_ssp";
+ };
+
+ i2s_on_ac97_pins: pins-i2sonac97 {
+ function = "i2s";
+ groups = "i2s_on_ac97";
+ };
+
+ gpio1_default_pins: pins-gpio1 {
+ function = "gpio";
+ groups = "gpio1agrp";
+ };
+
+ pwm1_default_pins: pins-pwm1 {
+ function = "pwm";
+ groups = "pwm1";
+ };
+
+ gpio2_default_pins: pins-gpio2 {
+ function = "gpio";
+ groups = "gpio2agrp";
+ };
+
+ gpio3_default_pins: pins-gpio3 {
+ function = "gpio";
+ groups = "gpio3agrp";
+ };
+
+ keypad_default_pins: pins-keypad {
+ function = "keypad";
+ groups = "keypadgrp";
+ };
+
+ gpio4_default_pins: pins-gpio4 {
+ function = "gpio";
+ groups = "gpio4agrp";
+ };
+
+ gpio6_default_pins: pins-gpio6 {
+ function = "gpio";
+ groups = "gpio6agrp";
+ };
+
+ gpio7_default_pins: pins-gpio7 {
+ function = "gpio";
+ groups = "gpio7agrp";
+ };
+
+ ide_default_pins: pins-ide {
+ function = "pata";
+ groups = "idegrp";
+ };
+
+ lcd_on_dram0_pins: pins-rasteronsdram0 {
+ function = "lcd";
+ groups = "rasteronsdram0grp";
+ };
+
+ lcd_on_dram3_pins: pins-rasteronsdram3 {
+ function = "lcd";
+ groups = "rasteronsdram3grp";
+ };
+ };
+
+ adc: adc@80900000 {
+ compatible = "cirrus,ep9301-adc";
+ reg = <0x80900000 0x28>;
+ clocks = <&syscon EP93XX_CLK_ADC>;
+ interrupt-parent = <&vic0>;
+ interrupts = <30>;
+ status = "disabled";
+ };
+
+ /*
+ * The EP93XX expansion bus is a set of up to 7 each up to 16MB
+ * windows in the 256MB space from 0x50000000 to 0x5fffffff.
+ * But since we don't require to setup it in any way, we can
+ * represent it as a simple-bus.
+ */
+ ebi: bus@80080000 {
+ compatible = "simple-bus";
+ reg = <0x80080000 0x20>;
+ native-endian;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges;
+ };
+
+ dma0: dma-controller@80000000 {
+ compatible = "cirrus,ep9301-dma-m2p";
+ reg = <0x80000000 0x0040>,
+ <0x80000040 0x0040>,
+ <0x80000080 0x0040>,
+ <0x800000c0 0x0040>,
+ <0x80000240 0x0040>,
+ <0x80000200 0x0040>,
+ <0x800002c0 0x0040>,
+ <0x80000280 0x0040>,
+ <0x80000340 0x0040>,
+ <0x80000300 0x0040>;
+ clocks = <&syscon EP93XX_CLK_M2P0>,
+ <&syscon EP93XX_CLK_M2P1>,
+ <&syscon EP93XX_CLK_M2P2>,
+ <&syscon EP93XX_CLK_M2P3>,
+ <&syscon EP93XX_CLK_M2P4>,
+ <&syscon EP93XX_CLK_M2P5>,
+ <&syscon EP93XX_CLK_M2P6>,
+ <&syscon EP93XX_CLK_M2P7>,
+ <&syscon EP93XX_CLK_M2P8>,
+ <&syscon EP93XX_CLK_M2P9>;
+ clock-names = "m2p0", "m2p1",
+ "m2p2", "m2p3",
+ "m2p4", "m2p5",
+ "m2p6", "m2p7",
+ "m2p8", "m2p9";
+ interrupt-parent = <&vic0>;
+ interrupts = <7>, <8>, <9>, <10>, <11>,
+ <12>, <13>, <14>, <15>, <16>;
+ #dma-cells = <2>;
+ };
+
+ dma1: dma-controller@80000100 {
+ compatible = "cirrus,ep9301-dma-m2m";
+ reg = <0x80000100 0x0040>,
+ <0x80000140 0x0040>;
+ clocks = <&syscon EP93XX_CLK_M2M0>,
+ <&syscon EP93XX_CLK_M2M1>;
+ clock-names = "m2m0", "m2m1";
+ interrupt-parent = <&vic0>;
+ interrupts = <17>, <18>;
+ #dma-cells = <2>;
+ };
+
+ eth0: ethernet@80010000 {
+ compatible = "cirrus,ep9301-eth";
+ reg = <0x80010000 0x10000>;
+ interrupt-parent = <&vic1>;
+ interrupts = <7>;
+ mdio0: mdio {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+ };
+
+ gpio0: gpio@80840000 {
+ compatible = "cirrus,ep9301-gpio";
+ reg = <0x80840000 0x04>,
+ <0x80840010 0x04>,
+ <0x80840090 0x1c>;
+ reg-names = "data", "dir", "intr";
+ gpio-controller;
+ #gpio-cells = <2>;
+ interrupt-controller;
+ interrupt-parent = <&vic1>;
+ interrupts = <27>;
+ };
+
+ gpio1: gpio@80840004 {
+ compatible = "cirrus,ep9301-gpio";
+ reg = <0x80840004 0x04>,
+ <0x80840014 0x04>,
+ <0x808400ac 0x1c>;
+ reg-names = "data", "dir", "intr";
+ gpio-controller;
+ #gpio-cells = <2>;
+ interrupt-controller;
+ interrupt-parent = <&vic1>;
+ interrupts = <27>;
+ };
+
+ gpio2: gpio@80840008 {
+ compatible = "cirrus,ep9301-gpio";
+ reg = <0x80840008 0x04>,
+ <0x80840018 0x04>;
+ reg-names = "data", "dir";
+ gpio-controller;
+ #gpio-cells = <2>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&gpio2_default_pins>;
+ };
+
+ gpio3: gpio@8084000c {
+ compatible = "cirrus,ep9301-gpio";
+ reg = <0x8084000c 0x04>,
+ <0x8084001c 0x04>;
+ reg-names = "data", "dir";
+ gpio-controller;
+ #gpio-cells = <2>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&gpio3_default_pins>;
+ };
+
+ gpio4: gpio@80840020 {
+ compatible = "cirrus,ep9301-gpio";
+ reg = <0x80840020 0x04>,
+ <0x80840024 0x04>;
+ reg-names = "data", "dir";
+ gpio-controller;
+ #gpio-cells = <2>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&gpio4_default_pins>;
+ };
+
+ gpio5: gpio@80840030 {
+ compatible = "cirrus,ep9301-gpio";
+ reg = <0x80840030 0x04>,
+ <0x80840034 0x04>,
+ <0x8084004c 0x1c>;
+ reg-names = "data", "dir", "intr";
+ gpio-controller;
+ #gpio-cells = <2>;
+ interrupt-controller;
+ interrupts-extended = <&vic0 19>, <&vic0 20>,
+ <&vic0 21>, <&vic0 22>,
+ <&vic1 15>, <&vic1 16>,
+ <&vic1 17>, <&vic1 18>;
+ };
+
+ gpio6: gpio@80840038 {
+ compatible = "cirrus,ep9301-gpio";
+ reg = <0x80840038 0x04>,
+ <0x8084003c 0x04>;
+ reg-names = "data", "dir";
+ gpio-controller;
+ #gpio-cells = <2>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&gpio6_default_pins>;
+ };
+
+ gpio7: gpio@80840040 {
+ compatible = "cirrus,ep9301-gpio";
+ reg = <0x80840040 0x04>,
+ <0x80840044 0x04>;
+ reg-names = "data", "dir";
+ gpio-controller;
+ #gpio-cells = <2>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&gpio7_default_pins>;
+ };
+
+ i2s: i2s@80820000 {
+ compatible = "cirrus,ep9301-i2s";
+ reg = <0x80820000 0x100>;
+ #sound-dai-cells = <0>;
+ interrupt-parent = <&vic1>;
+ interrupts = <28>;
+ clocks = <&syscon EP93XX_CLK_I2S_MCLK>,
+ <&syscon EP93XX_CLK_I2S_SCLK>,
+ <&syscon EP93XX_CLK_I2S_LRCLK>;
+ clock-names = "mclk", "sclk", "lrclk";
+ dmas = <&dma0 0 1>, <&dma0 0 2>;
+ dma-names = "tx", "rx";
+ status = "disabled";
+ };
+
+ ide: ide@800a0000 {
+ compatible = "cirrus,ep9312-pata";
+ reg = <0x800a0000 0x38>;
+ interrupt-parent = <&vic1>;
+ interrupts = <8>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&ide_default_pins>;
+ status = "disabled";
+ };
+
+ vic0: interrupt-controller@800b0000 {
+ compatible = "arm,pl192-vic";
+ reg = <0x800b0000 0x1000>;
+ interrupt-controller;
+ #interrupt-cells = <1>;
+ valid-mask = <0x7ffffffc>;
+ valid-wakeup-mask = <0x0>;
+ };
+
+ vic1: interrupt-controller@800c0000 {
+ compatible = "arm,pl192-vic";
+ reg = <0x800c0000 0x1000>;
+ interrupt-controller;
+ #interrupt-cells = <1>;
+ valid-mask = <0x1fffffff>;
+ valid-wakeup-mask = <0x0>;
+ };
+
+ keypad: keypad@800f0000 {
+ compatible = "cirrus,ep9307-keypad";
+ reg = <0x800f0000 0x0c>;
+ interrupt-parent = <&vic0>;
+ interrupts = <29>;
+ clocks = <&syscon EP93XX_CLK_KEYPAD>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&keypad_default_pins>;
+ linux,keymap = <KEY_UP>,
+ <KEY_DOWN>,
+ <KEY_VOLUMEDOWN>,
+ <KEY_HOME>,
+ <KEY_RIGHT>,
+ <KEY_LEFT>,
+ <KEY_ENTER>,
+ <KEY_VOLUMEUP>,
+ <KEY_F6>,
+ <KEY_F8>,
+ <KEY_F9>,
+ <KEY_F10>,
+ <KEY_F1>,
+ <KEY_F2>,
+ <KEY_F3>,
+ <KEY_POWER>;
+ };
+
+ pwm0: pwm@80910000 {
+ compatible = "cirrus,ep9301-pwm";
+ reg = <0x80910000 0x10>;
+ clocks = <&syscon EP93XX_CLK_PWM>;
+ #pwm-cells = <3>;
+ status = "disabled";
+ };
+
+ pwm1: pwm@80910020 {
+ compatible = "cirrus,ep9301-pwm";
+ reg = <0x80910020 0x10>;
+ clocks = <&syscon EP93XX_CLK_PWM>;
+ #pwm-cells = <3>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pwm1_default_pins>;
+ status = "disabled";
+ };
+
+ rtc0: rtc@80920000 {
+ compatible = "cirrus,ep9301-rtc";
+ reg = <0x80920000 0x100>;
+ };
+
+ spi0: spi@808a0000 {
+ compatible = "cirrus,ep9301-spi";
+ reg = <0x808a0000 0x18>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ interrupt-parent = <&vic1>;
+ interrupts = <21>;
+ clocks = <&syscon EP93XX_CLK_SPI>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&spi_default_pins>;
+ status = "disabled";
+ };
+
+ timer: timer@80810000 {
+ compatible = "cirrus,ep9301-timer";
+ reg = <0x80810000 0x100>;
+ interrupt-parent = <&vic1>;
+ interrupts = <19>;
+ };
+
+ uart0: serial@808c0000 {
+ compatible = "arm,pl011", "arm,primecell";
+ reg = <0x808c0000 0x1000>;
+ arm,primecell-periphid = <0x00041010>;
+ clocks = <&syscon EP93XX_CLK_UART1>, <&syscon EP93XX_CLK_UART>;
+ clock-names = "uartclk", "apb_pclk";
+ interrupt-parent = <&vic1>;
+ interrupts = <20>;
+ status = "disabled";
+ };
+
+ uart1: uart@808d0000 {
+ compatible = "arm,primecell";
+ reg = <0x808d0000 0x1000>;
+ arm,primecell-periphid = <0x00041010>;
+ clocks = <&syscon EP93XX_CLK_UART2>, <&syscon EP93XX_CLK_UART>;
+ clock-names = "apb:uart2", "apb_pclk";
+ interrupt-parent = <&vic1>;
+ interrupts = <22>;
+ status = "disabled";
+ };
+
+ uart2: uart@808b0000 {
+ compatible = "arm,primecell";
+ reg = <0x808b0000 0x1000>;
+ arm,primecell-periphid = <0x00041010>;
+ clocks = <&syscon EP93XX_CLK_UART3>, <&syscon EP93XX_CLK_UART>;
+ clock-names = "apb:uart3", "apb_pclk";
+ interrupt-parent = <&vic1>;
+ interrupts = <23>;
+ status = "disabled";
+ };
+
+ usb0: usb@80020000 {
+ compatible = "generic-ohci";
+ reg = <0x80020000 0x10000>;
+ interrupt-parent = <&vic1>;
+ interrupts = <24>;
+ clocks = <&syscon EP93XX_CLK_USB>;
+ status = "disabled";
+ };
+
+ watchdog0: watchdog@80940000 {
+ compatible = "cirrus,ep9301-wdt";
+ reg = <0x80940000 0x08>;
+ };
+ };
+
+ xtali: oscillator {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <14745600>;
+ clock-output-names = "xtali";
+ };
+};
--
2.41.0
^ permalink raw reply related [flat|nested] 34+ messages in thread
* [PATCH v5 31/39] ARM: dts: ep93xx: add ts7250 board
2023-11-22 8:59 [PATCH v5 00/39] ep93xx device tree conversion Nikita Shubin via B4 Relay
` (12 preceding siblings ...)
2023-11-22 9:00 ` [PATCH v5 30/39] ARM: dts: add Cirrus EP93XX SoC .dtsi Nikita Shubin via B4 Relay
@ 2023-11-22 9:00 ` Nikita Shubin via B4 Relay
2023-11-22 9:00 ` [PATCH v5 32/39] ARM: dts: ep93xx: Add EDB9302 DT Nikita Shubin via B4 Relay
2023-11-22 10:26 ` [PATCH v5 00/39] ep93xx device tree conversion Andy Shevchenko
15 siblings, 0 replies; 34+ messages in thread
From: Nikita Shubin via B4 Relay @ 2023-11-22 9:00 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Nikita Shubin,
Andre Przywara, Romain Perier, Geert Uytterhoeven, Jesper Nilsson,
Alexander Sverdlin
Cc: Claudiu Beznea, Paul Barker, Sudeep Holla, Rob Herring,
devicetree, linux-kernel, Alexander Sverdlin
From: Nikita Shubin <nikita.shubin@maquefel.me>
Add device tree file for Technologic Systems ts7250 board and
Liebherr bk3 board which have many in common, both are based on
ep9302 SoC variant.
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
---
arch/arm/boot/dts/cirrus/Makefile | 3 +
arch/arm/boot/dts/cirrus/ep93xx-bk3.dts | 126 +++++++++++++++++++++++++
arch/arm/boot/dts/cirrus/ep93xx-ts7250.dts | 145 +++++++++++++++++++++++++++++
3 files changed, 274 insertions(+)
diff --git a/arch/arm/boot/dts/cirrus/Makefile b/arch/arm/boot/dts/cirrus/Makefile
index e944d3e2129d..211a7e2f2115 100644
--- a/arch/arm/boot/dts/cirrus/Makefile
+++ b/arch/arm/boot/dts/cirrus/Makefile
@@ -3,3 +3,6 @@ dtb-$(CONFIG_ARCH_CLPS711X) += \
ep7211-edb7211.dtb
dtb-$(CONFIG_ARCH_CLPS711X) += \
ep7211-edb7211.dtb
+dtb-$(CONFIG_ARCH_EP93XX) += \
+ ep93xx-bk3.dtb \
+ ep93xx-ts7250.dtb
diff --git a/arch/arm/boot/dts/cirrus/ep93xx-bk3.dts b/arch/arm/boot/dts/cirrus/ep93xx-bk3.dts
new file mode 100644
index 000000000000..5409a700cdfe
--- /dev/null
+++ b/arch/arm/boot/dts/cirrus/ep93xx-bk3.dts
@@ -0,0 +1,126 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Device Tree file for Liebherr controller BK3.1 based on Cirrus EP9302 SoC
+ */
+/dts-v1/;
+#include "ep93xx.dtsi"
+
+/ {
+ model = "Liebherr controller BK3.1";
+ compatible = "liebherr,bk3", "cirrus,ep9301";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ chosen {
+ };
+
+ memory@0 {
+ device_type = "memory";
+ /* should be set from ATAGS */
+ reg = <0x00000000 0x02000000>,
+ <0x000530c0 0x01fdd000>;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+ led-0 {
+ label = "grled";
+ gpios = <&gpio4 0 GPIO_ACTIVE_HIGH>;
+ linux,default-trigger = "heartbeat";
+ function = LED_FUNCTION_HEARTBEAT;
+ };
+
+ led-1 {
+ label = "rdled";
+ gpios = <&gpio4 1 GPIO_ACTIVE_HIGH>;
+ function = LED_FUNCTION_FAULT;
+ };
+ };
+};
+
+&ebi {
+ nand-controller@60000000 {
+ compatible = "technologic,ts7200-nand";
+ reg = <0x60000000 0x8000000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ nand@0 {
+ reg = <0>;
+ partitions {
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "System";
+ reg = <0x00000000 0x01e00000>;
+ read-only;
+ };
+
+ partition@1e00000 {
+ label = "Data";
+ reg = <0x01e00000 0x05f20000>;
+ };
+
+ partition@7d20000 {
+ label = "RedBoot";
+ reg = <0x07d20000 0x002e0000>;
+ read-only;
+ };
+ };
+ };
+ };
+};
+
+ð0 {
+ phy-handle = <&phy0>;
+};
+
+&i2s {
+ dmas = <&dma0 0 1>, <&dma0 0 2>;
+ dma-names = "tx", "rx";
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2s_on_ac97_pins>;
+ status = "okay";
+};
+
+&gpio1 {
+ /* PWM */
+ gpio-ranges = <&syscon 6 163 1>;
+};
+
+&gpio4 {
+ gpio-ranges = <&syscon 0 97 2>;
+ status = "okay";
+};
+
+&gpio6 {
+ gpio-ranges = <&syscon 0 87 2>;
+ status = "okay";
+};
+
+&gpio7 {
+ gpio-ranges = <&syscon 2 199 4>;
+ status = "okay";
+};
+
+&mdio0 {
+ phy0: ethernet-phy@1 {
+ reg = <1>;
+ device_type = "ethernet-phy";
+ };
+};
+
+&uart0 {
+ status = "okay";
+};
+
+&uart1 {
+ status = "okay";
+};
+
+&usb0 {
+ status = "okay";
+};
+
diff --git a/arch/arm/boot/dts/cirrus/ep93xx-ts7250.dts b/arch/arm/boot/dts/cirrus/ep93xx-ts7250.dts
new file mode 100644
index 000000000000..9e03f93d9fc8
--- /dev/null
+++ b/arch/arm/boot/dts/cirrus/ep93xx-ts7250.dts
@@ -0,0 +1,145 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Device Tree file for Technologic Systems ts7250 board based on Cirrus EP9302 SoC
+ */
+/dts-v1/;
+#include "ep93xx.dtsi"
+
+/ {
+ compatible = "technologic,ts7250", "cirrus,ep9301";
+ model = "TS-7250 SBC";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ chosen {
+ };
+
+ memory@0 {
+ device_type = "memory";
+ /* should be set from ATAGS */
+ reg = <0x00000000 0x02000000>,
+ <0x000530c0 0x01fdd000>;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+ led-0 {
+ label = "grled";
+ gpios = <&gpio4 0 GPIO_ACTIVE_HIGH>;
+ linux,default-trigger = "heartbeat";
+ function = LED_FUNCTION_HEARTBEAT;
+ };
+
+ led-1 {
+ label = "rdled";
+ gpios = <&gpio4 1 GPIO_ACTIVE_HIGH>;
+ function = LED_FUNCTION_FAULT;
+ };
+ };
+};
+
+&ebi {
+ nand-controller@60000000 {
+ compatible = "technologic,ts7200-nand";
+ reg = <0x60000000 0x8000000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ nand@0 {
+ reg = <0>;
+ partitions {
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "TS-BOOTROM";
+ reg = <0x00000000 0x00020000>;
+ read-only;
+ };
+
+ partition@20000 {
+ label = "Linux";
+ reg = <0x00020000 0x07d00000>;
+ };
+
+ partition@7d20000 {
+ label = "RedBoot";
+ reg = <0x07d20000 0x002e0000>;
+ read-only;
+ };
+ };
+ };
+ };
+
+ rtc@10800000 {
+ compatible = "st,m48t86";
+ reg = <0x10800000 0x1>,
+ <0x11700000 0x1>;
+ };
+
+ watchdog@23800000 {
+ compatible = "technologic,ts7200-wdt";
+ reg = <0x23800000 0x01>,
+ <0x23c00000 0x01>;
+ timeout-sec = <30>;
+ };
+};
+
+ð0 {
+ phy-handle = <&phy0>;
+};
+
+&gpio1 {
+ /* PWM */
+ gpio-ranges = <&syscon 6 163 1>;
+};
+
+/* ts7250 doesn't have GPIO Port D present */
+&gpio3 {
+ status = "disabled";
+};
+
+&gpio4 {
+ gpio-ranges = <&syscon 0 97 2>;
+};
+
+&gpio6 {
+ gpio-ranges = <&syscon 0 87 2>;
+};
+
+&gpio7 {
+ gpio-ranges = <&syscon 2 199 4>;
+};
+
+&spi0 {
+ cs-gpios = <&gpio5 2 GPIO_ACTIVE_HIGH>;
+ dmas = <&dma1 10 2>, <&dma1 10 1>;
+ dma-names = "rx", "tx";
+ status = "okay";
+
+ tmp122: temperature-sensor@0 {
+ compatible = "ti,tmp122";
+ reg = <0>;
+ spi-max-frequency = <2000000>;
+ };
+};
+
+&mdio0 {
+ phy0: ethernet-phy@1 {
+ reg = <1>;
+ device_type = "ethernet-phy";
+ };
+};
+
+&uart0 {
+ status = "okay";
+};
+
+&uart1 {
+ status = "okay";
+};
+
+&usb0 {
+ status = "okay";
+};
--
2.41.0
^ permalink raw reply related [flat|nested] 34+ messages in thread
* [PATCH v5 32/39] ARM: dts: ep93xx: Add EDB9302 DT
2023-11-22 8:59 [PATCH v5 00/39] ep93xx device tree conversion Nikita Shubin via B4 Relay
` (13 preceding siblings ...)
2023-11-22 9:00 ` [PATCH v5 31/39] ARM: dts: ep93xx: add ts7250 board Nikita Shubin via B4 Relay
@ 2023-11-22 9:00 ` Nikita Shubin via B4 Relay
2023-11-22 10:26 ` [PATCH v5 00/39] ep93xx device tree conversion Andy Shevchenko
15 siblings, 0 replies; 34+ messages in thread
From: Nikita Shubin via B4 Relay @ 2023-11-22 9:00 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Nikita Shubin,
Andre Przywara, Paul Barker, Nick Hawkins, Heiko Stuebner,
Alexander Sverdlin
Cc: Michal Simek, Alexandre TORGUE, Sudeep Holla, Rob Herring,
devicetree, linux-kernel, Alexander Sverdlin
From: Alexander Sverdlin <alexander.sverdlin@gmail.com>
Add device tree for Cirrus EDB9302.
Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
---
arch/arm/boot/dts/cirrus/Makefile | 1 +
arch/arm/boot/dts/cirrus/ep93xx-edb9302.dts | 182 ++++++++++++++++++++++++++++
2 files changed, 183 insertions(+)
diff --git a/arch/arm/boot/dts/cirrus/Makefile b/arch/arm/boot/dts/cirrus/Makefile
index 211a7e2f2115..e6015983e464 100644
--- a/arch/arm/boot/dts/cirrus/Makefile
+++ b/arch/arm/boot/dts/cirrus/Makefile
@@ -4,5 +4,6 @@ dtb-$(CONFIG_ARCH_CLPS711X) += \
dtb-$(CONFIG_ARCH_CLPS711X) += \
ep7211-edb7211.dtb
dtb-$(CONFIG_ARCH_EP93XX) += \
+ ep93xx-edb9302.dtb \
ep93xx-bk3.dtb \
ep93xx-ts7250.dtb
diff --git a/arch/arm/boot/dts/cirrus/ep93xx-edb9302.dts b/arch/arm/boot/dts/cirrus/ep93xx-edb9302.dts
new file mode 100644
index 000000000000..f015c6b8c802
--- /dev/null
+++ b/arch/arm/boot/dts/cirrus/ep93xx-edb9302.dts
@@ -0,0 +1,182 @@
+// SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+/*
+ * Device Tree file for Cirrus Logic EDB9302 board based on EP9302 SoC
+ */
+/dts-v1/;
+#include "ep93xx.dtsi"
+
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "cirrus,edb9302", "cirrus,ep9301";
+ model = "cirrus,edb9302";
+
+ chosen {
+ };
+
+ memory@0 {
+ device_type = "memory";
+ /* should be set from ATAGS */
+ reg = <0x0000000 0x800000>,
+ <0x1000000 0x800000>,
+ <0x4000000 0x800000>,
+ <0x5000000 0x800000>;
+ };
+
+ sound {
+ compatible = "audio-graph-card2";
+ label = "EDB93XX";
+ links = <&i2s_port>;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+ led-0 {
+ label = "grled";
+ gpios = <&gpio4 0 GPIO_ACTIVE_HIGH>;
+ linux,default-trigger = "heartbeat";
+ function = LED_FUNCTION_HEARTBEAT;
+ };
+
+ led-1 {
+ label = "rdled";
+ gpios = <&gpio4 1 GPIO_ACTIVE_HIGH>;
+ function = LED_FUNCTION_FAULT;
+ };
+ };
+};
+
+&adc {
+ status = "okay";
+};
+
+&ebi {
+ flash@60000000 {
+ compatible = "cfi-flash";
+ reg = <0x60000000 0x1000000>;
+ bank-width = <2>;
+ };
+};
+
+ð0 {
+ phy-handle = <&phy0>;
+};
+
+&gpio0 {
+ gpio-ranges = <&syscon 0 153 1>,
+ <&syscon 1 152 1>,
+ <&syscon 2 151 1>,
+ <&syscon 3 148 1>,
+ <&syscon 4 147 1>,
+ <&syscon 5 146 1>,
+ <&syscon 6 145 1>,
+ <&syscon 7 144 1>;
+};
+
+&gpio1 {
+ gpio-ranges = <&syscon 0 143 1>,
+ <&syscon 1 142 1>,
+ <&syscon 2 141 1>,
+ <&syscon 3 140 1>,
+ <&syscon 4 165 1>,
+ <&syscon 5 164 1>,
+ <&syscon 6 163 1>,
+ <&syscon 7 160 1>;
+};
+
+&gpio2 {
+ gpio-ranges = <&syscon 0 115 1>;
+};
+
+/* edb9302 doesn't have GPIO Port D present */
+&gpio3 {
+ status = "disabled";
+};
+
+&gpio4 {
+ gpio-ranges = <&syscon 0 97 2>;
+};
+
+&gpio5 {
+ gpio-ranges = <&syscon 1 170 1>,
+ <&syscon 2 169 1>,
+ <&syscon 3 168 1>;
+};
+
+&gpio6 {
+ gpio-ranges = <&syscon 0 87 2>;
+};
+
+&gpio7 {
+ gpio-ranges = <&syscon 2 199 4>;
+};
+
+&i2s {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2s_on_ac97_pins>;
+ status = "okay";
+ i2s_port: port {
+ i2s_ep: endpoint {
+ system-clock-direction-out;
+ frame-master;
+ bitclock-master;
+ mclk-fs = <256>;
+ dai-format = "i2s";
+ convert-channels = <2>;
+ convert-sample-format = "s32_le";
+ remote-endpoint = <&codec_ep>;
+ };
+ };
+};
+
+&mdio0 {
+ phy0: ethernet-phy@1 {
+ reg = <1>;
+ device_type = "ethernet-phy";
+ };
+};
+
+&spi0 {
+ cs-gpios = <&gpio0 6 GPIO_ACTIVE_LOW
+ &gpio0 7 GPIO_ACTIVE_LOW>;
+ dmas = <&dma1 10 2>, <&dma1 10 1>;
+ dma-names = "rx", "tx";
+ status = "okay";
+
+ cs4271: codec@0 {
+ compatible = "cirrus,cs4271";
+ reg = <0>;
+ #sound-dai-cells = <0>;
+ spi-max-frequency = <6000000>;
+ spi-cpol;
+ spi-cpha;
+ reset-gpio = <&gpio0 1 GPIO_ACTIVE_HIGH>;
+ port {
+ codec_ep: endpoint {
+ remote-endpoint = <&i2s_ep>;
+ };
+ };
+ };
+
+ at25f1024: eeprom@1 {
+ compatible = "atmel,at25";
+ reg = <1>;
+ address-width = <8>;
+ size = <0x20000>;
+ pagesize = <256>;
+ spi-max-frequency = <20000000>;
+ };
+};
+
+&uart0 {
+ status = "okay";
+};
+
+&uart1 {
+ status = "okay";
+};
+
+&usb0 {
+ status = "okay";
+};
+
--
2.41.0
^ permalink raw reply related [flat|nested] 34+ messages in thread
* Re: [PATCH v5 00/39] ep93xx device tree conversion
2023-11-22 8:59 [PATCH v5 00/39] ep93xx device tree conversion Nikita Shubin via B4 Relay
` (14 preceding siblings ...)
2023-11-22 9:00 ` [PATCH v5 32/39] ARM: dts: ep93xx: Add EDB9302 DT Nikita Shubin via B4 Relay
@ 2023-11-22 10:26 ` Andy Shevchenko
15 siblings, 0 replies; 34+ messages in thread
From: Andy Shevchenko @ 2023-11-22 10:26 UTC (permalink / raw)
To: nikita.shubin
Cc: Hartley Sweeten, Alexander Sverdlin, Russell King,
Lukasz Majewski, Linus Walleij, Bartosz Golaszewski,
Michael Turquette, Stephen Boyd, Sebastian Reichel, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Vinod Koul, Wim Van Sebroeck,
Guenter Roeck, Thierry Reding, Uwe Kleine-König, Mark Brown,
David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Miquel Raynal, Richard Weinberger, Vignesh Raghavendra,
Damien Le Moal, Sergey Shtylyov, Dmitry Torokhov, Liam Girdwood,
Jaroslav Kysela, Takashi Iwai, linux-arm-kernel, linux-kernel,
linux-gpio, linux-clk, linux-pm, devicetree, dmaengine,
linux-watchdog, linux-pwm, linux-spi, netdev, linux-mtd,
linux-ide, linux-input, linux-sound, Bartosz Golaszewski,
Krzysztof Kozlowski, Andrew Lunn
On Wed, Nov 22, 2023 at 11:59:38AM +0300, Nikita Shubin via B4 Relay wrote:
> This series aims to convert ep93xx from platform to full device tree support.
>
> The main goal is to receive ACK's to take it via Arnd's arm-soc branch.
>
> Bit thanks to Krzysztof Kozlowski for his zero-day review.
>
> Krzysztof, Sergey, i've changed some files that you have already provided tag:
> - dt-bindings: spi: Add Cirrus EP93xx
> - ata: pata_ep93xx: add device tree support
>
> Added DMA and renamed clock header file.
>
> Sergey, Damien, i've changed some files that you have already provided tag:
> - ata: pata_ep93xx: add device tree support
>
> Added OF DMA setup and dropped platform file.
>
> Mark, i've changed some files that you have already provided tag:
> - spi: ep93xx: add DT support for Cirrus EP93xx
>
> Added OF DMA setup and dropped platform file.
>
> Major updates:
>
> - reboot, pinctrl, clk are now auxiliary and instantiated from SoC driver as
> Stephen Boyd suggested
> - i moved all clock code to clk-ep93xx.c, as it no longer has a separate dt node,
> so XTALI is externalk for this driver and passed as index 0, and pll1, pll2 are
> internal and passed via pointer for parent_data
> - reboot bindings dropped
> - pinctrl and clk bindings moved to syscon YAML
> - xlate added for DMA, so now all DMA users use it via device tree, otherwise probe
> order messed up and we might end up probing before DMA with no possibility to defer probing
> - DMA port bindings dropped, they are described in YAML file
> - DMA platform code dropped
> - i2s, spi, pata now use OF DMA
> - YAML and dtsi/dts changed to reflect auxiliary conversion and DMA changes
> Patches should be now formated with '--patience'
It seems we are a step behind on Torvalds' mind :-)
A few weeks ago he suggested to use --histogram is the best option.
But hey, --patience probably is good enough for this version, so
thank you for using it!
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 34+ messages in thread