blob: 190230216de84aa106204ed1d69dc9f129f153a8 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001Motorola CPCAP PMIC device tree binding
2
3Required properties:
4- compatible : One or both of "motorola,cpcap" or "ste,6556002"
5- reg : SPI chip select
6- interrupts : The interrupt line the device is connected to
7- interrupt-controller : Marks the device node as an interrupt controller
8- #interrupt-cells : The number of cells to describe an IRQ, should be 2
9- #address-cells : Child device offset number of cells, should be 1
10- #size-cells : Child device size number of cells, should be 0
11- spi-max-frequency : Typically set to 3000000
12- spi-cs-high : SPI chip select direction
13
14Optional subnodes:
15
16The sub-functions of CPCAP get their own node with their own compatible values,
17which are described in the following files:
18
19- Documentation/devicetree/bindings/power/supply/cpcap-battery.yaml
20- Documentation/devicetree/bindings/power/supply/cpcap-charger.yaml
21- Documentation/devicetree/bindings/regulator/cpcap-regulator.txt
22- Documentation/devicetree/bindings/phy/phy-cpcap-usb.txt
23- Documentation/devicetree/bindings/input/cpcap-pwrbutton.txt
24- Documentation/devicetree/bindings/rtc/cpcap-rtc.txt
25- Documentation/devicetree/bindings/leds/leds-cpcap.txt
26- Documentation/devicetree/bindings/iio/adc/motorola,cpcap-adc.yaml
27
28The only exception is the audio codec. Instead of a compatible value its
29node must be named "audio-codec".
30
31Required properties for the audio-codec subnode:
32
33- #sound-dai-cells = <1>;
34
35The audio-codec provides two DAIs. The first one is connected to the
36Stereo HiFi DAC and the second one is connected to the Voice DAC.
37
38Example:
39
40&mcspi1 {
41 cpcap: pmic@0 {
42 compatible = "motorola,cpcap", "ste,6556002";
43 reg = <0>; /* cs0 */
44 interrupt-parent = <&gpio1>;
45 interrupts = <7 IRQ_TYPE_EDGE_RISING>;
46 interrupt-controller;
47 #interrupt-cells = <2>;
48 #address-cells = <1>;
49 #size-cells = <0>;
50 spi-max-frequency = <3000000>;
51 spi-cs-high;
52
53 audio-codec {
54 #sound-dai-cells = <1>;
55
56 /* HiFi */
57 port@0 {
58 endpoint {
59 remote-endpoint = <&cpu_dai1>;
60 };
61 };
62
63 /* Voice */
64 port@1 {
65 endpoint {
66 remote-endpoint = <&cpu_dai2>;
67 };
68 };
69 };
70 };
71};
72