18c2ecf20Sopenharmony_ci* Freescale MC13783/MC13892 Power Management Integrated Circuit (PMIC)
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciRequired properties:
48c2ecf20Sopenharmony_ci- compatible : Should be "fsl,mc13783" or "fsl,mc13892"
58c2ecf20Sopenharmony_ci
68c2ecf20Sopenharmony_ciOptional properties:
78c2ecf20Sopenharmony_ci- fsl,mc13xxx-uses-adc : Indicate the ADC is being used
88c2ecf20Sopenharmony_ci- fsl,mc13xxx-uses-codec : Indicate the Audio Codec is being used
98c2ecf20Sopenharmony_ci- fsl,mc13xxx-uses-rtc : Indicate the RTC is being used
108c2ecf20Sopenharmony_ci- fsl,mc13xxx-uses-touch : Indicate the touchscreen controller is being used
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ciSub-nodes:
138c2ecf20Sopenharmony_ci- codec: Contain the Audio Codec node.
148c2ecf20Sopenharmony_ci  - adc-port: Contain PMIC SSI port number used for ADC.
158c2ecf20Sopenharmony_ci  - dac-port: Contain PMIC SSI port number used for DAC.
168c2ecf20Sopenharmony_ci- leds : Contain the led nodes and initial register values in property
178c2ecf20Sopenharmony_ci  "led-control". Number of register depends of used IC, for MC13783 is 6,
188c2ecf20Sopenharmony_ci  for MC13892 is 4, for MC34708 is 1. See datasheet for bits definitions of
198c2ecf20Sopenharmony_ci  these registers.
208c2ecf20Sopenharmony_ci  - #address-cells: Must be 1.
218c2ecf20Sopenharmony_ci  - #size-cells: Must be 0.
228c2ecf20Sopenharmony_ci  Each led node should contain "reg", which used as LED ID (described below).
238c2ecf20Sopenharmony_ci  Optional properties "label" and "linux,default-trigger" is described in
248c2ecf20Sopenharmony_ci  Documentation/devicetree/bindings/leds/common.txt.
258c2ecf20Sopenharmony_ci- regulators : Contain the regulator nodes. The regulators are bound using
268c2ecf20Sopenharmony_ci  their names as listed below with their registers and bits for enabling.
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ciMC13783 LED IDs:
298c2ecf20Sopenharmony_ci    0  : Main display
308c2ecf20Sopenharmony_ci    1  : AUX display
318c2ecf20Sopenharmony_ci    2  : Keypad
328c2ecf20Sopenharmony_ci    3  : Red 1
338c2ecf20Sopenharmony_ci    4  : Green 1
348c2ecf20Sopenharmony_ci    5  : Blue 1
358c2ecf20Sopenharmony_ci    6  : Red 2
368c2ecf20Sopenharmony_ci    7  : Green 2
378c2ecf20Sopenharmony_ci    8  : Blue 2
388c2ecf20Sopenharmony_ci    9  : Red 3
398c2ecf20Sopenharmony_ci    10 : Green 3
408c2ecf20Sopenharmony_ci    11 : Blue 3
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ciMC13892 LED IDs:
438c2ecf20Sopenharmony_ci    0  : Main display
448c2ecf20Sopenharmony_ci    1  : AUX display
458c2ecf20Sopenharmony_ci    2  : Keypad
468c2ecf20Sopenharmony_ci    3  : Red
478c2ecf20Sopenharmony_ci    4  : Green
488c2ecf20Sopenharmony_ci    5  : Blue
498c2ecf20Sopenharmony_ci
508c2ecf20Sopenharmony_ciMC34708 LED IDs:
518c2ecf20Sopenharmony_ci    0  : Charger Red
528c2ecf20Sopenharmony_ci    1  : Charger Green
538c2ecf20Sopenharmony_ci
548c2ecf20Sopenharmony_ciMC13783 regulators:
558c2ecf20Sopenharmony_ci    sw1a      : regulator SW1A      (register 24, bit 0)
568c2ecf20Sopenharmony_ci    sw1b      : regulator SW1B      (register 25, bit 0)
578c2ecf20Sopenharmony_ci    sw2a      : regulator SW2A      (register 26, bit 0)
588c2ecf20Sopenharmony_ci    sw2b      : regulator SW2B      (register 27, bit 0)
598c2ecf20Sopenharmony_ci    sw3       : regulator SW3       (register 29, bit 20)
608c2ecf20Sopenharmony_ci    vaudio    : regulator VAUDIO    (register 32, bit 0)
618c2ecf20Sopenharmony_ci    viohi     : regulator VIOHI     (register 32, bit 3)
628c2ecf20Sopenharmony_ci    violo     : regulator VIOLO     (register 32, bit 6)
638c2ecf20Sopenharmony_ci    vdig      : regulator VDIG      (register 32, bit 9)
648c2ecf20Sopenharmony_ci    vgen      : regulator VGEN      (register 32, bit 12)
658c2ecf20Sopenharmony_ci    vrfdig    : regulator VRFDIG    (register 32, bit 15)
668c2ecf20Sopenharmony_ci    vrfref    : regulator VRFREF    (register 32, bit 18)
678c2ecf20Sopenharmony_ci    vrfcp     : regulator VRFCP     (register 32, bit 21)
688c2ecf20Sopenharmony_ci    vsim      : regulator VSIM      (register 33, bit 0)
698c2ecf20Sopenharmony_ci    vesim     : regulator VESIM     (register 33, bit 3)
708c2ecf20Sopenharmony_ci    vcam      : regulator VCAM      (register 33, bit 6)
718c2ecf20Sopenharmony_ci    vrfbg     : regulator VRFBG     (register 33, bit 9)
728c2ecf20Sopenharmony_ci    vvib      : regulator VVIB      (register 33, bit 11)
738c2ecf20Sopenharmony_ci    vrf1      : regulator VRF1      (register 33, bit 12)
748c2ecf20Sopenharmony_ci    vrf2      : regulator VRF2      (register 33, bit 15)
758c2ecf20Sopenharmony_ci    vmmc1     : regulator VMMC1     (register 33, bit 18)
768c2ecf20Sopenharmony_ci    vmmc2     : regulator VMMC2     (register 33, bit 21)
778c2ecf20Sopenharmony_ci    gpo1      : regulator GPO1      (register 34, bit 6)
788c2ecf20Sopenharmony_ci    gpo2      : regulator GPO2      (register 34, bit 8)
798c2ecf20Sopenharmony_ci    gpo3      : regulator GPO3      (register 34, bit 10)
808c2ecf20Sopenharmony_ci    gpo4      : regulator GPO4      (register 34, bit 12)
818c2ecf20Sopenharmony_ci    pwgt1spi  : regulator PWGT1SPI  (register 34, bit 15)
828c2ecf20Sopenharmony_ci    pwgt2spi  : regulator PWGT2SPI  (register 34, bit 16)
838c2ecf20Sopenharmony_ci
848c2ecf20Sopenharmony_ciMC13892 regulators:
858c2ecf20Sopenharmony_ci    vcoincell : regulator VCOINCELL (register 13, bit 23)
868c2ecf20Sopenharmony_ci    sw1       : regulator SW1	    (register 24, bit 0)
878c2ecf20Sopenharmony_ci    sw2       : regulator SW2	    (register 25, bit 0)
888c2ecf20Sopenharmony_ci    sw3       : regulator SW3	    (register 26, bit 0)
898c2ecf20Sopenharmony_ci    sw4       : regulator SW4	    (register 27, bit 0)
908c2ecf20Sopenharmony_ci    swbst     : regulator SWBST	    (register 29, bit 20)
918c2ecf20Sopenharmony_ci    vgen1     : regulator VGEN1	    (register 32, bit 0)
928c2ecf20Sopenharmony_ci    viohi     : regulator VIOHI	    (register 32, bit 3)
938c2ecf20Sopenharmony_ci    vdig      : regulator VDIG	    (register 32, bit 9)
948c2ecf20Sopenharmony_ci    vgen2     : regulator VGEN2	    (register 32, bit 12)
958c2ecf20Sopenharmony_ci    vpll      : regulator VPLL	    (register 32, bit 15)
968c2ecf20Sopenharmony_ci    vusb2     : regulator VUSB2	    (register 32, bit 18)
978c2ecf20Sopenharmony_ci    vgen3     : regulator VGEN3	    (register 33, bit 0)
988c2ecf20Sopenharmony_ci    vcam      : regulator VCAM	    (register 33, bit 6)
998c2ecf20Sopenharmony_ci    vvideo    : regulator VVIDEO    (register 33, bit 12)
1008c2ecf20Sopenharmony_ci    vaudio    : regulator VAUDIO    (register 33, bit 15)
1018c2ecf20Sopenharmony_ci    vsd       : regulator VSD	    (register 33, bit 18)
1028c2ecf20Sopenharmony_ci    gpo1      : regulator GPO1	    (register 34, bit 6)
1038c2ecf20Sopenharmony_ci    gpo2      : regulator GPO2	    (register 34, bit 8)
1048c2ecf20Sopenharmony_ci    gpo3      : regulator GPO3	    (register 34, bit 10)
1058c2ecf20Sopenharmony_ci    gpo4      : regulator GPO4	    (register 34, bit 12)
1068c2ecf20Sopenharmony_ci    pwgt1spi  : regulator PWGT1SPI  (register 34, bit 15)
1078c2ecf20Sopenharmony_ci    pwgt2spi  : regulator PWGT2SPI  (register 34, bit 16)
1088c2ecf20Sopenharmony_ci    vusb      : regulator VUSB	    (register 50, bit 3)
1098c2ecf20Sopenharmony_ci
1108c2ecf20Sopenharmony_ci  The bindings details of individual regulator device can be found in:
1118c2ecf20Sopenharmony_ci  Documentation/devicetree/bindings/regulator/regulator.txt
1128c2ecf20Sopenharmony_ci
1138c2ecf20Sopenharmony_ciExamples:
1148c2ecf20Sopenharmony_ci
1158c2ecf20Sopenharmony_ciecspi@70010000 { /* ECSPI1 */
1168c2ecf20Sopenharmony_ci	cs-gpios = <&gpio4 24 0>, /* GPIO4_24 */
1178c2ecf20Sopenharmony_ci		   <&gpio4 25 0>; /* GPIO4_25 */
1188c2ecf20Sopenharmony_ci
1198c2ecf20Sopenharmony_ci	pmic: mc13892@0 {
1208c2ecf20Sopenharmony_ci		#address-cells = <1>;
1218c2ecf20Sopenharmony_ci		#size-cells = <0>;
1228c2ecf20Sopenharmony_ci		compatible = "fsl,mc13892";
1238c2ecf20Sopenharmony_ci		spi-max-frequency = <6000000>;
1248c2ecf20Sopenharmony_ci		reg = <0>;
1258c2ecf20Sopenharmony_ci		interrupt-parent = <&gpio0>;
1268c2ecf20Sopenharmony_ci		interrupts = <8>;
1278c2ecf20Sopenharmony_ci
1288c2ecf20Sopenharmony_ci		leds {
1298c2ecf20Sopenharmony_ci			#address-cells = <1>;
1308c2ecf20Sopenharmony_ci			#size-cells = <0>;
1318c2ecf20Sopenharmony_ci			led-control = <0x000 0x000 0x0e0 0x000>;
1328c2ecf20Sopenharmony_ci
1338c2ecf20Sopenharmony_ci			sysled@3 {
1348c2ecf20Sopenharmony_ci				reg = <3>;
1358c2ecf20Sopenharmony_ci				label = "system:red:live";
1368c2ecf20Sopenharmony_ci				linux,default-trigger = "heartbeat";
1378c2ecf20Sopenharmony_ci			};
1388c2ecf20Sopenharmony_ci		};
1398c2ecf20Sopenharmony_ci
1408c2ecf20Sopenharmony_ci		regulators {
1418c2ecf20Sopenharmony_ci			sw1_reg: mc13892__sw1 {
1428c2ecf20Sopenharmony_ci				regulator-min-microvolt = <600000>;
1438c2ecf20Sopenharmony_ci				regulator-max-microvolt = <1375000>;
1448c2ecf20Sopenharmony_ci				regulator-boot-on;
1458c2ecf20Sopenharmony_ci				regulator-always-on;
1468c2ecf20Sopenharmony_ci			};
1478c2ecf20Sopenharmony_ci
1488c2ecf20Sopenharmony_ci			sw2_reg: mc13892__sw2 {
1498c2ecf20Sopenharmony_ci				regulator-min-microvolt = <900000>;
1508c2ecf20Sopenharmony_ci				regulator-max-microvolt = <1850000>;
1518c2ecf20Sopenharmony_ci				regulator-boot-on;
1528c2ecf20Sopenharmony_ci				regulator-always-on;
1538c2ecf20Sopenharmony_ci			};
1548c2ecf20Sopenharmony_ci		};
1558c2ecf20Sopenharmony_ci	};
1568c2ecf20Sopenharmony_ci};
157