devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 0/4] xlnx: dt-bindings: Convert to json-schema
@ 2025-02-25 19:07 Vincenzo Frascino
  2025-02-25 19:07 ` [PATCH v5 1/4] ASoC: dt-bindings: xlnx,i2s: " Vincenzo Frascino
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Vincenzo Frascino @ 2025-02-25 19:07 UTC (permalink / raw)
  To: linux-sound
  Cc: Vincenzo Frascino, Maruthi Srinivas Bayyavarapu, Sudeep Holla,
	Liam Girdwood, Mark Brown, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, devicetree, linux-kernel

This series converts the folling Xilinx device tree binding documentation:
 - xlnx,i2s
 - xlnx,audio-formatter
 - xlnx,spdif
to json-schema.

To simplify the testing a linux tree rebased on 6.13-rc4 is accessible
at [1].

[1] https://codeberg.org/vincenzo/linux/src/branch/xlnx/dt-bindings/v5

Note: These bindings are required for future work on the ARM Morello
Platforms device tree.

Cc: Maruthi Srinivas Bayyavarapu <maruthi.srinivas.bayyavarapu@xilinx.com>
Cc: Sudeep Holla <sudeep.holla@arm.com>
Cc: Liam Girdwood <lgirdwood@gmail.com>
Cc: Mark Brown <broonie@kernel.org>
Cc: Rob Herring <robh@kernel.org>
Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
Cc: Conor Dooley <conor+dt@kernel.org>
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Vincenzo Frascino <vincenzo.frascino@arm.com>

Changes
=======
v5:
  - Address review comments.
v4:
  - Address review comments.
v3:
  - Address an issue with the MAINTAINERS file reported by the kernel
    test robot. 
v2:
  - Address review comments.
  - Rebase on 6.14-rc4.

Vincenzo Frascino (4):
  ASoC: dt-bindings: xlnx,i2s: Convert to json-schema
  ASoC: dt-bindings: xlnx,audio-formatter: Convert to json-schema
  ASoC: dt-bindings: xlnx,spdif: Convert to json-schema
  MAINTAINERS: Add Vincenzo Frascino as Xilinx Sound Driver Maintainer

 .../bindings/sound/xlnx,audio-formatter.txt   | 29 -------
 .../bindings/sound/xlnx,audio-formatter.yaml  | 75 +++++++++++++++++
 .../devicetree/bindings/sound/xlnx,i2s.txt    | 28 -------
 .../devicetree/bindings/sound/xlnx,i2s.yaml   | 65 +++++++++++++++
 .../devicetree/bindings/sound/xlnx,spdif.txt  | 28 -------
 .../devicetree/bindings/sound/xlnx,spdif.yaml | 83 +++++++++++++++++++
 MAINTAINERS                                   |  8 ++
 7 files changed, 231 insertions(+), 85 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/sound/xlnx,audio-formatter.txt
 create mode 100644 Documentation/devicetree/bindings/sound/xlnx,audio-formatter.yaml
 delete mode 100644 Documentation/devicetree/bindings/sound/xlnx,i2s.txt
 create mode 100644 Documentation/devicetree/bindings/sound/xlnx,i2s.yaml
 delete mode 100644 Documentation/devicetree/bindings/sound/xlnx,spdif.txt
 create mode 100644 Documentation/devicetree/bindings/sound/xlnx,spdif.yaml

-- 
2.43.0


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v5 1/4] ASoC: dt-bindings: xlnx,i2s: Convert to json-schema
  2025-02-25 19:07 [PATCH v5 0/4] xlnx: dt-bindings: Convert to json-schema Vincenzo Frascino
@ 2025-02-25 19:07 ` Vincenzo Frascino
  2025-02-25 19:07 ` [PATCH v5 2/4] ASoC: dt-bindings: xlnx,audio-formatter: " Vincenzo Frascino
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 8+ messages in thread
From: Vincenzo Frascino @ 2025-02-25 19:07 UTC (permalink / raw)
  To: linux-sound
  Cc: Vincenzo Frascino, Maruthi Srinivas Bayyavarapu, Sudeep Holla,
	Liam Girdwood, Mark Brown, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, devicetree, linux-kernel

Convert the Xilinx I2S device tree binding documentation to json-schema.

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
---
 .../devicetree/bindings/sound/xlnx,i2s.txt    | 28 --------
 .../devicetree/bindings/sound/xlnx,i2s.yaml   | 65 +++++++++++++++++++
 2 files changed, 65 insertions(+), 28 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/sound/xlnx,i2s.txt
 create mode 100644 Documentation/devicetree/bindings/sound/xlnx,i2s.yaml

diff --git a/Documentation/devicetree/bindings/sound/xlnx,i2s.txt b/Documentation/devicetree/bindings/sound/xlnx,i2s.txt
deleted file mode 100644
index 5e7c7d5bb60a..000000000000
--- a/Documentation/devicetree/bindings/sound/xlnx,i2s.txt
+++ /dev/null
@@ -1,28 +0,0 @@
-Device-Tree bindings for Xilinx I2S PL block
-
-The IP supports I2S based playback/capture audio
-
-Required property:
- - compatible: "xlnx,i2s-transmitter-1.0" for playback and
-	       "xlnx,i2s-receiver-1.0" for capture
-
-Required property common to both I2S playback and capture:
- - reg: Base address and size of the IP core instance.
- - xlnx,dwidth: sample data width. Can be any of 16, 24.
- - xlnx,num-channels: Number of I2S streams. Can be any of 1, 2, 3, 4.
-		      supported channels = 2 * xlnx,num-channels
-
-Example:
-
-	i2s_receiver@a0080000 {
-		compatible = "xlnx,i2s-receiver-1.0";
-		reg = <0x0 0xa0080000 0x0 0x10000>;
-		xlnx,dwidth = <0x18>;
-		xlnx,num-channels = <1>;
-	};
-	i2s_transmitter@a0090000 {
-		compatible = "xlnx,i2s-transmitter-1.0";
-		reg = <0x0 0xa0090000 0x0 0x10000>;
-		xlnx,dwidth = <0x18>;
-		xlnx,num-channels = <1>;
-	};
diff --git a/Documentation/devicetree/bindings/sound/xlnx,i2s.yaml b/Documentation/devicetree/bindings/sound/xlnx,i2s.yaml
new file mode 100644
index 000000000000..3c2b0be07c53
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/xlnx,i2s.yaml
@@ -0,0 +1,65 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/xlnx,i2s.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Xilinx I2S PL block
+
+description:
+  The IP supports I2S based playback/capture audio.
+
+maintainers:
+  - Vincenzo Frascino <vincenzo.frascino@arm.com>
+
+allOf:
+  - $ref: dai-common.yaml#
+
+properties:
+  compatible:
+    enum:
+      - xlnx,i2s-receiver-1.0
+      - xlnx,i2s-transmitter-1.0
+
+  reg:
+    maxItems: 1
+
+  xlnx,dwidth:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    enum:
+      - 16
+      - 24
+    description: |
+      Sample data width.
+
+  xlnx,num-channels:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    minimum: 1
+    maximum: 4
+    description: |
+      Number of I2S streams.
+
+required:
+  - compatible
+  - reg
+  - xlnx,dwidth
+  - xlnx,num-channels
+
+additionalProperties: false
+
+examples:
+  - |
+    i2s@a0080000 {
+      compatible = "xlnx,i2s-receiver-1.0";
+      reg = <0xa0080000 0x10000>;
+      xlnx,dwidth = <0x18>;
+      xlnx,num-channels = <1>;
+    };
+    i2s@a0090000 {
+      compatible = "xlnx,i2s-transmitter-1.0";
+      reg = <0xa0090000 0x10000>;
+      xlnx,dwidth = <0x18>;
+      xlnx,num-channels = <1>;
+    };
+
+...
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH v5 2/4] ASoC: dt-bindings: xlnx,audio-formatter: Convert to json-schema
  2025-02-25 19:07 [PATCH v5 0/4] xlnx: dt-bindings: Convert to json-schema Vincenzo Frascino
  2025-02-25 19:07 ` [PATCH v5 1/4] ASoC: dt-bindings: xlnx,i2s: " Vincenzo Frascino
@ 2025-02-25 19:07 ` Vincenzo Frascino
  2025-02-25 22:14   ` Rob Herring
  2025-02-25 19:07 ` [PATCH v5 3/4] ASoC: dt-bindings: xlnx,spdif: " Vincenzo Frascino
  2025-02-25 19:07 ` [PATCH v5 4/4] MAINTAINERS: Add Vincenzo Frascino as Xilinx Sound Driver Maintainer Vincenzo Frascino
  3 siblings, 1 reply; 8+ messages in thread
From: Vincenzo Frascino @ 2025-02-25 19:07 UTC (permalink / raw)
  To: linux-sound
  Cc: Vincenzo Frascino, Maruthi Srinivas Bayyavarapu, Sudeep Holla,
	Liam Girdwood, Mark Brown, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, devicetree, linux-kernel

Convert the Xilinx Audio Formatter 1.0  device tree binding documentation
to json-schema.

Signed-off-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
---
 .../bindings/sound/xlnx,audio-formatter.txt   | 29 -------
 .../bindings/sound/xlnx,audio-formatter.yaml  | 75 +++++++++++++++++++
 2 files changed, 75 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..af892a9abdc6
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/xlnx,audio-formatter.yaml
@@ -0,0 +1,75 @@
+# 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@arm.com>
+
+allOf:
+  - $ref: dai-common.yaml#
+
+properties:
+  compatible:
+    enum:
+      - xlnx,audio-formatter-1.0
+
+  reg:
+    maxItems: 1
+
+  interrupt-names:
+    minItems: 1
+    items:
+      - const: irq_mm2s
+      - const: irq_s2mm
+    description: |
+      Names specified to list of interrupts in same order mentioned under
+      "interrupts".
+
+  interrupts:
+    minItems: 1
+    items:
+      - description: interrupt from MM2S block
+      - description: interrupt from S2MM block
+
+  clock-names:
+    minItems: 1
+    items:
+      - const: s_axi_lite_aclk
+      - const: aud_mclk
+
+  clocks:
+    minItems: 1
+    items:
+      - description: clock for the axi data stream
+      - description: clock for the MEMS microphone data stream
+
+required:
+  - compatible
+  - reg
+  - interrupt-names
+  - interrupts
+  - clock-names
+  - clocks
+
+additionalProperties: false
+
+examples:
+  - |
+    audio_formatter@80010000 {
+      compatible = "xlnx,audio-formatter-1.0";
+      reg = <0x80010000 0x1000>;
+      interrupt-names = "irq_mm2s", "irq_s2mm";
+      interrupt-parent = <&gic>;
+      interrupts = <0 104 4>, <0 105 4>;
+      clock-names = "s_axi_lite_aclk", "aud_mclk";
+      clocks = <&clk 71>, <&clk_wiz_1 0>;
+    };
+...
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH v5 3/4] ASoC: dt-bindings: xlnx,spdif: Convert to json-schema
  2025-02-25 19:07 [PATCH v5 0/4] xlnx: dt-bindings: Convert to json-schema Vincenzo Frascino
  2025-02-25 19:07 ` [PATCH v5 1/4] ASoC: dt-bindings: xlnx,i2s: " Vincenzo Frascino
  2025-02-25 19:07 ` [PATCH v5 2/4] ASoC: dt-bindings: xlnx,audio-formatter: " Vincenzo Frascino
@ 2025-02-25 19:07 ` Vincenzo Frascino
  2025-02-25 22:19   ` Rob Herring
  2025-02-25 19:07 ` [PATCH v5 4/4] MAINTAINERS: Add Vincenzo Frascino as Xilinx Sound Driver Maintainer Vincenzo Frascino
  3 siblings, 1 reply; 8+ messages in thread
From: Vincenzo Frascino @ 2025-02-25 19:07 UTC (permalink / raw)
  To: linux-sound
  Cc: Vincenzo Frascino, Maruthi Srinivas Bayyavarapu, Sudeep Holla,
	Liam Girdwood, Mark Brown, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, devicetree, linux-kernel

Convert the Xilinx SPDIF 2.0 device tree binding documentation to
json-schema.

Signed-off-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
---
 .../devicetree/bindings/sound/xlnx,spdif.txt  | 28 -------
 .../devicetree/bindings/sound/xlnx,spdif.yaml | 83 +++++++++++++++++++
 2 files changed, 83 insertions(+), 28 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/sound/xlnx,spdif.txt
 create mode 100644 Documentation/devicetree/bindings/sound/xlnx,spdif.yaml

diff --git a/Documentation/devicetree/bindings/sound/xlnx,spdif.txt b/Documentation/devicetree/bindings/sound/xlnx,spdif.txt
deleted file mode 100644
index 15c2d64d247c..000000000000
--- a/Documentation/devicetree/bindings/sound/xlnx,spdif.txt
+++ /dev/null
@@ -1,28 +0,0 @@
-Device-Tree bindings for Xilinx SPDIF IP
-
-The IP supports playback and capture of SPDIF audio
-
-Required properties:
- - compatible: "xlnx,spdif-2.0"
- - clock-names: List of input clocks.
-   Required elements: "s_axi_aclk", "aud_clk_i"
- - clocks: Input clock specifier. Refer to common clock bindings.
- - reg: Base address and address length of the IP core instance.
- - interrupts-parent: Phandle for interrupt controller.
- - interrupts: List of Interrupt numbers.
- - xlnx,spdif-mode: 0 :- receiver mode
-		    1 :- transmitter mode
- - xlnx,aud_clk_i: input audio clock value.
-
-Example:
-	spdif_0: spdif@80010000 {
-		clock-names = "aud_clk_i", "s_axi_aclk";
-		clocks = <&misc_clk_0>, <&clk 71>;
-		compatible = "xlnx,spdif-2.0";
-		interrupt-names = "spdif_interrupt";
-		interrupt-parent = <&gic>;
-		interrupts = <0 91 4>;
-		reg = <0x0 0x80010000 0x0 0x10000>;
-		xlnx,spdif-mode = <1>;
-		xlnx,aud_clk_i = <49152913>;
-	};
diff --git a/Documentation/devicetree/bindings/sound/xlnx,spdif.yaml b/Documentation/devicetree/bindings/sound/xlnx,spdif.yaml
new file mode 100644
index 000000000000..ea07c0b0d003
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/xlnx,spdif.yaml
@@ -0,0 +1,83 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/xlnx,spdif.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Xilinx SPDIF IP
+
+description:
+  The IP supports playback and capture of SPDIF audio.
+
+maintainers:
+  - Vincenzo Frascino <vincenzo.frascino@arm.com>
+
+allOf:
+  - $ref: dai-common.yaml#
+
+properties:
+  compatible:
+    enum:
+      - xlnx,spdif-2.0
+
+  reg:
+    maxItems: 1
+
+  interrupt-names:
+    items:
+      - const: spdif_interrupt
+
+  interrupts:
+    items:
+      - description: SPDIF audio interrupt
+
+  clock-names:
+    items:
+      - const: aud_clk_i
+      - const: s_axi_aclk
+
+  clocks:
+    minItems: 1
+    items:
+      - description: input audio clock
+      - description: clock for the AXI data stream
+
+  xlnx,spdif-mode:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    enum:
+      - 0
+      - 1
+    description: |
+      0 - receiver
+      1 - transmitter
+
+  xlnx,aud_clk_i:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    description:
+      Input audio clock frequency. It affects the sampling rate.
+
+required:
+  - compatible
+  - reg
+  - interrupt-names
+  - interrupts
+  - clock-names
+  - clocks
+
+additionalProperties: false
+
+examples:
+  - |
+    spdif@80010000 {
+      compatible = "xlnx,spdif-2.0";
+      reg = <0x80010000 0x10000>;
+      clock-names = "aud_clk_i", "s_axi_aclk";
+      clocks = <&misc_clk_0>, <&clk 71>;
+      interrupt-names = "spdif_interrupt";
+      interrupt-parent = <&gic>;
+      interrupts = <0 91 4>;
+      xlnx,spdif-mode = <1>;
+      xlnx,aud_clk_i = <49152913>;
+    };
+
+...
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH v5 4/4] MAINTAINERS: Add Vincenzo Frascino as Xilinx Sound Driver Maintainer
  2025-02-25 19:07 [PATCH v5 0/4] xlnx: dt-bindings: Convert to json-schema Vincenzo Frascino
                   ` (2 preceding siblings ...)
  2025-02-25 19:07 ` [PATCH v5 3/4] ASoC: dt-bindings: xlnx,spdif: " Vincenzo Frascino
@ 2025-02-25 19:07 ` Vincenzo Frascino
  3 siblings, 0 replies; 8+ messages in thread
From: Vincenzo Frascino @ 2025-02-25 19:07 UTC (permalink / raw)
  To: linux-sound
  Cc: Vincenzo Frascino, Maruthi Srinivas Bayyavarapu, Sudeep Holla,
	Liam Girdwood, Mark Brown, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, devicetree, linux-kernel

Add Vincenzo Frascino <vincenzo.frascino@arm.com> as Xilinx Sound Driver
Maintainer.

Signed-off-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
---
 MAINTAINERS | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/MAINTAINERS b/MAINTAINERS
index db9588b1065c..98c878b1aa05 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -26011,6 +26011,14 @@ S:	Maintained
 F:	drivers/pwm/pwm-xilinx.c
 F:	include/clocksource/timer-xilinx.h
 
+XILINX SOUND DRIVERS
+M:	Vincenzo Frascino <vincenzo.frascino@arm.com>
+S:	Maintained
+F:	Documentation/devicetree/bindings/sound/xlnx,i2s.yaml
+F:	Documentation/devicetree/bindings/sound/xlnx,audio-formatter.yaml
+F:	Documentation/devicetree/bindings/sound/xlnx,spdif.yaml
+F:	sound/soc/xilinx/*
+
 XILINX SD-FEC IP CORES
 M:	Derek Kiernan <derek.kiernan@amd.com>
 M:	Dragan Cvetic <dragan.cvetic@amd.com>
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH v5 2/4] ASoC: dt-bindings: xlnx,audio-formatter: Convert to json-schema
  2025-02-25 19:07 ` [PATCH v5 2/4] ASoC: dt-bindings: xlnx,audio-formatter: " Vincenzo Frascino
@ 2025-02-25 22:14   ` Rob Herring
  0 siblings, 0 replies; 8+ messages in thread
From: Rob Herring @ 2025-02-25 22:14 UTC (permalink / raw)
  To: Vincenzo Frascino
  Cc: linux-sound, Maruthi Srinivas Bayyavarapu, Sudeep Holla,
	Liam Girdwood, Mark Brown, Krzysztof Kozlowski, Conor Dooley,
	devicetree, linux-kernel

On Tue, Feb 25, 2025 at 07:07:44PM +0000, Vincenzo Frascino wrote:
> Convert the Xilinx Audio Formatter 1.0  device tree binding documentation
> to json-schema.
> 
> Signed-off-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
> ---
>  .../bindings/sound/xlnx,audio-formatter.txt   | 29 -------
>  .../bindings/sound/xlnx,audio-formatter.yaml  | 75 +++++++++++++++++++
>  2 files changed, 75 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..af892a9abdc6
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/xlnx,audio-formatter.yaml
> @@ -0,0 +1,75 @@
> +# 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@arm.com>
> +
> +allOf:
> +  - $ref: dai-common.yaml#
> +
> +properties:
> +  compatible:
> +    enum:
> +      - xlnx,audio-formatter-1.0
> +
> +  reg:
> +    maxItems: 1
> +
> +  interrupt-names:
> +    minItems: 1
> +    items:
> +      - const: irq_mm2s
> +      - const: irq_s2mm
> +    description: |
> +      Names specified to list of interrupts in same order mentioned under
> +      "interrupts".

Drop description.

With that,

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>

> +
> +  interrupts:
> +    minItems: 1
> +    items:
> +      - description: interrupt from MM2S block
> +      - description: interrupt from S2MM block
> +
> +  clock-names:
> +    minItems: 1
> +    items:
> +      - const: s_axi_lite_aclk
> +      - const: aud_mclk
> +
> +  clocks:
> +    minItems: 1
> +    items:
> +      - description: clock for the axi data stream
> +      - description: clock for the MEMS microphone data stream
> +
> +required:
> +  - compatible
> +  - reg
> +  - interrupt-names
> +  - interrupts
> +  - clock-names
> +  - clocks
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    audio_formatter@80010000 {
> +      compatible = "xlnx,audio-formatter-1.0";
> +      reg = <0x80010000 0x1000>;
> +      interrupt-names = "irq_mm2s", "irq_s2mm";
> +      interrupt-parent = <&gic>;
> +      interrupts = <0 104 4>, <0 105 4>;
> +      clock-names = "s_axi_lite_aclk", "aud_mclk";
> +      clocks = <&clk 71>, <&clk_wiz_1 0>;
> +    };
> +...
> -- 
> 2.43.0
> 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v5 3/4] ASoC: dt-bindings: xlnx,spdif: Convert to json-schema
  2025-02-25 19:07 ` [PATCH v5 3/4] ASoC: dt-bindings: xlnx,spdif: " Vincenzo Frascino
@ 2025-02-25 22:19   ` Rob Herring
  2025-02-26 12:25     ` Vincenzo Frascino
  0 siblings, 1 reply; 8+ messages in thread
From: Rob Herring @ 2025-02-25 22:19 UTC (permalink / raw)
  To: Vincenzo Frascino
  Cc: linux-sound, Maruthi Srinivas Bayyavarapu, Sudeep Holla,
	Liam Girdwood, Mark Brown, Krzysztof Kozlowski, Conor Dooley,
	devicetree, linux-kernel

On Tue, Feb 25, 2025 at 07:07:45PM +0000, Vincenzo Frascino wrote:
> Convert the Xilinx SPDIF 2.0 device tree binding documentation to
> json-schema.
> 
> Signed-off-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
> ---
>  .../devicetree/bindings/sound/xlnx,spdif.txt  | 28 -------
>  .../devicetree/bindings/sound/xlnx,spdif.yaml | 83 +++++++++++++++++++
>  2 files changed, 83 insertions(+), 28 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/sound/xlnx,spdif.txt
>  create mode 100644 Documentation/devicetree/bindings/sound/xlnx,spdif.yaml
> 
> diff --git a/Documentation/devicetree/bindings/sound/xlnx,spdif.txt b/Documentation/devicetree/bindings/sound/xlnx,spdif.txt
> deleted file mode 100644
> index 15c2d64d247c..000000000000
> --- a/Documentation/devicetree/bindings/sound/xlnx,spdif.txt
> +++ /dev/null
> @@ -1,28 +0,0 @@
> -Device-Tree bindings for Xilinx SPDIF IP
> -
> -The IP supports playback and capture of SPDIF audio
> -
> -Required properties:
> - - compatible: "xlnx,spdif-2.0"
> - - clock-names: List of input clocks.
> -   Required elements: "s_axi_aclk", "aud_clk_i"
> - - clocks: Input clock specifier. Refer to common clock bindings.
> - - reg: Base address and address length of the IP core instance.
> - - interrupts-parent: Phandle for interrupt controller.
> - - interrupts: List of Interrupt numbers.
> - - xlnx,spdif-mode: 0 :- receiver mode
> -		    1 :- transmitter mode
> - - xlnx,aud_clk_i: input audio clock value.
> -
> -Example:
> -	spdif_0: spdif@80010000 {
> -		clock-names = "aud_clk_i", "s_axi_aclk";
> -		clocks = <&misc_clk_0>, <&clk 71>;
> -		compatible = "xlnx,spdif-2.0";
> -		interrupt-names = "spdif_interrupt";
> -		interrupt-parent = <&gic>;
> -		interrupts = <0 91 4>;
> -		reg = <0x0 0x80010000 0x0 0x10000>;
> -		xlnx,spdif-mode = <1>;
> -		xlnx,aud_clk_i = <49152913>;
> -	};
> diff --git a/Documentation/devicetree/bindings/sound/xlnx,spdif.yaml b/Documentation/devicetree/bindings/sound/xlnx,spdif.yaml
> new file mode 100644
> index 000000000000..ea07c0b0d003
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/xlnx,spdif.yaml
> @@ -0,0 +1,83 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/sound/xlnx,spdif.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Xilinx SPDIF IP
> +
> +description:
> +  The IP supports playback and capture of SPDIF audio.
> +
> +maintainers:
> +  - Vincenzo Frascino <vincenzo.frascino@arm.com>
> +
> +allOf:
> +  - $ref: dai-common.yaml#
> +
> +properties:
> +  compatible:
> +    enum:
> +      - xlnx,spdif-2.0
> +
> +  reg:
> +    maxItems: 1
> +
> +  interrupt-names:
> +    items:
> +      - const: spdif_interrupt

This was in the example, but otherwise wasn't documented before. And the 
Linux driver doesn't need it. So let's drop 'interrupt-names' because it 
is pointless here. 'spdif' is redundant because this the the spdif 
block. 'interrupt' is redundant because it's only interrupts in this 
list.

Don't forget the example.

With that,

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v5 3/4] ASoC: dt-bindings: xlnx,spdif: Convert to json-schema
  2025-02-25 22:19   ` Rob Herring
@ 2025-02-26 12:25     ` Vincenzo Frascino
  0 siblings, 0 replies; 8+ messages in thread
From: Vincenzo Frascino @ 2025-02-26 12:25 UTC (permalink / raw)
  To: Rob Herring
  Cc: linux-sound, Maruthi Srinivas Bayyavarapu, Sudeep Holla,
	Liam Girdwood, Mark Brown, Krzysztof Kozlowski, Conor Dooley,
	devicetree, linux-kernel

Hi Rob

On 25/02/2025 22:19, Rob Herring wrote:
> This was in the example, but otherwise wasn't documented before. And the 
> Linux driver doesn't need it. So let's drop 'interrupt-names' because it 
> is pointless here. 'spdif' is redundant because this the the spdif 
> block. 'interrupt' is redundant because it's only interrupts in this 
> list.
> 
> Don't forget the example.
> 
> With that,
> 
> Reviewed-by: Rob Herring (Arm) <robh@kernel.org>

Thank you for your help!

-- 
Regards,
Vincenzo


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2025-02-26 12:25 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-25 19:07 [PATCH v5 0/4] xlnx: dt-bindings: Convert to json-schema Vincenzo Frascino
2025-02-25 19:07 ` [PATCH v5 1/4] ASoC: dt-bindings: xlnx,i2s: " Vincenzo Frascino
2025-02-25 19:07 ` [PATCH v5 2/4] ASoC: dt-bindings: xlnx,audio-formatter: " Vincenzo Frascino
2025-02-25 22:14   ` Rob Herring
2025-02-25 19:07 ` [PATCH v5 3/4] ASoC: dt-bindings: xlnx,spdif: " Vincenzo Frascino
2025-02-25 22:19   ` Rob Herring
2025-02-26 12:25     ` Vincenzo Frascino
2025-02-25 19:07 ` [PATCH v5 4/4] MAINTAINERS: Add Vincenzo Frascino as Xilinx Sound Driver Maintainer Vincenzo Frascino

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).