1*c66ec88fSEmmanuel VadotDialog Semiconductor DA7219 Audio Codec bindings 2*c66ec88fSEmmanuel Vadot 3*c66ec88fSEmmanuel VadotDA7219 is an audio codec with advanced accessory detect features. 4*c66ec88fSEmmanuel Vadot 5*c66ec88fSEmmanuel Vadot====== 6*c66ec88fSEmmanuel Vadot 7*c66ec88fSEmmanuel VadotRequired properties: 8*c66ec88fSEmmanuel Vadot- compatible : Should be "dlg,da7219" 9*c66ec88fSEmmanuel Vadot- reg: Specifies the I2C slave address 10*c66ec88fSEmmanuel Vadot 11*c66ec88fSEmmanuel Vadot- interrupts : IRQ line info for DA7219. 12*c66ec88fSEmmanuel Vadot (See Documentation/devicetree/bindings/interrupt-controller/interrupts.txt for 13*c66ec88fSEmmanuel Vadot further information relating to interrupt properties) 14*c66ec88fSEmmanuel Vadot 15*c66ec88fSEmmanuel Vadot- VDD-supply: VDD power supply for the device 16*c66ec88fSEmmanuel Vadot- VDDMIC-supply: VDDMIC power supply for the device 17*c66ec88fSEmmanuel Vadot- VDDIO-supply: VDDIO power supply for the device 18*c66ec88fSEmmanuel Vadot (See Documentation/devicetree/bindings/regulator/regulator.txt for further 19*c66ec88fSEmmanuel Vadot information relating to regulators) 20*c66ec88fSEmmanuel Vadot 21*c66ec88fSEmmanuel VadotOptional properties: 22*c66ec88fSEmmanuel Vadot- interrupt-names : Name associated with interrupt line. Should be "wakeup" if 23*c66ec88fSEmmanuel Vadot interrupt is to be used to wake system, otherwise "irq" should be used. 24*c66ec88fSEmmanuel Vadot- wakeup-source: Flag to indicate this device can wake system (suspend/resume). 25*c66ec88fSEmmanuel Vadot 26*c66ec88fSEmmanuel Vadot- #clock-cells : Should be set to '<1>', two clock sources provided; 27*c66ec88fSEmmanuel Vadot- clock-output-names : Names given for DAI clock outputs (WCLK & BCLK); 28*c66ec88fSEmmanuel Vadot 29*c66ec88fSEmmanuel Vadot- clocks : phandle and clock specifier for codec MCLK. 30*c66ec88fSEmmanuel Vadot- clock-names : Clock name string for 'clocks' attribute, should be "mclk". 31*c66ec88fSEmmanuel Vadot 32*c66ec88fSEmmanuel Vadot- dlg,micbias-lvl : Voltage (mV) for Mic Bias 33*c66ec88fSEmmanuel Vadot [<1600>, <1800>, <2000>, <2200>, <2400>, <2600>] 34*c66ec88fSEmmanuel Vadot- dlg,mic-amp-in-sel : Mic input source type 35*c66ec88fSEmmanuel Vadot ["diff", "se_p", "se_n"] 36*c66ec88fSEmmanuel Vadot 37*c66ec88fSEmmanuel VadotDeprecated properties: 38*c66ec88fSEmmanuel Vadot- dlg,ldo-lvl : Required internal LDO voltage (mV) level for digital engine 39*c66ec88fSEmmanuel Vadot (LDO unavailable in production HW so property no longer required). 40*c66ec88fSEmmanuel Vadot 41*c66ec88fSEmmanuel Vadot====== 42*c66ec88fSEmmanuel Vadot 43*c66ec88fSEmmanuel VadotChild node - 'da7219_aad': 44*c66ec88fSEmmanuel Vadot 45*c66ec88fSEmmanuel VadotOptional properties: 46*c66ec88fSEmmanuel Vadot- dlg,micbias-pulse-lvl : Mic bias higher voltage pulse level (mV). 47*c66ec88fSEmmanuel Vadot [<2800>, <2900>] 48*c66ec88fSEmmanuel Vadot- dlg,micbias-pulse-time : Mic bias higher voltage pulse duration (ms) 49*c66ec88fSEmmanuel Vadot- dlg,btn-cfg : Periodic button press measurements for 4-pole jack (ms) 50*c66ec88fSEmmanuel Vadot [<2>, <5>, <10>, <50>, <100>, <200>, <500>] 51*c66ec88fSEmmanuel Vadot- dlg,mic-det-thr : Impedance threshold for mic detection measurement (Ohms) 52*c66ec88fSEmmanuel Vadot [<200>, <500>, <750>, <1000>] 53*c66ec88fSEmmanuel Vadot- dlg,jack-ins-deb : Debounce time for jack insertion (ms) 54*c66ec88fSEmmanuel Vadot [<5>, <10>, <20>, <50>, <100>, <200>, <500>, <1000>] 55*c66ec88fSEmmanuel Vadot- dlg,jack-det-rate: Jack type detection latency (3/4 pole) 56*c66ec88fSEmmanuel Vadot ["32ms_64ms", "64ms_128ms", "128ms_256ms", "256ms_512ms"] 57*c66ec88fSEmmanuel Vadot- dlg,jack-rem-deb : Debounce time for jack removal (ms) 58*c66ec88fSEmmanuel Vadot [<1>, <5>, <10>, <20>] 59*c66ec88fSEmmanuel Vadot- dlg,a-d-btn-thr : Impedance threshold between buttons A and D 60*c66ec88fSEmmanuel Vadot [0x0 - 0xFF] 61*c66ec88fSEmmanuel Vadot- dlg,d-b-btn-thr : Impedance threshold between buttons D and B 62*c66ec88fSEmmanuel Vadot [0x0 - 0xFF] 63*c66ec88fSEmmanuel Vadot- dlg,b-c-btn-thr : Impedance threshold between buttons B and C 64*c66ec88fSEmmanuel Vadot [0x0 - 0xFF] 65*c66ec88fSEmmanuel Vadot- dlg,c-mic-btn-thr : Impedance threshold between button C and Mic 66*c66ec88fSEmmanuel Vadot [0x0 - 0xFF] 67*c66ec88fSEmmanuel Vadot- dlg,btn-avg : Number of 8-bit readings for averaged button measurement 68*c66ec88fSEmmanuel Vadot [<1>, <2>, <4>, <8>] 69*c66ec88fSEmmanuel Vadot- dlg,adc-1bit-rpt : Repeat count for 1-bit button measurement 70*c66ec88fSEmmanuel Vadot [<1>, <2>, <4>, <8>] 71*c66ec88fSEmmanuel Vadot 72*c66ec88fSEmmanuel Vadot====== 73*c66ec88fSEmmanuel Vadot 74*c66ec88fSEmmanuel VadotExample: 75*c66ec88fSEmmanuel Vadot 76*c66ec88fSEmmanuel Vadot codec: da7219@1a { 77*c66ec88fSEmmanuel Vadot compatible = "dlg,da7219"; 78*c66ec88fSEmmanuel Vadot reg = <0x1a>; 79*c66ec88fSEmmanuel Vadot 80*c66ec88fSEmmanuel Vadot interrupt-parent = <&gpio6>; 81*c66ec88fSEmmanuel Vadot interrupts = <11 IRQ_TYPE_LEVEL_LOW>; 82*c66ec88fSEmmanuel Vadot 83*c66ec88fSEmmanuel Vadot VDD-supply = <®_audio>; 84*c66ec88fSEmmanuel Vadot VDDMIC-supply = <®_audio>; 85*c66ec88fSEmmanuel Vadot VDDIO-supply = <®_audio>; 86*c66ec88fSEmmanuel Vadot 87*c66ec88fSEmmanuel Vadot #clock-cells = <1>; 88*c66ec88fSEmmanuel Vadot clock-output-names = "dai-wclk", "dai-bclk"; 89*c66ec88fSEmmanuel Vadot 90*c66ec88fSEmmanuel Vadot clocks = <&clks 201>; 91*c66ec88fSEmmanuel Vadot clock-names = "mclk"; 92*c66ec88fSEmmanuel Vadot 93*c66ec88fSEmmanuel Vadot dlg,ldo-lvl = <1200>; 94*c66ec88fSEmmanuel Vadot dlg,micbias-lvl = <2600>; 95*c66ec88fSEmmanuel Vadot dlg,mic-amp-in-sel = "diff"; 96*c66ec88fSEmmanuel Vadot 97*c66ec88fSEmmanuel Vadot da7219_aad { 98*c66ec88fSEmmanuel Vadot dlg,btn-cfg = <50>; 99*c66ec88fSEmmanuel Vadot dlg,mic-det-thr = <500>; 100*c66ec88fSEmmanuel Vadot dlg,jack-ins-deb = <20>; 101*c66ec88fSEmmanuel Vadot dlg,jack-det-rate = "32ms_64ms"; 102*c66ec88fSEmmanuel Vadot dlg,jack-rem-deb = <1>; 103*c66ec88fSEmmanuel Vadot 104*c66ec88fSEmmanuel Vadot dlg,a-d-btn-thr = <0xa>; 105*c66ec88fSEmmanuel Vadot dlg,d-b-btn-thr = <0x16>; 106*c66ec88fSEmmanuel Vadot dlg,b-c-btn-thr = <0x21>; 107*c66ec88fSEmmanuel Vadot dlg,c-mic-btn-thr = <0x3E>; 108*c66ec88fSEmmanuel Vadot 109*c66ec88fSEmmanuel Vadot dlg,btn-avg = <4>; 110*c66ec88fSEmmanuel Vadot dlg,adc-1bit-rpt = <1>; 111*c66ec88fSEmmanuel Vadot }; 112*c66ec88fSEmmanuel Vadot }; 113