1 // SPDX-License-Identifier: GPL-2.0-only
2 // Copyright (C) 2020 Stephan Gerhold
3
4 /dts-v1/;
5
6 #include "msm8916-pm8916.dtsi"
7 #include <dt-bindings/gpio/gpio.h>
8 #include <dt-bindings/input/input.h>
9 #include <dt-bindings/leds/common.h>
10
11 / {
12 model = "Xiaomi Redmi 2 (Wingtech WT88047)";
13 compatible = "wingtech,wt88047", "qcom,msm8916";
14 chassis-type = "handset";
15
16 aliases {
17 serial0 = &blsp1_uart2;
18 };
19
20 chosen {
21 stdout-path = "serial0";
22 };
23
24 gpio-keys {
25 compatible = "gpio-keys";
26
27 pinctrl-names = "default";
28 pinctrl-0 = <&gpio_keys_default>;
29
30 label = "GPIO Buttons";
31
32 button-volume-up {
33 label = "Volume Up";
34 gpios = <&msmgpio 107 GPIO_ACTIVE_LOW>;
35 linux,code = <KEY_VOLUMEUP>;
36 };
37 };
38
39 usb_id: usb-id {
40 compatible = "linux,extcon-usb-gpio";
41 id-gpio = <&msmgpio 110 GPIO_ACTIVE_HIGH>;
42 pinctrl-names = "default";
43 pinctrl-0 = <&usb_id_default>;
44 };
45 };
46
47 &blsp_i2c2 {
48 status = "okay";
49
50 imu@68 {
51 compatible = "invensense,mpu6880";
52 reg = <0x68>;
53
54 interrupt-parent = <&msmgpio>;
55 interrupts = <115 IRQ_TYPE_EDGE_RISING>;
56
57 vdd-supply = <&pm8916_l17>;
58 vddio-supply = <&pm8916_l6>;
59
60 pinctrl-names = "default";
61 pinctrl-0 = <&imu_default>;
62
63 mount-matrix = "1", "0", "0",
64 "0", "-1", "0",
65 "0", "0", "1";
66 };
67 };
68
69 &blsp_i2c5 {
70 status = "okay";
71
72 touchscreen@38 {
73 /* Likely some other model but works just fine with this one */
74 compatible = "edt,edt-ft5506";
75 reg = <0x38>;
76
77 interrupt-parent = <&msmgpio>;
78 interrupts = <13 IRQ_TYPE_EDGE_FALLING>;
79
80 reset-gpios = <&msmgpio 12 GPIO_ACTIVE_LOW>;
81
82 vcc-supply = <&pm8916_l17>;
83 iovcc-supply = <&pm8916_l6>;
84
85 touchscreen-size-x = <720>;
86 touchscreen-size-y = <1280>;
87
88 pinctrl-names = "default";
89 pinctrl-0 = <&touchscreen_default>;
90 };
91 };
92
93 &blsp_i2c6 {
94 status = "okay";
95
96 led-controller@45 {
97 compatible = "awinic,aw2013";
98 reg = <0x45>;
99 #address-cells = <1>;
100 #size-cells = <0>;
101
102 vcc-supply = <&pm8916_l16>;
103
104 led@0 {
105 reg = <0>;
106 led-max-microamp = <15000>;
107 function = LED_FUNCTION_INDICATOR;
108 color = <LED_COLOR_ID_RED>;
109 };
110
111 led@1 {
112 reg = <1>;
113 led-max-microamp = <15000>;
114 function = LED_FUNCTION_INDICATOR;
115 color = <LED_COLOR_ID_GREEN>;
116 };
117
118 led@2 {
119 reg = <2>;
120 led-max-microamp = <15000>;
121 function = LED_FUNCTION_INDICATOR;
122 color = <LED_COLOR_ID_BLUE>;
123 };
124 };
125 };
126
127 &blsp1_uart2 {
128 status = "okay";
129 };
130
131 &pm8916_resin {
132 status = "okay";
133 linux,code = <KEY_VOLUMEDOWN>;
134 };
135
136 &pm8916_vib {
137 status = "okay";
138 };
139
140 &pronto {
141 status = "okay";
142 };
143
144 &sdhc_1 {
145 status = "okay";
146
147 pinctrl-names = "default", "sleep";
148 pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>;
149 pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>;
150 };
151
152 &sdhc_2 {
153 status = "okay";
154
155 pinctrl-names = "default", "sleep";
156 pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on>;
157 pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off>;
158
159 non-removable;
160 };
161
162 &usb {
163 status = "okay";
164 extcon = <&usb_id>, <&usb_id>;
165 };
166
167 &usb_hs_phy {
168 extcon = <&usb_id>;
169 };
170
171 &smd_rpm_regulators {
172 vdd_l1_l2_l3-supply = <&pm8916_s3>;
173 vdd_l4_l5_l6-supply = <&pm8916_s4>;
174 vdd_l7-supply = <&pm8916_s4>;
175
176 s3 {
177 regulator-min-microvolt = <1200000>;
178 regulator-max-microvolt = <1300000>;
179 };
180
181 s4 {
182 regulator-min-microvolt = <1800000>;
183 regulator-max-microvolt = <2100000>;
184 };
185
186 l1 {
187 regulator-min-microvolt = <1225000>;
188 regulator-max-microvolt = <1225000>;
189 };
190
191 l2 {
192 regulator-min-microvolt = <1200000>;
193 regulator-max-microvolt = <1200000>;
194 };
195
196 l4 {
197 regulator-min-microvolt = <2050000>;
198 regulator-max-microvolt = <2050000>;
199 };
200
201 l5 {
202 regulator-min-microvolt = <1800000>;
203 regulator-max-microvolt = <1800000>;
204 };
205
206 l6 {
207 regulator-min-microvolt = <1800000>;
208 regulator-max-microvolt = <1800000>;
209 };
210
211 l7 {
212 regulator-min-microvolt = <1800000>;
213 regulator-max-microvolt = <1800000>;
214 };
215
216 l8 {
217 regulator-min-microvolt = <2850000>;
218 regulator-max-microvolt = <2900000>;
219 };
220
221 l9 {
222 regulator-min-microvolt = <3300000>;
223 regulator-max-microvolt = <3300000>;
224 };
225
226 l10 {
227 regulator-min-microvolt = <2700000>;
228 regulator-max-microvolt = <2800000>;
229 };
230
231 l11 {
232 regulator-min-microvolt = <2950000>;
233 regulator-max-microvolt = <2950000>;
234 regulator-allow-set-load;
235 regulator-system-load = <200000>;
236 };
237
238 l12 {
239 regulator-min-microvolt = <1800000>;
240 regulator-max-microvolt = <2950000>;
241 };
242
243 l13 {
244 regulator-min-microvolt = <3075000>;
245 regulator-max-microvolt = <3075000>;
246 };
247
248 l14 {
249 regulator-min-microvolt = <1800000>;
250 regulator-max-microvolt = <3300000>;
251 };
252
253 l15 {
254 regulator-min-microvolt = <1800000>;
255 regulator-max-microvolt = <3300000>;
256 };
257
258 l16 {
259 regulator-min-microvolt = <2800000>;
260 regulator-max-microvolt = <3300000>;
261 };
262
263 l17 {
264 regulator-min-microvolt = <2850000>;
265 regulator-max-microvolt = <2850000>;
266 };
267
268 l18 {
269 regulator-min-microvolt = <2700000>;
270 regulator-max-microvolt = <2700000>;
271 };
272 };
273
274 &msmgpio {
275 gpio_keys_default: gpio-keys-default {
276 pins = "gpio107";
277 function = "gpio";
278
279 drive-strength = <2>;
280 bias-pull-up;
281 };
282
283 imu_default: imu-default {
284 pins = "gpio115";
285 function = "gpio";
286
287 drive-strength = <2>;
288 bias-disable;
289 };
290
291 touchscreen_default: touchscreen-default {
292 pins = "gpio13";
293 function = "gpio";
294
295 drive-strength = <2>;
296 bias-pull-up;
297
298 reset {
299 pins = "gpio12";
300 function = "gpio";
301
302 drive-strength = <2>;
303 bias-disable;
304 };
305 };
306
307 usb_id_default: usb-id-default {
308 pins = "gpio110";
309 function = "gpio";
310
311 drive-strength = <8>;
312 bias-pull-up;
313 };
314 };
Cache object: 36c96519465436114502dbca7c99e254
|