1/*
2 * Spreadtrum SC2731 PMIC dts file
3 *
4 * Copyright (C) 2018, Spreadtrum Communications Inc.
5 *
6 * SPDX-License-Identifier: (GPL-2.0+ OR MIT)
7 */
8
9&adi_bus {
10	sc2731_pmic: pmic@0 {
11		compatible = "sprd,sc2731";
12		reg = <0>;
13		spi-max-frequency = <26000000>;
14		interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
15		interrupt-controller;
16		#interrupt-cells = <1>;
17		#address-cells = <1>;
18		#size-cells = <0>;
19
20		led-controller@200 {
21			compatible = "sprd,sc27xx-bltc", "sprd,sc2731-bltc";
22			reg = <0x200>;
23			#address-cells = <1>;
24			#size-cells = <0>;
25
26			led@0 {
27				label = "red";
28				reg = <0x0>;
29			};
30
31			led@1 {
32				label = "green";
33				reg = <0x1>;
34			};
35
36			led@2 {
37				label = "blue";
38				reg = <0x2>;
39			};
40		};
41
42		rtc@280 {
43			compatible = "sprd,sc27xx-rtc", "sprd,sc2731-rtc";
44			reg = <0x280>;
45			interrupt-parent = <&sc2731_pmic>;
46			interrupts = <2>;
47		};
48
49		pmic_eic: gpio@300 {
50			compatible = "sprd,sc27xx-eic";
51			reg = <0x300>;
52			interrupt-parent = <&sc2731_pmic>;
53			interrupts = <5>;
54			gpio-controller;
55			#gpio-cells = <2>;
56			interrupt-controller;
57			#interrupt-cells = <2>;
58		};
59
60		efuse@380 {
61			compatible = "sprd,sc27xx-efuse", "sprd,sc2731-efuse";
62			reg = <0x380>;
63			#address-cells = <1>;
64			#size-cells = <1>;
65			hwlocks = <&hwlock 12>;
66
67			adc_big_scale: calib@24 {
68				reg = <0x24 0x2>;
69			};
70
71			adc_small_scale: calib@26 {
72				reg = <0x26 0x2>;
73			};
74		};
75
76		pmic_adc: adc@480 {
77			compatible = "sprd,sc27xx-adc", "sprd,sc2731-adc";
78			reg = <0x480>;
79			interrupt-parent = <&sc2731_pmic>;
80			interrupts = <0>;
81			#io-channel-cells = <1>;
82			hwlocks = <&hwlock 4>;
83			nvmem-cell-names = "big_scale_calib", "small_scale_calib";
84			nvmem-cells = <&adc_big_scale>, <&adc_small_scale>;
85		};
86
87		vibrator@ec8 {
88			compatible = "sprd,sc27xx-vibrator", "sprd,sc2731-vibrator";
89			reg = <0xec8>;
90		};
91
92		regulators {
93			compatible = "sprd,sc27xx-regulator";
94
95			vddarm0: BUCK_CPU0 {
96				regulator-name = "vddarm0";
97				regulator-min-microvolt = <400000>;
98				regulator-max-microvolt = <1996875>;
99				regulator-ramp-delay = <25000>;
100				regulator-always-on;
101			};
102
103			vddarm1: BUCK_CPU1 {
104				regulator-name = "vddarm1";
105				regulator-min-microvolt = <400000>;
106				regulator-max-microvolt = <1996875>;
107				regulator-ramp-delay = <25000>;
108				regulator-always-on;
109			};
110
111			dcdcrf: BUCK_RF {
112				regulator-name = "dcdcrf";
113				regulator-min-microvolt = <600000>;
114				regulator-max-microvolt = <2196875>;
115				regulator-ramp-delay = <25000>;
116				regulator-enable-ramp-delay = <100>;
117				regulator-always-on;
118			};
119
120			vddcama0: LDO_CAMA0 {
121				regulator-name = "vddcama0";
122				regulator-min-microvolt = <1200000>;
123				regulator-max-microvolt = <3750000>;
124				regulator-enable-ramp-delay = <100>;
125			};
126
127			vddcama1: LDO_CAMA1 {
128				regulator-name = "vddcama1";
129				regulator-min-microvolt = <1200000>;
130				regulator-max-microvolt = <3750000>;
131				regulator-enable-ramp-delay = <100>;
132				regulator-ramp-delay = <25000>;
133			};
134
135			vddcammot: LDO_CAMMOT {
136				regulator-name = "vddcammot";
137				regulator-min-microvolt = <1200000>;
138				regulator-max-microvolt = <3750000>;
139				regulator-enable-ramp-delay = <100>;
140				regulator-ramp-delay = <25000>;
141			};
142
143			vddvldo: LDO_VLDO {
144				regulator-name = "vddvldo";
145				regulator-min-microvolt = <1200000>;
146				regulator-max-microvolt = <3750000>;
147				regulator-enable-ramp-delay = <100>;
148				regulator-ramp-delay = <25000>;
149			};
150
151			vddemmccore: LDO_EMMCCORE {
152				regulator-name = "vddemmccore";
153				regulator-min-microvolt = <1200000>;
154				regulator-max-microvolt = <3750000>;
155				regulator-enable-ramp-delay = <100>;
156				regulator-ramp-delay = <25000>;
157				regulator-boot-on;
158			};
159
160			vddsdcore: LDO_SDCORE {
161				regulator-name = "vddsdcore";
162				regulator-min-microvolt = <1200000>;
163				regulator-max-microvolt = <3750000>;
164				regulator-enable-ramp-delay = <100>;
165				regulator-ramp-delay = <25000>;
166			};
167
168			vddsdio: LDO_SDIO {
169				regulator-name = "vddsdio";
170				regulator-min-microvolt = <1200000>;
171				regulator-max-microvolt = <3750000>;
172				regulator-enable-ramp-delay = <100>;
173				regulator-ramp-delay = <25000>;
174			};
175
176			vddwifipa: LDO_WIFIPA {
177				regulator-name = "vddwifipa";
178				regulator-min-microvolt = <1200000>;
179				regulator-max-microvolt = <3750000>;
180				regulator-enable-ramp-delay = <100>;
181				regulator-ramp-delay = <25000>;
182			};
183
184			vddusb33: LDO_USB33 {
185				regulator-name = "vddusb33";
186				regulator-min-microvolt = <1200000>;
187				regulator-max-microvolt = <3750000>;
188				regulator-enable-ramp-delay = <100>;
189				regulator-ramp-delay = <25000>;
190			};
191
192			vddcamd0: LDO_CAMD0 {
193				regulator-name = "vddcamd0";
194				regulator-min-microvolt = <1000000>;
195				regulator-max-microvolt = <1793750>;
196				regulator-enable-ramp-delay = <100>;
197				regulator-ramp-delay = <25000>;
198			};
199
200			vddcamd1: LDO_CAMD1 {
201				regulator-name = "vddcamd1";
202				regulator-min-microvolt = <1000000>;
203				regulator-max-microvolt = <1793750>;
204				regulator-enable-ramp-delay = <100>;
205				regulator-ramp-delay = <25000>;
206			};
207
208			vddcon: LDO_CON {
209				regulator-name = "vddcon";
210				regulator-min-microvolt = <1000000>;
211				regulator-max-microvolt = <1793750>;
212				regulator-enable-ramp-delay = <100>;
213				regulator-ramp-delay = <25000>;
214			};
215
216			vddcamio: LDO_CAMIO {
217				regulator-name = "vddcamio";
218				regulator-min-microvolt = <1000000>;
219				regulator-max-microvolt = <1793750>;
220				regulator-enable-ramp-delay = <100>;
221				regulator-ramp-delay = <25000>;
222			};
223
224			vddsram: LDO_SRAM {
225				regulator-name = "vddsram";
226				regulator-min-microvolt = <1000000>;
227				regulator-max-microvolt = <1793750>;
228				regulator-enable-ramp-delay = <100>;
229				regulator-ramp-delay = <25000>;
230				regulator-always-on;
231			};
232		};
233	};
234};
235