^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) Texas Instruments - tlv320aic31xx Codec module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) The tlv320aic31xx serial control bus communicates through I2C protocols
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) Required properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) - compatible - "string" - One of:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) "ti,tlv320aic310x" - Generic TLV320AIC31xx with mono speaker amp
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) "ti,tlv320aic311x" - Generic TLV320AIC31xx with stereo speaker amp
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) "ti,tlv320aic3100" - TLV320AIC3100 (mono speaker amp, no MiniDSP)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) "ti,tlv320aic3110" - TLV320AIC3110 (stereo speaker amp, no MiniDSP)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) "ti,tlv320aic3120" - TLV320AIC3120 (mono speaker amp, MiniDSP)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) "ti,tlv320aic3111" - TLV320AIC3111 (stereo speaker amp, MiniDSP)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) "ti,tlv320dac3100" - TLV320DAC3100 (no ADC, mono speaker amp, no MiniDSP)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) "ti,tlv320dac3101" - TLV320DAC3101 (no ADC, stereo speaker amp, no MiniDSP)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) - reg - <int> - I2C slave address
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) - HPVDD-supply, SPRVDD-supply, SPLVDD-supply, AVDD-supply, IOVDD-supply,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) DVDD-supply : power supplies for the device as covered in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) Documentation/devicetree/bindings/regulator/regulator.txt
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) Optional properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) - reset-gpios - GPIO specification for the active low RESET input.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) - ai31xx-micbias-vg - MicBias Voltage setting
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) 1 or MICBIAS_2_0V - MICBIAS output is powered to 2.0V
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) 2 or MICBIAS_2_5V - MICBIAS output is powered to 2.5V
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) 3 or MICBIAS_AVDD - MICBIAS output is connected to AVDD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) If this node is not mentioned or if the value is unknown, then
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) micbias is set to 2.0V.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) - ai31xx-ocmv - output common-mode voltage setting
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) 0 - 1.35V,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) 1 - 1.5V,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) 2 - 1.65V,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) 3 - 1.8V
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) Deprecated properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) - gpio-reset - gpio pin number used for codec reset
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) CODEC output pins:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) * HPL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) * HPR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) * SPL, devices with stereo speaker amp
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) * SPR, devices with stereo speaker amp
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) * SPK, devices with mono speaker amp
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) * MICBIAS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) CODEC input pins:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) * MIC1LP, devices with ADC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) * MIC1RP, devices with ADC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) * MIC1LM, devices with ADC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) * AIN1, devices without ADC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) * AIN2, devices without ADC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) The pins can be used in referring sound node's audio-routing property.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) Example:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) #include <dt-bindings/gpio/gpio.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) #include <dt-bindings/sound/tlv320aic31xx-micbias.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) tlv320aic31xx: tlv320aic31xx@18 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) compatible = "ti,tlv320aic311x";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) reg = <0x18>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) ai31xx-micbias-vg = <MICBIAS_OFF>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) reset-gpios = <&gpio1 17 GPIO_ACTIVE_LOW>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) HPVDD-supply = <®ulator>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) SPRVDD-supply = <®ulator>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) SPLVDD-supply = <®ulator>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) AVDD-supply = <®ulator>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) IOVDD-supply = <®ulator>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) DVDD-supply = <®ulator>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) };