* [PATCH v3] dt-bindings: sound: tlv320aic3x: Convert to dtschema
@ 2022-12-20 12:39 Jai Luthra
2022-12-21 8:33 ` Krzysztof Kozlowski
0 siblings, 1 reply; 3+ messages in thread
From: Jai Luthra @ 2022-12-20 12:39 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski
Cc: Liam Girdwood, Mark Brown, alsa-devel, devicetree, Jai Luthra
Convert bindings for TI's TLV320AIC3x audio codecs to dtschema.
The following properties are still found in some old dts files, but will
be ignored by the driver:
- adc-settle-ms
- assigned-clock-paranets, assigned-clock-rates, assigned-clocks
- port
Signed-off-by: Jai Luthra <j-luthra@ti.com>
---
Changes in v3:
- Add comment about old undocumented properties
- Address comments on minItems/maxItems
v2: https://lore.kernel.org/linux-devicetree/20220803151726.31628-1-j-luthra@ti.com/
.../bindings/sound/ti,tlv320aic3x.yaml | 158 ++++++++++++++++++
.../devicetree/bindings/sound/tlv320aic3x.txt | 97 -----------
2 files changed, 158 insertions(+), 97 deletions(-)
create mode 100644 Documentation/devicetree/bindings/sound/ti,tlv320aic3x.yaml
delete mode 100644 Documentation/devicetree/bindings/sound/tlv320aic3x.txt
diff --git a/Documentation/devicetree/bindings/sound/ti,tlv320aic3x.yaml b/Documentation/devicetree/bindings/sound/ti,tlv320aic3x.yaml
new file mode 100644
index 000000000000..442b3d7633ef
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/ti,tlv320aic3x.yaml
@@ -0,0 +1,158 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+# Copyright (C) 2022 Texas Instruments Incorporated
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/ti,tlv320aic3x.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Texas Instruments TLV320AIC3x Codec
+
+description: |
+ TLV320AIC3x are a series of low-power stereo audio codecs with stereo
+ headphone amplifier, as well as multiple inputs and outputs programmable in
+ single-ended or fully differential configurations.
+
+ 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.
+
+ The following pins can be referred in the sound node's audio routing property:
+
+ CODEC output pins:
+ LLOUT
+ RLOUT
+ MONO_LOUT
+ HPLOUT
+ HPROUT
+ HPLCOM
+ HPRCOM
+
+ CODEC input pins for TLV320AIC3104:
+ MIC2L
+ MIC2R
+ LINE1L
+ LINE1R
+
+ CODEC input pins for other compatible codecs:
+ MIC3L
+ MIC3R
+ LINE1L
+ LINE2L
+ LINE1R
+ LINE2R
+
+maintainers:
+ - Jai Luthra <j-luthra@ti.com>
+
+properties:
+ compatible:
+ enum:
+ - ti,tlv320aic3x
+ - ti,tlv320aic33
+ - ti,tlv320aic3007
+ - ti,tlv320aic3106
+ - ti,tlv320aic3104
+
+ reg:
+ maxItems: 1
+
+ reset-gpios:
+ maxItems: 1
+ description:
+ GPIO specification for the active low RESET input.
+
+ gpio-reset:
+ maxItems: 1
+ description:
+ Deprecated, please use reset-gpios instead.
+ deprecated: true
+
+ ai3x-gpio-func:
+ description: AIC3X_GPIO1 & AIC3X_GPIO2 Functionality
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ maxItems: 2
+
+ ai3x-micbias-vg:
+ description: MicBias required voltage. If node is omitted then MicBias is powered down.
+ $ref: /schemas/types.yaml#/definitions/uint32
+ oneOf:
+ - const: 1
+ description: MICBIAS output is powered to 2.0V.
+ - const: 2
+ description: MICBIAS output is powered to 2.5V.
+ - const: 3
+ description: MICBIAS output is connected to AVDD.
+
+ ai3x-ocmv:
+ description: Output Common-Mode Voltage selection.
+ $ref: /schemas/types.yaml#/definitions/uint32
+ oneOf:
+ - const: 0
+ description: 1.35V
+ - const: 1
+ description: 1.5V
+ - const: 2
+ description: 1.65V
+ - const: 3
+ description: 1.8V
+
+ AVDD-supply:
+ description: Analog DAC voltage.
+
+ IOVDD-supply:
+ description: I/O voltage.
+
+ DRVDD-supply:
+ description: ADC analog and output driver voltage.
+
+ DVDD-supply:
+ description: Digital core voltage.
+
+ '#sound-dai-cells':
+ const: 0
+
+required:
+ - compatible
+ - reg
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ tlv320aic3x_i2c: tlv320aic3x@1b {
+ compatible = "ti,tlv320aic3x";
+ reg = <0x1b>;
+
+ reset-gpios = <&gpio1 17 GPIO_ACTIVE_LOW>;
+
+ AVDD-supply = <®ulator>;
+ IOVDD-supply = <®ulator>;
+ DRVDD-supply = <®ulator>;
+ DVDD-supply = <®ulator>;
+ };
+ };
+
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+ spi {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ tlv320aic3x_spi: codec@0 {
+ compatible = "ti,tlv320aic3x";
+ reg = <0>; /* CS number */
+ #sound-dai-cells = <0>;
+
+ AVDD-supply = <®ulator>;
+ IOVDD-supply = <®ulator>;
+ DRVDD-supply = <®ulator>;
+ DVDD-supply = <®ulator>;
+ ai3x-ocmv = <0>;
+ };
+ };
+
+...
diff --git a/Documentation/devicetree/bindings/sound/tlv320aic3x.txt b/Documentation/devicetree/bindings/sound/tlv320aic3x.txt
deleted file mode 100644
index 20931a63fd64..000000000000
--- a/Documentation/devicetree/bindings/sound/tlv320aic3x.txt
+++ /dev/null
@@ -1,97 +0,0 @@
-Texas Instruments - tlv320aic3x Codec module
-
-The tlv320aic3x serial control bus communicates through both I2C and SPI bus protocols
-
-Required properties:
-
-- compatible - "string" - One of:
- "ti,tlv320aic3x" - Generic TLV320AIC3x device
- "ti,tlv320aic33" - TLV320AIC33
- "ti,tlv320aic3007" - TLV320AIC3007
- "ti,tlv320aic3106" - TLV320AIC3106
- "ti,tlv320aic3104" - TLV320AIC3104
-
-
-- reg - <int> - I2C slave address
-
-
-Optional properties:
-
-- reset-gpios - GPIO specification for the active low RESET input.
-- ai3x-gpio-func - <array of 2 int> - AIC3X_GPIO1 & AIC3X_GPIO2 Functionality
- - Not supported on tlv320aic3104
-- ai3x-micbias-vg - MicBias Voltage required.
- 1 - MICBIAS output is powered to 2.0V,
- 2 - MICBIAS output is powered to 2.5V,
- 3 - MICBIAS output is connected to AVDD,
- If this node is not mentioned or if the value is incorrect, then MicBias
- is powered down.
-- ai3x-ocmv - Output Common-Mode Voltage selection:
- 0 - 1.35V,
- 1 - 1.5V,
- 2 - 1.65V,
- 3 - 1.8V
-- AVDD-supply, IOVDD-supply, DRVDD-supply, DVDD-supply : power supplies for the
- device as covered in Documentation/devicetree/bindings/regulator/regulator.txt
-
-Deprecated properties:
-
-- gpio-reset - gpio pin number used for codec reset
-
-CODEC output pins:
- * LLOUT
- * RLOUT
- * MONO_LOUT
- * HPLOUT
- * HPROUT
- * HPLCOM
- * HPRCOM
-
-CODEC input pins for TLV320AIC3104:
- * MIC2L
- * MIC2R
- * LINE1L
- * LINE1R
-
-CODEC input pins for other compatible codecs:
- * MIC3L
- * MIC3R
- * LINE1L
- * LINE2L
- * LINE1R
- * LINE2R
-
-The pins can be used in referring sound node's audio-routing property.
-
-I2C example:
-
-#include <dt-bindings/gpio/gpio.h>
-
-tlv320aic3x: tlv320aic3x@1b {
- compatible = "ti,tlv320aic3x";
- reg = <0x1b>;
-
- reset-gpios = <&gpio1 17 GPIO_ACTIVE_LOW>;
-
- AVDD-supply = <®ulator>;
- IOVDD-supply = <®ulator>;
- DRVDD-supply = <®ulator>;
- DVDD-supply = <®ulator>;
-};
-
-SPI example:
-
-spi0: spi@f0000000 {
- tlv320aic3x: codec@0 {
- compatible = "ti,tlv320aic3x";
- reg = <0>; /* CS number */
- #sound-dai-cells = <0>;
- spi-max-frequency = <1000000>;
-
- AVDD-supply = <®ulator>;
- IOVDD-supply = <®ulator>;
- DRVDD-supply = <®ulator>;
- DVDD-supply = <®ulator>;
- ai3x-ocmv = <0>;
- };
-};
--
2.17.1
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [PATCH v3] dt-bindings: sound: tlv320aic3x: Convert to dtschema
2022-12-20 12:39 [PATCH v3] dt-bindings: sound: tlv320aic3x: Convert to dtschema Jai Luthra
@ 2022-12-21 8:33 ` Krzysztof Kozlowski
2022-12-21 14:47 ` Jai Luthra
0 siblings, 1 reply; 3+ messages in thread
From: Krzysztof Kozlowski @ 2022-12-21 8:33 UTC (permalink / raw)
To: Jai Luthra, Rob Herring, Krzysztof Kozlowski
Cc: Liam Girdwood, Mark Brown, alsa-devel, devicetree
On 20/12/2022 13:39, Jai Luthra wrote:
> Convert bindings for TI's TLV320AIC3x audio codecs to dtschema.
>
> The following properties are still found in some old dts files, but will
> be ignored by the driver:
> - adc-settle-ms
> - assigned-clock-paranets, assigned-clock-rates, assigned-clocks
> - port
>
> Signed-off-by: Jai Luthra <j-luthra@ti.com>
> ---
Thank you for your patch. There is something to discuss/improve.
> +
> +required:
> + - compatible
> + - reg
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/gpio/gpio.h>
> + i2c {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + tlv320aic3x_i2c: tlv320aic3x@1b {
Node names should be generic.
https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation
> + compatible = "ti,tlv320aic3x";
> + reg = <0x1b>;
> +
> + reset-gpios = <&gpio1 17 GPIO_ACTIVE_LOW>;
> +
> + AVDD-supply = <®ulator>;
> + IOVDD-supply = <®ulator>;
> + DRVDD-supply = <®ulator>;
> + DVDD-supply = <®ulator>;
> + };
> + };
> +
> + - |
> + #include <dt-bindings/gpio/gpio.h>
> + spi {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + tlv320aic3x_spi: codec@0 {
> + compatible = "ti,tlv320aic3x";
> + reg = <0>; /* CS number */
> + #sound-dai-cells = <0>;
> +
> + AVDD-supply = <®ulator>;
> + IOVDD-supply = <®ulator>;
> + DRVDD-supply = <®ulator>;
> + DVDD-supply = <®ulator>;
> + ai3x-ocmv = <0>;
> + };
> + };
> +
> +...
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH v3] dt-bindings: sound: tlv320aic3x: Convert to dtschema
2022-12-21 8:33 ` Krzysztof Kozlowski
@ 2022-12-21 14:47 ` Jai Luthra
0 siblings, 0 replies; 3+ messages in thread
From: Jai Luthra @ 2022-12-21 14:47 UTC (permalink / raw)
To: Krzysztof Kozlowski, Rob Herring, Krzysztof Kozlowski
Cc: Liam Girdwood, Mark Brown, alsa-devel, devicetree
On 21/12/22 14:03, Krzysztof Kozlowski wrote:
> On 20/12/2022 13:39, Jai Luthra wrote:
>> Convert bindings for TI's TLV320AIC3x audio codecs to dtschema.
>>
>> The following properties are still found in some old dts files, but will
>> be ignored by the driver:
>> - adc-settle-ms
>> - assigned-clock-paranets, assigned-clock-rates, assigned-clocks
>> - port
>>
>> Signed-off-by: Jai Luthra <j-luthra@ti.com>
>> ---
>
> Thank you for your patch. There is something to discuss/improve.
>
>> +
>> +required:
>> + - compatible
>> + - reg
>> +
>> +additionalProperties: false
>> +
>> +examples:
>> + - |
>> + #include <dt-bindings/gpio/gpio.h>
>> + i2c {
>> + #address-cells = <1>;
>> + #size-cells = <0>;
>> +
>> + tlv320aic3x_i2c: tlv320aic3x@1b {
>
> Node names should be generic.
> https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation
>
Thanks Krzysztof, will fix in v4.
>> + compatible = "ti,tlv320aic3x";
>> + reg = <0x1b>;
>> +
>> + reset-gpios = <&gpio1 17 GPIO_ACTIVE_LOW>;
>> +
>> + AVDD-supply = <®ulator>;
>> + IOVDD-supply = <®ulator>;
>> + DRVDD-supply = <®ulator>;
>> + DVDD-supply = <®ulator>;
>> + };
>> + };
>> +
>> + - |
>> + #include <dt-bindings/gpio/gpio.h>
>> + spi {
>> + #address-cells = <1>;
>> + #size-cells = <0>;
>> +
>> + tlv320aic3x_spi: codec@0 {
>> + compatible = "ti,tlv320aic3x";
>> + reg = <0>; /* CS number */
>> + #sound-dai-cells = <0>;
>> +
>> + AVDD-supply = <®ulator>;
>> + IOVDD-supply = <®ulator>;
>> + DRVDD-supply = <®ulator>;
>> + DVDD-supply = <®ulator>;
>> + ai3x-ocmv = <0>;
>> + };
>> + };
>> +
>> +...
>
> Best regards,
> Krzysztof
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2022-12-21 14:48 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-20 12:39 [PATCH v3] dt-bindings: sound: tlv320aic3x: Convert to dtschema Jai Luthra
2022-12-21 8:33 ` Krzysztof Kozlowski
2022-12-21 14:47 ` Jai Luthra
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).