1 # SPDX-License-Identifier: GPL-2.0-only OR BSD 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2 # Copyright (C) 2022 Texas Instruments Incorpo 2 # Copyright (C) 2022 Texas Instruments Incorporated 3 %YAML 1.2 3 %YAML 1.2 4 --- 4 --- 5 $id: http://devicetree.org/schemas/sound/ti,tl 5 $id: http://devicetree.org/schemas/sound/ti,tlv320aic3x.yaml# 6 $schema: http://devicetree.org/meta-schemas/co 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 7 8 title: Texas Instruments TLV320AIC3x Codec 8 title: Texas Instruments TLV320AIC3x Codec 9 9 10 description: | 10 description: | 11 TLV320AIC3x are a series of low-power stereo 11 TLV320AIC3x are a series of low-power stereo audio codecs with stereo 12 headphone amplifier, as well as multiple inp 12 headphone amplifier, as well as multiple inputs and outputs programmable in 13 single-ended or fully differential configura 13 single-ended or fully differential configurations. 14 14 15 The serial control bus supports SPI or I2C p 15 The serial control bus supports SPI or I2C protocols, while the serial audio 16 data bus is programmable for I2S, left/right 16 data bus is programmable for I2S, left/right-justified, DSP, or TDM modes. 17 17 18 The following pins can be referred in the so 18 The following pins can be referred in the sound node's audio routing property: 19 19 20 CODEC output pins: 20 CODEC output pins: 21 LLOUT 21 LLOUT 22 RLOUT 22 RLOUT 23 MONO_LOUT 23 MONO_LOUT 24 HPLOUT 24 HPLOUT 25 HPROUT 25 HPROUT 26 HPLCOM 26 HPLCOM 27 HPRCOM 27 HPRCOM 28 28 29 CODEC input pins for TLV320AIC3104: 29 CODEC input pins for TLV320AIC3104: 30 MIC2L 30 MIC2L 31 MIC2R 31 MIC2R 32 LINE1L 32 LINE1L 33 LINE1R 33 LINE1R 34 34 35 CODEC input pins for other compatible codecs 35 CODEC input pins for other compatible codecs: 36 MIC3L 36 MIC3L 37 MIC3R 37 MIC3R 38 LINE1L 38 LINE1L 39 LINE2L 39 LINE2L 40 LINE1R 40 LINE1R 41 LINE2R 41 LINE2R 42 42 43 maintainers: 43 maintainers: 44 - Jai Luthra <j-luthra@ti.com> 44 - Jai Luthra <j-luthra@ti.com> 45 45 46 properties: 46 properties: 47 compatible: 47 compatible: 48 enum: 48 enum: 49 - ti,tlv320aic3x 49 - ti,tlv320aic3x 50 - ti,tlv320aic33 50 - ti,tlv320aic33 51 - ti,tlv320aic3007 51 - ti,tlv320aic3007 52 - ti,tlv320aic3106 52 - ti,tlv320aic3106 53 - ti,tlv320aic3104 53 - ti,tlv320aic3104 54 54 55 reg: 55 reg: 56 maxItems: 1 56 maxItems: 1 57 57 58 reset-gpios: 58 reset-gpios: 59 maxItems: 1 59 maxItems: 1 60 description: 60 description: 61 GPIO specification for the active low RE 61 GPIO specification for the active low RESET input. 62 62 63 gpio-reset: 63 gpio-reset: 64 $ref: /schemas/types.yaml#/definitions/uin << 65 maxItems: 1 64 maxItems: 1 66 description: 65 description: 67 Deprecated, please use reset-gpios inste 66 Deprecated, please use reset-gpios instead. 68 deprecated: true 67 deprecated: true 69 68 70 ai3x-gpio-func: 69 ai3x-gpio-func: 71 description: AIC3X_GPIO1 & AIC3X_GPIO2 Fun 70 description: AIC3X_GPIO1 & AIC3X_GPIO2 Functionality 72 $ref: /schemas/types.yaml#/definitions/uin 71 $ref: /schemas/types.yaml#/definitions/uint32-array 73 maxItems: 2 72 maxItems: 2 74 73 75 ai3x-micbias-vg: 74 ai3x-micbias-vg: 76 description: MicBias required voltage. If 75 description: MicBias required voltage. If node is omitted then MicBias is powered down. 77 $ref: /schemas/types.yaml#/definitions/uin 76 $ref: /schemas/types.yaml#/definitions/uint32 78 oneOf: 77 oneOf: 79 - const: 1 78 - const: 1 80 description: MICBIAS output is powered 79 description: MICBIAS output is powered to 2.0V. 81 - const: 2 80 - const: 2 82 description: MICBIAS output is powered 81 description: MICBIAS output is powered to 2.5V. 83 - const: 3 82 - const: 3 84 description: MICBIAS output is connect 83 description: MICBIAS output is connected to AVDD. 85 84 86 ai3x-ocmv: 85 ai3x-ocmv: 87 description: Output Common-Mode Voltage se 86 description: Output Common-Mode Voltage selection. 88 $ref: /schemas/types.yaml#/definitions/uin 87 $ref: /schemas/types.yaml#/definitions/uint32 89 oneOf: 88 oneOf: 90 - const: 0 89 - const: 0 91 description: 1.35V 90 description: 1.35V 92 - const: 1 91 - const: 1 93 description: 1.5V 92 description: 1.5V 94 - const: 2 93 - const: 2 95 description: 1.65V 94 description: 1.65V 96 - const: 3 95 - const: 3 97 description: 1.8V 96 description: 1.8V 98 97 99 AVDD-supply: 98 AVDD-supply: 100 description: Analog DAC voltage. 99 description: Analog DAC voltage. 101 100 102 IOVDD-supply: 101 IOVDD-supply: 103 description: I/O voltage. 102 description: I/O voltage. 104 103 105 DRVDD-supply: 104 DRVDD-supply: 106 description: ADC analog and output driver 105 description: ADC analog and output driver voltage. 107 106 108 DVDD-supply: 107 DVDD-supply: 109 description: Digital core voltage. 108 description: Digital core voltage. 110 109 111 '#sound-dai-cells': 110 '#sound-dai-cells': 112 const: 0 111 const: 0 113 112 114 clocks: 113 clocks: 115 maxItems: 1 114 maxItems: 1 116 115 117 port: 116 port: 118 $ref: audio-graph-port.yaml# 117 $ref: audio-graph-port.yaml# 119 unevaluatedProperties: false 118 unevaluatedProperties: false 120 119 121 required: 120 required: 122 - compatible 121 - compatible 123 - reg 122 - reg 124 123 125 additionalProperties: false 124 additionalProperties: false 126 125 127 examples: 126 examples: 128 - | 127 - | 129 #include <dt-bindings/gpio/gpio.h> 128 #include <dt-bindings/gpio/gpio.h> 130 i2c { 129 i2c { 131 #address-cells = <1>; 130 #address-cells = <1>; 132 #size-cells = <0>; 131 #size-cells = <0>; 133 132 134 tlv320aic3x_i2c: audio-codec@1b { 133 tlv320aic3x_i2c: audio-codec@1b { 135 compatible = "ti,tlv320aic3x"; 134 compatible = "ti,tlv320aic3x"; 136 reg = <0x1b>; 135 reg = <0x1b>; 137 136 138 reset-gpios = <&gpio1 17 GPIO_ACTIVE_L 137 reset-gpios = <&gpio1 17 GPIO_ACTIVE_LOW>; 139 138 140 AVDD-supply = <®ulator>; 139 AVDD-supply = <®ulator>; 141 IOVDD-supply = <®ulator>; 140 IOVDD-supply = <®ulator>; 142 DRVDD-supply = <®ulator>; 141 DRVDD-supply = <®ulator>; 143 DVDD-supply = <®ulator>; 142 DVDD-supply = <®ulator>; 144 }; 143 }; 145 }; 144 }; 146 145 147 - | 146 - | 148 #include <dt-bindings/gpio/gpio.h> 147 #include <dt-bindings/gpio/gpio.h> 149 spi { 148 spi { 150 #address-cells = <1>; 149 #address-cells = <1>; 151 #size-cells = <0>; 150 #size-cells = <0>; 152 151 153 tlv320aic3x_spi: audio-codec@0 { 152 tlv320aic3x_spi: audio-codec@0 { 154 compatible = "ti,tlv320aic3x"; 153 compatible = "ti,tlv320aic3x"; 155 reg = <0>; /* CS number */ 154 reg = <0>; /* CS number */ 156 #sound-dai-cells = <0>; 155 #sound-dai-cells = <0>; 157 156 158 AVDD-supply = <®ulator>; 157 AVDD-supply = <®ulator>; 159 IOVDD-supply = <®ulator>; 158 IOVDD-supply = <®ulator>; 160 DRVDD-supply = <®ulator>; 159 DRVDD-supply = <®ulator>; 161 DVDD-supply = <®ulator>; 160 DVDD-supply = <®ulator>; 162 ai3x-ocmv = <0>; 161 ai3x-ocmv = <0>; 163 }; 162 }; 164 }; 163 }; 165 164 166 ... 165 ...
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.