Message ID | 20220115093557.30498-2-alexander.stein@mailbox.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [1/2] arm64: dts: meson-axg: add missing reset-names property | expand |
On Sat 15 Jan 2022 at 10:35, Alexander Stein <alexander.stein@mailbox.org> wrote: > Convert Amlogic FIFO controller documentation to yaml format. > > Signed-off-by: Alexander Stein <alexander.stein@mailbox.org> > --- > Things to note: > First of, Jerome, sorry for adding you as maintainer, but > 1) it's mandatory > 2) your are the (only) author of amlogic,axg-fifo.txt > > Please add your Signed-off-by if that is okay with you. > > License is mandated by checkpath, not my choice. > > I'm not so sure about the compatible check. Essentially it is either > * 'amlogic,axg-frddr' OR > * 'amlogic,g12a-frddr' + 'amlogic,axg-frddr' > (or 'sm1' instead of 'g12a') > > Same goes for *-toddr. Is this schema correct in that regard? At least I > got no warnings on existing device trees. > There has already been a submission of this. It should answer your questions. You've also missed some constraints regarding resets. Please check: https://patchwork.kernel.org/project/linux-amlogic/list/?series=246453&state=%2A&archive=both > .../bindings/sound/amlogic,axg-fifo.txt | 34 ------- > .../bindings/sound/amlogic,axg-fifo.yaml | 97 +++++++++++++++++++ > 2 files changed, 97 insertions(+), 34 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/sound/amlogic,axg-fifo.txt > create mode 100644 Documentation/devicetree/bindings/sound/amlogic,axg-fifo.yaml > > diff --git a/Documentation/devicetree/bindings/sound/amlogic,axg-fifo.txt b/Documentation/devicetree/bindings/sound/amlogic,axg-fifo.txt > deleted file mode 100644 > index fa4545ed81ca..000000000000 > --- a/Documentation/devicetree/bindings/sound/amlogic,axg-fifo.txt > +++ /dev/null > @@ -1,34 +0,0 @@ > -* Amlogic Audio FIFO controllers > - > -Required properties: > -- compatible: 'amlogic,axg-toddr' or > - 'amlogic,axg-toddr' or > - 'amlogic,g12a-frddr' or > - 'amlogic,g12a-toddr' or > - 'amlogic,sm1-frddr' or > - 'amlogic,sm1-toddr' > -- reg: physical base address of the controller and length of memory > - mapped region. > -- interrupts: interrupt specifier for the fifo. > -- clocks: phandle to the fifo peripheral clock provided by the audio > - clock controller. > -- resets: list of reset phandle, one for each entry reset-names. > -- reset-names: should contain the following: > - * "arb" : memory ARB line (required) > - * "rst" : dedicated device reset line (optional) > -- #sound-dai-cells: must be 0. > -- amlogic,fifo-depth: The size of the controller's fifo in bytes. This > - is useful for determining certain configuration such > - as the flush threshold of the fifo > - > -Example of FRDDR A on the A113 SoC: > - > -frddr_a: audio-controller@1c0 { > - compatible = "amlogic,axg-frddr"; > - reg = <0x0 0x1c0 0x0 0x1c>; > - #sound-dai-cells = <0>; > - interrupts = <GIC_SPI 88 IRQ_TYPE_EDGE_RISING>; > - clocks = <&clkc_audio AUD_CLKID_FRDDR_A>; > - resets = <&arb AXG_ARB_FRDDR_A>; > - fifo-depth = <512>; > -}; > diff --git a/Documentation/devicetree/bindings/sound/amlogic,axg-fifo.yaml b/Documentation/devicetree/bindings/sound/amlogic,axg-fifo.yaml > new file mode 100644 > index 000000000000..54bc073591f4 > --- /dev/null > +++ b/Documentation/devicetree/bindings/sound/amlogic,axg-fifo.yaml > @@ -0,0 +1,97 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/sound/amlogic,axg-fifo.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Amlogic Audio FIFO controllers > + > +maintainers: > + - Jerome Brunet <jbrunet@baylibre.com> > + > +allOf: > + - $ref: name-prefix.yaml# > + > +properties: > + $nodename: > + pattern: "^audio-controller@.*" > + > + "#sound-dai-cells": > + const: 0 > + > + compatible: > + oneOf: > + - items: > + - enum: > + - amlogic,g12a-frddr > + - amlogic,sm1-frddr > + - const: amlogic,axg-frddr > + - const: amlogic,axg-frddr > + - items: > + - enum: > + - amlogic,g12a-toddr > + - amlogic,sm1-toddr > + - const: amlogic,axg-toddr > + - const: amlogic,axg-toddr > + > + reg: > + items: > + - description: physical base address of the controller > + > + interrupts: > + items: > + - description: FIFO interrupt > + > + clocks: > + items: > + - description: FIFO peripheral clock provided by the audio clock controller > + > + resets: > + minItems: 1 > + items: > + - description: memory ARB line > + - description: optional device reset line > + > + reset-names: > + minItems: 1 > + items: > + - const: arb > + - const: rst > + > + amlogic,fifo-depth: > + description: > > + The size of the controller's fifo in bytes. This > + is useful for determining certain configuration such > + as the flush threshold of the fifo > + $ref: /schemas/types.yaml#/definitions/uint32 > + > + sound-name-prefix: true > + > +required: > + - compatible > + - reg > + - interrupts > + - clocks > + - resets > + - reset-names > + - '#sound-dai-cells' > + - amlogic,fifo-depth > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/clock/axg-audio-clkc.h> > + #include <dt-bindings/interrupt-controller/irq.h> > + #include <dt-bindings/reset/amlogic,meson-axg-audio-arb.h> > + > + frddr_a: audio-controller@1c0 { > + compatible = "amlogic,axg-frddr"; > + reg = <0x1c0 0x1c>; > + #sound-dai-cells = <0>; > + interrupts = <88 IRQ_TYPE_EDGE_RISING>; > + clocks = <&clkc_audio AUD_CLKID_FRDDR_A>; > + resets = <&arb AXG_ARB_FRDDR_A>; > + reset-names = "arb"; > + amlogic,fifo-depth = <512>; > + };
On Sat, 15 Jan 2022 10:35:57 +0100, Alexander Stein wrote: > Convert Amlogic FIFO controller documentation to yaml format. > > Signed-off-by: Alexander Stein <alexander.stein@mailbox.org> > --- > Things to note: > First of, Jerome, sorry for adding you as maintainer, but > 1) it's mandatory > 2) your are the (only) author of amlogic,axg-fifo.txt > > Please add your Signed-off-by if that is okay with you. > > License is mandated by checkpath, not my choice. > > I'm not so sure about the compatible check. Essentially it is either > * 'amlogic,axg-frddr' OR > * 'amlogic,g12a-frddr' + 'amlogic,axg-frddr' > (or 'sm1' instead of 'g12a') > > Same goes for *-toddr. Is this schema correct in that regard? At least I > got no warnings on existing device trees. > > .../bindings/sound/amlogic,axg-fifo.txt | 34 ------- > .../bindings/sound/amlogic,axg-fifo.yaml | 97 +++++++++++++++++++ > 2 files changed, 97 insertions(+), 34 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/sound/amlogic,axg-fifo.txt > create mode 100644 Documentation/devicetree/bindings/sound/amlogic,axg-fifo.yaml > Running 'make dtbs_check' with the schema in this patch gives the following warnings. Consider if they are expected or the schema is incorrect. These may not be new warnings. Note that it is not yet a requirement to have 0 warnings for dtbs_check. This will change in the future. Full log is available here: https://patchwork.ozlabs.org/patch/1580333 audio-controller@100: 'reset-names' is a required property arch/arm64/boot/dts/amlogic/meson-axg-s400.dt.yaml audio-controller@140: 'reset-names' is a required property arch/arm64/boot/dts/amlogic/meson-axg-s400.dt.yaml audio-controller@180: 'reset-names' is a required property arch/arm64/boot/dts/amlogic/meson-axg-s400.dt.yaml audio-controller@1c0: 'reset-names' is a required property arch/arm64/boot/dts/amlogic/meson-axg-s400.dt.yaml audio-controller@200: 'reset-names' is a required property arch/arm64/boot/dts/amlogic/meson-axg-s400.dt.yaml audio-controller@240: 'reset-names' is a required property arch/arm64/boot/dts/amlogic/meson-axg-s400.dt.yaml
On Sat, Jan 15, 2022 at 3:36 AM Alexander Stein <alexander.stein@mailbox.org> wrote: > > Convert Amlogic FIFO controller documentation to yaml format. > > Signed-off-by: Alexander Stein <alexander.stein@mailbox.org> > --- > Things to note: > First of, Jerome, sorry for adding you as maintainer, but > 1) it's mandatory > 2) your are the (only) author of amlogic,axg-fifo.txt > > Please add your Signed-off-by if that is okay with you. That's not how Signed-off-by works. 'Acked-by' would be correct. But as the only author, I don't think that's required here. > > License is mandated by checkpath, not my choice. checkpatch doesn't mandate anything. It is guidance. If you copy the existing binding, then you inherit the default license (GPL-2.0). But if Jerome is okay with relicensing, that would be nice. Rob
diff --git a/Documentation/devicetree/bindings/sound/amlogic,axg-fifo.txt b/Documentation/devicetree/bindings/sound/amlogic,axg-fifo.txt deleted file mode 100644 index fa4545ed81ca..000000000000 --- a/Documentation/devicetree/bindings/sound/amlogic,axg-fifo.txt +++ /dev/null @@ -1,34 +0,0 @@ -* Amlogic Audio FIFO controllers - -Required properties: -- compatible: 'amlogic,axg-toddr' or - 'amlogic,axg-toddr' or - 'amlogic,g12a-frddr' or - 'amlogic,g12a-toddr' or - 'amlogic,sm1-frddr' or - 'amlogic,sm1-toddr' -- reg: physical base address of the controller and length of memory - mapped region. -- interrupts: interrupt specifier for the fifo. -- clocks: phandle to the fifo peripheral clock provided by the audio - clock controller. -- resets: list of reset phandle, one for each entry reset-names. -- reset-names: should contain the following: - * "arb" : memory ARB line (required) - * "rst" : dedicated device reset line (optional) -- #sound-dai-cells: must be 0. -- amlogic,fifo-depth: The size of the controller's fifo in bytes. This - is useful for determining certain configuration such - as the flush threshold of the fifo - -Example of FRDDR A on the A113 SoC: - -frddr_a: audio-controller@1c0 { - compatible = "amlogic,axg-frddr"; - reg = <0x0 0x1c0 0x0 0x1c>; - #sound-dai-cells = <0>; - interrupts = <GIC_SPI 88 IRQ_TYPE_EDGE_RISING>; - clocks = <&clkc_audio AUD_CLKID_FRDDR_A>; - resets = <&arb AXG_ARB_FRDDR_A>; - fifo-depth = <512>; -}; diff --git a/Documentation/devicetree/bindings/sound/amlogic,axg-fifo.yaml b/Documentation/devicetree/bindings/sound/amlogic,axg-fifo.yaml new file mode 100644 index 000000000000..54bc073591f4 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/amlogic,axg-fifo.yaml @@ -0,0 +1,97 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/sound/amlogic,axg-fifo.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Amlogic Audio FIFO controllers + +maintainers: + - Jerome Brunet <jbrunet@baylibre.com> + +allOf: + - $ref: name-prefix.yaml# + +properties: + $nodename: + pattern: "^audio-controller@.*" + + "#sound-dai-cells": + const: 0 + + compatible: + oneOf: + - items: + - enum: + - amlogic,g12a-frddr + - amlogic,sm1-frddr + - const: amlogic,axg-frddr + - const: amlogic,axg-frddr + - items: + - enum: + - amlogic,g12a-toddr + - amlogic,sm1-toddr + - const: amlogic,axg-toddr + - const: amlogic,axg-toddr + + reg: + items: + - description: physical base address of the controller + + interrupts: + items: + - description: FIFO interrupt + + clocks: + items: + - description: FIFO peripheral clock provided by the audio clock controller + + resets: + minItems: 1 + items: + - description: memory ARB line + - description: optional device reset line + + reset-names: + minItems: 1 + items: + - const: arb + - const: rst + + amlogic,fifo-depth: + description: > + The size of the controller's fifo in bytes. This + is useful for determining certain configuration such + as the flush threshold of the fifo + $ref: /schemas/types.yaml#/definitions/uint32 + + sound-name-prefix: true + +required: + - compatible + - reg + - interrupts + - clocks + - resets + - reset-names + - '#sound-dai-cells' + - amlogic,fifo-depth + +additionalProperties: false + +examples: + - | + #include <dt-bindings/clock/axg-audio-clkc.h> + #include <dt-bindings/interrupt-controller/irq.h> + #include <dt-bindings/reset/amlogic,meson-axg-audio-arb.h> + + frddr_a: audio-controller@1c0 { + compatible = "amlogic,axg-frddr"; + reg = <0x1c0 0x1c>; + #sound-dai-cells = <0>; + interrupts = <88 IRQ_TYPE_EDGE_RISING>; + clocks = <&clkc_audio AUD_CLKID_FRDDR_A>; + resets = <&arb AXG_ARB_FRDDR_A>; + reset-names = "arb"; + amlogic,fifo-depth = <512>; + };
Convert Amlogic FIFO controller documentation to yaml format. Signed-off-by: Alexander Stein <alexander.stein@mailbox.org> --- Things to note: First of, Jerome, sorry for adding you as maintainer, but 1) it's mandatory 2) your are the (only) author of amlogic,axg-fifo.txt Please add your Signed-off-by if that is okay with you. License is mandated by checkpath, not my choice. I'm not so sure about the compatible check. Essentially it is either * 'amlogic,axg-frddr' OR * 'amlogic,g12a-frddr' + 'amlogic,axg-frddr' (or 'sm1' instead of 'g12a') Same goes for *-toddr. Is this schema correct in that regard? At least I got no warnings on existing device trees. .../bindings/sound/amlogic,axg-fifo.txt | 34 ------- .../bindings/sound/amlogic,axg-fifo.yaml | 97 +++++++++++++++++++ 2 files changed, 97 insertions(+), 34 deletions(-) delete mode 100644 Documentation/devicetree/bindings/sound/amlogic,axg-fifo.txt create mode 100644 Documentation/devicetree/bindings/sound/amlogic,axg-fifo.yaml