Re: [PATCH v2 1/7] ASoC: dt-bindings: convert tdm-slot to YAML

Rob Herring
2025-12-30T01:35:06Z

On Sun, Dec 21, 2025 at 07:35:57PM +1000, James Calligeros wrote:
> This schema was still in plaintext form. Convert to YAML format.
>
> Signed-off-by: James Calligeros <jcalligeros99@gmail.com>
> ---
> .../bindings/sound/tdm-slot.txt | 29 ---------------
> .../bindings/sound/tdm-slot.yaml | 49 +++++++++++++++++++++++++
> 2 files changed, 49 insertions(+), 29 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/sound/tdm-slot.txt b/Documentation/devicetree/bindings/sound/tdm-slot.txt
> deleted file mode 100644
> index 4bb513ae62fc..000000000000
> --- a/Documentation/devicetree/bindings/sound/tdm-slot.txt
> +++ /dev/null
> @@ -1,29 +0,0 @@
> -TDM slot:
> -
> -This specifies audio DAI's TDM slot.
> -
> -TDM slot properties:
> -dai-tdm-slot-num : Number of slots in use.
> -dai-tdm-slot-width : Width in bits for each slot.
> -dai-tdm-slot-tx-mask : Transmit direction slot mask, optional
> -dai-tdm-slot-rx-mask : Receive direction slot mask, optional
> -
> -For instance:
> - dai-tdm-slot-num = <2>;
> - dai-tdm-slot-width = <8>;
> - dai-tdm-slot-tx-mask = <0 1>;
> - dai-tdm-slot-rx-mask = <1 0>;
> -
> -And for each specified driver, there could be one .of_xlate_tdm_slot_mask()
> -to specify an explicit mapping of the channels and the slots. If it's absent
> -the default snd_soc_of_xlate_tdm_slot_mask() will be used to generating the
> -tx and rx masks.
> -
> -For snd_soc_of_xlate_tdm_slot_mask(), the tx and rx masks will use a 1 bit
> -for an active slot as default, and the default active bits are at the LSB of
> -the masks.
> -
> -The explicit masks are given as array of integers, where the first
> -number presents bit-0 (LSB), second presents bit-1, etc. Any non zero
> -number is considered 1 and 0 is 0. snd_soc_of_xlate_tdm_slot_mask()
> -does not do anything, if either mask is set non zero value.
> diff --git a/Documentation/devicetree/bindings/sound/tdm-slot.yaml b/Documentation/devicetree/bindings/sound/tdm-slot.yaml
> new file mode 100644
> index 000000000000..5bc46048d689
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/tdm-slot.yaml
> @@ -0,0 +1,49 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/sound/tdm-slot.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Time Division Multiplexing (TDM) Slot Parameters
> +
> +maintainers:
> + - Liam Girdwood <lgirdwood@gmail.com>
> +
> +select: false
> +
> +$defs:
> + dai-tdm-slot-num:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: Number of slots in use
> +
> + dai-tdm-slot-width:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: Width, in bits, of each slot
> +
> + dai-tdm-slot-tx-mask:
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + description: Transmit direction slot mask. Optional. Drivers may specify an
> + .xlate_tdm_slot_mask() to generate a slot mask dynamically. If neither
> + this property nor a driver-specific function are specified, the default
> + snd_soc_xlate_tdm_slot_mask() function will be used to generate a mask.
> + The first element of the array is slot 0 (LSB). Any nonzero value will be
> + treated as 1.
> +
> + dai-tdm-slot-rx-mask:
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + description: Receive direction slot mask. Optional. Identical to TX mask.

Just move each of these to the properties below as they are only used
once.

> +
> +properties:
> + dai-tdm-slot-num:
> + $ref: "#/$defs/dai-tdm-slot-num"
> +
> + dai-tdm-slot-width:
> + $ref: "#/$defs/dai-tdm-slot-width"
> +
> + dai-tdm-slot-tx-mask:
> + $ref: "#/$defs/dai-tdm-slot-tx-mask"
> +
> + dai-tdm-slot-rx-mask:
> + $ref: "#/$defs/dai-tdm-slot-rx-mask"
> +
> +additionalProperties: true
>
> --
> 2.52.0
>