Merge tag 'driver-core-5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-block.git] / arch / arm64 / boot / dts / qcom / msm8916-asus-z00l.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 #include <dt-bindings/interrupt-controller/irq.h>
9
10 / {
11         model = "Asus Zenfone 2 Laser";
12         compatible = "asus,z00l", "qcom,msm8916";
13         chassis-type = "handset";
14
15         aliases {
16                 serial0 = &blsp1_uart2;
17         };
18
19         chosen {
20                 stdout-path = "serial0";
21         };
22
23         gpio-keys {
24                 compatible = "gpio-keys";
25
26                 pinctrl-names = "default";
27                 pinctrl-0 = <&gpio_keys_default>;
28
29                 label = "GPIO Buttons";
30
31                 volume-up {
32                         label = "Volume Up";
33                         gpios = <&msmgpio 107 GPIO_ACTIVE_LOW>;
34                         linux,code = <KEY_VOLUMEUP>;
35                         debounce-interval = <15>;
36                 };
37
38                 volume-down {
39                         label = "Volume Down";
40                         gpios = <&msmgpio 117 GPIO_ACTIVE_LOW>;
41                         linux,code = <KEY_VOLUMEDOWN>;
42                         debounce-interval = <15>;
43                 };
44         };
45
46         reg_sd_vmmc: regulator-sdcard-vmmc {
47                 compatible = "regulator-fixed";
48                 regulator-name = "sdcard-vmmc";
49                 regulator-min-microvolt = <2950000>;
50                 regulator-max-microvolt = <2950000>;
51
52                 gpio = <&msmgpio 87 GPIO_ACTIVE_HIGH>;
53                 enable-active-high;
54
55                 startup-delay-us = <200>;
56
57                 pinctrl-names = "default";
58                 pinctrl-0 = <&sd_vmmc_en_default>;
59         };
60
61         usb_id: usb-id {
62                 compatible = "linux,extcon-usb-gpio";
63                 id-gpios = <&msmgpio 110 GPIO_ACTIVE_HIGH>;
64                 pinctrl-names = "default";
65                 pinctrl-0 = <&usb_id_default>;
66         };
67 };
68
69 &blsp_i2c2 {
70         status = "okay";
71
72         magnetometer@c {
73                 compatible = "asahi-kasei,ak09911";
74                 reg = <0x0c>;
75
76                 vdd-supply = <&pm8916_l8>;
77                 vid-supply = <&pm8916_l6>;
78
79                 reset-gpios = <&msmgpio 112 GPIO_ACTIVE_LOW>;
80
81                 pinctrl-names = "default";
82                 pinctrl-0 = <&mag_reset_default>;
83         };
84
85         imu@68 {
86                 compatible = "invensense,mpu6515";
87                 reg = <0x68>;
88
89                 interrupt-parent = <&msmgpio>;
90                 interrupts = <36 IRQ_TYPE_EDGE_RISING>;
91
92                 vdd-supply = <&pm8916_l17>;
93                 vddio-supply = <&pm8916_l6>;
94
95                 pinctrl-names = "default";
96                 pinctrl-0 = <&imu_default>;
97
98                 mount-matrix = "1",  "0", "0",
99                                "0", "-1", "0",
100                                "0",  "0", "1";
101         };
102 };
103
104 &blsp_i2c5 {
105         status = "okay";
106
107         touchscreen@38 {
108                 compatible = "edt,edt-ft5306";
109                 reg = <0x38>;
110
111                 interrupt-parent = <&msmgpio>;
112                 interrupts = <13 IRQ_TYPE_EDGE_FALLING>;
113
114                 reset-gpios = <&msmgpio 12 GPIO_ACTIVE_LOW>;
115
116                 vcc-supply = <&pm8916_l11>;
117                 iovcc-supply = <&pm8916_l6>;
118
119                 touchscreen-size-x = <720>;
120                 touchscreen-size-y = <1280>;
121
122                 pinctrl-names = "default";
123                 pinctrl-0 = <&touchscreen_default>;
124         };
125 };
126
127 &blsp1_uart2 {
128         status = "okay";
129 };
130
131 &pronto {
132         status = "okay";
133 };
134
135 &sdhc_1 {
136         status = "okay";
137
138         pinctrl-names = "default", "sleep";
139         pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>;
140         pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>;
141 };
142
143 &sdhc_2 {
144         status = "okay";
145         vmmc-supply = <&reg_sd_vmmc>;
146
147         pinctrl-names = "default", "sleep";
148         pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>;
149         pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>;
150         cd-gpios = <&msmgpio 38 GPIO_ACTIVE_LOW>;
151 };
152
153 &usb {
154         status = "okay";
155         extcon = <&usb_id>, <&usb_id>;
156 };
157
158 &usb_hs_phy {
159         extcon = <&usb_id>;
160 };
161
162 &smd_rpm_regulators {
163         vdd_l1_l2_l3-supply = <&pm8916_s3>;
164         vdd_l4_l5_l6-supply = <&pm8916_s4>;
165         vdd_l7-supply = <&pm8916_s4>;
166
167         s3 {
168                 regulator-min-microvolt = <1200000>;
169                 regulator-max-microvolt = <1300000>;
170         };
171
172         s4 {
173                 regulator-min-microvolt = <1800000>;
174                 regulator-max-microvolt = <2100000>;
175         };
176
177         l1 {
178                 regulator-min-microvolt = <1225000>;
179                 regulator-max-microvolt = <1225000>;
180         };
181
182         l2 {
183                 regulator-min-microvolt = <1200000>;
184                 regulator-max-microvolt = <1200000>;
185         };
186
187         l4 {
188                 regulator-min-microvolt = <2050000>;
189                 regulator-max-microvolt = <2050000>;
190         };
191
192         l5 {
193                 regulator-min-microvolt = <1800000>;
194                 regulator-max-microvolt = <1800000>;
195         };
196
197         l6 {
198                 regulator-min-microvolt = <1800000>;
199                 regulator-max-microvolt = <1800000>;
200         };
201
202         l7 {
203                 regulator-min-microvolt = <1800000>;
204                 regulator-max-microvolt = <1800000>;
205         };
206
207         l8 {
208                 regulator-min-microvolt = <2850000>;
209                 regulator-max-microvolt = <2900000>;
210         };
211
212         l9 {
213                 regulator-min-microvolt = <3300000>;
214                 regulator-max-microvolt = <3300000>;
215         };
216
217         l10 {
218                 regulator-min-microvolt = <2700000>;
219                 regulator-max-microvolt = <2800000>;
220         };
221
222         l11 {
223                 regulator-min-microvolt = <1800000>;
224                 regulator-max-microvolt = <2950000>;
225                 regulator-allow-set-load;
226                 regulator-system-load = <200000>;
227         };
228
229         l12 {
230                 regulator-min-microvolt = <1800000>;
231                 regulator-max-microvolt = <2950000>;
232         };
233
234         l13 {
235                 regulator-min-microvolt = <3075000>;
236                 regulator-max-microvolt = <3075000>;
237         };
238
239         l14 {
240                 regulator-min-microvolt = <1800000>;
241                 regulator-max-microvolt = <3300000>;
242         };
243
244         l15 {
245                 regulator-min-microvolt = <1800000>;
246                 regulator-max-microvolt = <3300000>;
247         };
248
249         l16 {
250                 regulator-min-microvolt = <1800000>;
251                 regulator-max-microvolt = <3300000>;
252         };
253
254         l17 {
255                 regulator-min-microvolt = <2850000>;
256                 regulator-max-microvolt = <2850000>;
257         };
258
259         l18 {
260                 regulator-min-microvolt = <2700000>;
261                 regulator-max-microvolt = <2700000>;
262         };
263 };
264
265 &msmgpio {
266         gpio_keys_default: gpio-keys-default {
267                 pins = "gpio107", "gpio117";
268                 function = "gpio";
269
270                 drive-strength = <2>;
271                 bias-pull-up;
272         };
273
274         imu_default: imu-default {
275                 pins = "gpio36";
276                 function = "gpio";
277
278                 drive-strength = <2>;
279                 bias-disable;
280         };
281
282         mag_reset_default: mag-reset-default {
283                 pins = "gpio112";
284                 function = "gpio";
285
286                 drive-strength = <2>;
287                 bias-disable;
288         };
289
290         sd_vmmc_en_default: sd-vmmc-en-default {
291                 pins = "gpio87";
292                 function = "gpio";
293
294                 drive-strength = <2>;
295                 bias-disable;
296         };
297
298         touchscreen_default: touchscreen-default {
299                 pins = "gpio13";
300                 function = "gpio";
301
302                 drive-strength = <2>;
303                 bias-pull-up;
304
305                 reset {
306                         pins = "gpio12";
307                         function = "gpio";
308
309                         drive-strength = <2>;
310                         bias-disable;
311                 };
312         };
313
314         usb_id_default: usb-id-default {
315                 pins = "gpio110";
316                 function = "gpio";
317
318                 drive-strength = <8>;
319                 bias-pull-up;
320         };
321 };