GNU Linux-libre 4.14.266-gnu1
[releases.git] / Documentation / devicetree / bindings / mfd / mc13xxx.txt
1 * Freescale MC13783/MC13892 Power Management Integrated Circuit (PMIC)
2
3 Required properties:
4 - compatible : Should be "fsl,mc13783" or "fsl,mc13892"
5
6 Optional properties:
7 - fsl,mc13xxx-uses-adc : Indicate the ADC is being used
8 - fsl,mc13xxx-uses-codec : Indicate the Audio Codec is being used
9 - fsl,mc13xxx-uses-rtc : Indicate the RTC is being used
10 - fsl,mc13xxx-uses-touch : Indicate the touchscreen controller is being used
11
12 Sub-nodes:
13 - codec: Contain the Audio Codec node.
14   - adc-port: Contain PMIC SSI port number used for ADC.
15   - dac-port: Contain PMIC SSI port number used for DAC.
16 - leds : Contain the led nodes and initial register values in property
17   "led-control". Number of register depends of used IC, for MC13783 is 6,
18   for MC13892 is 4, for MC34708 is 1. See datasheet for bits definitions of
19   these registers.
20   - #address-cells: Must be 1.
21   - #size-cells: Must be 0.
22   Each led node should contain "reg", which used as LED ID (described below).
23   Optional properties "label" and "linux,default-trigger" is described in
24   Documentation/devicetree/bindings/leds/common.txt.
25 - regulators : Contain the regulator nodes. The regulators are bound using
26   their names as listed below with their registers and bits for enabling.
27
28 MC13783 LED IDs:
29     0  : Main display
30     1  : AUX display
31     2  : Keypad
32     3  : Red 1
33     4  : Green 1
34     5  : Blue 1
35     6  : Red 2
36     7  : Green 2
37     8  : Blue 2
38     9  : Red 3
39     10 : Green 3
40     11 : Blue 3
41
42 MC13892 LED IDs:
43     0  : Main display
44     1  : AUX display
45     2  : Keypad
46     3  : Red
47     4  : Green
48     5  : Blue
49
50 MC34708 LED IDs:
51     0  : Charger Red
52     1  : Charger Green
53
54 MC13783 regulators:
55     sw1a      : regulator SW1A      (register 24, bit 0)
56     sw1b      : regulator SW1B      (register 25, bit 0)
57     sw2a      : regulator SW2A      (register 26, bit 0)
58     sw2b      : regulator SW2B      (register 27, bit 0)
59     sw3       : regulator SW3       (register 29, bit 20)
60     vaudio    : regulator VAUDIO    (register 32, bit 0)
61     viohi     : regulator VIOHI     (register 32, bit 3)
62     violo     : regulator VIOLO     (register 32, bit 6)
63     vdig      : regulator VDIG      (register 32, bit 9)
64     vgen      : regulator VGEN      (register 32, bit 12)
65     vrfdig    : regulator VRFDIG    (register 32, bit 15)
66     vrfref    : regulator VRFREF    (register 32, bit 18)
67     vrfcp     : regulator VRFCP     (register 32, bit 21)
68     vsim      : regulator VSIM      (register 33, bit 0)
69     vesim     : regulator VESIM     (register 33, bit 3)
70     vcam      : regulator VCAM      (register 33, bit 6)
71     vrfbg     : regulator VRFBG     (register 33, bit 9)
72     vvib      : regulator VVIB      (register 33, bit 11)
73     vrf1      : regulator VRF1      (register 33, bit 12)
74     vrf2      : regulator VRF2      (register 33, bit 15)
75     vmmc1     : regulator VMMC1     (register 33, bit 18)
76     vmmc2     : regulator VMMC2     (register 33, bit 21)
77     gpo1      : regulator GPO1      (register 34, bit 6)
78     gpo2      : regulator GPO2      (register 34, bit 8)
79     gpo3      : regulator GPO3      (register 34, bit 10)
80     gpo4      : regulator GPO4      (register 34, bit 12)
81     pwgt1spi  : regulator PWGT1SPI  (register 34, bit 15)
82     pwgt2spi  : regulator PWGT2SPI  (register 34, bit 16)
83
84 MC13892 regulators:
85     vcoincell : regulator VCOINCELL (register 13, bit 23)
86     sw1       : regulator SW1       (register 24, bit 0)
87     sw2       : regulator SW2       (register 25, bit 0)
88     sw3       : regulator SW3       (register 26, bit 0)
89     sw4       : regulator SW4       (register 27, bit 0)
90     swbst     : regulator SWBST     (register 29, bit 20)
91     vgen1     : regulator VGEN1     (register 32, bit 0)
92     viohi     : regulator VIOHI     (register 32, bit 3)
93     vdig      : regulator VDIG      (register 32, bit 9)
94     vgen2     : regulator VGEN2     (register 32, bit 12)
95     vpll      : regulator VPLL      (register 32, bit 15)
96     vusb2     : regulator VUSB2     (register 32, bit 18)
97     vgen3     : regulator VGEN3     (register 33, bit 0)
98     vcam      : regulator VCAM      (register 33, bit 6)
99     vvideo    : regulator VVIDEO    (register 33, bit 12)
100     vaudio    : regulator VAUDIO    (register 33, bit 15)
101     vsd       : regulator VSD       (register 33, bit 18)
102     gpo1      : regulator GPO1      (register 34, bit 6)
103     gpo2      : regulator GPO2      (register 34, bit 8)
104     gpo3      : regulator GPO3      (register 34, bit 10)
105     gpo4      : regulator GPO4      (register 34, bit 12)
106     pwgt1spi  : regulator PWGT1SPI  (register 34, bit 15)
107     pwgt2spi  : regulator PWGT2SPI  (register 34, bit 16)
108     vusb      : regulator VUSB      (register 50, bit 3)
109
110   The bindings details of individual regulator device can be found in:
111   Documentation/devicetree/bindings/regulator/regulator.txt
112
113 Examples:
114
115 ecspi@70010000 { /* ECSPI1 */
116         fsl,spi-num-chipselects = <2>;
117         cs-gpios = <&gpio4 24 0>, /* GPIO4_24 */
118                    <&gpio4 25 0>; /* GPIO4_25 */
119
120         pmic: mc13892@0 {
121                 #address-cells = <1>;
122                 #size-cells = <0>;
123                 compatible = "fsl,mc13892";
124                 spi-max-frequency = <6000000>;
125                 reg = <0>;
126                 interrupt-parent = <&gpio0>;
127                 interrupts = <8>;
128
129                 leds {
130                         #address-cells = <1>;
131                         #size-cells = <0>;
132                         led-control = <0x000 0x000 0x0e0 0x000>;
133
134                         sysled {
135                                 reg = <3>;
136                                 label = "system:red:live";
137                                 linux,default-trigger = "heartbeat";
138                         };
139                 };
140
141                 regulators {
142                         sw1_reg: mc13892__sw1 {
143                                 regulator-min-microvolt = <600000>;
144                                 regulator-max-microvolt = <1375000>;
145                                 regulator-boot-on;
146                                 regulator-always-on;
147                         };
148
149                         sw2_reg: mc13892__sw2 {
150                                 regulator-min-microvolt = <900000>;
151                                 regulator-max-microvolt = <1850000>;
152                                 regulator-boot-on;
153                                 regulator-always-on;
154                         };
155                 };
156         };
157 };