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 = <2>;
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 IRQ_TYPE_LEVEL_HIGH>;
47		};
48
49		pmic_eic: gpio@300 {
50			compatible = "sprd,sc27xx-eic";
51			reg = <0x300>;
52			interrupt-parent = <&sc2731_pmic>;
53			interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
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
68		vibrator@ec8 {
69			compatible = "sprd,sc27xx-vibrator", "sprd,sc2731-vibrator";
70			reg = <0xec8>;
71		};
72
73		regulators {
74			compatible = "sprd,sc27xx-regulator";
75
76			vddarm0: BUCK_CPU0 {
77				regulator-name = "vddarm0";
78				regulator-min-microvolt = <400000>;
79				regulator-max-microvolt = <1996875>;
80				regulator-ramp-delay = <25000>;
81				regulator-always-on;
82			};
83
84			vddarm1: BUCK_CPU1 {
85				regulator-name = "vddarm1";
86				regulator-min-microvolt = <400000>;
87				regulator-max-microvolt = <1996875>;
88				regulator-ramp-delay = <25000>;
89				regulator-always-on;
90			};
91
92			dcdcrf: BUCK_RF {
93				regulator-name = "dcdcrf";
94				regulator-min-microvolt = <600000>;
95				regulator-max-microvolt = <2196875>;
96				regulator-ramp-delay = <25000>;
97				regulator-enable-ramp-delay = <100>;
98				regulator-always-on;
99			};
100
101			vddcama0: LDO_CAMA0 {
102				regulator-name = "vddcama0";
103				regulator-min-microvolt = <1200000>;
104				regulator-max-microvolt = <3750000>;
105				regulator-enable-ramp-delay = <100>;
106			};
107
108			vddcama1: LDO_CAMA1 {
109				regulator-name = "vddcama1";
110				regulator-min-microvolt = <1200000>;
111				regulator-max-microvolt = <3750000>;
112				regulator-enable-ramp-delay = <100>;
113				regulator-ramp-delay = <25000>;
114			};
115
116			vddcammot: LDO_CAMMOT {
117				regulator-name = "vddcammot";
118				regulator-min-microvolt = <1200000>;
119				regulator-max-microvolt = <3750000>;
120				regulator-enable-ramp-delay = <100>;
121				regulator-ramp-delay = <25000>;
122			};
123
124			vddvldo: LDO_VLDO {
125				regulator-name = "vddvldo";
126				regulator-min-microvolt = <1200000>;
127				regulator-max-microvolt = <3750000>;
128				regulator-enable-ramp-delay = <100>;
129				regulator-ramp-delay = <25000>;
130			};
131
132			vddemmccore: LDO_EMMCCORE {
133				regulator-name = "vddemmccore";
134				regulator-min-microvolt = <1200000>;
135				regulator-max-microvolt = <3750000>;
136				regulator-enable-ramp-delay = <100>;
137				regulator-ramp-delay = <25000>;
138				regulator-boot-on;
139			};
140
141			vddsdcore: LDO_SDCORE {
142				regulator-name = "vddsdcore";
143				regulator-min-microvolt = <1200000>;
144				regulator-max-microvolt = <3750000>;
145				regulator-enable-ramp-delay = <100>;
146				regulator-ramp-delay = <25000>;
147			};
148
149			vddsdio: LDO_SDIO {
150				regulator-name = "vddsdio";
151				regulator-min-microvolt = <1200000>;
152				regulator-max-microvolt = <3750000>;
153				regulator-enable-ramp-delay = <100>;
154				regulator-ramp-delay = <25000>;
155			};
156
157			vddwifipa: LDO_WIFIPA {
158				regulator-name = "vddwifipa";
159				regulator-min-microvolt = <1200000>;
160				regulator-max-microvolt = <3750000>;
161				regulator-enable-ramp-delay = <100>;
162				regulator-ramp-delay = <25000>;
163			};
164
165			vddusb33: LDO_USB33 {
166				regulator-name = "vddusb33";
167				regulator-min-microvolt = <1200000>;
168				regulator-max-microvolt = <3750000>;
169				regulator-enable-ramp-delay = <100>;
170				regulator-ramp-delay = <25000>;
171			};
172
173			vddcamd0: LDO_CAMD0 {
174				regulator-name = "vddcamd0";
175				regulator-min-microvolt = <1000000>;
176				regulator-max-microvolt = <1793750>;
177				regulator-enable-ramp-delay = <100>;
178				regulator-ramp-delay = <25000>;
179			};
180
181			vddcamd1: LDO_CAMD1 {
182				regulator-name = "vddcamd1";
183				regulator-min-microvolt = <1000000>;
184				regulator-max-microvolt = <1793750>;
185				regulator-enable-ramp-delay = <100>;
186				regulator-ramp-delay = <25000>;
187			};
188
189			vddcon: LDO_CON {
190				regulator-name = "vddcon";
191				regulator-min-microvolt = <1000000>;
192				regulator-max-microvolt = <1793750>;
193				regulator-enable-ramp-delay = <100>;
194				regulator-ramp-delay = <25000>;
195			};
196
197			vddcamio: LDO_CAMIO {
198				regulator-name = "vddcamio";
199				regulator-min-microvolt = <1000000>;
200				regulator-max-microvolt = <1793750>;
201				regulator-enable-ramp-delay = <100>;
202				regulator-ramp-delay = <25000>;
203			};
204
205			vddsram: LDO_SRAM {
206				regulator-name = "vddsram";
207				regulator-min-microvolt = <1000000>;
208				regulator-max-microvolt = <1793750>;
209				regulator-enable-ramp-delay = <100>;
210				regulator-ramp-delay = <25000>;
211				regulator-always-on;
212			};
213		};
214	};
215};
216