* [PATCH v3 2/4] dt-bindings: sound: bindings for tac5x1x family of codecs
2025-06-26 18:13 [PATCH v3 0/4] ASoc: tac5x1x: mixer-test report Niranjan H Y
@ 2025-06-26 18:13 ` Niranjan H Y
2025-06-26 19:39 ` Rob Herring (Arm)
2025-06-27 7:48 ` Krzysztof Kozlowski
0 siblings, 2 replies; 6+ messages in thread
From: Niranjan H Y @ 2025-06-26 18:13 UTC (permalink / raw)
To: broonie, krzk+dt, conor+dt
Cc: andriy.shevchenko, tiwai, alsa-devel, baojun.xu, shenghao-ding,
liam.r.girdwood, lgirdwood, robh, linux-sound, devicetree, navada,
v-hampiholi, niranjan.hy
tac5x1x family are series of low-power and high performance
mono/stereo audio codecs consists of ADC and DAC combinations.
The family consist of Codecs(DAC & ADC), ADC only and DAC only
configurations. The documentation explains the list of devices
in the family, their power supply configurations and gpio
configuration options available for various functionality.
Signed-off-by: Niranjan H Y <niranjan.hy@ti.com>
---
v2:
- Document newly added dts entries ti,adc1-impedance,
ti,adc2-impedance, ti,out2x-vcom-cfg
v3:
- add documentation for ti,pdm-input-pins
- Update required section
---
.../devicetree/bindings/sound/ti,tac5x1x.yaml | 262 ++++++++++++++++++
1 file changed, 262 insertions(+)
create mode 100644 Documentation/devicetree/bindings/sound/ti,tac5x1x.yaml
diff --git a/Documentation/devicetree/bindings/sound/ti,tac5x1x.yaml b/Documentation/devicetree/bindings/sound/ti,tac5x1x.yaml
new file mode 100644
index 000000000000..5fea6513f97f
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/ti,tac5x1x.yaml
@@ -0,0 +1,262 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+# Copyright (C) 2025 Texas Instruments Incorporated
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/ti,tac5x1x.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Texas Instruments TAC5X1X Codec
+
+description: |
+ TAC5X1X are series of low-power and high performance mono or stereo
+ audio codecs, as well as multiple inputs and outputs programmable in
+ single-ended or fully differential configurations. Device supports both
+ Microphone and Line In input on ADC Channel. DAC Output can be configured
+ for either Line Out or Head Phone Load.
+
+ The serial control bus supports SPI or I2C protocols, while the serial audio
+ data bus is programmable for I2S, left/right-justified, DSP, or TDM modes.
+
+ Specification about the codecs can be found at:
+ https://www.ti.com/lit/gpn/taa5212
+ https://www.ti.com/lit/gpn/taa5412-q1
+ https://www.ti.com/lit/gpn/tac5111
+ https://www.ti.com/lit/gpn/tac5112
+ https://www.ti.com/lit/gpn/tac5211
+ https://www.ti.com/lit/gpn/tac5212
+ https://www.ti.com/lit/gpn/tac5311-q1
+ https://www.ti.com/lit/gpn/tac5312-q1
+ https://www.ti.com/lit/gpn/tac5411-q1
+ https://www.ti.com/lit/gpn/tac5412-q1
+ https://www.ti.com/lit/gpn/tad5112
+ https://www.ti.com/lit/gpn/tad5212
+
+maintainers:
+ - Niranjan H Y <niranjan.hy@ti.com>
+ - Kevin Lu <kevin-lu@ti.com>
+
+properties:
+ compatible:
+ enum:
+ - ti,taa5212
+ - ti,taa5412
+ - ti,tac5111
+ - ti,tac5112
+ - ti,tac5211
+ - ti,tac5212
+ - ti,tac5311
+ - ti,tac5312
+ - ti,tac5411
+ - ti,tac5412
+ - ti,tad5112
+ - ti,tad5212
+
+ reg:
+ maxItems: 1
+
+ ti,vref:
+ description: VREF required voltage. If node is omitted then VREF is powered down.
+ $ref: /schemas/types.yaml#/definitions/uint32
+ oneOf:
+ - const: 0
+ description: VREF output is powered to 2.75V.
+ - const: 1
+ description: VREF output is powered to 2.5V.
+ - const: 2
+ description: VREF output is powered to 1.375V.
+
+ ti,micbias-vg:
+ description: MicBias required voltage. If node is omitted then MicBias is powered down.
+ $ref: /schemas/types.yaml#/definitions/uint32
+ oneOf:
+ - const: 0
+ description: MICBIAS output is same as the VREF output
+ - const: 1
+ description: MICBIAS output is 0.5 times the VREF output
+ - const: 3
+ description: MICBIAS output is same as the AVDD
+
+ avdd-supply:
+ description: Analog DAC voltage.
+
+ iovdd-supply:
+ description: I/O voltage.
+
+ ti,gpios-func:
+ description: |
+ Array indicating the GPIO1, GPIO2, GPO1 Functionality in the same order.
+ Each integer elemnent in the array represent the following
+ - 0 TAC5X1X_GPIO_DISABLE - GPIO is Disabled
+ - 1 TAC5X1X_GPIO_GPI - General Purpose Input
+ - 2 ADC3XXX_GPIO_GPO - General Purpose Output
+ - 3 TAC5X1X_GPIO_IRQ - Chip Interrupt
+ - 4 TAC5X1X_GPIO_PDMCLK - PDM CLK Output
+ - 5 TAC5X1X_GPIO_P_DOUT - Primary ASI DOUT
+ - 6 TAC5X1X_GPIO_P_DOUT2 - Primary ASI DOUT2
+ - 7 TAC5X1X_GPIO_S_DOUT - Secondary ASI DOUT
+ - 8 TAC5X1X_GPIO_S_DOUT2 - Secondary ASI DOUT2
+ - 9 TAC5X1X_GPIO_S_BCLK - Secondary BCLK Output
+ - 10 TAC5X1X_GPIO_S_FSYNC - Secondary FSYNC Output
+ - 11 TAC5X1X_GPIO_CLKOUT - General Purpose Output
+ - 12 TAC5X1X_GPIO_DOUT_MUX
+ - 13 TAC5X1X_GPIO_DAISY_OUT
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ minItems: 3
+ maxItems: 3
+
+ ti,gpios-drive:
+ description: |
+ Array indicating the GPIO1, GPIO2, GPO1 Driver values
+ Each number in the array indicate the following driver values.
+ - 0 # Hi-Z Output
+ - 1 # Drive active low and active High
+ - 2 # Drive active low and weak High
+ - 3 # Drive acive low and Hi-Z
+ - 4 # Drive weak low and active High
+ - 5 # Drive Hi-Z and active High
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ minItems: 3
+ maxItems: 3
+
+ ti,pdm-input-pins:
+ description: |
+ Array indicating the PDM Data Input for "Ch1 & Ch2" and "Ch3 & Ch4"
+ respectively. Each number in the array indicate the following
+ - 0 # PDM input disabled
+ - 1 # PDM input GPIO1
+ - 2 # PDM input GPIO2
+ - 3 # PDM input GPI1
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ minItems: 2
+ maxItems: 2
+
+ ti,gpi1-func:
+ description: GPI1 Functionality
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum:
+ - 0 # TAC5X1X_GPIO_DISABLE - I/O buffers powered down and not used
+ - 1 # TAC5X1X_GPIO_GPI - General purpose input
+ default: 0
+
+ '#sound-dai-cells':
+ const: 0
+
+ clocks:
+ maxItems: 1
+
+ ti,gpa-gpio:
+ description: GPA using GPIO1 configuration
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum:
+ - 0 # GPA using GPIO1 is disabled
+ - 1 # GPA using GPIO1
+ default: 0
+
+ ti,in-ch-en:
+ description: Enable Input channel diagnostics for TAC54XX and TAC53XX device.
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum:
+ - 0 # Disable input channel diagnostics
+ - 1 # Enable input channel diagnostics
+
+ ti,out-ch-en:
+ description: Enable Output channel diagnostics for TAC54XX and TAC53XX device
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum:
+ - 0 # Disable Output channel diagnostics
+ - 1 # Enable Output channel Diagnostics
+
+ ti,incl-se-inm:
+ description: INxM pin Diagnostics Scan Selection for Single Ended Configuration
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum:
+ - 0 # INxM pin Diagnostics Scan Selection for Single Ended excluded for diagnosis
+ - 1 # INxM pin Diagnostics Scan Selection for Single Ended included for diagnosis
+
+ ti,incl-ac-coup:
+ description: AC coupled channels pins Scan Selection for Diagnostics
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum:
+ - 0 # AC coupled channels pins Scan Selection for Diagnostics exluded for diagnosis
+ - 1 # AC coupled channels pins Scan Selection for Diagnostics included for diagnosis
+
+ ti,micbias-threshold:
+ description: Micbias Low and High threshold values for TAC54XX and TAC53XX series
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ maxItems: 2
+ minItems: 2
+ items:
+ minimum: 72
+ maximum: 162
+
+ ti,gpa-threshold:
+ description: GPA Low and High threshold Values
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ maxItems: 2
+ minItems: 2
+ items:
+ minimum: 75
+ maximum: 186
+
+ ti,adc1-impedance:
+ description: Channel 1 Input Impedance Value
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum:
+ - 0 # 5 kOhm
+ - 1 # 10 kOhm
+ - 2 # 40 kOhm
+ default: 0
+
+ ti,adc2-impedance:
+ description: Channel 2 Input Impedance Value
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum:
+ - 0 # 5 kOhm
+ - 1 # 10 kOhm
+ - 2 # 40 kOhm
+ default: 0
+
+ ti,out2x-vcom-cfg:
+ description: Channel OUT2x VCOM configuration
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum:
+ - 0 # 0.6 * Vref
+ - 1 # AVDD by 2
+ default: 0
+
+required:
+ - compatible
+ - reg
+ - ti,vref
+ - ti,micbias-vg
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ tac5x1x: tac5x1x@52 {
+ compatible = "ti,tac5212";
+ reg = <0x52>;
+ #sound-dai-cells = <0>;
+ avdd-supply = <&vdd_3v3_reg>;
+ iovdd-supply = <&vdd_3v3_reg>;
+ ti,vref = <0>;
+ ti,micbias-vg = <3>;
+ ti,gpi1-func = <0>;
+ ti,gpios-func = <4>, <1>, <0>;
+ ti,gpios-drive = <0>, <0>, <0>;
+ ti,gpa-gpio = <0>;
+ ti,in-ch-en = <1>;
+ ti,out-ch-en = <1>;
+ ti,incl-ac-coup = <0>;
+ ti,incl-se-inm = <0>;
+ ti,gpa-threshold = <75>, <186>;
+ };
+ };
+...
--
2.45.2
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH v3 2/4] dt-bindings: sound: bindings for tac5x1x family of codecs
2025-06-26 18:13 ` [PATCH v3 2/4] dt-bindings: sound: bindings for tac5x1x family of codecs Niranjan H Y
@ 2025-06-26 19:39 ` Rob Herring (Arm)
2025-06-27 7:48 ` Krzysztof Kozlowski
1 sibling, 0 replies; 6+ messages in thread
From: Rob Herring (Arm) @ 2025-06-26 19:39 UTC (permalink / raw)
To: Niranjan H Y
Cc: tiwai, alsa-devel, lgirdwood, devicetree, krzk+dt, broonie,
liam.r.girdwood, andriy.shevchenko, baojun.xu, shenghao-ding,
linux-sound, v-hampiholi, conor+dt, navada
On Thu, 26 Jun 2025 23:43:31 +0530, Niranjan H Y wrote:
> tac5x1x family are series of low-power and high performance
> mono/stereo audio codecs consists of ADC and DAC combinations.
> The family consist of Codecs(DAC & ADC), ADC only and DAC only
> configurations. The documentation explains the list of devices
> in the family, their power supply configurations and gpio
> configuration options available for various functionality.
>
> Signed-off-by: Niranjan H Y <niranjan.hy@ti.com>
>
> ---
> v2:
> - Document newly added dts entries ti,adc1-impedance,
> ti,adc2-impedance, ti,out2x-vcom-cfg
> v3:
> - add documentation for ti,pdm-input-pins
> - Update required section
> ---
> .../devicetree/bindings/sound/ti,tac5x1x.yaml | 262 ++++++++++++++++++
> 1 file changed, 262 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/sound/ti,tac5x1x.yaml
>
My bot found errors running 'make dt_binding_check' on your patch:
yamllint warnings/errors:
dtschema/dtc warnings/errors:
Warning: Duplicate compatible "ti,taa5412" found in schemas matching "$id":
http://devicetree.org/schemas/sound/ti,pcm6240.yaml#
http://devicetree.org/schemas/sound/ti,tac5x1x.yaml#
Warning: Duplicate compatible "ti,taa5212" found in schemas matching "$id":
http://devicetree.org/schemas/sound/ti,pcm6240.yaml#
http://devicetree.org/schemas/sound/ti,tac5x1x.yaml#
Warning: Duplicate compatible "ti,tad5212" found in schemas matching "$id":
http://devicetree.org/schemas/sound/ti,pcm6240.yaml#
http://devicetree.org/schemas/sound/ti,tac5x1x.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/sound/ti,tac5x1x.example.dtb: tac5x1x@52 (ti,tac5212): ti,gpa-gpio: 0 is not of type 'array'
from schema $id: http://devicetree.org/schemas/gpio/gpio-consumer.yaml#
doc reference errors (make refcheckdocs):
See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250626181334.1200-3-niranjan.hy@ti.com
The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.
If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:
pip3 install dtschema --upgrade
Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v3 2/4] dt-bindings: sound: bindings for tac5x1x family of codecs
@ 2025-06-27 4:57 Holalu Yogendra, Niranjan
2025-06-27 5:50 ` Krzysztof Kozlowski
0 siblings, 1 reply; 6+ messages in thread
From: Holalu Yogendra, Niranjan @ 2025-06-27 4:57 UTC (permalink / raw)
To: Rob Herring (Arm)
Cc: tiwai@suse.de, alsa-devel@alsa-project.org, lgirdwood@gmail.com,
devicetree@vger.kernel.org, krzk+dt@kernel.org,
broonie@kernel.org, liam.r.girdwood@intel.com,
andriy.shevchenko@linux.intel.com, Xu, Baojun, Ding, Shenghao,
linux-sound@vger.kernel.org, Hampiholi, Vallabha,
conor+dt@kernel.org, Navada Kanyana, Mukund
Thanks for quick review.
> From: Rob Herring (Arm) <robh@kernel.org>
> Sent: Friday, June 27, 2025 1:09 AM
> To: Holalu Yogendra, Niranjan <niranjan.hy@ti.com>
> Subject: Re: [PATCH v3 2/4] dt-bindings: sound: bindings for
> tac5x1x family of codecs
> On Thu, 26 Jun 2025 23:43:31 +0530, Niranjan H Y wrote:
> > Documentation/devicetree/bindings/sound/ti,tac5x1x.yaml
...
> yamllint warnings/errors:
>
> dtschema/dtc warnings/errors:
> Warning: Duplicate compatible "ti,taa5412" found in schemas matching
> Warning: Duplicate compatible "ti,taa5212" found in schemas matching
> Warning: Duplicate compatible "ti,tad5212" found in schemas matching
The duplicate compatible are already removed as part of the patch series
in patch [v3,4/4] dt-bindings: sound: device support list for pcm6240 .
https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250626181334.1200-5-niranjan.hy@ti.com/
Please let me know if still additional action is required.
Regards
Niranjan H Y
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v3 2/4] dt-bindings: sound: bindings for tac5x1x family of codecs
2025-06-27 4:57 Holalu Yogendra, Niranjan
@ 2025-06-27 5:50 ` Krzysztof Kozlowski
0 siblings, 0 replies; 6+ messages in thread
From: Krzysztof Kozlowski @ 2025-06-27 5:50 UTC (permalink / raw)
To: Holalu Yogendra, Niranjan, Rob Herring (Arm)
Cc: tiwai@suse.de, alsa-devel@alsa-project.org, lgirdwood@gmail.com,
devicetree@vger.kernel.org, krzk+dt@kernel.org,
broonie@kernel.org, liam.r.girdwood@intel.com,
andriy.shevchenko@linux.intel.com, Xu, Baojun, Ding, Shenghao,
linux-sound@vger.kernel.org, Hampiholi, Vallabha,
conor+dt@kernel.org, Navada Kanyana, Mukund
On 27/06/2025 06:57, Holalu Yogendra, Niranjan wrote:
> Thanks for quick review.
>> From: Rob Herring (Arm) <robh@kernel.org>
>> Sent: Friday, June 27, 2025 1:09 AM
>> To: Holalu Yogendra, Niranjan <niranjan.hy@ti.com>
>> Subject: Re: [PATCH v3 2/4] dt-bindings: sound: bindings for
>> tac5x1x family of codecs
>> On Thu, 26 Jun 2025 23:43:31 +0530, Niranjan H Y wrote:
>>> Documentation/devicetree/bindings/sound/ti,tac5x1x.yaml
> ...
>> yamllint warnings/errors:
>>
>> dtschema/dtc warnings/errors:
>> Warning: Duplicate compatible "ti,taa5412" found in schemas matching
>> Warning: Duplicate compatible "ti,taa5212" found in schemas matching
>> Warning: Duplicate compatible "ti,tad5212" found in schemas matching
> The duplicate compatible are already removed as part of the patch series
> in patch [v3,4/4] dt-bindings: sound: device support list for pcm6240 .
> https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250626181334.1200-5-niranjan.hy@ti.com/
> Please let me know if still additional action is required.
It's impossible to understand what this email references... but I still
think you need to fix your patchset. You have warnings here, don't you?
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v3 2/4] dt-bindings: sound: bindings for tac5x1x family of codecs
2025-06-26 18:13 ` [PATCH v3 2/4] dt-bindings: sound: bindings for tac5x1x family of codecs Niranjan H Y
2025-06-26 19:39 ` Rob Herring (Arm)
@ 2025-06-27 7:48 ` Krzysztof Kozlowski
1 sibling, 0 replies; 6+ messages in thread
From: Krzysztof Kozlowski @ 2025-06-27 7:48 UTC (permalink / raw)
To: Niranjan H Y
Cc: broonie, krzk+dt, conor+dt, andriy.shevchenko, tiwai, alsa-devel,
baojun.xu, shenghao-ding, liam.r.girdwood, lgirdwood, robh,
linux-sound, devicetree, navada, v-hampiholi
On Thu, Jun 26, 2025 at 11:43:31PM +0530, Niranjan H Y wrote:
> tac5x1x family are series of low-power and high performance
> mono/stereo audio codecs consists of ADC and DAC combinations.
> The family consist of Codecs(DAC & ADC), ADC only and DAC only
> configurations. The documentation explains the list of devices
> in the family, their power supply configurations and gpio
> configuration options available for various functionality.
>
> Signed-off-by: Niranjan H Y <niranjan.hy@ti.com>
>
> ---
> v2:
> - Document newly added dts entries ti,adc1-impedance,
> ti,adc2-impedance, ti,out2x-vcom-cfg
> v3:
> - add documentation for ti,pdm-input-pins
> - Update required section
> ---
> .../devicetree/bindings/sound/ti,tac5x1x.yaml | 262 ++++++++++++++++++
> 1 file changed, 262 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/sound/ti,tac5x1x.yaml
>
> diff --git a/Documentation/devicetree/bindings/sound/ti,tac5x1x.yaml b/Documentation/devicetree/bindings/sound/ti,tac5x1x.yaml
> new file mode 100644
> index 000000000000..5fea6513f97f
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/ti,tac5x1x.yaml
> @@ -0,0 +1,262 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +# Copyright (C) 2025 Texas Instruments Incorporated
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/sound/ti,tac5x1x.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Texas Instruments TAC5X1X Codec
> +
> +description: |
> + TAC5X1X are series of low-power and high performance mono or stereo
> + audio codecs, as well as multiple inputs and outputs programmable in
> + single-ended or fully differential configurations. Device supports both
> + Microphone and Line In input on ADC Channel. DAC Output can be configured
> + for either Line Out or Head Phone Load.
> +
> + The serial control bus supports SPI or I2C protocols, while the serial audio
> + data bus is programmable for I2S, left/right-justified, DSP, or TDM modes.
> +
> + Specification about the codecs can be found at:
> + https://www.ti.com/lit/gpn/taa5212
> + https://www.ti.com/lit/gpn/taa5412-q1
> + https://www.ti.com/lit/gpn/tac5111
> + https://www.ti.com/lit/gpn/tac5112
> + https://www.ti.com/lit/gpn/tac5211
> + https://www.ti.com/lit/gpn/tac5212
> + https://www.ti.com/lit/gpn/tac5311-q1
> + https://www.ti.com/lit/gpn/tac5312-q1
> + https://www.ti.com/lit/gpn/tac5411-q1
> + https://www.ti.com/lit/gpn/tac5412-q1
> + https://www.ti.com/lit/gpn/tad5112
> + https://www.ti.com/lit/gpn/tad5212
> +
> +maintainers:
> + - Niranjan H Y <niranjan.hy@ti.com>
> + - Kevin Lu <kevin-lu@ti.com>
> +
> +properties:
> + compatible:
> + enum:
> + - ti,taa5212
> + - ti,taa5412
> + - ti,tac5111
> + - ti,tac5112
> + - ti,tac5211
> + - ti,tac5212
> + - ti,tac5311
> + - ti,tac5312
> + - ti,tac5411
> + - ti,tac5412
> + - ti,tad5112
> + - ti,tad5212
> +
> + reg:
> + maxItems: 1
> +
> + ti,vref:
> + description: VREF required voltage. If node is omitted then VREF is powered down.
> + $ref: /schemas/types.yaml#/definitions/uint32
Voltage is in microvolt. Use proper suffix/values.
> + oneOf:
> + - const: 0
> + description: VREF output is powered to 2.75V.
> + - const: 1
> + description: VREF output is powered to 2.5V.
> + - const: 2
> + description: VREF output is powered to 1.375V.
> +
> + ti,micbias-vg:
> + description: MicBias required voltage. If node is omitted then MicBias is powered down.
> + $ref: /schemas/types.yaml#/definitions/uint32
> + oneOf:
> + - const: 0
> + description: MICBIAS output is same as the VREF output
> + - const: 1
> + description: MICBIAS output is 0.5 times the VREF output
> + - const: 3
> + description: MICBIAS output is same as the AVDD
> +
> + avdd-supply:
> + description: Analog DAC voltage.
> +
> + iovdd-supply:
> + description: I/O voltage.
> +
> + ti,gpios-func:
> + description: |
> + Array indicating the GPIO1, GPIO2, GPO1 Functionality in the same order.
> + Each integer elemnent in the array represent the following
> + - 0 TAC5X1X_GPIO_DISABLE - GPIO is Disabled
> + - 1 TAC5X1X_GPIO_GPI - General Purpose Input
> + - 2 ADC3XXX_GPIO_GPO - General Purpose Output
> + - 3 TAC5X1X_GPIO_IRQ - Chip Interrupt
> + - 4 TAC5X1X_GPIO_PDMCLK - PDM CLK Output
> + - 5 TAC5X1X_GPIO_P_DOUT - Primary ASI DOUT
> + - 6 TAC5X1X_GPIO_P_DOUT2 - Primary ASI DOUT2
> + - 7 TAC5X1X_GPIO_S_DOUT - Secondary ASI DOUT
> + - 8 TAC5X1X_GPIO_S_DOUT2 - Secondary ASI DOUT2
> + - 9 TAC5X1X_GPIO_S_BCLK - Secondary BCLK Output
> + - 10 TAC5X1X_GPIO_S_FSYNC - Secondary FSYNC Output
> + - 11 TAC5X1X_GPIO_CLKOUT - General Purpose Output
> + - 12 TAC5X1X_GPIO_DOUT_MUX
> + - 13 TAC5X1X_GPIO_DAISY_OUT
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + minItems: 3
> + maxItems: 3
Don't encode gpios and pins as some custom properties.
> +
> + ti,gpios-drive:
> + description: |
> + Array indicating the GPIO1, GPIO2, GPO1 Driver values
> + Each number in the array indicate the following driver values.
> + - 0 # Hi-Z Output
> + - 1 # Drive active low and active High
> + - 2 # Drive active low and weak High
> + - 3 # Drive acive low and Hi-Z
> + - 4 # Drive weak low and active High
> + - 5 # Drive Hi-Z and active High
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + minItems: 3
> + maxItems: 3
Use standard pinctrl bindings.
> +
> + ti,pdm-input-pins:
> + description: |
> + Array indicating the PDM Data Input for "Ch1 & Ch2" and "Ch3 & Ch4"
> + respectively. Each number in the array indicate the following
> + - 0 # PDM input disabled
> + - 1 # PDM input GPIO1
> + - 2 # PDM input GPIO2
> + - 3 # PDM input GPI1
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + minItems: 2
> + maxItems: 2
> +
This is v3, but changelog is scarce, no cover letter, no other lore
references. All this is questionable. Plus the style mixing vendor with
standard properties.
> + ti,gpi1-func:
> + description: GPI1 Functionality
> + $ref: /schemas/types.yaml#/definitions/uint32
> + enum:
> + - 0 # TAC5X1X_GPIO_DISABLE - I/O buffers powered down and not used
> + - 1 # TAC5X1X_GPIO_GPI - General purpose input
> + default: 0
> +
> + '#sound-dai-cells':
Missing ref to dai common. Look at other bindings.
> + const: 0
> +
> + clocks:
> + maxItems: 1
> +
> + ti,gpa-gpio:
Why this appeared here? Looks like totally random sorting.
First goes compatible, then reg, then standard properties, then vendor
properties. I have few more comments but this binding looks terrible. I
suggest you doing extensive initernal review, before you send next
version.
> + description: GPA using GPIO1 configuration
> + $ref: /schemas/types.yaml#/definitions/uint32
> + enum:
> + - 0 # GPA using GPIO1 is disabled
> + - 1 # GPA using GPIO1
> + default: 0
> +
> + ti,in-ch-en:
> + description: Enable Input channel diagnostics for TAC54XX and TAC53XX device.
> + $ref: /schemas/types.yaml#/definitions/uint32
> + enum:
> + - 0 # Disable input channel diagnostics
> + - 1 # Enable input channel diagnostics
> +
> + ti,out-ch-en:
> + description: Enable Output channel diagnostics for TAC54XX and TAC53XX device
> + $ref: /schemas/types.yaml#/definitions/uint32
> + enum:
> + - 0 # Disable Output channel diagnostics
> + - 1 # Enable Output channel Diagnostics
> +
> + ti,incl-se-inm:
> + description: INxM pin Diagnostics Scan Selection for Single Ended Configuration
> + $ref: /schemas/types.yaml#/definitions/uint32
> + enum:
> + - 0 # INxM pin Diagnostics Scan Selection for Single Ended excluded for diagnosis
> + - 1 # INxM pin Diagnostics Scan Selection for Single Ended included for diagnosis
> +
> + ti,incl-ac-coup:
> + description: AC coupled channels pins Scan Selection for Diagnostics
> + $ref: /schemas/types.yaml#/definitions/uint32
> + enum:
> + - 0 # AC coupled channels pins Scan Selection for Diagnostics exluded for diagnosis
> + - 1 # AC coupled channels pins Scan Selection for Diagnostics included for diagnosis
> +
> + ti,micbias-threshold:
> + description: Micbias Low and High threshold values for TAC54XX and TAC53XX series
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + maxItems: 2
> + minItems: 2
> + items:
> + minimum: 72
> + maximum: 162
> +
> + ti,gpa-threshold:
> + description: GPA Low and High threshold Values
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + maxItems: 2
> + minItems: 2
> + items:
> + minimum: 75
> + maximum: 186
> +
> + ti,adc1-impedance:
> + description: Channel 1 Input Impedance Value
Use proper units.
> + $ref: /schemas/types.yaml#/definitions/uint32
> + enum:
> + - 0 # 5 kOhm
> + - 1 # 10 kOhm
> + - 2 # 40 kOhm
> + default: 0
> +
> + ti,adc2-impedance:
> + description: Channel 2 Input Impedance Value
> + $ref: /schemas/types.yaml#/definitions/uint32
> + enum:
> + - 0 # 5 kOhm
> + - 1 # 10 kOhm
> + - 2 # 40 kOhm
> + default: 0
> +
> + ti,out2x-vcom-cfg:
> + description: Channel OUT2x VCOM configuration
> + $ref: /schemas/types.yaml#/definitions/uint32
> + enum:
> + - 0 # 0.6 * Vref
> + - 1 # AVDD by 2
> + default: 0
> +
> +required:
> + - compatible
> + - reg
> + - ti,vref
> + - ti,micbias-vg
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/gpio/gpio.h>
> +
> + i2c {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + tac5x1x: tac5x1x@52 {
Node names should be generic. See also an explanation and list of
examples (not exhaustive) in DT specification:
https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v3 2/4] dt-bindings: sound: bindings for tac5x1x family of codecs
@ 2025-07-28 10:22 Holalu Yogendra, Niranjan
0 siblings, 0 replies; 6+ messages in thread
From: Holalu Yogendra, Niranjan @ 2025-07-28 10:22 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: broonie@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org,
andriy.shevchenko@linux.intel.com, tiwai@suse.de,
alsa-devel@alsa-project.org, Xu, Baojun, Ding, Shenghao,
liam.r.girdwood@intel.com, lgirdwood@gmail.com, robh@kernel.org,
linux-sound@vger.kernel.org, devicetree@vger.kernel.org,
Navada Kanyana, Mukund, Hampiholi, Vallabha
Hi Krzysztof,
Thanks for the detailed review comments.
Request you to take a look at comments below.
On Fri, Jun 27, 2025 at 1:18 PM +0530, Krzysztof Kozlowski wrote:
> On Thu, Jun 26, 2025 at 11:43:31PM +0530, Niranjan H Y wrote:
> > + ti,vref:
> > + description: VREF required voltage. If node is omitted then VREF is
> Voltage is in microvolt. Use proper suffix/values.
Is this convention ? Is there any document on these I can refer ?
>
> > + oneOf:
> > + - const: 0
> > + description: VREF output is powered to 2.75V.
> > + - const: 1
> > + description: VREF output is powered to 2.5V.
> > + - const: 2
> > + description: VREF output is powered to 1.375V.
> > + ti,gpios-func:
> > + description: |
> > + Array indicating the GPIO1, GPIO2, GPO1 Functionality in the same order.
> > + Each integer elemnent in the array represent the following
> > + - 0 TAC5X1X_GPIO_DISABLE - GPIO is Disabled
> > + - 1 TAC5X1X_GPIO_GPI - General Purpose Input
> > + - 2 ADC3XXX_GPIO_GPO - General Purpose Output
> > + - 3 TAC5X1X_GPIO_IRQ - Chip Interrupt
> > + - 4 TAC5X1X_GPIO_PDMCLK - PDM CLK Output
> > + - 5 TAC5X1X_GPIO_P_DOUT - Primary ASI DOUT
> > + - 6 TAC5X1X_GPIO_P_DOUT2 - Primary ASI DOUT2
> > + - 7 TAC5X1X_GPIO_S_DOUT - Secondary ASI DOUT
> > + - 8 TAC5X1X_GPIO_S_DOUT2 - Secondary ASI DOUT2
> > + - 9 TAC5X1X_GPIO_S_BCLK - Secondary BCLK Output
> > + - 10 TAC5X1X_GPIO_S_FSYNC - Secondary FSYNC Output
> > + - 11 TAC5X1X_GPIO_CLKOUT - General Purpose Output
> > + - 12 TAC5X1X_GPIO_DOUT_MUX
> > + - 13 TAC5X1X_GPIO_DAISY_OUT
> > + $ref: /schemas/types.yaml#/definitions/uint32-array
> > + minItems: 3
> > + maxItems: 3
>
> Don't encode gpios and pins as some custom properties.
Could you please suggest what is the alternative.
Please suggest some example which I can refer ?
Regards
Niranjan
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2025-07-28 10:34 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-28 10:22 [PATCH v3 2/4] dt-bindings: sound: bindings for tac5x1x family of codecs Holalu Yogendra, Niranjan
-- strict thread matches above, loose matches on Subject: below --
2025-06-27 4:57 Holalu Yogendra, Niranjan
2025-06-27 5:50 ` Krzysztof Kozlowski
2025-06-26 18:13 [PATCH v3 0/4] ASoc: tac5x1x: mixer-test report Niranjan H Y
2025-06-26 18:13 ` [PATCH v3 2/4] dt-bindings: sound: bindings for tac5x1x family of codecs Niranjan H Y
2025-06-26 19:39 ` Rob Herring (Arm)
2025-06-27 7:48 ` Krzysztof Kozlowski
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).