Skip to content

Commit 2b01dda

Browse files
Rudraksha Guptaandersson
authored andcommitted
ARM: dts: qcom: Add Samsung Galaxy Express support
Add a very basic device tree file for the Samsung Galaxy Express SGH-I437. Currently, the following things work: UART, eMMC, SD Card, and USB. Signed-off-by: Rudraksha Gupta <guptarud@gmail.com> Signed-off-by: Bjorn Andersson <andersson@kernel.org> Link: https://lore.kernel.org/r/20230607050025.86636-5-guptarud@gmail.com
1 parent 80ce22e commit 2b01dda

2 files changed

Lines changed: 332 additions & 0 deletions

File tree

arch/arm/boot/dts/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1081,6 +1081,7 @@ dtb-$(CONFIG_ARCH_QCOM) += \
10811081
qcom-msm8916-samsung-grandmax.dtb \
10821082
qcom-msm8916-samsung-serranove.dtb \
10831083
qcom-msm8960-cdp.dtb \
1084+
qcom-msm8960-samsung-expressatt.dtb \
10841085
qcom-msm8974-lge-nexus5-hammerhead.dtb \
10851086
qcom-msm8974-sony-xperia-rhine-amami.dtb \
10861087
qcom-msm8974-sony-xperia-rhine-honami.dtb \
Lines changed: 331 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,331 @@
1+
// SPDX-License-Identifier: GPL-2.0
2+
#include <dt-bindings/input/input.h>
3+
4+
#include "qcom-msm8960.dtsi"
5+
#include <dt-bindings/reset/qcom,gcc-msm8960.h>
6+
7+
/ {
8+
model = "Samsung Galaxy Express SGH-I437";
9+
compatible = "samsung,expressatt", "qcom,msm8960";
10+
chassis-type = "handset";
11+
12+
aliases {
13+
serial0 = &gsbi5_serial;
14+
mmc0 = &sdcc1; /* SDCC1 eMMC slot */
15+
mmc1 = &sdcc3; /* SDCC3 SD card slot */
16+
};
17+
18+
chosen {
19+
stdout-path = "serial0:115200n8";
20+
};
21+
};
22+
23+
&gsbi5 {
24+
qcom,mode = <GSBI_PROT_I2C_UART>;
25+
status = "okay";
26+
};
27+
28+
&gsbi5_serial {
29+
status = "okay";
30+
};
31+
32+
&sdcc1 {
33+
vmmc-supply = <&pm8921_l5>;
34+
status = "okay";
35+
};
36+
37+
&sdcc3 {
38+
vmmc-supply = <&pm8921_l6>;
39+
vqmmc-supply = <&pm8921_l7>;
40+
status = "okay";
41+
};
42+
43+
&gsbi1 {
44+
qcom,mode = <GSBI_PROT_SPI>;
45+
pinctrl-0 = <&spi1_default>;
46+
pinctrl-names = "default";
47+
status = "okay";
48+
};
49+
50+
&gsbi1_spi {
51+
status = "okay";
52+
};
53+
54+
&msmgpio {
55+
spi1_default: spi1-default-state {
56+
mosi-pins {
57+
pins = "gpio6";
58+
function = "gsbi1";
59+
drive-strength = <12>;
60+
bias-disable;
61+
};
62+
63+
miso-pins {
64+
pins = "gpio7";
65+
function = "gsbi1";
66+
drive-strength = <12>;
67+
bias-disable;
68+
};
69+
70+
cs-pins {
71+
pins = "gpio8";
72+
function = "gsbi1";
73+
drive-strength = <12>;
74+
bias-disable;
75+
output-low;
76+
};
77+
78+
clk-pins {
79+
pins = "gpio9";
80+
function = "gsbi1";
81+
drive-strength = <12>;
82+
bias-disable;
83+
};
84+
};
85+
};
86+
87+
&rpm {
88+
regulators {
89+
compatible = "qcom,rpm-pm8921-regulators";
90+
vin_lvs1_3_6-supply = <&pm8921_s4>;
91+
vin_lvs2-supply = <&pm8921_s4>;
92+
vin_lvs4_5_7-supply = <&pm8921_s4>;
93+
vdd_ncp-supply = <&pm8921_l6>;
94+
vdd_l1_l2_l12_l18-supply = <&pm8921_s4>;
95+
vdd_l21_l23_l29-supply = <&pm8921_s8>;
96+
vdd_l24-supply = <&pm8921_s1>;
97+
vdd_l25-supply = <&pm8921_s1>;
98+
vdd_l27-supply = <&pm8921_s7>;
99+
vdd_l28-supply = <&pm8921_s7>;
100+
101+
/* Buck SMPS */
102+
pm8921_s1: s1 {
103+
regulator-always-on;
104+
regulator-min-microvolt = <1225000>;
105+
regulator-max-microvolt = <1225000>;
106+
qcom,switch-mode-frequency = <3200000>;
107+
bias-pull-down;
108+
};
109+
110+
pm8921_s2: s2 {
111+
regulator-min-microvolt = <1300000>;
112+
regulator-max-microvolt = <1300000>;
113+
qcom,switch-mode-frequency = <1600000>;
114+
bias-pull-down;
115+
};
116+
117+
pm8921_s3: s3 {
118+
regulator-min-microvolt = <500000>;
119+
regulator-max-microvolt = <1150000>;
120+
qcom,switch-mode-frequency = <4800000>;
121+
bias-pull-down;
122+
};
123+
124+
pm8921_s4: s4 {
125+
regulator-always-on;
126+
regulator-min-microvolt = <1800000>;
127+
regulator-max-microvolt = <1800000>;
128+
qcom,switch-mode-frequency = <1600000>;
129+
bias-pull-down;
130+
qcom,force-mode = <QCOM_RPM_FORCE_MODE_AUTO>;
131+
};
132+
133+
pm8921_s7: s7 {
134+
regulator-min-microvolt = <1150000>;
135+
regulator-max-microvolt = <1150000>;
136+
qcom,switch-mode-frequency = <3200000>;
137+
bias-pull-down;
138+
};
139+
140+
pm8921_s8: s8 {
141+
regulator-always-on;
142+
regulator-min-microvolt = <2050000>;
143+
regulator-max-microvolt = <2050000>;
144+
qcom,switch-mode-frequency = <1600000>;
145+
bias-pull-down;
146+
};
147+
148+
/* PMOS LDO */
149+
pm8921_l1: l1 {
150+
regulator-always-on;
151+
regulator-min-microvolt = <1050000>;
152+
regulator-max-microvolt = <1050000>;
153+
bias-pull-down;
154+
};
155+
156+
pm8921_l2: l2 {
157+
regulator-min-microvolt = <1200000>;
158+
regulator-max-microvolt = <1200000>;
159+
bias-pull-down;
160+
};
161+
162+
pm8921_l3: l3 {
163+
regulator-min-microvolt = <3075000>;
164+
regulator-max-microvolt = <3300000>;
165+
bias-pull-down;
166+
};
167+
168+
pm8921_l4: l4 {
169+
regulator-always-on;
170+
regulator-min-microvolt = <1800000>;
171+
regulator-max-microvolt = <1800000>;
172+
bias-pull-down;
173+
};
174+
175+
pm8921_l5: l5 {
176+
regulator-min-microvolt = <2950000>;
177+
regulator-max-microvolt = <2950000>;
178+
bias-pull-down;
179+
};
180+
181+
pm8921_l6: l6 {
182+
regulator-min-microvolt = <2950000>;
183+
regulator-max-microvolt = <2950000>;
184+
bias-pull-down;
185+
};
186+
187+
pm8921_l7: l7 {
188+
regulator-always-on;
189+
regulator-min-microvolt = <1850000>;
190+
regulator-max-microvolt = <2950000>;
191+
bias-pull-down;
192+
};
193+
194+
pm8921_l8: l8 {
195+
regulator-min-microvolt = <3000000>;
196+
regulator-max-microvolt = <3100000>;
197+
bias-pull-down;
198+
};
199+
200+
pm8921_l9: l9 {
201+
regulator-min-microvolt = <2850000>;
202+
regulator-max-microvolt = <2850000>;
203+
bias-pull-down;
204+
};
205+
206+
pm8921_l10: l10 {
207+
regulator-min-microvolt = <3000000>;
208+
regulator-max-microvolt = <3000000>;
209+
bias-pull-down;
210+
};
211+
212+
pm8921_l11: l11 {
213+
regulator-min-microvolt = <2800000>;
214+
regulator-max-microvolt = <3300000>;
215+
bias-pull-down;
216+
};
217+
218+
pm8921_l12: l12 {
219+
regulator-min-microvolt = <1200000>;
220+
regulator-max-microvolt = <1200000>;
221+
bias-pull-down;
222+
};
223+
224+
pm8921_l14: l14 {
225+
regulator-min-microvolt = <1800000>;
226+
regulator-max-microvolt = <1800000>;
227+
bias-pull-down;
228+
};
229+
230+
pm8921_l15: l15 {
231+
regulator-min-microvolt = <1800000>;
232+
regulator-max-microvolt = <2950000>;
233+
bias-pull-down;
234+
};
235+
236+
pm8921_l16: l16 {
237+
regulator-min-microvolt = <2800000>;
238+
regulator-max-microvolt = <3000000>;
239+
bias-pull-down;
240+
};
241+
242+
pm8921_l17: l17 {
243+
regulator-min-microvolt = <1800000>;
244+
regulator-max-microvolt = <3300000>;
245+
bias-pull-down;
246+
};
247+
248+
pm8921_l18: l18 {
249+
regulator-min-microvolt = <1200000>;
250+
regulator-max-microvolt = <1500000>;
251+
bias-pull-down;
252+
};
253+
254+
pm8921_l21: l21 {
255+
regulator-min-microvolt = <1900000>;
256+
regulator-max-microvolt = <1900000>;
257+
bias-pull-down;
258+
};
259+
260+
pm8921_l22: l22 {
261+
regulator-min-microvolt = <2750000>;
262+
regulator-max-microvolt = <2750000>;
263+
bias-pull-down;
264+
};
265+
266+
pm8921_l23: l23 {
267+
regulator-always-on;
268+
regulator-min-microvolt = <1800000>;
269+
regulator-max-microvolt = <1800000>;
270+
bias-pull-down;
271+
};
272+
273+
pm8921_l24: l24 {
274+
regulator-min-microvolt = <750000>;
275+
regulator-max-microvolt = <1150000>;
276+
bias-pull-down;
277+
};
278+
279+
pm8921_l25: l25 {
280+
regulator-always-on;
281+
regulator-min-microvolt = <1225000>;
282+
regulator-max-microvolt = <1225000>;
283+
bias-pull-down;
284+
};
285+
286+
/* Low Voltage Switch */
287+
pm8921_lvs1: lvs1 {
288+
bias-pull-down;
289+
};
290+
291+
pm8921_lvs2: lvs2 {
292+
bias-pull-down;
293+
};
294+
295+
pm8921_lvs3: lvs3 {
296+
bias-pull-down;
297+
};
298+
299+
pm8921_lvs4: lvs4 {
300+
bias-pull-down;
301+
};
302+
303+
pm8921_lvs5: lvs5 {
304+
bias-pull-down;
305+
};
306+
307+
pm8921_lvs6: lvs6 {
308+
bias-pull-down;
309+
};
310+
311+
pm8921_lvs7: lvs7 {
312+
bias-pull-down;
313+
};
314+
315+
pm8921_ncp: ncp {
316+
regulator-min-microvolt = <1800000>;
317+
regulator-max-microvolt = <1800000>;
318+
qcom,switch-mode-frequency = <1600000>;
319+
};
320+
};
321+
};
322+
323+
&usb_hs1_phy {
324+
v3p3-supply = <&pm8921_l3>;
325+
v1p8-supply = <&pm8921_l4>;
326+
};
327+
328+
&usb1 {
329+
dr_mode = "otg";
330+
status = "okay";
331+
};

0 commit comments

Comments
 (0)