| Motorola CPCAP PMIC device tree binding |
| |
| Required properties: |
| - compatible : One or both of "motorola,cpcap" or "ste,6556002" |
| - reg : SPI chip select |
| - interrupts : The interrupt line the device is connected to |
| - interrupt-controller : Marks the device node as an interrupt controller |
| - #interrupt-cells : The number of cells to describe an IRQ, should be 2 |
| - #address-cells : Child device offset number of cells, should be 1 |
| - #size-cells : Child device size number of cells, should be 0 |
| - spi-max-frequency : Typically set to 3000000 |
| - spi-cs-high : SPI chip select direction |
| |
| Optional subnodes: |
| |
| The sub-functions of CPCAP get their own node with their own compatible values, |
| which are described in the following files: |
| |
| - Documentation/devicetree/bindings/power/supply/cpcap-battery.txt |
| - Documentation/devicetree/bindings/power/supply/cpcap-charger.txt |
| - Documentation/devicetree/bindings/regulator/cpcap-regulator.txt |
| - Documentation/devicetree/bindings/phy/phy-cpcap-usb.txt |
| - Documentation/devicetree/bindings/input/cpcap-pwrbutton.txt |
| - Documentation/devicetree/bindings/rtc/cpcap-rtc.txt |
| - Documentation/devicetree/bindings/leds/leds-cpcap.txt |
| - Documentation/devicetree/bindings/iio/adc/motorola,cpcap-adc.yaml |
| |
| The only exception is the audio codec. Instead of a compatible value its |
| node must be named "audio-codec". |
| |
| Required properties for the audio-codec subnode: |
| |
| - #sound-dai-cells = <1>; |
| |
| The audio-codec provides two DAIs. The first one is connected to the |
| Stereo HiFi DAC and the second one is connected to the Voice DAC. |
| |
| Example: |
| |
| &mcspi1 { |
| cpcap: pmic@0 { |
| compatible = "motorola,cpcap", "ste,6556002"; |
| reg = <0>; /* cs0 */ |
| interrupt-parent = <&gpio1>; |
| interrupts = <7 IRQ_TYPE_EDGE_RISING>; |
| interrupt-controller; |
| #interrupt-cells = <2>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| spi-max-frequency = <3000000>; |
| spi-cs-high; |
| |
| audio-codec { |
| #sound-dai-cells = <1>; |
| |
| /* HiFi */ |
| port@0 { |
| endpoint { |
| remote-endpoint = <&cpu_dai1>; |
| }; |
| }; |
| |
| /* Voice */ |
| port@1 { |
| endpoint { |
| remote-endpoint = <&cpu_dai2>; |
| }; |
| }; |
| }; |
| }; |
| }; |
| |