1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
3 * Copyright 2018 Bang & Olufsen
7 #include <dt-bindings/phy/phy-imx8-pcie.h>
10 reg_modem: regulator-modem {
11 compatible = "regulator-fixed";
12 pinctrl-names = "default";
13 pinctrl-0 = <&pinctrl_modem_regulator>;
14 regulator-min-microvolt = <3300000>;
15 regulator-max-microvolt = <3300000>;
16 regulator-name = "epdev_on";
17 gpio = <&gpio3 16 GPIO_ACTIVE_HIGH>;
22 reg_3v3_out: regulator-3v3-out {
23 compatible = "regulator-fixed";
24 regulator-name = "3V3_OUT";
25 regulator-min-microvolt = <3300000>;
26 regulator-max-microvolt = <3300000>;
31 temperature = <95000>;
35 temperature = <105000>;
39 operating-points-v2 = <&ddrc_opp_table>;
41 ddrc_opp_table: opp-table {
42 compatible = "operating-points-v2";
45 opp-hz = /bits/ 64 <25000000>;
49 opp-hz = /bits/ 64 <100000000>;
53 opp-hz = /bits/ 64 <600000000>;
59 clock-frequency = <100000>;
60 pinctrl-names = "default", "gpio";
61 pinctrl-0 = <&pinctrl_i2c1>;
62 pinctrl-1 = <&pinctrl_i2c1_gpio>;
63 scl-gpios = <&gpio5 14 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
64 sda-gpios = <&gpio5 15 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
68 compatible = "rohm,bd71847";
70 pinctrl-0 = <&pinctrl_pmic>;
71 interrupt-parent = <&gpio1>;
72 interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
73 rohm,reset-snvs-powered;
77 regulator-name = "buck1";
78 regulator-min-microvolt = <700000>;
79 regulator-max-microvolt = <1300000>;
82 regulator-ramp-delay = <1250>;
83 rohm,dvs-run-voltage = <850000>;
84 rohm,dvs-idle-voltage = <850000>;
85 rohm,dvs-suspend-voltage = <850000>;
89 regulator-name = "buck2";
90 regulator-min-microvolt = <700000>;
91 regulator-max-microvolt = <1300000>;
94 regulator-ramp-delay = <1250>;
95 rohm,dvs-run-voltage = <1000000>;
96 rohm,dvs-idle-voltage = <900000>;
100 // buck5 in datasheet
101 regulator-name = "buck3";
102 regulator-min-microvolt = <700000>;
103 regulator-max-microvolt = <1350000>;
109 // buck6 in datasheet
110 regulator-name = "buck4";
111 regulator-min-microvolt = <3000000>;
112 regulator-max-microvolt = <3300000>;
118 // buck7 in datasheet
119 regulator-name = "buck5";
120 regulator-min-microvolt = <1605000>;
121 regulator-max-microvolt = <1995000>;
127 // buck8 in datasheet
128 regulator-name = "buck6";
129 regulator-min-microvolt = <800000>;
130 regulator-max-microvolt = <1400000>;
136 regulator-name = "ldo1";
137 regulator-min-microvolt = <1800000>;
138 regulator-max-microvolt = <3300000>;
144 regulator-name = "ldo2";
145 regulator-min-microvolt = <800000>;
146 regulator-max-microvolt = <900000>;
152 regulator-name = "ldo3";
153 regulator-min-microvolt = <1800000>;
154 regulator-max-microvolt = <3300000>;
160 regulator-name = "ldo4";
161 regulator-min-microvolt = <900000>;
162 regulator-max-microvolt = <1800000>;
168 regulator-name = "ldo5";
169 regulator-min-microvolt = <1800000>;
170 regulator-max-microvolt = <3300000>;
174 regulator-name = "ldo6";
175 regulator-min-microvolt = <900000>;
176 regulator-max-microvolt = <1800000>;
185 clock-frequency = <100000>;
186 pinctrl-names = "default", "gpio";
187 pinctrl-0 = <&pinctrl_i2c2>;
188 pinctrl-1 = <&pinctrl_i2c2_gpio>;
189 scl-gpios = <&gpio5 16 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
190 sda-gpios = <&gpio5 17 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
195 pinctrl-names = "default", "gpio";
196 pinctrl-0 = <&pinctrl_i2c3>;
197 pinctrl-1 = <&pinctrl_i2c3_gpio>;
198 scl-gpios = <&gpio5 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
199 sda-gpios = <&gpio5 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
203 fsl,refclk-pad-mode = <IMX8_PCIE_REFCLK_PAD_OUTPUT>;
204 fsl,tx-deemph-gen1 = <0x2d>;
205 fsl,tx-deemph-gen2 = <0xf>;
210 pinctrl-names = "default";
211 pinctrl-0 = <&pinctrl_pcie0>;
212 reset-gpio = <&gpio5 21 GPIO_ACTIVE_LOW>;
213 fsl,max-link-speed = <1>;
214 assigned-clocks = <&clk IMX8MM_CLK_PCIE1_AUX>, <&clk IMX8MM_CLK_PCIE1_CTRL>;
215 assigned-clock-rates = <10000000>, <250000000>;
216 assigned-clock-parents = <&clk IMX8MM_SYS_PLL2_50M>, <&clk IMX8MM_SYS_PLL2_250M>;
221 pinctrl-names = "default";
222 pinctrl-0 = <&pinctrl_uart1>;
223 assigned-clocks = <&clk IMX8MM_CLK_UART1>;
224 assigned-clock-parents = <&clk IMX8MM_SYS_PLL1_80M>;
229 compatible = "brcm,bcm4349-bt";
230 pinctrl-names = "default";
231 pinctrl-0 = <&pinctrl_modem_bt>;
232 device-wakeup-gpios = <&gpio3 3 GPIO_ACTIVE_HIGH>;
233 host-wakeup-gpios = <&gpio3 4 GPIO_ACTIVE_HIGH>;
234 shutdown-gpios = <&gpio3 15 GPIO_ACTIVE_HIGH>;
235 vbat-supply = <®_3v3_out>;
236 vddio-supply = <®_3v3_out>;
238 max-speed = <3000000>;
239 clock-names = "extclk";
243 &uart2 { /* console */
244 pinctrl-names = "default";
245 pinctrl-0 = <&pinctrl_uart2>;
249 pinctrl-names = "default";
250 pinctrl-0 = <&pinctrl_usdhc1>;
259 pinctrl-names = "default", "state_100mhz", "state_200mhz";
260 pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
261 pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
262 pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
267 pinctrl-names = "default";
268 pinctrl-0 = <&pinctrl_wdog>;
269 fsl,ext-reset-output;
274 cpu-supply = <&buck2_reg>;
278 cpu-supply = <&buck2_reg>;
282 cpu-supply = <&buck2_reg>;
286 cpu-supply = <&buck2_reg>;
289 /delete-node/ &sec_jr1; /* Job ring in use by OP-TEE */
292 pinctrl_i2c1: i2c1-grp {
294 MX8MM_IOMUXC_I2C1_SCL_I2C1_SCL 0x400001c3
295 MX8MM_IOMUXC_I2C1_SDA_I2C1_SDA 0x400001c3
299 pinctrl_i2c1_gpio: i2c1-gpio-grp {
301 MX8MM_IOMUXC_I2C1_SCL_GPIO5_IO14 0x400001c3
302 MX8MM_IOMUXC_I2C1_SDA_GPIO5_IO15 0x400001c3
306 pinctrl_i2c2: i2c2-grp {
308 MX8MM_IOMUXC_I2C2_SCL_I2C2_SCL 0x400001c3
309 MX8MM_IOMUXC_I2C2_SDA_I2C2_SDA 0x400001c3
313 pinctrl_i2c2_gpio: i2c2-gpio-grp {
315 MX8MM_IOMUXC_I2C2_SCL_GPIO5_IO16 0x400001c3
316 MX8MM_IOMUXC_I2C2_SDA_GPIO5_IO17 0x400001c3
320 pinctrl_i2c3: i2c3-grp {
322 MX8MM_IOMUXC_I2C3_SCL_I2C3_SCL 0x400001c3
323 MX8MM_IOMUXC_I2C3_SDA_I2C3_SDA 0x400001c3
327 pinctrl_i2c3_gpio: i2c3-gpio-grp {
329 MX8MM_IOMUXC_I2C3_SCL_GPIO5_IO18 0x400001c3
330 MX8MM_IOMUXC_I2C3_SDA_GPIO5_IO19 0x400001c3
334 pinctrl_pcie0: pcie0-grp {
336 MX8MM_IOMUXC_I2C4_SCL_PCIE1_CLKREQ_B 0x61
337 MX8MM_IOMUXC_I2C4_SDA_GPIO5_IO21 0x6
341 pinctrl_modem_bt: modem-bt-grp {
343 MX8MM_IOMUXC_NAND_CLE_GPIO3_IO5 0x19
344 MX8MM_IOMUXC_NAND_CE2_B_GPIO3_IO3 0x19
345 MX8MM_IOMUXC_NAND_CE3_B_GPIO3_IO4 0x19
346 MX8MM_IOMUXC_NAND_RE_B_GPIO3_IO15 0x19
347 MX8MM_IOMUXC_GPIO1_IO00_ANAMIX_REF_CLK_32K 0x141
351 pinctrl_modem_regulator: modem-reg-grp {
353 MX8MM_IOMUXC_NAND_READY_B_GPIO3_IO16 0x41
357 pinctrl_pmic: pmic-irq-grp {
359 MX8MM_IOMUXC_GPIO1_IO03_GPIO1_IO3 0x41
363 pinctrl_uart1: uart1-grp {
365 MX8MM_IOMUXC_UART1_RXD_UART1_DCE_RX 0x140
366 MX8MM_IOMUXC_UART1_TXD_UART1_DCE_TX 0x140
367 MX8MM_IOMUXC_UART3_RXD_UART1_DCE_CTS_B 0x140
368 MX8MM_IOMUXC_UART3_TXD_UART1_DCE_RTS_B 0x140
372 pinctrl_uart2: uart2-grp {
374 MX8MM_IOMUXC_UART2_RXD_UART2_DCE_RX 0x140
375 MX8MM_IOMUXC_UART2_TXD_UART2_DCE_TX 0x140
379 pinctrl_usdhc1: usdhc1-grp {
381 MX8MM_IOMUXC_SD1_CLK_USDHC1_CLK 0x40000190
382 MX8MM_IOMUXC_SD1_CMD_USDHC1_CMD 0x1d0
383 MX8MM_IOMUXC_SD1_DATA0_USDHC1_DATA0 0x1d0
384 MX8MM_IOMUXC_SD1_DATA1_USDHC1_DATA1 0x1d0
385 MX8MM_IOMUXC_SD1_DATA2_USDHC1_DATA2 0x1d0
386 MX8MM_IOMUXC_SD1_DATA3_USDHC1_DATA3 0x1d0
387 MX8MM_IOMUXC_SD1_DATA4_USDHC1_DATA4 0x1d0
388 MX8MM_IOMUXC_SD1_DATA5_USDHC1_DATA5 0x1d0
389 MX8MM_IOMUXC_SD1_DATA6_USDHC1_DATA6 0x1d0
390 MX8MM_IOMUXC_SD1_DATA7_USDHC1_DATA7 0x1d0
391 MX8MM_IOMUXC_SD1_STROBE_USDHC1_STROBE 0x190
392 MX8MM_IOMUXC_SD1_RESET_B_USDHC1_RESET_B 0x1d0
396 pinctrl_usdhc1_100mhz: usdhc1-100mhz-grp {
398 MX8MM_IOMUXC_SD1_CLK_USDHC1_CLK 0x40000194
399 MX8MM_IOMUXC_SD1_CMD_USDHC1_CMD 0x1d4
400 MX8MM_IOMUXC_SD1_DATA0_USDHC1_DATA0 0x1d4
401 MX8MM_IOMUXC_SD1_DATA1_USDHC1_DATA1 0x1d4
402 MX8MM_IOMUXC_SD1_DATA2_USDHC1_DATA2 0x1d4
403 MX8MM_IOMUXC_SD1_DATA3_USDHC1_DATA3 0x1d4
404 MX8MM_IOMUXC_SD1_DATA4_USDHC1_DATA4 0x1d4
405 MX8MM_IOMUXC_SD1_DATA5_USDHC1_DATA5 0x1d4
406 MX8MM_IOMUXC_SD1_DATA6_USDHC1_DATA6 0x1d4
407 MX8MM_IOMUXC_SD1_DATA7_USDHC1_DATA7 0x1d4
408 MX8MM_IOMUXC_SD1_STROBE_USDHC1_STROBE 0x194
409 MX8MM_IOMUXC_SD1_RESET_B_USDHC1_RESET_B 0x1d4
413 pinctrl_usdhc1_200mhz: usdhc1-200mhz-grp {
415 MX8MM_IOMUXC_SD1_CLK_USDHC1_CLK 0x40000196
416 MX8MM_IOMUXC_SD1_CMD_USDHC1_CMD 0x1d6
417 MX8MM_IOMUXC_SD1_DATA0_USDHC1_DATA0 0x1d6
418 MX8MM_IOMUXC_SD1_DATA1_USDHC1_DATA1 0x1d6
419 MX8MM_IOMUXC_SD1_DATA2_USDHC1_DATA2 0x1d6
420 MX8MM_IOMUXC_SD1_DATA3_USDHC1_DATA3 0x1d6
421 MX8MM_IOMUXC_SD1_DATA4_USDHC1_DATA4 0x1d6
422 MX8MM_IOMUXC_SD1_DATA5_USDHC1_DATA5 0x1d6
423 MX8MM_IOMUXC_SD1_DATA6_USDHC1_DATA6 0x1d6
424 MX8MM_IOMUXC_SD1_DATA7_USDHC1_DATA7 0x1d6
425 MX8MM_IOMUXC_SD1_STROBE_USDHC1_STROBE 0x196
426 MX8MM_IOMUXC_SD1_RESET_B_USDHC1_RESET_B 0x1d6
430 pinctrl_usdhc2_gpio: usdhc2-gpio-grp {
432 MX8MM_IOMUXC_SD2_RESET_B_GPIO2_IO19 0x1d0
436 pinctrl_usdhc2: usdhc2-grp {
438 MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK 0x190
439 MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d0
440 MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d0
441 MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d0
442 MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d0
443 MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d0
444 MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0x1d0
448 pinctrl_usdhc2_100mhz: usdhc2-100mhz-grp {
450 MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK 0x194
451 MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d4
452 MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d4
453 MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d4
454 MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d4
455 MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d4
456 MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0x1d0
460 pinctrl_usdhc2_200mhz: usdhc2-200mhz-grp {
462 MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK 0x196
463 MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d6
464 MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d6
465 MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d6
466 MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d6
467 MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d6
468 MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0x1d0
472 pinctrl_wdog: wdog-grp {
474 MX8MM_IOMUXC_GPIO1_IO02_WDOG1_WDOG_B 0xc6