On Mon, Feb 24, 2025 at 5:47 AM Vincenzo Frascino <vincenzo.frascino@xxxxxxx> wrote: > > Convert the Xilinx Audio Formatter 1.0 device tree binding documentation > to json-schema. Similar issues in this one I won't repeat... > > Signed-off-by: Vincenzo Frascino <vincenzo.frascino@xxxxxxx> > --- > .../bindings/sound/xlnx,audio-formatter.txt | 29 ------- > .../bindings/sound/xlnx,audio-formatter.yaml | 76 +++++++++++++++++++ > 2 files changed, 76 insertions(+), 29 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/sound/xlnx,audio-formatter.txt > create mode 100644 Documentation/devicetree/bindings/sound/xlnx,audio-formatter.yaml > > diff --git a/Documentation/devicetree/bindings/sound/xlnx,audio-formatter.txt b/Documentation/devicetree/bindings/sound/xlnx,audio-formatter.txt > deleted file mode 100644 > index cbc93c8f4963..000000000000 > --- a/Documentation/devicetree/bindings/sound/xlnx,audio-formatter.txt > +++ /dev/null > @@ -1,29 +0,0 @@ > -Device-Tree bindings for Xilinx PL audio formatter > - > -The IP core supports DMA, data formatting(AES<->PCM conversion) > -of audio samples. > - > -Required properties: > - - compatible: "xlnx,audio-formatter-1.0" > - - interrupt-names: Names specified to list of interrupts in same > - order mentioned under "interrupts". > - List of supported interrupt names are: > - "irq_mm2s" : interrupt from MM2S block > - "irq_s2mm" : interrupt from S2MM block > - - interrupts-parent: Phandle for interrupt controller. > - - interrupts: List of Interrupt numbers. > - - reg: Base address and size of the IP core instance. > - - clock-names: List of input clocks. > - Required elements: "s_axi_lite_aclk", "aud_mclk" > - - clocks: Input clock specifier. Refer to common clock bindings. > - > -Example: > - audio_ss_0_audio_formatter_0: audio_formatter@80010000 { > - compatible = "xlnx,audio-formatter-1.0"; > - interrupt-names = "irq_mm2s", "irq_s2mm"; > - interrupt-parent = <&gic>; > - interrupts = <0 104 4>, <0 105 4>; > - reg = <0x0 0x80010000 0x0 0x1000>; > - clock-names = "s_axi_lite_aclk", "aud_mclk"; > - clocks = <&clk 71>, <&clk_wiz_1 0>; > - }; > diff --git a/Documentation/devicetree/bindings/sound/xlnx,audio-formatter.yaml b/Documentation/devicetree/bindings/sound/xlnx,audio-formatter.yaml > new file mode 100644 > index 000000000000..52a685519bc0 > --- /dev/null > +++ b/Documentation/devicetree/bindings/sound/xlnx,audio-formatter.yaml > @@ -0,0 +1,76 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/sound/xlnx,audio-formatter.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Xilinx PL audio formatter > + > +description: | > + The IP core supports DMA, data formatting(AES<->PCM conversion) > + of audio samples. > + > +maintainers: > + - Vincenzo Frascino <vincenzo.frascino@xxxxxxx> > + > +allOf: > + - $ref: dai-common.yaml# > + > +properties: > + compatible: > + enum: > + - xlnx,audio-formatter-1.0 > + > + reg: > + minItems: 1 > + maxItems: 4 > + description: | > + Base address and size of the IP core instance. > + > + interrupt-names: > + minItems: 1 > + maxItems: 3 > + description: | > + Names specified to list of interrupts in same order mentioned under > + "interrupts". You didn't define the order though... You must define what the names are and the order. We had that, but you dropped them. > + > + interrupts: > + minItems: 1 > + maxItems: 3 > + description: | > + List of Interrupt numbers. Generic description of 'interrupts' is not useful. > + > + clock-names: > + minItems: 2 > + maxItems: 3 > + description: | > + List of input clocks. Must define the names and order. > + > + clocks: > + minItems: 2 > + maxItems: 3 > + description: | > + Input clock specifier. Refer to common clock bindings. > + > +required: > + - compatible > + - reg > + - interrupt-names > + - interrupts > + - clock-names > + - clocks > + > +additionalProperties: true Only common schemas which are incomplete can use 'true'. This must be false. > + > +examples: > + - | > + audio_ss_0_audio_formatter_0: audio_formatter@80010000 { > + compatible = "xlnx,audio-formatter-1.0"; > + interrupt-names = "irq_mm2s", "irq_s2mm"; > + interrupt-parent = <&gic>; > + interrupts = <0 104 4>, <0 105 4>; > + reg = <0x0 0x80010000 0x0 0x1000>; > + clock-names = "s_axi_lite_aclk", "aud_mclk"; > + clocks = <&clk 71>, <&clk_wiz_1 0>; > + }; > +... > -- > 2.43.0 >