Re: [PATCH] ASoC: dt-bindings: imx-audio-spdif: convert to YAML

From: Krzysztof Kozlowski
Date: Mon Apr 08 2024 - 01:48:50 EST


On 08/04/2024 06:55, Shengjiu Wang wrote:
> Convert the imx-audio-spdif binding to YAML.
>
> When testing dtbs_check, found below compatible strings
> are not listed in document:
>
> fsl,imx-sabreauto-spdif
> fsl,imx6sx-sdb-spdif
>
> So add them in yaml file to pass the test.
>
> Signed-off-by: Shengjiu Wang <shengjiu.wang@xxxxxxx>
> ---
> .../bindings/sound/imx-audio-spdif.txt | 36 -----------
> .../bindings/sound/imx-audio-spdif.yaml | 62 +++++++++++++++++++

Filename like compatible.

> 2 files changed, 62 insertions(+), 36 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/sound/imx-audio-spdif.txt
> create mode 100644 Documentation/devicetree/bindings/sound/imx-audio-spdif.yaml
>


..

> +$id: http://devicetree.org/schemas/sound/imx-audio-spdif.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Freescale i.MX audio complex with S/PDIF transceiver
> +
> +maintainers:
> + - Shengjiu Wang <shengjiu.wang@xxxxxxx>
> +
> +properties:
> + compatible:
> + oneOf:
> + - items:
> + - enum:
> + - fsl,imx-audio-spdif
> + - enum:
> + - fsl,imx-sabreauto-spdif
> + - fsl,imx6sx-sdb-spdif
> + - items:

No need for items here.

> + - enum:
> + - fsl,imx-audio-spdif
> +
> + model:
> + $ref: /schemas/types.yaml#/definitions/string
> + description: User specified audio sound card name
> +
> + spdif-controller:
> + $ref: /schemas/types.yaml#/definitions/phandle
> + description: The phandle of the i.MX S/PDIF controller
> +
> + spdif-out:
> + type: boolean
> + description: |

Do not need '|' unless you need to preserve formatting.

> + If present, the transmitting function of S/PDIF will be enabled,
> + indicating there's a physical S/PDIF out connector or jack on the
> + board or it's connecting to some other IP block, such as an HDMI
> + encoder or display-controller.
> +
> + spdif-in:
> + type: boolean
> + description: |

Do not need '|' unless you need to preserve formatting.

> + If present, the receiving function of S/PDIF will be enabled,
> + indicating there is a physical S/PDIF in connector/jack on the board.
> +
> +required:
> + - compatible
> + - model
> + - spdif-controller
> +

spdif-out and/or spdif-in are required. You either miss oneOf: required:
or anyOf:

https://elixir.bootlin.com/linux/v6.8-rc4/source/Documentation/devicetree/bindings/connector/usb-connector.yaml#L305

https://elixir.bootlin.com/linux/v5.17-rc2/source/Documentation/devicetree/bindings/reserved-memory/reserved-memory.yaml#L91

Judging by example, the first one.


> +additionalProperties: false
> +
> +examples:
> + - |
> + sound-spdif {

spdif {

> + compatible = "fsl,imx-audio-spdif";
> + model = "imx-spdif";
> + spdif-controller = <&spdif>;
> + spdif-out;
> + spdif-in;
> + };

Best regards,
Krzysztof