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

James Calligeros
2025-12-21T09:36:35Z

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.
+
+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