Merge tag 'drm-misc-next-fixes-2020-05-27' of git://anongit.freedesktop.org/drm/drm...
[linux-2.6-microblaze.git] / arch / arm64 / boot / dts / freescale / imx8mq-phanbell.dts
1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
2 /*
3  * Copyright 2017-2019 NXP
4  */
5
6 /dts-v1/;
7
8 #include "imx8mq.dtsi"
9
10 / {
11         model = "Google i.MX8MQ Phanbell";
12         compatible = "google,imx8mq-phanbell", "fsl,imx8mq";
13
14         chosen {
15                 stdout-path = &uart1;
16         };
17
18         memory@40000000 {
19                 device_type = "memory";
20                 reg = <0x00000000 0x40000000 0 0x40000000>;
21         };
22
23         pmic_osc: clock-pmic {
24                 compatible = "fixed-clock";
25                 #clock-cells = <0>;
26                 clock-frequency = <32768>;
27                 clock-output-names = "pmic_osc";
28         };
29
30         reg_usdhc2_vmmc: regulator-usdhc2-vmmc {
31                 compatible = "regulator-fixed";
32                 regulator-name = "VSD_3V3";
33                 regulator-min-microvolt = <3300000>;
34                 regulator-max-microvolt = <3300000>;
35                 gpio = <&gpio2 19 GPIO_ACTIVE_HIGH>;
36                 enable-active-high;
37         };
38
39         fan: gpio-fan {
40                 compatible = "gpio-fan";
41                 gpio-fan,speed-map = <0 0 8600 1>;
42                 gpios = <&gpio3 5 GPIO_ACTIVE_HIGH>;
43                 #cooling-cells = <2>;
44                 pinctrl-names = "default";
45                 pinctrl-0 = <&pinctrl_gpio_fan>;
46                 status = "okay";
47         };
48 };
49
50 &A53_0 {
51         cpu-supply = <&buck2>;
52 };
53
54 &A53_1 {
55         cpu-supply = <&buck2>;
56 };
57
58 &A53_2 {
59         cpu-supply = <&buck2>;
60 };
61
62 &A53_3 {
63         cpu-supply = <&buck2>;
64 };
65
66 &cpu_thermal {
67         trips {
68                 cpu_alert0: trip0 {
69                         temperature = <75000>;
70                         hysteresis = <2000>;
71                         type = "passive";
72                 };
73
74                 cpu_alert1: trip1 {
75                         temperature = <80000>;
76                         hysteresis = <2000>;
77                         type = "passive";
78                 };
79
80                 cpu_crit0: trip3 {
81                         temperature = <90000>;
82                         hysteresis = <2000>;
83                         type = "critical";
84                 };
85
86                 fan_toggle0: trip4 {
87                         temperature = <65000>;
88                         hysteresis = <10000>;
89                         type = "active";
90                 };
91         };
92
93         cooling-maps {
94                 map0 {
95                         trip = <&cpu_alert0>;
96                         cooling-device =
97                         <&A53_0 0 1>; /* Exclude highest OPP */
98                 };
99
100                 map1 {
101                         trip = <&cpu_alert1>;
102                         cooling-device =
103                         <&A53_0 0 2>; /* Exclude two highest OPPs */
104                 };
105
106                 map4 {
107                         trip = <&fan_toggle0>;
108                         cooling-device = <&fan 0 1>;
109                 };
110         };
111 };
112
113 &i2c1 {
114         clock-frequency = <400000>;
115         pinctrl-names = "default";
116         pinctrl-0 = <&pinctrl_i2c1>;
117         status = "okay";
118
119         pmic: pmic@4b {
120                 compatible = "rohm,bd71837";
121                 reg = <0x4b>;
122                 pinctrl-names = "default";
123                 pinctrl-0 = <&pinctrl_pmic>;
124                 #clock-cells = <0>;
125                 clocks = <&pmic_osc>;
126                 clock-output-names = "pmic_clk";
127                 interrupt-parent = <&gpio1>;
128                 interrupts = <3 GPIO_ACTIVE_LOW>;
129
130                 regulators {
131                         buck1: BUCK1 {
132                                 regulator-name = "buck1";
133                                 regulator-min-microvolt = <700000>;
134                                 regulator-max-microvolt = <1300000>;
135                                 regulator-boot-on;
136                                 regulator-always-on;
137                                 regulator-ramp-delay = <1250>;
138                                 rohm,dvs-run-voltage = <900000>;
139                                 rohm,dvs-idle-voltage = <900000>;
140                                 rohm,dvs-suspend-voltage = <800000>;
141                         };
142
143                         buck2: BUCK2 {
144                                 regulator-name = "buck2";
145                                 regulator-min-microvolt = <850000>;
146                                 regulator-max-microvolt = <1000000>;
147                                 regulator-boot-on;
148                                 regulator-always-on;
149                                 rohm,dvs-run-voltage = <1000000>;
150                                 rohm,dvs-idle-voltage = <900000>;
151                         };
152
153                         buck3: BUCK3 {
154                                 regulator-name = "buck3";
155                                 regulator-min-microvolt = <700000>;
156                                 regulator-max-microvolt = <1300000>;
157                                 regulator-boot-on;
158                                 rohm,dvs-run-voltage = <900000>;
159                         };
160
161                         buck4: BUCK4 {
162                                 regulator-name = "buck4";
163                                 regulator-min-microvolt = <700000>;
164                                 regulator-max-microvolt = <1300000>;
165                                 regulator-boot-on;
166                                 regulator-always-on;
167                                 rohm,dvs-run-voltage = <900000>;
168                         };
169
170                         buck5: BUCK5 {
171                                 regulator-name = "buck5";
172                                 regulator-min-microvolt = <700000>;
173                                 regulator-max-microvolt = <1350000>;
174                                 regulator-boot-on;
175                                 regulator-always-on;
176                         };
177
178                         buck6: BUCK6 {
179                                 regulator-name = "buck6";
180                                 regulator-min-microvolt = <3000000>;
181                                 regulator-max-microvolt = <3300000>;
182                                 regulator-boot-on;
183                                 regulator-always-on;
184                         };
185
186                         buck7: BUCK7 {
187                                 regulator-name = "buck7";
188                                 regulator-min-microvolt = <1605000>;
189                                 regulator-max-microvolt = <1995000>;
190                                 regulator-boot-on;
191                                 regulator-always-on;
192                         };
193
194                         buck8: BUCK8 {
195                                 regulator-name = "buck8";
196                                 regulator-min-microvolt = <800000>;
197                                 regulator-max-microvolt = <1400000>;
198                                 regulator-boot-on;
199                                 regulator-always-on;
200                         };
201
202                         ldo1: LDO1 {
203                                 regulator-name = "ldo1";
204                                 regulator-min-microvolt = <3000000>;
205                                 regulator-max-microvolt = <3300000>;
206                                 regulator-boot-on;
207                                 regulator-always-on;
208                         };
209
210                         ldo2: LDO2 {
211                                 regulator-name = "ldo2";
212                                 regulator-min-microvolt = <900000>;
213                                 regulator-max-microvolt = <900000>;
214                                 regulator-boot-on;
215                                 regulator-always-on;
216                         };
217
218                         ldo3: LDO3 {
219                                 regulator-name = "ldo3";
220                                 regulator-min-microvolt = <1800000>;
221                                 regulator-max-microvolt = <3300000>;
222                                 regulator-boot-on;
223                                 regulator-always-on;
224                         };
225
226                         ldo4: LDO4 {
227                                 regulator-name = "ldo4";
228                                 regulator-min-microvolt = <900000>;
229                                 regulator-max-microvolt = <1800000>;
230                                 regulator-boot-on;
231                                 regulator-always-on;
232                         };
233
234                         ldo5: LDO5 {
235                                 regulator-name = "ldo5";
236                                 regulator-min-microvolt = <1800000>;
237                                 regulator-max-microvolt = <3300000>;
238                                 regulator-boot-on;
239                                 regulator-always-on;
240                         };
241
242                         ldo6: LDO6 {
243                                 regulator-name = "ldo6";
244                                 regulator-min-microvolt = <900000>;
245                                 regulator-max-microvolt = <1800000>;
246                                 regulator-boot-on;
247                                 regulator-always-on;
248                         };
249
250                         ldo7: LDO7 {
251                                 regulator-name = "ldo7";
252                                 regulator-min-microvolt = <1800000>;
253                                 regulator-max-microvolt = <3300000>;
254                                 regulator-boot-on;
255                                 regulator-always-on;
256                         };
257                 };
258         };
259 };
260
261 &fec1 {
262         pinctrl-names = "default";
263         pinctrl-0 = <&pinctrl_fec1>;
264         phy-mode = "rgmii-id";
265         phy-reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
266         phy-reset-duration = <10>;
267         phy-reset-post-delay = <50>;
268         phy-handle = <&ethphy0>;
269         fsl,magic-packet;
270         status = "okay";
271
272         mdio {
273                 #address-cells = <1>;
274                 #size-cells = <0>;
275                 ethphy0: ethernet-phy@0 {
276                         compatible = "ethernet-phy-ieee802.3-c22";
277                         reg = <0>;
278                 };
279         };
280 };
281
282 &uart1 {
283         pinctrl-names = "default";
284         pinctrl-0 = <&pinctrl_uart1>;
285         status = "okay";
286 };
287
288 &usdhc1 {
289         pinctrl-names = "default", "state_100mhz", "state_200mhz";
290         pinctrl-0 = <&pinctrl_usdhc1>;
291         pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
292         pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
293         bus-width = <8>;
294         non-removable;
295         status = "okay";
296 };
297
298 &usdhc2 {
299         pinctrl-names = "default", "state_100mhz", "state_200mhz";
300         pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
301         pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
302         pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
303         bus-width = <4>;
304         cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>;
305         vmmc-supply = <&reg_usdhc2_vmmc>;
306         status = "okay";
307 };
308
309 &usb3_phy0 {
310         status = "okay";
311 };
312
313 &usb_dwc3_0 {
314         dr_mode = "otg";
315         status = "okay";
316 };
317
318 &usb3_phy1 {
319         status = "okay";
320 };
321
322 &usb_dwc3_1 {
323         dr_mode = "host";
324         status = "okay";
325 };
326
327 &wdog1 {
328         pinctrl-names = "default";
329         pinctrl-0 = <&pinctrl_wdog>;
330         fsl,ext-reset-output;
331         status = "okay";
332 };
333
334 &iomuxc {
335         pinctrl_fec1: fec1grp {
336                 fsl,pins = <
337                         MX8MQ_IOMUXC_ENET_MDC_ENET1_MDC                 0x3
338                         MX8MQ_IOMUXC_ENET_MDIO_ENET1_MDIO               0x23
339                         MX8MQ_IOMUXC_ENET_TD3_ENET1_RGMII_TD3           0x1f
340                         MX8MQ_IOMUXC_ENET_TD2_ENET1_RGMII_TD2           0x1f
341                         MX8MQ_IOMUXC_ENET_TD1_ENET1_RGMII_TD1           0x1f
342                         MX8MQ_IOMUXC_ENET_TD0_ENET1_RGMII_TD0           0x1f
343                         MX8MQ_IOMUXC_ENET_RD3_ENET1_RGMII_RD3           0x91
344                         MX8MQ_IOMUXC_ENET_RD2_ENET1_RGMII_RD2           0x91
345                         MX8MQ_IOMUXC_ENET_RD1_ENET1_RGMII_RD1           0x91
346                         MX8MQ_IOMUXC_ENET_RD0_ENET1_RGMII_RD0           0x91
347                         MX8MQ_IOMUXC_ENET_TXC_ENET1_RGMII_TXC           0x1f
348                         MX8MQ_IOMUXC_ENET_RXC_ENET1_RGMII_RXC           0x91
349                         MX8MQ_IOMUXC_ENET_RX_CTL_ENET1_RGMII_RX_CTL     0x91
350                         MX8MQ_IOMUXC_ENET_TX_CTL_ENET1_RGMII_TX_CTL     0x1f
351                         MX8MQ_IOMUXC_GPIO1_IO09_GPIO1_IO9               0x19
352                 >;
353         };
354
355         pinctrl_gpio_fan: gpiofangrp {
356                 fsl,pins = <
357                         MX8MQ_IOMUXC_NAND_CLE_GPIO3_IO5                 0x16
358                 >;
359         };
360
361         pinctrl_i2c1: i2c1grp {
362                 fsl,pins = <
363                         MX8MQ_IOMUXC_I2C1_SCL_I2C1_SCL                  0x4000007f
364                         MX8MQ_IOMUXC_I2C1_SDA_I2C1_SDA                  0x4000007f
365                 >;
366         };
367
368         pinctrl_pmic: pmicirq {
369                 fsl,pins = <
370                         MX8MQ_IOMUXC_GPIO1_IO03_GPIO1_IO3       0x41
371                 >;
372         };
373
374         pinctrl_uart1: uart1grp {
375                 fsl,pins = <
376                         MX8MQ_IOMUXC_UART1_RXD_UART1_DCE_RX             0x49
377                         MX8MQ_IOMUXC_UART1_TXD_UART1_DCE_TX             0x49
378                 >;
379         };
380
381         pinctrl_usdhc1: usdhc1grp {
382                 fsl,pins = <
383                         MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK                 0x83
384                         MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD                 0xc3
385                         MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0             0xc3
386                         MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1             0xc3
387                         MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2             0xc3
388                         MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3             0xc3
389                         MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4             0xc3
390                         MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5             0xc3
391                         MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6             0xc3
392                         MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7             0xc3
393                         MX8MQ_IOMUXC_SD1_STROBE_USDHC1_STROBE           0x83
394                         MX8MQ_IOMUXC_SD1_RESET_B_USDHC1_RESET_B         0xc1
395                 >;
396         };
397
398         pinctrl_usdhc1_100mhz: usdhc1grp100mhz {
399                 fsl,pins = <
400                         MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK                 0x85
401                         MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD                 0xc5
402                         MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0             0xc5
403                         MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1             0xc5
404                         MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2             0xc5
405                         MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3             0xc5
406                         MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4             0xc5
407                         MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5             0xc5
408                         MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6             0xc5
409                         MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7             0xc5
410                         MX8MQ_IOMUXC_SD1_STROBE_USDHC1_STROBE           0x85
411                         MX8MQ_IOMUXC_SD1_RESET_B_USDHC1_RESET_B         0xc1
412                 >;
413         };
414
415         pinctrl_usdhc1_200mhz: usdhc1grp200mhz {
416                 fsl,pins = <
417                         MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK                 0x87
418                         MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD                 0xc7
419                         MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0             0xc7
420                         MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1             0xc7
421                         MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2             0xc7
422                         MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3             0xc7
423                         MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4             0xc7
424                         MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5             0xc7
425                         MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6             0xc7
426                         MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7             0xc7
427                         MX8MQ_IOMUXC_SD1_STROBE_USDHC1_STROBE           0x87
428                         MX8MQ_IOMUXC_SD1_RESET_B_USDHC1_RESET_B         0xc1
429                 >;
430         };
431
432         pinctrl_usdhc2_gpio: usdhc2grpgpio {
433                 fsl,pins = <
434                         MX8MQ_IOMUXC_SD2_CD_B_GPIO2_IO12        0x41
435                         MX8MQ_IOMUXC_SD2_RESET_B_GPIO2_IO19     0x41
436                 >;
437         };
438
439         pinctrl_usdhc2: usdhc2grp {
440                 fsl,pins = <
441                         MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK                 0x83
442                         MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD                 0xc3
443                         MX8MQ_IOMUXC_SD2_DATA0_USDHC2_DATA0             0xc3
444                         MX8MQ_IOMUXC_SD2_DATA1_USDHC2_DATA1             0xc3
445                         MX8MQ_IOMUXC_SD2_DATA2_USDHC2_DATA2             0xc3
446                         MX8MQ_IOMUXC_SD2_DATA3_USDHC2_DATA3             0xc3
447                         MX8MQ_IOMUXC_GPIO1_IO04_USDHC2_VSELECT          0xc1
448                 >;
449         };
450
451         pinctrl_usdhc2_100mhz: usdhc2grp100mhz {
452                 fsl,pins = <
453                         MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK                 0x85
454                         MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD                 0xc5
455                         MX8MQ_IOMUXC_SD2_DATA0_USDHC2_DATA0             0xc5
456                         MX8MQ_IOMUXC_SD2_DATA1_USDHC2_DATA1             0xc5
457                         MX8MQ_IOMUXC_SD2_DATA2_USDHC2_DATA2             0xc5
458                         MX8MQ_IOMUXC_SD2_DATA3_USDHC2_DATA3             0xc5
459                         MX8MQ_IOMUXC_GPIO1_IO04_USDHC2_VSELECT          0xc1
460                 >;
461         };
462
463         pinctrl_usdhc2_200mhz: usdhc2grp200mhz {
464                 fsl,pins = <
465                         MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK                 0x87
466                         MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD                 0xc7
467                         MX8MQ_IOMUXC_SD2_DATA0_USDHC2_DATA0             0xc7
468                         MX8MQ_IOMUXC_SD2_DATA1_USDHC2_DATA1             0xc7
469                         MX8MQ_IOMUXC_SD2_DATA2_USDHC2_DATA2             0xc7
470                         MX8MQ_IOMUXC_SD2_DATA3_USDHC2_DATA3             0xc7
471                         MX8MQ_IOMUXC_GPIO1_IO04_USDHC2_VSELECT          0xc1
472                 >;
473         };
474
475         pinctrl_wdog: wdoggrp {
476                 fsl,pins = <
477                         MX8MQ_IOMUXC_GPIO1_IO02_WDOG1_WDOG_B 0xc6
478                 >;
479         };
480 };