^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) Texas Instruments - tlv320aic3x Codec module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) The tlv320aic3x 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,tlv320aic3x" - Generic TLV320AIC3x device
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) "ti,tlv320aic33" - TLV320AIC33
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) "ti,tlv320aic3007" - TLV320AIC3007
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) "ti,tlv320aic3106" - TLV320AIC3106
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) "ti,tlv320aic3104" - TLV320AIC3104
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) - reg - <int> - I2C slave address
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) Optional properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) - reset-gpios - GPIO specification for the active low RESET input.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) - ai3x-gpio-func - <array of 2 int> - AIC3X_GPIO1 & AIC3X_GPIO2 Functionality
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) - Not supported on tlv320aic3104
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) - ai3x-micbias-vg - MicBias Voltage required.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) 1 - MICBIAS output is powered to 2.0V,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) 2 - MICBIAS output is powered to 2.5V,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) 3 - MICBIAS output is connected to AVDD,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) If this node is not mentioned or if the value is incorrect, then MicBias
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) is powered down.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) - ai3x-ocmv - Output Common-Mode Voltage selection:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) 0 - 1.35V,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) 1 - 1.5V,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) 2 - 1.65V,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) 3 - 1.8V
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) - AVDD-supply, IOVDD-supply, DRVDD-supply, DVDD-supply : power supplies for the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) device as covered in Documentation/devicetree/bindings/regulator/regulator.txt
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) Deprecated properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) - gpio-reset - gpio pin number used for codec reset
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) CODEC output pins:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) * LLOUT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) * RLOUT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) * MONO_LOUT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) * HPLOUT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) * HPROUT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) * HPLCOM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) * HPRCOM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) CODEC input pins for TLV320AIC3104:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) * MIC2L
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) * MIC2R
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) * LINE1L
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) * LINE1R
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) CODEC input pins for other compatible codecs:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) * MIC3L
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) * MIC3R
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) * LINE1L
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) * LINE2L
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) * LINE1R
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) * LINE2R
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) The pins can be used in referring sound node's audio-routing property.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) Example:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) #include <dt-bindings/gpio/gpio.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) tlv320aic3x: tlv320aic3x@1b {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) compatible = "ti,tlv320aic3x";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) reg = <0x1b>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) reset-gpios = <&gpio1 17 GPIO_ACTIVE_LOW>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) AVDD-supply = <®ulator>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) IOVDD-supply = <®ulator>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) DRVDD-supply = <®ulator>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) DVDD-supply = <®ulator>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) };