1WM1811/WM8994/WM8958 audio CODEC 2 3These devices support both I2C and SPI (configured with pin strapping 4on the board). 5 6Required properties: 7 8 - compatible : One of "wlf,wm1811", "wlf,wm8994" or "wlf,wm8958". 9 10 - reg : the I2C address of the device for I2C, the chip select 11 number for SPI. 12 13 - gpio-controller : Indicates this device is a GPIO controller. 14 - #gpio-cells : Must be 2. The first cell is the pin number and the 15 second cell is used to specify optional parameters (currently unused). 16 17 - power supplies for the device, as covered in 18 Documentation/devicetree/bindings/regulator/regulator.txt, depending 19 on compatible: 20 - for wlf,wm1811 and wlf,wm8958: 21 AVDD1-supply, AVDD2-supply, DBVDD1-supply, DBVDD2-supply, DBVDD3-supply, 22 DCVDD-supply, CPVDD-supply, SPKVDD1-supply, SPKVDD2-supply 23 - for wlf,wm8994: 24 AVDD1-supply, AVDD2-supply, DBVDD-supply, DCVDD-supply, CPVDD-supply, 25 SPKVDD1-supply, SPKVDD2-supply 26 27Optional properties: 28 29 - interrupts : The interrupt line the IRQ signal for the device is 30 connected to. This is optional, if it is not connected then none 31 of the interrupt related properties should be specified. 32 - interrupt-controller : These devices contain interrupt controllers 33 and may provide interrupt services to other devices if they have an 34 interrupt line connected. 35 - #interrupt-cells: the number of cells to describe an IRQ, this should be 2. 36 The first cell is the IRQ number. 37 The second cell is the flags, encoded as the trigger masks from 38 Documentation/devicetree/bindings/interrupt-controller/interrupts.txt 39 40 - clocks : A list of up to two phandle and clock specifier pairs 41 - clock-names : A list of clock names sorted in the same order as clocks. 42 Valid clock names are "MCLK1" and "MCLK2". 43 44 - wlf,gpio-cfg : A list of GPIO configuration register values. If absent, 45 no configuration of these registers is performed. If any value is 46 over 0xffff then the register will be left as default. If present 11 47 values must be supplied. 48 49 - wlf,micbias-cfg : Two MICBIAS register values for WM1811 or 50 WM8958. If absent the register defaults will be used. 51 52 - wlf,ldo1ena : GPIO specifier for control of LDO1ENA input to device. 53 - wlf,ldo2ena : GPIO specifier for control of LDO2ENA input to device. 54 55 - wlf,lineout1-se : If present LINEOUT1 is in single ended mode. 56 - wlf,lineout2-se : If present LINEOUT2 is in single ended mode. 57 58 - wlf,lineout1-feedback : If present LINEOUT1 has common mode feedback 59 connected. 60 - wlf,lineout2-feedback : If present LINEOUT2 has common mode feedback 61 connected. 62 63 - wlf,ldoena-always-driven : If present LDOENA is always driven. 64 65 - wlf,spkmode-pu : If present enable the internal pull-up resistor on 66 the SPKMODE pin. 67 68 - wlf,csnaddr-pd : If present enable the internal pull-down resistor on 69 the CS/ADDR pin. 70 71Pins on the device (for linking into audio routes): 72 73 * IN1LN 74 * IN1LP 75 * IN2LN 76 * IN2LP:VXRN 77 * IN1RN 78 * IN1RP 79 * IN2RN 80 * IN2RP:VXRP 81 * SPKOUTLP 82 * SPKOUTLN 83 * SPKOUTRP 84 * SPKOUTRN 85 * HPOUT1L 86 * HPOUT1R 87 * HPOUT2P 88 * HPOUT2N 89 * LINEOUT1P 90 * LINEOUT1N 91 * LINEOUT2P 92 * LINEOUT2N 93 94Example: 95 96wm8994: codec@1a { 97 compatible = "wlf,wm8994"; 98 reg = <0x1a>; 99 100 gpio-controller; 101 #gpio-cells = <2>; 102 103 lineout1-se; 104 105 AVDD1-supply = <®ulator>; 106 AVDD2-supply = <®ulator>; 107 CPVDD-supply = <®ulator>; 108 DBVDD-supply = <®ulator>; 109 DCVDD-supply = <®ulator>; 110 SPKVDD1-supply = <®ulator>; 111 SPKVDD2-supply = <®ulator>; 112}; 113