Linux 5.6.13
[linux/fpc-iii.git] / arch / arm / boot / dts / qcom-msm8974-fairphone-fp2.dts
blobd2d48770ec0fac6d7563f2767345dba81e3a878e
1 #include "qcom-msm8974.dtsi"
2 #include "qcom-pm8841.dtsi"
3 #include "qcom-pm8941.dtsi"
4 #include <dt-bindings/gpio/gpio.h>
5 #include <dt-bindings/input/input.h>
6 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
9 / {
10         model = "Fairphone 2";
11         compatible = "fairphone,fp2", "qcom,msm8974";
13         aliases {
14                 serial0 = &blsp1_uart2;
15         };
17         chosen {
18                 stdout-path = "serial0:115200n8";
19         };
21         gpio-keys {
22                 compatible = "gpio-keys";
23                 input-name = "gpio-keys";
25                 pinctrl-names = "default";
26                 pinctrl-0 = <&gpio_keys_pin_a>;
28                 camera-snapshot {
29                         label = "camera_snapshot";
30                         gpios = <&pm8941_gpios 1 GPIO_ACTIVE_LOW>;
31                         linux,code = <KEY_CAMERA>;
32                         wakeup-source;
33                         debounce-interval = <15>;
34                 };
36                 volume-down {
37                         label = "volume_down";
38                         gpios = <&pm8941_gpios 2 GPIO_ACTIVE_LOW>;
39                         linux,code = <KEY_VOLUMEDOWN>;
40                         wakeup-source;
41                         debounce-interval = <15>;
42                 };
44                 volume-up {
45                         label = "volume_up";
46                         gpios = <&pm8941_gpios 5 GPIO_ACTIVE_LOW>;
47                         linux,code = <KEY_VOLUMEUP>;
48                         wakeup-source;
49                         debounce-interval = <15>;
50                 };
51         };
53         vibrator {
54                 compatible = "gpio-vibrator";
55                 enable-gpios = <&msmgpio 86 GPIO_ACTIVE_HIGH>;
56                 vcc-supply = <&pm8941_l18>;
57         };
59         smd {
60                 rpm {
61                         rpm_requests {
62                                 pm8841-regulators {
63                                         s1 {
64                                                 regulator-min-microvolt = <675000>;
65                                                 regulator-max-microvolt = <1050000>;
66                                         };
68                                         s2 {
69                                                 regulator-min-microvolt = <500000>;
70                                                 regulator-max-microvolt = <1050000>;
71                                         };
73                                         s3 {
74                                                 regulator-min-microvolt = <1050000>;
75                                                 regulator-max-microvolt = <1050000>;
76                                         };
77                                 };
79                                 pm8941-regulators {
80                                         vdd_l1_l3-supply = <&pm8941_s1>;
81                                         vdd_l2_lvs1_2_3-supply = <&pm8941_s3>;
82                                         vdd_l4_l11-supply = <&pm8941_s1>;
83                                         vdd_l5_l7-supply = <&pm8941_s2>;
84                                         vdd_l6_l12_l14_l15-supply = <&pm8941_s2>;
85                                         vdd_l9_l10_l17_l22-supply = <&vreg_boost>;
86                                         vdd_l13_l20_l23_l24-supply = <&vreg_boost>;
87                                         vdd_l21-supply = <&vreg_boost>;
89                                         s1 {
90                                                 regulator-min-microvolt = <1300000>;
91                                                 regulator-max-microvolt = <1300000>;
93                                                 regulator-always-on;
94                                                 regulator-boot-on;
95                                         };
97                                         s2 {
98                                                 regulator-min-microvolt = <2150000>;
99                                                 regulator-max-microvolt = <2150000>;
101                                                 regulator-boot-on;
102                                         };
104                                         s3 {
105                                                 regulator-min-microvolt = <1800000>;
106                                                 regulator-max-microvolt = <1800000>;
108                                                 regulator-always-on;
109                                                 regulator-boot-on;
110                                         };
112                                         l1 {
113                                                 regulator-min-microvolt = <1225000>;
114                                                 regulator-max-microvolt = <1225000>;
116                                                 regulator-always-on;
117                                                 regulator-boot-on;
118                                         };
120                                         l2 {
121                                                 regulator-min-microvolt = <1200000>;
122                                                 regulator-max-microvolt = <1200000>;
123                                         };
125                                         l3 {
126                                                 regulator-min-microvolt = <1225000>;
127                                                 regulator-max-microvolt = <1225000>;
128                                         };
130                                         l4 {
131                                                 regulator-min-microvolt = <1225000>;
132                                                 regulator-max-microvolt = <1225000>;
133                                         };
135                                         l5 {
136                                                 regulator-min-microvolt = <1800000>;
137                                                 regulator-max-microvolt = <1800000>;
138                                         };
140                                         l6 {
141                                                 regulator-min-microvolt = <1800000>;
142                                                 regulator-max-microvolt = <1800000>;
144                                                 regulator-boot-on;
145                                         };
147                                         l7 {
148                                                 regulator-min-microvolt = <1800000>;
149                                                 regulator-max-microvolt = <1800000>;
151                                                 regulator-boot-on;
152                                         };
154                                         l8 {
155                                                 regulator-min-microvolt = <1800000>;
156                                                 regulator-max-microvolt = <1800000>;
157                                         };
159                                         l9 {
160                                                 regulator-min-microvolt = <1800000>;
161                                                 regulator-max-microvolt = <2950000>;
162                                         };
164                                         l10 {
165                                                 regulator-min-microvolt = <1800000>;
166                                                 regulator-max-microvolt = <2950000>;
167                                         };
169                                         l11 {
170                                                 regulator-min-microvolt = <1225000>;
171                                                 regulator-max-microvolt = <1350000>;
172                                         };
174                                         l12 {
175                                                 regulator-min-microvolt = <1800000>;
176                                                 regulator-max-microvolt = <1800000>;
178                                                 regulator-always-on;
179                                                 regulator-boot-on;
180                                         };
182                                         l13 {
183                                                 regulator-min-microvolt = <1800000>;
184                                                 regulator-max-microvolt = <2950000>;
186                                                 regulator-boot-on;
187                                         };
189                                         l14 {
190                                                 regulator-min-microvolt = <1800000>;
191                                                 regulator-max-microvolt = <1800000>;
192                                         };
194                                         l15 {
195                                                 regulator-min-microvolt = <2050000>;
196                                                 regulator-max-microvolt = <2050000>;
197                                         };
199                                         l16 {
200                                                 regulator-min-microvolt = <2700000>;
201                                                 regulator-max-microvolt = <2700000>;
202                                         };
204                                         l17 {
205                                                 regulator-min-microvolt = <2850000>;
206                                                 regulator-max-microvolt = <2850000>;
207                                         };
209                                         l18 {
210                                                 regulator-min-microvolt = <2850000>;
211                                                 regulator-max-microvolt = <2850000>;
212                                         };
214                                         l19 {
215                                                 regulator-min-microvolt = <2900000>;
216                                                 regulator-max-microvolt = <3350000>;
217                                         };
219                                         l20 {
220                                                 regulator-min-microvolt = <2950000>;
221                                                 regulator-max-microvolt = <2950000>;
223                                                 regulator-boot-on;
224                                                 regulator-system-load = <200000>;
225                                                 regulator-allow-set-load;
226                                         };
228                                         l21 {
229                                                 regulator-min-microvolt = <2950000>;
230                                                 regulator-max-microvolt = <2950000>;
232                                                 regulator-boot-on;
233                                         };
235                                         l22 {
236                                                 regulator-min-microvolt = <3000000>;
237                                                 regulator-max-microvolt = <3300000>;
238                                         };
240                                         l23 {
241                                                 regulator-min-microvolt = <3000000>;
242                                                 regulator-max-microvolt = <3000000>;
243                                         };
245                                         l24 {
246                                                 regulator-min-microvolt = <3075000>;
247                                                 regulator-max-microvolt = <3075000>;
249                                                 regulator-boot-on;
250                                         };
251                                 };
252                         };
253                 };
254         };
257 &soc {
258         serial@f991e000 {
259                 status = "ok";
260         };
262         remoteproc@fb21b000 {
263                 status = "ok";
265                 vddmx-supply = <&pm8841_s1>;
266                 vddcx-supply = <&pm8841_s2>;
268                 pinctrl-names = "default";
269                 pinctrl-0 = <&wcnss_pin_a>;
271                 smd-edge {
272                         qcom,remote-pid = <4>;
273                         label = "pronto";
275                         wcnss {
276                                 status = "ok";
277                         };
278                 };
279         };
281         pinctrl@fd510000 {
282                 sdhc1_pin_a: sdhc1-pin-active {
283                         clk {
284                                 pins = "sdc1_clk";
285                                 drive-strength = <16>;
286                                 bias-disable;
287                         };
289                         cmd-data {
290                                 pins = "sdc1_cmd", "sdc1_data";
291                                 drive-strength = <10>;
292                                 bias-pull-up;
293                         };
294                 };
296                 sdhc2_pin_a: sdhc2-pin-active {
297                         clk {
298                                 pins = "sdc2_clk";
299                                 drive-strength = <10>;
300                                 bias-disable;
301                         };
303                         cmd-data {
304                                 pins = "sdc2_cmd", "sdc2_data";
305                                 drive-strength = <6>;
306                                 bias-pull-up;
307                         };
308                 };
310                 wcnss_pin_a: wcnss-pin-active {
311                         wlan {
312                                 pins =  "gpio36", "gpio37", "gpio38", "gpio39", "gpio40";
313                                 function = "wlan";
315                                 drive-strength = <6>;
316                                 bias-pull-down;
317                         };
319                         bt {
320                                 pins = "gpio35", "gpio43", "gpio44";
321                                 function = "bt";
323                                 drive-strength = <2>;
324                                 bias-pull-down;
325                         };
327                         fm {
328                                 pins = "gpio41", "gpio42";
329                                 function = "fm";
331                                 drive-strength = <2>;
332                                 bias-pull-down;
333                         };
334                 };
335         };
337         sdhci@f9824900 {
338                 status = "ok";
340                 vmmc-supply = <&pm8941_l20>;
341                 vqmmc-supply = <&pm8941_s3>;
343                 bus-width = <8>;
344                 non-removable;
346                 pinctrl-names = "default";
347                 pinctrl-0 = <&sdhc1_pin_a>;
348         };
350         sdhci@f98a4900 {
351                 status = "ok";
353                 vmmc-supply = <&pm8941_l21>;
354                 vqmmc-supply = <&pm8941_l13>;
356                 bus-width = <4>;
358                 pinctrl-names = "default";
359                 pinctrl-0 = <&sdhc2_pin_a>;
360         };
362         usb@f9a55000 {
363                 status = "ok";
365                 phys = <&usb_hs1_phy>;
366                 phy-select = <&tcsr 0xb000 0>;
367                 extcon = <&smbb>, <&usb_id>;
368                 vbus-supply = <&chg_otg>;
370                 hnp-disable;
371                 srp-disable;
372                 adp-disable;
374                 ulpi {
375                         phy@a {
376                                 status = "ok";
378                                 v1p8-supply = <&pm8941_l6>;
379                                 v3p3-supply = <&pm8941_l24>;
381                                 extcon = <&smbb>;
382                                 qcom,init-seq = /bits/ 8 <0x1 0x64>;
383                         };
384                 };
385         };
387         imem@fe805000 {
388                 status = "okay";
390                 reboot-mode {
391                         mode-normal     = <0x77665501>;
392                         mode-bootloader = <0x77665500>;
393                         mode-recovery   = <0x77665502>;
394                 };
395         };
398 &spmi_bus {
399         pm8941@0 {
400                 gpios@c000 {
401                         gpio_keys_pin_a: gpio-keys-active {
402                                 pins = "gpio1", "gpio2", "gpio5";
403                                 function = "normal";
405                                 bias-pull-up;
406                                 power-source = <PM8941_GPIO_S3>;
407                         };
408                 };
409         };