[PATCH v2 1/4] dt-bindings: sound: Add ti,tas675x

Sen Wang posted 4 patches 1 day, 20 hours ago
[PATCH v2 1/4] dt-bindings: sound: Add ti,tas675x
Posted by Sen Wang 1 day, 20 hours ago
Add device tree binding for the Texas Instruments TAS675x family
of four-channel Class-D audio amplifiers with integrated DSP.

Signed-off-by: Sen Wang <sen@ti.com>
---
 .../devicetree/bindings/sound/ti,tas675x.yaml | 278 ++++++++++++++++++
 1 file changed, 278 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/sound/ti,tas675x.yaml

diff --git a/Documentation/devicetree/bindings/sound/ti,tas675x.yaml b/Documentation/devicetree/bindings/sound/ti,tas675x.yaml
new file mode 100644
index 000000000000..23e4cc77b4ae
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/ti,tas675x.yaml
@@ -0,0 +1,278 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/ti,tas675x.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Texas Instruments TAS675x Audio Amplifier
+
+maintainers:
+  - Sen Wang <sen@ti.com>
+
+description: |
+  The TAS675x family (TAS6754, TAS67524) are four-channel, digital-input,
+  automotive Class-D audio amplifiers with load diagnostics and an integrated
+  DSP for audio processing.
+
+allOf:
+  - $ref: dai-common.yaml#
+
+properties:
+  compatible:
+    enum:
+      - ti,tas6754
+      - ti,tas67524
+
+  reg:
+    maxItems: 1
+
+  '#sound-dai-cells':
+    const: 1
+    description: |
+      The device exposes three DAIs, selected by index.
+        0 - Standard Audio Path (Playback)
+        1 - Low-Latency Playback Path (Playback)
+        2 - Sensory Feedback (Capture - Vpredict and Isense)
+      By default, all four channels of each DAI are active. Runtime
+      reconfiguration is available through DAPM widgets.
+
+  interrupts:
+    maxItems: 1
+    description:
+      Active-low falling-edge interrupt from the FAULT pin. When provided,
+      the driver uses IRQ-driven fault reporting instead of polling.
+
+  pd-gpios:
+    maxItems: 1
+    description:
+      GPIO connected to the power-down (PD#) pin, active low. Controls the
+      internal digital circuitry power state. When asserted the device enters
+      full power-down mode and all register state is lost. Can be omitted if
+      PD pin is hardwired or externally controlled.
+
+  stby-gpios:
+    maxItems: 1
+    description:
+      GPIO connected to the standby (STBY#) pin, active low. Controls the
+      analog power stage. When asserted the device enters Deep Sleep mode
+      but remains I2C-accessible with registers retained. Can be omitted if
+      STBY pin is tied to PD or hardwired.
+
+  dvdd-supply:
+    description:
+      Digital logic supply (1.62 V to 3.6 V). All three supply rails must
+      be within their recommended operating ranges before the PD pin is
+      released.
+
+  pvdd-supply:
+    description:
+      Output FET power supply (4.5 V to 19 V). All three supply rails must
+      be within their recommended operating ranges before the PD pin is
+      released.
+
+  vbat-supply:
+    description:
+      Battery supply for the Class-D output stage (4.5 V to 19 V). Optional
+      when PVDD and VBAT are connected to the same supply rail. When absent,
+      VBAT is assumed hardwired to PVDD.
+
+  ti,fast-boot:
+    type: boolean
+    description:
+      Skip DC load diagnostic sweep at power-on to reduce boot latency.
+      Automatic diagnostics after fault conditions remain enabled. Hardware
+      overcurrent protection is always active.
+
+  ti,audio-slot-no:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    description:
+      TDM slot offset for the standard audio playback path via SDIN1. A value
+      of 4 maps to slot 4. If omitted, slot assignment is derived from the
+      tx_mask provided via set_tdm_slot(). Without either property, no slot
+      mapping is configured.
+
+  ti,llp-slot-no:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    description:
+      TDM slot offset for the low-latency playback path via SDIN1. If omitted,
+      slot assignment is derived from the tx_mask provided via set_tdm_slot().
+      Without either property, no slot mapping is configured. Disabled outside
+      of LLP mode, and only relevant for TDM formats.
+
+  ti,vpredict-slot-no:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    description: |
+      In TDM mode, enables Vpredict output and assigns its starting slot;
+      four consecutive slots carry Vpredict Ch1-4 on SDOUT1. May coexist
+      with ti,isense-slot-no using separate non-overlapping slots.
+
+      In I2S mode, enables Vpredict output on SDOUT1 (Ch1/Ch2) and SDOUT2
+      (Ch3/Ch4). The slot value is unused. Requires a GPIO configured as
+      sdout2 for Ch3/Ch4; without it only Ch1/Ch2 are output. Mutually
+      exclusive with ti,isense-slot-no; if both are set, Vpredict takes
+      priority.
+
+      Irrelevant in Left-J and Right-J modes.
+
+  ti,isense-slot-no:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    description: |
+      In TDM mode, enables Isense output and assigns its starting slot;
+      four consecutive slots carry Isense Ch1-4 on SDOUT1. May coexist
+      with ti,vpredict-slot-no using separate non-overlapping slots.
+
+      In I2S mode, enables Isense output on SDOUT1 (Ch1/Ch2) and SDOUT2
+      (Ch3/Ch4). The slot value is unused. Requires a GPIO configured as
+      sdout2 for Ch3/Ch4; without it only Ch1/Ch2 are output. Mutually
+      exclusive with ti,vpredict-slot-no; Vpredict takes priority if both
+      are set.
+
+      Irrelevant in Left-J and Right-J modes.
+
+  ti,gpio1-function:
+    $ref: /schemas/types.yaml#/definitions/string
+    description: |
+      Function for the GPIO_1 pin. When omitted, GPIO_1 remains in its
+      power-on default state.
+    enum:
+      - low           # Output: driven low
+      - auto-mute     # Output: high when all channels are auto-muted
+      - auto-mute-ch4 # Output: high when channel 4 is auto-muted
+      - auto-mute-ch3 # Output: high when channel 3 is auto-muted
+      - auto-mute-ch2 # Output: high when channel 2 is auto-muted
+      - auto-mute-ch1 # Output: high when channel 1 is auto-muted
+      - sdout2        # Output: Routes secondary serial data output 2
+      - sdout1        # Output: Re-routes secondary serial data output 1
+      - warn          # Output: warning signal (OTW, CBC)
+      - fault         # Output: fault signal (OTSD, OC, DC)
+      - clock-sync    # Output: clock synchronisation
+      - invalid-clock # Output: high when clock is invalid
+      - high          # Output: driven high
+      - mute          # Input: external mute control
+      - phase-sync    # Input: phase synchronisation
+      - sdin2         # Input: secondary SDIN2 for I2S/LJ/RJ ch3/ch4
+      - deep-sleep    # Input: asserted transitions device to Deep Sleep
+      - hiz           # Input: asserted transitions device to Hi-Z
+      - play          # Input: asserted transitions device to Play
+      - sleep         # Input: asserted transitions device to Sleep
+
+  ti,gpio2-function:
+    $ref: /schemas/types.yaml#/definitions/string
+    description: |
+      Function for the GPIO_2 pin. When omitted, GPIO_2 remains in its
+      power-on default state.
+    enum:
+      - low           # Output: driven low
+      - auto-mute     # Output: high when all channels are auto-muted
+      - auto-mute-ch4 # Output: high when channel 4 is auto-muted
+      - auto-mute-ch3 # Output: high when channel 3 is auto-muted
+      - auto-mute-ch2 # Output: high when channel 2 is auto-muted
+      - auto-mute-ch1 # Output: high when channel 1 is auto-muted
+      - sdout2        # Output: Routes secondary serial data output 2
+      - sdout1        # Output: Re-routes secondary serial data output 1
+      - warn          # Output: warning signal (OTW, CBC)
+      - fault         # Output: fault signal (OTSD, OC, DC)
+      - clock-sync    # Output: clock synchronisation
+      - invalid-clock # Output: high when clock is invalid
+      - high          # Output: driven high
+      - mute          # Input: external mute control
+      - phase-sync    # Input: phase synchronisation
+      - sdin2         # Input: secondary SDIN2 for I2S/LJ/RJ ch3/ch4
+      - deep-sleep    # Input: asserted transitions device to Deep Sleep
+      - hiz           # Input: asserted transitions device to Hi-Z
+      - play          # Input: asserted transitions device to Play
+      - sleep         # Input: asserted transitions device to Sleep
+
+  ports:
+    $ref: /schemas/graph.yaml#/properties/ports
+    properties:
+      port@0:
+        $ref: audio-graph-port.yaml#
+        unevaluatedProperties: false
+        description: Standard audio playback port (DAI 0).
+
+      port@1:
+        $ref: audio-graph-port.yaml#
+        unevaluatedProperties: false
+        description: Low-latency playback port (LLP) (DAI 1).
+
+      port@2:
+        $ref: audio-graph-port.yaml#
+        unevaluatedProperties: false
+        description: Sensory feedback capture port (DAI 2).
+
+  port:
+    $ref: audio-graph-port.yaml#
+    unevaluatedProperties: false
+
+required:
+  - compatible
+  - reg
+  - '#sound-dai-cells'
+  - dvdd-supply
+  - pvdd-supply
+
+anyOf:
+  - required: [pd-gpios]
+  - required: [stby-gpios]
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/gpio/gpio.h>
+
+    i2c {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        amplifier@70 {
+            compatible = "ti,tas67524";
+            reg = <0x70>;
+            #sound-dai-cells = <1>;
+            sound-name-prefix = "TAS0";
+
+            stby-gpios = <&main_gpio0 33 GPIO_ACTIVE_LOW>;
+
+            dvdd-supply = <&dvdd_1v8>;
+            pvdd-supply = <&pvdd_12v>;
+            vbat-supply = <&vbat_12v>;
+
+            ti,audio-slot-no = <0>;
+            ti,llp-slot-no = <4>;
+            ti,vpredict-slot-no = <0>;
+            ti,isense-slot-no = <4>;
+
+            ti,gpio2-function = "warn";
+
+            ports {
+                #address-cells = <1>;
+                #size-cells = <0>;
+
+                port@0 {
+                    reg = <0>;
+
+                    tas0_audio_ep: endpoint {
+                        dai-format = "dsp_b";
+                        remote-endpoint = <&be_tas0_audio_ep>;
+                    };
+                };
+
+                port@1 {
+                    reg = <1>;
+
+                    tas0_anc_ep: endpoint {
+                        remote-endpoint = <&be_tas0_anc_ep>;
+                    };
+                };
+
+                port@2 {
+                    reg = <2>;
+
+                    tas0_fb_ep: endpoint {
+                        remote-endpoint = <&be_tas0_fb_ep>;
+                    };
+                };
+            };
+        };
+    };
-- 
2.43.0
Re: [PATCH v2 1/4] dt-bindings: sound: Add ti,tas675x
Posted by Krzysztof Kozlowski 1 day, 11 hours ago
On Wed, Apr 01, 2026 at 05:28:42PM -0500, Sen Wang wrote:
> Add device tree binding for the Texas Instruments TAS675x family
> of four-channel Class-D audio amplifiers with integrated DSP.
> 
> Signed-off-by: Sen Wang <sen@ti.com>

Please use subject prefixes matching the subsystem. You can get them for
example with 'git log --oneline -- DIRECTORY_OR_FILE' on the directory
your patch is touching. For bindings, the preferred subjects are
explained here:
https://www.kernel.org/doc/html/latest/devicetree/bindings/submitting-patches.html#i-for-patch-submitters

> ---
>  .../devicetree/bindings/sound/ti,tas675x.yaml | 278 ++++++++++++++++++

Filename matching compatible, one of them.

>  1 file changed, 278 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/sound/ti,tas675x.yaml
> 
> diff --git a/Documentation/devicetree/bindings/sound/ti,tas675x.yaml b/Documentation/devicetree/bindings/sound/ti,tas675x.yaml
> new file mode 100644
> index 000000000000..23e4cc77b4ae
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/ti,tas675x.yaml
> @@ -0,0 +1,278 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/sound/ti,tas675x.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Texas Instruments TAS675x Audio Amplifier
> +
> +maintainers:
> +  - Sen Wang <sen@ti.com>
> +
> +description: |

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

> +  The TAS675x family (TAS6754, TAS67524) are four-channel, digital-input,

And devices are not compatible?

> +  automotive Class-D audio amplifiers with load diagnostics and an integrated
> +  DSP for audio processing.
> +
> +allOf:
> +  - $ref: dai-common.yaml#
> +
> +properties:
> +  compatible:
> +    enum:
> +      - ti,tas6754
> +      - ti,tas67524

Keep alphanumerical order (not natural).

> +
> +  reg:
> +    maxItems: 1
> +
> +  '#sound-dai-cells':
> +    const: 1
> +    description: |
> +      The device exposes three DAIs, selected by index.
> +        0 - Standard Audio Path (Playback)
> +        1 - Low-Latency Playback Path (Playback)
> +        2 - Sensory Feedback (Capture - Vpredict and Isense)
> +      By default, all four channels of each DAI are active. Runtime
> +      reconfiguration is available through DAPM widgets.
> +
> +  interrupts:
> +    maxItems: 1
> +    description:
> +      Active-low falling-edge interrupt from the FAULT pin. When provided,
> +      the driver uses IRQ-driven fault reporting instead of polling.
> +
> +  pd-gpios:

Use names from gpio-consumer-common

> +    maxItems: 1
> +    description:
> +      GPIO connected to the power-down (PD#) pin, active low. Controls the
> +      internal digital circuitry power state. When asserted the device enters
> +      full power-down mode and all register state is lost. Can be omitted if
> +      PD pin is hardwired or externally controlled.
> +
> +  stby-gpios:
> +    maxItems: 1
> +    description:
> +      GPIO connected to the standby (STBY#) pin, active low. Controls the
> +      analog power stage. When asserted the device enters Deep Sleep mode
> +      but remains I2C-accessible with registers retained. Can be omitted if
> +      STBY pin is tied to PD or hardwired.
> +
> +  dvdd-supply:
> +    description:
> +      Digital logic supply (1.62 V to 3.6 V). All three supply rails must
> +      be within their recommended operating ranges before the PD pin is
> +      released.
> +
> +  pvdd-supply:
> +    description:
> +      Output FET power supply (4.5 V to 19 V). All three supply rails must
> +      be within their recommended operating ranges before the PD pin is
> +      released.
> +
> +  vbat-supply:
> +    description:
> +      Battery supply for the Class-D output stage (4.5 V to 19 V). Optional
> +      when PVDD and VBAT are connected to the same supply rail. When absent,
> +      VBAT is assumed hardwired to PVDD.
> +
> +  ti,fast-boot:
> +    type: boolean
> +    description:
> +      Skip DC load diagnostic sweep at power-on to reduce boot latency.
> +      Automatic diagnostics after fault conditions remain enabled. Hardware
> +      overcurrent protection is always active.
> +
> +  ti,audio-slot-no:
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +    description:
> +      TDM slot offset for the standard audio playback path via SDIN1. A value
> +      of 4 maps to slot 4. If omitted, slot assignment is derived from the
> +      tx_mask provided via set_tdm_slot(). Without either property, no slot
> +      mapping is configured.
> +
> +  ti,llp-slot-no:
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +    description:
> +      TDM slot offset for the low-latency playback path via SDIN1. If omitted,
> +      slot assignment is derived from the tx_mask provided via set_tdm_slot().
> +      Without either property, no slot mapping is configured. Disabled outside
> +      of LLP mode, and only relevant for TDM formats.
> +
> +  ti,vpredict-slot-no:
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +    description: |
> +      In TDM mode, enables Vpredict output and assigns its starting slot;
> +      four consecutive slots carry Vpredict Ch1-4 on SDOUT1. May coexist
> +      with ti,isense-slot-no using separate non-overlapping slots.
> +
> +      In I2S mode, enables Vpredict output on SDOUT1 (Ch1/Ch2) and SDOUT2
> +      (Ch3/Ch4). The slot value is unused. Requires a GPIO configured as
> +      sdout2 for Ch3/Ch4; without it only Ch1/Ch2 are output. Mutually
> +      exclusive with ti,isense-slot-no; if both are set, Vpredict takes
> +      priority.
> +
> +      Irrelevant in Left-J and Right-J modes.
> +
> +  ti,isense-slot-no:
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +    description: |
> +      In TDM mode, enables Isense output and assigns its starting slot;
> +      four consecutive slots carry Isense Ch1-4 on SDOUT1. May coexist
> +      with ti,vpredict-slot-no using separate non-overlapping slots.
> +
> +      In I2S mode, enables Isense output on SDOUT1 (Ch1/Ch2) and SDOUT2
> +      (Ch3/Ch4). The slot value is unused. Requires a GPIO configured as
> +      sdout2 for Ch3/Ch4; without it only Ch1/Ch2 are output. Mutually
> +      exclusive with ti,vpredict-slot-no; Vpredict takes priority if both
> +      are set.
> +
> +      Irrelevant in Left-J and Right-J modes.
> +
> +  ti,gpio1-function:
> +    $ref: /schemas/types.yaml#/definitions/string
> +    description: |

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

> +      Function for the GPIO_1 pin. When omitted, GPIO_1 remains in its
> +      power-on default state.

Best regards,
Krzysztof
Re: [PATCH v2 1/4] dt-bindings: sound: Add ti,tas675x
Posted by Sen Wang 18 hours ago
On 4/2/26 02:53, Krzysztof Kozlowski wrote:
> On Wed, Apr 01, 2026 at 05:28:42PM -0500, Sen Wang wrote:
>> Add device tree binding for the Texas Instruments TAS675x family
>> of four-channel Class-D audio amplifiers with integrated DSP.
>>
>> Signed-off-by: Sen Wang <sen@ti.com>
> 

Hi Krzysztof, Thank you for your review.

> Please use subject prefixes matching the subsystem. You can get them for
> example with 'git log --oneline -- DIRECTORY_OR_FILE' on the directory
> your patch is touching. For bindings, the preferred subjects are
> explained here:
> https://www.kernel.org/doc/html/latest/devicetree/bindings/submitting-patches.html#i-for-patch-submitters

Understood, ASoC: dt-bindings: Add ti,tas67524. Apologies for the oversight.

> 
>> ---
>>   .../devicetree/bindings/sound/ti,tas675x.yaml | 278 ++++++++++++++++++
> 
> Filename matching compatible, one of them.
> 
>>   1 file changed, 278 insertions(+)
>>   create mode 100644 Documentation/devicetree/bindings/sound/ti,tas675x.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/sound/ti,tas675x.yaml b/Documentation/devicetree/bindings/sound/ti,tas675x.yaml
>> new file mode 100644
>> index 000000000000..23e4cc77b4ae
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/sound/ti,tas675x.yaml
>> @@ -0,0 +1,278 @@
>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/sound/ti,tas675x.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Texas Instruments TAS675x Audio Amplifier
>> +
>> +maintainers:
>> +  - Sen Wang <sen@ti.com>
>> +
>> +description: |
> 
> Do not need '|' unless you need to preserve formatting.
> 
>> +  The TAS675x family (TAS6754, TAS67524) are four-channel, digital-input,
> 
> And devices are not compatible?
> 

They're compatible, and I didn't have any differentiators for this 
initial driver. So I should only keep one.
And also rename ti,tas675x.yaml to ti,tas67524.yaml.

>> +  automotive Class-D audio amplifiers with load diagnostics and an integrated
>> +  DSP for audio processing.
>> +
>> +allOf:
>> +  - $ref: dai-common.yaml#
>> +
>> +properties:
>> +  compatible:
>> +    enum:
>> +      - ti,tas6754
>> +      - ti,tas67524
> 
> Keep alphanumerical order (not natural).
> 
>> +
>> +  reg:
>> +    maxItems: 1
>> +
>> +  '#sound-dai-cells':
>> +    const: 1
>> +    description: |
>> +      The device exposes three DAIs, selected by index.
>> +        0 - Standard Audio Path (Playback)
>> +        1 - Low-Latency Playback Path (Playback)
>> +        2 - Sensory Feedback (Capture - Vpredict and Isense)
>> +      By default, all four channels of each DAI are active. Runtime
>> +      reconfiguration is available through DAPM widgets.
>> +
>> +  interrupts:
>> +    maxItems: 1
>> +    description:
>> +      Active-low falling-edge interrupt from the FAULT pin. When provided,
>> +      the driver uses IRQ-driven fault reporting instead of polling.
>> +
>> +  pd-gpios:
> 
> Use names from gpio-consumer-common
> 

Okay

>> +    maxItems: 1
>> +    description:
>> +      GPIO connected to the power-down (PD#) pin, active low. Controls the
>> +      internal digital circuitry power state. When asserted the device enters
>> +      full power-down mode and all register state is lost. Can be omitted if
>> +      PD pin is hardwired or externally controlled.
>> +
>> +  stby-gpios:
>> +    maxItems: 1
>> +    description:
>> +      GPIO connected to the standby (STBY#) pin, active low. Controls the
>> +      analog power stage. When asserted the device enters Deep Sleep mode
>> +      but remains I2C-accessible with registers retained. Can be omitted if
>> +      STBY pin is tied to PD or hardwired.
>> +
>> +  dvdd-supply:
>> +    description:
>> +      Digital logic supply (1.62 V to 3.6 V). All three supply rails must
>> +      be within their recommended operating ranges before the PD pin is
>> +      released.
>> +
>> +  pvdd-supply:
>> +    description:
>> +      Output FET power supply (4.5 V to 19 V). All three supply rails must
>> +      be within their recommended operating ranges before the PD pin is
>> +      released.
>> +
>> +  vbat-supply:
>> +    description:
>> +      Battery supply for the Class-D output stage (4.5 V to 19 V). Optional
>> +      when PVDD and VBAT are connected to the same supply rail. When absent,
>> +      VBAT is assumed hardwired to PVDD.
>> +
>> +  ti,fast-boot:
>> +    type: boolean
>> +    description:
>> +      Skip DC load diagnostic sweep at power-on to reduce boot latency.
>> +      Automatic diagnostics after fault conditions remain enabled. Hardware
>> +      overcurrent protection is always active.
>> +
>> +  ti,audio-slot-no:
>> +    $ref: /schemas/types.yaml#/definitions/uint32
>> +    description:
>> +      TDM slot offset for the standard audio playback path via SDIN1. A value
>> +      of 4 maps to slot 4. If omitted, slot assignment is derived from the
>> +      tx_mask provided via set_tdm_slot(). Without either property, no slot
>> +      mapping is configured.
>> +
>> +  ti,llp-slot-no:
>> +    $ref: /schemas/types.yaml#/definitions/uint32
>> +    description:
>> +      TDM slot offset for the low-latency playback path via SDIN1. If omitted,
>> +      slot assignment is derived from the tx_mask provided via set_tdm_slot().
>> +      Without either property, no slot mapping is configured. Disabled outside
>> +      of LLP mode, and only relevant for TDM formats.
>> +
>> +  ti,vpredict-slot-no:
>> +    $ref: /schemas/types.yaml#/definitions/uint32
>> +    description: |
>> +      In TDM mode, enables Vpredict output and assigns its starting slot;
>> +      four consecutive slots carry Vpredict Ch1-4 on SDOUT1. May coexist
>> +      with ti,isense-slot-no using separate non-overlapping slots.
>> +
>> +      In I2S mode, enables Vpredict output on SDOUT1 (Ch1/Ch2) and SDOUT2
>> +      (Ch3/Ch4). The slot value is unused. Requires a GPIO configured as
>> +      sdout2 for Ch3/Ch4; without it only Ch1/Ch2 are output. Mutually
>> +      exclusive with ti,isense-slot-no; if both are set, Vpredict takes
>> +      priority.
>> +
>> +      Irrelevant in Left-J and Right-J modes.
>> +
>> +  ti,isense-slot-no:
>> +    $ref: /schemas/types.yaml#/definitions/uint32
>> +    description: |
>> +      In TDM mode, enables Isense output and assigns its starting slot;
>> +      four consecutive slots carry Isense Ch1-4 on SDOUT1. May coexist
>> +      with ti,vpredict-slot-no using separate non-overlapping slots.
>> +
>> +      In I2S mode, enables Isense output on SDOUT1 (Ch1/Ch2) and SDOUT2
>> +      (Ch3/Ch4). The slot value is unused. Requires a GPIO configured as
>> +      sdout2 for Ch3/Ch4; without it only Ch1/Ch2 are output. Mutually
>> +      exclusive with ti,vpredict-slot-no; Vpredict takes priority if both
>> +      are set.
>> +
>> +      Irrelevant in Left-J and Right-J modes.
>> +
>> +  ti,gpio1-function:
>> +    $ref: /schemas/types.yaml#/definitions/string
>> +    description: |
> 
> Do not need '|' unless you need to preserve formatting.
> 

Understood, thanks a lot for your review and the tip. Will post a V3.

>> +      Function for the GPIO_1 pin. When omitted, GPIO_1 remains in its
>> +      power-on default state.
> 
> Best regards,
> Krzysztof
>
Re: [PATCH v2 1/4] dt-bindings: sound: Add ti,tas675x
Posted by Krzysztof Kozlowski 12 hours ago
On 03/04/2026 02:40, Sen Wang wrote:
>>> diff --git a/Documentation/devicetree/bindings/sound/ti,tas675x.yaml b/Documentation/devicetree/bindings/sound/ti,tas675x.yaml
>>> new file mode 100644
>>> index 000000000000..23e4cc77b4ae
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/sound/ti,tas675x.yaml
>>> @@ -0,0 +1,278 @@
>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>>> +%YAML 1.2
>>> +---
>>> +$id: http://devicetree.org/schemas/sound/ti,tas675x.yaml#
>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>> +
>>> +title: Texas Instruments TAS675x Audio Amplifier
>>> +
>>> +maintainers:
>>> +  - Sen Wang <sen@ti.com>
>>> +
>>> +description: |
>>
>> Do not need '|' unless you need to preserve formatting.
>>
>>> +  The TAS675x family (TAS6754, TAS67524) are four-channel, digital-input,
>>
>> And devices are not compatible?
>>
> 
> They're compatible, and I didn't have any differentiators for this 
> initial driver. So I should only keep one.
> And also rename ti,tas675x.yaml to ti,tas67524.yaml.

No, you should express compatibility. See writing bindings, writing
schema, example schema docs or DTS101 talk.


Best regards,
Krzysztof