113cb15e0SAnson Huang// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 213cb15e0SAnson Huang/* 313cb15e0SAnson Huang * Copyright 2019 NXP 413cb15e0SAnson Huang */ 513cb15e0SAnson Huang 613cb15e0SAnson Huang/dts-v1/; 713cb15e0SAnson Huang 813cb15e0SAnson Huang#include "imx8mn.dtsi" 913cb15e0SAnson Huang 1013cb15e0SAnson Huang/ { 1113cb15e0SAnson Huang model = "NXP i.MX8MNano DDR4 EVK board"; 1213cb15e0SAnson Huang compatible = "fsl,imx8mn-ddr4-evk", "fsl,imx8mn"; 1313cb15e0SAnson Huang 1413cb15e0SAnson Huang chosen { 1513cb15e0SAnson Huang stdout-path = &uart2; 1613cb15e0SAnson Huang }; 1713cb15e0SAnson Huang 1813cb15e0SAnson Huang reg_usdhc2_vmmc: regulator-usdhc2 { 1913cb15e0SAnson Huang compatible = "regulator-fixed"; 2013cb15e0SAnson Huang pinctrl-names = "default"; 2113cb15e0SAnson Huang pinctrl-0 = <&pinctrl_reg_usdhc2_vmmc>; 2213cb15e0SAnson Huang regulator-name = "VSD_3V3"; 2313cb15e0SAnson Huang regulator-min-microvolt = <3300000>; 2413cb15e0SAnson Huang regulator-max-microvolt = <3300000>; 2513cb15e0SAnson Huang gpio = <&gpio2 19 GPIO_ACTIVE_HIGH>; 2613cb15e0SAnson Huang enable-active-high; 2713cb15e0SAnson Huang }; 2813cb15e0SAnson Huang}; 2913cb15e0SAnson Huang 3013cb15e0SAnson Huang&iomuxc { 3113cb15e0SAnson Huang pinctrl-names = "default"; 3213cb15e0SAnson Huang 3313cb15e0SAnson Huang pinctrl_fec1: fec1grp { 3413cb15e0SAnson Huang fsl,pins = < 3513cb15e0SAnson Huang MX8MN_IOMUXC_ENET_MDC_ENET1_MDC 0x3 3613cb15e0SAnson Huang MX8MN_IOMUXC_ENET_MDIO_ENET1_MDIO 0x3 3713cb15e0SAnson Huang MX8MN_IOMUXC_ENET_TD3_ENET1_RGMII_TD3 0x1f 3813cb15e0SAnson Huang MX8MN_IOMUXC_ENET_TD2_ENET1_RGMII_TD2 0x1f 3913cb15e0SAnson Huang MX8MN_IOMUXC_ENET_TD1_ENET1_RGMII_TD1 0x1f 4013cb15e0SAnson Huang MX8MN_IOMUXC_ENET_TD0_ENET1_RGMII_TD0 0x1f 4113cb15e0SAnson Huang MX8MN_IOMUXC_ENET_RD3_ENET1_RGMII_RD3 0x91 4213cb15e0SAnson Huang MX8MN_IOMUXC_ENET_RD2_ENET1_RGMII_RD2 0x91 4313cb15e0SAnson Huang MX8MN_IOMUXC_ENET_RD1_ENET1_RGMII_RD1 0x91 4413cb15e0SAnson Huang MX8MN_IOMUXC_ENET_RD0_ENET1_RGMII_RD0 0x91 4513cb15e0SAnson Huang MX8MN_IOMUXC_ENET_TXC_ENET1_RGMII_TXC 0x1f 4613cb15e0SAnson Huang MX8MN_IOMUXC_ENET_RXC_ENET1_RGMII_RXC 0x91 4713cb15e0SAnson Huang MX8MN_IOMUXC_ENET_RX_CTL_ENET1_RGMII_RX_CTL 0x91 4813cb15e0SAnson Huang MX8MN_IOMUXC_ENET_TX_CTL_ENET1_RGMII_TX_CTL 0x1f 4913cb15e0SAnson Huang MX8MN_IOMUXC_SAI2_RXC_GPIO4_IO22 0x19 5013cb15e0SAnson Huang >; 5113cb15e0SAnson Huang }; 5213cb15e0SAnson Huang 53*089a6adeSAnson Huang pinctrl_i2c1: i2c1grp { 54*089a6adeSAnson Huang fsl,pins = < 55*089a6adeSAnson Huang MX8MN_IOMUXC_I2C1_SCL_I2C1_SCL 0x400001c3 56*089a6adeSAnson Huang MX8MN_IOMUXC_I2C1_SDA_I2C1_SDA 0x400001c3 57*089a6adeSAnson Huang >; 58*089a6adeSAnson Huang }; 59*089a6adeSAnson Huang 6013cb15e0SAnson Huang pinctrl_reg_usdhc2_vmmc: regusdhc2vmmc { 6113cb15e0SAnson Huang fsl,pins = < 6213cb15e0SAnson Huang MX8MN_IOMUXC_SD2_RESET_B_GPIO2_IO19 0x41 6313cb15e0SAnson Huang >; 6413cb15e0SAnson Huang }; 6513cb15e0SAnson Huang 6613cb15e0SAnson Huang pinctrl_uart2: uart2grp { 6713cb15e0SAnson Huang fsl,pins = < 6813cb15e0SAnson Huang MX8MN_IOMUXC_UART2_RXD_UART2_DCE_RX 0x140 6913cb15e0SAnson Huang MX8MN_IOMUXC_UART2_TXD_UART2_DCE_TX 0x140 7013cb15e0SAnson Huang >; 7113cb15e0SAnson Huang }; 7213cb15e0SAnson Huang 7313cb15e0SAnson Huang pinctrl_usdhc2_gpio: usdhc2grpgpio { 7413cb15e0SAnson Huang fsl,pins = < 7513cb15e0SAnson Huang MX8MN_IOMUXC_GPIO1_IO15_GPIO1_IO15 0x1c4 7613cb15e0SAnson Huang >; 7713cb15e0SAnson Huang }; 7813cb15e0SAnson Huang 7913cb15e0SAnson Huang pinctrl_usdhc2: usdhc2grp { 8013cb15e0SAnson Huang fsl,pins = < 8113cb15e0SAnson Huang MX8MN_IOMUXC_SD2_CLK_USDHC2_CLK 0x190 8213cb15e0SAnson Huang MX8MN_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d0 8313cb15e0SAnson Huang MX8MN_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d0 8413cb15e0SAnson Huang MX8MN_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d0 8513cb15e0SAnson Huang MX8MN_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d0 8613cb15e0SAnson Huang MX8MN_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d0 8713cb15e0SAnson Huang MX8MN_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0x1d0 8813cb15e0SAnson Huang >; 8913cb15e0SAnson Huang }; 9013cb15e0SAnson Huang 9113cb15e0SAnson Huang pinctrl_usdhc2_100mhz: usdhc2grp100mhz { 9213cb15e0SAnson Huang fsl,pins = < 9313cb15e0SAnson Huang MX8MN_IOMUXC_SD2_CLK_USDHC2_CLK 0x194 9413cb15e0SAnson Huang MX8MN_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d4 9513cb15e0SAnson Huang MX8MN_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d4 9613cb15e0SAnson Huang MX8MN_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d4 9713cb15e0SAnson Huang MX8MN_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d4 9813cb15e0SAnson Huang MX8MN_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d4 9913cb15e0SAnson Huang MX8MN_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0x1d0 10013cb15e0SAnson Huang >; 10113cb15e0SAnson Huang }; 10213cb15e0SAnson Huang 10313cb15e0SAnson Huang pinctrl_usdhc2_200mhz: usdhc2grp200mhz { 10413cb15e0SAnson Huang fsl,pins = < 10513cb15e0SAnson Huang MX8MN_IOMUXC_SD2_CLK_USDHC2_CLK 0x196 10613cb15e0SAnson Huang MX8MN_IOMUXC_SD2_CMD_USDHC2_CMD 0x1d6 10713cb15e0SAnson Huang MX8MN_IOMUXC_SD2_DATA0_USDHC2_DATA0 0x1d6 10813cb15e0SAnson Huang MX8MN_IOMUXC_SD2_DATA1_USDHC2_DATA1 0x1d6 10913cb15e0SAnson Huang MX8MN_IOMUXC_SD2_DATA2_USDHC2_DATA2 0x1d6 11013cb15e0SAnson Huang MX8MN_IOMUXC_SD2_DATA3_USDHC2_DATA3 0x1d6 11113cb15e0SAnson Huang MX8MN_IOMUXC_GPIO1_IO04_USDHC2_VSELECT 0x1d0 11213cb15e0SAnson Huang >; 11313cb15e0SAnson Huang }; 11413cb15e0SAnson Huang 11513cb15e0SAnson Huang pinctrl_usdhc3: usdhc3grp { 11613cb15e0SAnson Huang fsl,pins = < 11713cb15e0SAnson Huang MX8MN_IOMUXC_NAND_WE_B_USDHC3_CLK 0x40000190 11813cb15e0SAnson Huang MX8MN_IOMUXC_NAND_WP_B_USDHC3_CMD 0x1d0 11913cb15e0SAnson Huang MX8MN_IOMUXC_NAND_DATA04_USDHC3_DATA0 0x1d0 12013cb15e0SAnson Huang MX8MN_IOMUXC_NAND_DATA05_USDHC3_DATA1 0x1d0 12113cb15e0SAnson Huang MX8MN_IOMUXC_NAND_DATA06_USDHC3_DATA2 0x1d0 12213cb15e0SAnson Huang MX8MN_IOMUXC_NAND_DATA07_USDHC3_DATA3 0x1d0 12313cb15e0SAnson Huang MX8MN_IOMUXC_NAND_RE_B_USDHC3_DATA4 0x1d0 12413cb15e0SAnson Huang MX8MN_IOMUXC_NAND_CE2_B_USDHC3_DATA5 0x1d0 12513cb15e0SAnson Huang MX8MN_IOMUXC_NAND_CE3_B_USDHC3_DATA6 0x1d0 12613cb15e0SAnson Huang MX8MN_IOMUXC_NAND_CLE_USDHC3_DATA7 0x1d0 12713cb15e0SAnson Huang MX8MN_IOMUXC_NAND_CE1_B_USDHC3_STROBE 0x190 12813cb15e0SAnson Huang >; 12913cb15e0SAnson Huang }; 13013cb15e0SAnson Huang 13113cb15e0SAnson Huang pinctrl_usdhc3_100mhz: usdhc3grp100mhz { 13213cb15e0SAnson Huang fsl,pins = < 13313cb15e0SAnson Huang MX8MN_IOMUXC_NAND_WE_B_USDHC3_CLK 0x40000194 13413cb15e0SAnson Huang MX8MN_IOMUXC_NAND_WP_B_USDHC3_CMD 0x1d4 13513cb15e0SAnson Huang MX8MN_IOMUXC_NAND_DATA04_USDHC3_DATA0 0x1d4 13613cb15e0SAnson Huang MX8MN_IOMUXC_NAND_DATA05_USDHC3_DATA1 0x1d4 13713cb15e0SAnson Huang MX8MN_IOMUXC_NAND_DATA06_USDHC3_DATA2 0x1d4 13813cb15e0SAnson Huang MX8MN_IOMUXC_NAND_DATA07_USDHC3_DATA3 0x1d4 13913cb15e0SAnson Huang MX8MN_IOMUXC_NAND_RE_B_USDHC3_DATA4 0x1d4 14013cb15e0SAnson Huang MX8MN_IOMUXC_NAND_CE2_B_USDHC3_DATA5 0x1d4 14113cb15e0SAnson Huang MX8MN_IOMUXC_NAND_CE3_B_USDHC3_DATA6 0x1d4 14213cb15e0SAnson Huang MX8MN_IOMUXC_NAND_CLE_USDHC3_DATA7 0x1d4 14313cb15e0SAnson Huang MX8MN_IOMUXC_NAND_CE1_B_USDHC3_STROBE 0x194 14413cb15e0SAnson Huang >; 14513cb15e0SAnson Huang }; 14613cb15e0SAnson Huang 14713cb15e0SAnson Huang pinctrl_usdhc3_200mhz: usdhc3grp200mhz { 14813cb15e0SAnson Huang fsl,pins = < 14913cb15e0SAnson Huang MX8MN_IOMUXC_NAND_WE_B_USDHC3_CLK 0x40000196 15013cb15e0SAnson Huang MX8MN_IOMUXC_NAND_WP_B_USDHC3_CMD 0x1d6 15113cb15e0SAnson Huang MX8MN_IOMUXC_NAND_DATA04_USDHC3_DATA0 0x1d6 15213cb15e0SAnson Huang MX8MN_IOMUXC_NAND_DATA05_USDHC3_DATA1 0x1d6 15313cb15e0SAnson Huang MX8MN_IOMUXC_NAND_DATA06_USDHC3_DATA2 0x1d6 15413cb15e0SAnson Huang MX8MN_IOMUXC_NAND_DATA07_USDHC3_DATA3 0x1d6 15513cb15e0SAnson Huang MX8MN_IOMUXC_NAND_RE_B_USDHC3_DATA4 0x1d6 15613cb15e0SAnson Huang MX8MN_IOMUXC_NAND_CE2_B_USDHC3_DATA5 0x1d6 15713cb15e0SAnson Huang MX8MN_IOMUXC_NAND_CE3_B_USDHC3_DATA6 0x1d6 15813cb15e0SAnson Huang MX8MN_IOMUXC_NAND_CLE_USDHC3_DATA7 0x1d6 15913cb15e0SAnson Huang MX8MN_IOMUXC_NAND_CE1_B_USDHC3_STROBE 0x196 16013cb15e0SAnson Huang >; 16113cb15e0SAnson Huang }; 16213cb15e0SAnson Huang 16313cb15e0SAnson Huang pinctrl_wdog: wdoggrp { 16413cb15e0SAnson Huang fsl,pins = < 16513cb15e0SAnson Huang MX8MN_IOMUXC_GPIO1_IO02_WDOG1_WDOG_B 0xc6 16613cb15e0SAnson Huang >; 16713cb15e0SAnson Huang }; 16813cb15e0SAnson Huang}; 16913cb15e0SAnson Huang 17013cb15e0SAnson Huang&fec1 { 17113cb15e0SAnson Huang pinctrl-names = "default"; 17213cb15e0SAnson Huang pinctrl-0 = <&pinctrl_fec1>; 17313cb15e0SAnson Huang phy-mode = "rgmii-id"; 17413cb15e0SAnson Huang phy-handle = <ðphy0>; 17513cb15e0SAnson Huang fsl,magic-packet; 17613cb15e0SAnson Huang status = "okay"; 17713cb15e0SAnson Huang 17813cb15e0SAnson Huang mdio { 17913cb15e0SAnson Huang #address-cells = <1>; 18013cb15e0SAnson Huang #size-cells = <0>; 18113cb15e0SAnson Huang 18213cb15e0SAnson Huang ethphy0: ethernet-phy@0 { 18313cb15e0SAnson Huang compatible = "ethernet-phy-ieee802.3-c22"; 18413cb15e0SAnson Huang reg = <0>; 18513cb15e0SAnson Huang at803x,led-act-blind-workaround; 18613cb15e0SAnson Huang at803x,eee-disabled; 18713cb15e0SAnson Huang at803x,vddio-1p8v; 18813cb15e0SAnson Huang }; 18913cb15e0SAnson Huang }; 19013cb15e0SAnson Huang}; 19113cb15e0SAnson Huang 192*089a6adeSAnson Huang&i2c1 { 193*089a6adeSAnson Huang clock-frequency = <400000>; 194*089a6adeSAnson Huang pinctrl-names = "default"; 195*089a6adeSAnson Huang pinctrl-0 = <&pinctrl_i2c1>; 196*089a6adeSAnson Huang status = "okay"; 197*089a6adeSAnson Huang}; 198*089a6adeSAnson Huang 19913cb15e0SAnson Huang&snvs_pwrkey { 20013cb15e0SAnson Huang status = "okay"; 20113cb15e0SAnson Huang}; 20213cb15e0SAnson Huang 20313cb15e0SAnson Huang&uart2 { /* console */ 20413cb15e0SAnson Huang pinctrl-names = "default"; 20513cb15e0SAnson Huang pinctrl-0 = <&pinctrl_uart2>; 20613cb15e0SAnson Huang status = "okay"; 20713cb15e0SAnson Huang}; 20813cb15e0SAnson Huang 20913cb15e0SAnson Huang&usdhc2 { 21013cb15e0SAnson Huang pinctrl-names = "default", "state_100mhz", "state_200mhz"; 21113cb15e0SAnson Huang pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>; 21213cb15e0SAnson Huang pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>; 21313cb15e0SAnson Huang pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>; 21413cb15e0SAnson Huang cd-gpios = <&gpio1 15 GPIO_ACTIVE_LOW>; 21513cb15e0SAnson Huang bus-width = <4>; 21613cb15e0SAnson Huang vmmc-supply = <®_usdhc2_vmmc>; 21713cb15e0SAnson Huang status = "okay"; 21813cb15e0SAnson Huang}; 21913cb15e0SAnson Huang 22013cb15e0SAnson Huang&usdhc3 { 22113cb15e0SAnson Huang pinctrl-names = "default", "state_100mhz", "state_200mhz"; 22213cb15e0SAnson Huang pinctrl-0 = <&pinctrl_usdhc3>; 22313cb15e0SAnson Huang pinctrl-1 = <&pinctrl_usdhc3_100mhz>; 22413cb15e0SAnson Huang pinctrl-2 = <&pinctrl_usdhc3_200mhz>; 22513cb15e0SAnson Huang bus-width = <8>; 22613cb15e0SAnson Huang non-removable; 22713cb15e0SAnson Huang status = "okay"; 22813cb15e0SAnson Huang}; 22913cb15e0SAnson Huang 23013cb15e0SAnson Huang&wdog1 { 23113cb15e0SAnson Huang pinctrl-names = "default"; 23213cb15e0SAnson Huang pinctrl-0 = <&pinctrl_wdog>; 23313cb15e0SAnson Huang fsl,ext-reset-output; 23413cb15e0SAnson Huang status = "okay"; 23513cb15e0SAnson Huang}; 236