Re: [PATCH v1 02/43] dt-bindings: soc: Add Cirrus EP93xx

From: Nikita Shubin
Date: Thu Jun 01 2023 - 03:04:36 EST


Hello Krzysztof!

On Thu, 1 Jun 2023 08:37:02 +0200
Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> wrote:

> On 01/06/2023 07:33, Nikita Shubin wrote:
> > This adds device tree bindings for the Cirrus Logic EP93xx.
> >
> > Signed-off-by: Nikita Shubin <nikita.shubin@xxxxxxxxxxx>
>
> You already sent v1. This patchset is attached to the previous thread
> making it more complicated for me to process. This buries it deep in
> the mailbox and might interfere with applying entire sets.

Sorry for that, i've already realized my mistake looking at my own
mailbox.

>
> Is this the next version, so v3? You already had at least two versions
> before, so this cannot be v1.

It's second on the mail lists, the first one was closed RFC.

The first was without any version, i.e. v0, this one is v1 (should be
v2).

I promise to be more careful next series.

All other comments acknowledged.

>
> > ---
> >
> > Notes:
> > v0 -> v1:
> >
> > - fixed compatible - now it specifies three boards
> > - ts7250
> > - bk3
> > - edb9302
> > - fixed identation in example
> > - dropped labels
> >
> > .../devicetree/bindings/arm/ep93xx.yaml | 107
> > ++++++++++++++++++ .../dt-bindings/clock/cirrus,ep93xx-clock.h |
> > 53 +++++++++ 2 files changed, 160 insertions(+)
> > create mode 100644
> > Documentation/devicetree/bindings/arm/ep93xx.yaml create mode
> > 100644 include/dt-bindings/clock/cirrus,ep93xx-clock.h
> >
> > diff --git a/Documentation/devicetree/bindings/arm/ep93xx.yaml
> > b/Documentation/devicetree/bindings/arm/ep93xx.yaml new file mode
> > 100644 index 000000000000..bcf9754d0763
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/arm/ep93xx.yaml
> > @@ -0,0 +1,107 @@
> > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/arm/ep93xx.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Cirrus Logic EP93xx device tree bindings
>
> No improvements.
>
> > +
> > +description: |+
>
> no improvements. Do not need '|+' unless you need to preserve
> formatting.
>
>
> > + The EP93xx SoC is a ARMv4T-based with 200 MHz ARM9 CPU.
> > +
> > +maintainers:
> > + - Alexander Sverdlin <alexander.sverdlin@xxxxxxxxx>
> > + - Nikita Shubin <nikita.shubin@xxxxxxxxxxx>
> > +
> > +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
> > +
> > + soc:
> > + type: object
> > + patternProperties:
> > + "^.*syscon@80930000$":
> > + type: object
> > + properties:
> > + compatible:
> > + items:
> > + - const: cirrus,ep9301-syscon
> > + - const: syscon
> > + - const: simple-mfd
> > + ep9301-reboot:
> > + type: object
> > + properties:
> > + compatible:
> > + const: cirrus,ep9301-reboot
> > + required:
> > + - compatible
> > + - reg
> > + - ep9301-reboot
> > +
> > + "^.*timer@80810000$":
> > + type: object
> > + properties:
> > + compatible:
> > + const: cirrus,ep9301-timer
> > +
> > + required:
> > + - syscon@80930000
> > + - timer@80810000
>
> I don't understand what are you putting here. Why addresses are in
> bindings (they should not be), why some nodes are documented in
> top-level compatible. Drop all this.
>
> Open existing files and look how it is done there.
>
> > +
> > +required:
> > + - compatible
> > + - soc> +
> > +additionalProperties: true
> > +
> > +examples:
> > + - |
> > + / {
> > + compatible = "technologic,ts7250", "cirrus,ep9301";
> > + model = "TS-7250 SBC";
> > + #address-cells = <1>;
> > + #size-cells = <1>;
> > + soc {
> > + #address-cells = <1>;
> > + #size-cells = <1>;
> > + ranges;
> > + compatible = "simple-bus";
> > +
> > + syscon@80930000 {
> > + compatible = "cirrus,ep9301-syscon",
> > + "syscon", "simple-mfd";
> > + reg = <0x80930000 0x1000>;
> > +
> > + ep9301-reboot {
> > + compatible = "cirrus,ep9301-reboot";
> > + };
> > + };
> > +
> > + timer@80810000 {
> > + compatible = "cirrus,ep9301-timer";
> > + reg = <0x80810000 0x100>;
> > + interrupt-parent = <&vic1>;
> > + interrupts = <19>;
> > + };
> > + };
> > + };
>
> Drop all this. There is no existing binding like that.
>
> > +
> > +...
> > diff --git a/include/dt-bindings/clock/cirrus,ep93xx-clock.h
> > b/include/dt-bindings/clock/cirrus,ep93xx-clock.h
>
> Not related to top level compatible.
>
> > new file mode 100644
> > index 000000000000..6a8cf33d811b
> > --- /dev/null
> > +++ b/include/dt-bindings/clock/cirrus,ep93xx-clock.h
> > @@ -0,0 +1,53 @@
> > +/* SPDX-License-Identifier: GPL-2.0-only */
>
> Dual license.
>
> > +#ifndef DT_BINDINGS_CIRRUS_EP93XX_CLOCK_H
> > +#define DT_BINDINGS_CIRRUS_EP93XX_CLOCK_H
> > +
> > +#define EP93XX_CLK_XTALI 0
> > +
>
>
> Best regards,
> Krzysztof
>