| WM1811/WM8994/WM8958 audio CODEC |
| |
| These devices support both I2C and SPI (configured with pin strapping |
| on the board). |
| |
| Required properties: |
| |
| - compatible : One of "wlf,wm1811", "wlf,wm8994" or "wlf,wm8958". |
| |
| - reg : the I2C address of the device for I2C, the chip select |
| number for SPI. |
| |
| - gpio-controller : Indicates this device is a GPIO controller. |
| - #gpio-cells : Must be 2. The first cell is the pin number and the |
| second cell is used to specify optional parameters (currently unused). |
| |
| - power supplies for the device, as covered in |
| Documentation/devicetree/bindings/regulator/regulator.txt, depending |
| on compatible: |
| - for wlf,wm1811 and wlf,wm8958: |
| AVDD1-supply, AVDD2-supply, DBVDD1-supply, DBVDD2-supply, DBVDD3-supply, |
| DCVDD-supply, CPVDD-supply, SPKVDD1-supply, SPKVDD2-supply |
| - for wlf,wm8994: |
| AVDD1-supply, AVDD2-supply, DBVDD-supply, DCVDD-supply, CPVDD-supply, |
| SPKVDD1-supply, SPKVDD2-supply |
| |
| Optional properties: |
| |
| - interrupts : The interrupt line the IRQ signal for the device is |
| connected to. This is optional, if it is not connected then none |
| of the interrupt related properties should be specified. |
| - interrupt-controller : These devices contain interrupt controllers |
| and may provide interrupt services to other devices if they have an |
| interrupt line connected. |
| - #interrupt-cells: the number of cells to describe an IRQ, this should be 2. |
| The first cell is the IRQ number. |
| The second cell is the flags, encoded as the trigger masks from |
| Documentation/devicetree/bindings/interrupt-controller/interrupts.txt |
| |
| - clocks : A list of up to two phandle and clock specifier pairs |
| - clock-names : A list of clock names sorted in the same order as clocks. |
| Valid clock names are "MCLK1" and "MCLK2". |
| |
| - wlf,gpio-cfg : A list of GPIO configuration register values. If absent, |
| no configuration of these registers is performed. If any value is |
| over 0xffff then the register will be left as default. If present 11 |
| values must be supplied. |
| |
| - wlf,micbias-cfg : Two MICBIAS register values for WM1811 or |
| WM8958. If absent the register defaults will be used. |
| |
| - wlf,ldo1ena : GPIO specifier for control of LDO1ENA input to device. |
| - wlf,ldo2ena : GPIO specifier for control of LDO2ENA input to device. |
| |
| - wlf,lineout1-se : If present LINEOUT1 is in single ended mode. |
| - wlf,lineout2-se : If present LINEOUT2 is in single ended mode. |
| |
| - wlf,lineout1-feedback : If present LINEOUT1 has common mode feedback |
| connected. |
| - wlf,lineout2-feedback : If present LINEOUT2 has common mode feedback |
| connected. |
| |
| - wlf,ldoena-always-driven : If present LDOENA is always driven. |
| |
| - wlf,spkmode-pu : If present enable the internal pull-up resistor on |
| the SPKMODE pin. |
| |
| - wlf,csnaddr-pd : If present enable the internal pull-down resistor on |
| the CS/ADDR pin. |
| |
| Pins on the device (for linking into audio routes): |
| |
| * IN1LN |
| * IN1LP |
| * IN2LN |
| * IN2LP:VXRN |
| * IN1RN |
| * IN1RP |
| * IN2RN |
| * IN2RP:VXRP |
| * SPKOUTLP |
| * SPKOUTLN |
| * SPKOUTRP |
| * SPKOUTRN |
| * HPOUT1L |
| * HPOUT1R |
| * HPOUT2P |
| * HPOUT2N |
| * LINEOUT1P |
| * LINEOUT1N |
| * LINEOUT2P |
| * LINEOUT2N |
| |
| Example: |
| |
| wm8994: codec@1a { |
| compatible = "wlf,wm8994"; |
| reg = <0x1a>; |
| |
| gpio-controller; |
| #gpio-cells = <2>; |
| |
| lineout1-se; |
| |
| AVDD1-supply = <®ulator>; |
| AVDD2-supply = <®ulator>; |
| CPVDD-supply = <®ulator>; |
| DBVDD-supply = <®ulator>; |
| DCVDD-supply = <®ulator>; |
| SPKVDD1-supply = <®ulator>; |
| SPKVDD2-supply = <®ulator>; |
| }; |