Merge tag 'block-5.14-2021-08-07' of git://git.kernel.dk/linux-block
[linux-2.6-microblaze.git] / arch / arm64 / boot / dts / qcom / msm8916-alcatel-idol347.dts
1 // SPDX-License-Identifier: GPL-2.0-only
2
3 /dts-v1/;
4
5 #include "msm8916-pm8916.dtsi"
6 #include <dt-bindings/gpio/gpio.h>
7 #include <dt-bindings/input/input.h>
8
9 / {
10         model = "Alcatel OneTouch Idol 3 (4.7)";
11         compatible = "alcatel,idol347", "qcom,msm8916";
12
13         aliases {
14                 serial0 = &blsp1_uart2;
15         };
16
17         chosen {
18                 stdout-path = "serial0";
19         };
20
21         gpio-keys {
22                 compatible = "gpio-keys";
23
24                 pinctrl-names = "default";
25                 pinctrl-0 = <&gpio_keys_default>;
26
27                 label = "GPIO Buttons";
28
29                 volume-up {
30                         label = "Volume Up";
31                         gpios = <&msmgpio 107 GPIO_ACTIVE_LOW>;
32                         linux,code = <KEY_VOLUMEUP>;
33                 };
34         };
35
36         usb_id: usb-id {
37                 compatible = "linux,extcon-usb-gpio";
38                 id-gpio = <&msmgpio 69 GPIO_ACTIVE_HIGH>;
39                 pinctrl-names = "default";
40                 pinctrl-0 = <&usb_id_default>;
41         };
42 };
43
44 &blsp1_uart2 {
45         status = "okay";
46 };
47
48 &blsp_i2c4 {
49         status = "okay";
50
51         touchscreen@26 {
52                 compatible = "mstar,msg2638";
53                 reg = <0x26>;
54                 interrupt-parent = <&msmgpio>;
55                 interrupts = <13 IRQ_TYPE_EDGE_FALLING>;
56                 reset-gpios = <&msmgpio 100 GPIO_ACTIVE_LOW>;
57                 pinctrl-names = "default";
58                 pinctrl-0 = <&ts_int_reset_default>;
59                 vdd-supply = <&pm8916_l17>;
60                 vddio-supply = <&pm8916_l5>;
61                 touchscreen-size-x = <2048>;
62                 touchscreen-size-y = <2048>;
63         };
64 };
65
66 &blsp_i2c5 {
67         status = "okay";
68
69         magnetometer@c {
70                 compatible = "asahi-kasei,ak09911";
71                 reg = <0x0c>;
72                 vdd-supply = <&pm8916_l17>;
73                 vid-supply = <&pm8916_l6>;
74                 reset-gpios = <&msmgpio 8 GPIO_ACTIVE_LOW>;
75                 pinctrl-names = "default";
76                 pinctrl-0 = <&mag_reset_default>;
77                 mount-matrix = "0", "1", "0",
78                                "-1", "0", "0",
79                                "0", "0", "1";
80         };
81
82         accelerometer@f {
83                 compatible = "kionix,kxtj21009";
84                 reg = <0x0f>;
85                 vdd-supply = <&pm8916_l17>;
86                 vddio-supply = <&pm8916_l6>;
87                 interrupt-parent = <&msmgpio>;
88                 interrupts = <31 IRQ_TYPE_EDGE_RISING>;
89                 pinctrl-names = "default";
90                 pinctrl-0 = <&accel_int_default>;
91                 mount-matrix = "-1", "0", "0",
92                                "0", "1", "0",
93                                "0", "0", "-1";
94         };
95
96         proximity@48 {
97                 compatible = "sensortek,stk3310";
98                 reg = <0x48>;
99                 interrupt-parent = <&msmgpio>;
100                 interrupts = <12 IRQ_TYPE_EDGE_FALLING>;
101                 pinctrl-names = "default";
102                 pinctrl-0 = <&proximity_int_default>;
103         };
104
105         gyroscope@68 {
106                 compatible = "bosch,bmg160";
107                 reg = <0x68>;
108                 vdd-supply = <&pm8916_l17>;
109                 vddio-supply = <&pm8916_l6>;
110                 interrupt-parent = <&msmgpio>;
111                 interrupts = <97 IRQ_TYPE_EDGE_RISING>,
112                              <98 IRQ_TYPE_EDGE_RISING>;
113                 pinctrl-names = "default";
114                 pinctrl-0 = <&gyro_int_default>;
115         };
116 };
117
118 &pm8916_resin {
119         status = "okay";
120         linux,code = <KEY_VOLUMEDOWN>;
121 };
122
123 &pm8916_vib {
124         status = "okay";
125 };
126
127 &pronto {
128         status = "okay";
129 };
130
131 &sdhc_1 {
132         status = "okay";
133
134         pinctrl-names = "default", "sleep";
135         pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>;
136         pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>;
137 };
138
139 &sdhc_2 {
140         status = "okay";
141
142         pinctrl-names = "default", "sleep";
143         pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>;
144         pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>;
145
146         cd-gpios = <&msmgpio 38 GPIO_ACTIVE_LOW>;
147 };
148
149 &usb {
150         status = "okay";
151         extcon = <&usb_id>, <&usb_id>;
152 };
153
154 &usb_hs_phy {
155         extcon = <&usb_id>;
156 };
157
158 &smd_rpm_regulators {
159         vdd_l1_l2_l3-supply = <&pm8916_s3>;
160         vdd_l4_l5_l6-supply = <&pm8916_s4>;
161         vdd_l7-supply = <&pm8916_s4>;
162
163         s3 {
164                 regulator-min-microvolt = <1200000>;
165                 regulator-max-microvolt = <1300000>;
166         };
167
168         s4 {
169                 regulator-min-microvolt = <1800000>;
170                 regulator-max-microvolt = <2100000>;
171         };
172
173         l1 {
174                 regulator-min-microvolt = <1225000>;
175                 regulator-max-microvolt = <1225000>;
176         };
177
178         l2 {
179                 regulator-min-microvolt = <1200000>;
180                 regulator-max-microvolt = <1200000>;
181         };
182
183         l4 {
184                 regulator-min-microvolt = <2050000>;
185                 regulator-max-microvolt = <2050000>;
186         };
187
188         l5 {
189                 regulator-min-microvolt = <1800000>;
190                 regulator-max-microvolt = <1800000>;
191         };
192
193         l6 {
194                 regulator-min-microvolt = <1800000>;
195                 regulator-max-microvolt = <1800000>;
196         };
197
198         l7 {
199                 regulator-min-microvolt = <1800000>;
200                 regulator-max-microvolt = <1800000>;
201         };
202
203         l8 {
204                 regulator-min-microvolt = <2850000>;
205                 regulator-max-microvolt = <2900000>;
206         };
207
208         l9 {
209                 regulator-min-microvolt = <3300000>;
210                 regulator-max-microvolt = <3300000>;
211         };
212
213         l10 {
214                 regulator-min-microvolt = <2700000>;
215                 regulator-max-microvolt = <2800000>;
216         };
217
218         l11 {
219                 regulator-min-microvolt = <1800000>;
220                 regulator-max-microvolt = <2950000>;
221                 regulator-allow-set-load;
222                 regulator-system-load = <200000>;
223         };
224
225         l12 {
226                 regulator-min-microvolt = <1800000>;
227                 regulator-max-microvolt = <2950000>;
228         };
229
230         l13 {
231                 regulator-min-microvolt = <3075000>;
232                 regulator-max-microvolt = <3075000>;
233         };
234
235         l14 {
236                 regulator-min-microvolt = <1800000>;
237                 regulator-max-microvolt = <3300000>;
238         };
239
240         l15 {
241                 regulator-min-microvolt = <1800000>;
242                 regulator-max-microvolt = <3300000>;
243         };
244
245         l16 {
246                 regulator-min-microvolt = <1800000>;
247                 regulator-max-microvolt = <3300000>;
248         };
249
250         l17 {
251                 regulator-min-microvolt = <2850000>;
252                 regulator-max-microvolt = <2850000>;
253         };
254
255         l18 {
256                 regulator-min-microvolt = <2700000>;
257                 regulator-max-microvolt = <2700000>;
258         };
259 };
260
261 &msmgpio {
262         accel_int_default: accel-int-default {
263                 pins = "gpio31";
264                 function = "gpio";
265
266                 drive-strength = <2>;
267                 bias-disable;
268         };
269
270         gpio_keys_default: gpio-keys-default {
271                 pins = "gpio107";
272                 function = "gpio";
273
274                 drive-strength = <2>;
275                 bias-pull-up;
276         };
277
278         gyro_int_default: gyro-int-default {
279                 pins = "gpio97", "gpio98";
280                 function = "gpio";
281
282                 drive-strength = <2>;
283                 bias-disable;
284         };
285
286         mag_reset_default: mag-reset-default {
287                 pins = "gpio8";
288                 function = "gpio";
289
290                 drive-strength = <2>;
291                 bias-disable;
292         };
293
294         proximity_int_default: proximity-int-default {
295                 pins = "gpio12";
296                 function = "gpio";
297
298                 drive-strength = <6>;
299                 bias-pull-up;
300         };
301
302         ts_int_reset_default: ts-int-reset-default {
303                 pins = "gpio13", "gpio100";
304                 function = "gpio";
305
306                 drive-strength = <2>;
307                 bias-disable;
308         };
309
310         usb_id_default: usb-id-default {
311                 pins = "gpio69";
312                 function = "gpio";
313
314                 drive-strength = <8>;
315                 bias-pull-up;
316         };
317 };