Re: [PATCH v5 3/4] ASoC: dt-bindings: xlnx,spdif: Convert to json-schema

Rob Herring
2025-02-25T22:19:47Z

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>