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