summaryrefslogtreecommitdiff
path: root/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi')
-rwxr-xr-xarch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi288
1 files changed, 216 insertions, 72 deletions
diff --git a/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi b/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi
index bb0aa90cacba..3a9f54f98aea 100755
--- a/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi
@@ -13,6 +13,9 @@
};
aliases {
+ /* Ethernet aliases to ensure correct MAC addresses */
+ ethernet0 = &eqos;
+ ethernet1 = &fec;
rtc0 = &rtc_i2c;
rtc1 = &snvs_rtc;
};
@@ -41,6 +44,14 @@
status = "disabled";
};
+ /* USB_1 ID */
+ extcon_usb_1_id: usb_1_id {
+ compatible = "linux,extcon-usb-gpio";
+ id-gpio = <&gpio2 10 GPIO_ACTIVE_HIGH>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_usb_1_id>;
+ };
+
gpio-keys {
compatible = "gpio-keys";
pinctrl-names = "default";
@@ -99,30 +110,6 @@
vin-supply = <&buck4_reg>;
};
- reg_usb0_vbus: regulator-usb0-vbus {
- compatible = "regulator-fixed";
- enable-active-high;
- /* Verdin USB1_EN */
- gpio = <&gpio1 12 GPIO_ACTIVE_HIGH>;
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_reg_usb1_en>;
- regulator-max-microvolt = <5000000>;
- regulator-min-microvolt = <5000000>;
- regulator-name = "usb0_vbus";
- };
-
- reg_usb1_vbus: regulator-usb1-vbus {
- compatible = "regulator-fixed";
- enable-active-high;
- /* Verdin USB_2_EN (SODIMM 185) */
- gpio = <&gpio1 14 GPIO_ACTIVE_HIGH>;
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_reg_usb2_en>;
- regulator-max-microvolt = <5000000>;
- regulator-min-microvolt = <5000000>;
- regulator-name = "usb1_vbus";
- };
-
reg_usdhc2_vmmc: regulator-usdhc2 {
compatible = "regulator-fixed";
enable-active-high;
@@ -162,6 +149,14 @@
init-on-array = <IMX8MP_CLK_HSIO_ROOT>;
};
+&cpu_alert0 {
+ temperature = <95000>;
+};
+
+&cpu_crit0 {
+ temperature = <105000>;
+};
+
/* Verdin SPI_1 */
&ecspi1 {
#address-cells = <1>;
@@ -177,7 +172,7 @@
phy-mode = "rgmii-id";
phy-supply = <&reg_module_eth1phy>;
pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_eqos>;
+ pinctrl-0 = <&pinctrl_eqos>, <&pinctrl_eth_tpm_int>;
mdio {
compatible = "snps,dwmac-mdio";
@@ -251,13 +246,114 @@
};
&gpio1 {
- gpio-line-names = "";
+ gpio-line-names = "SODIMM_206",
+ "SODIMM_208",
+ "",
+ "",
+ "",
+ "SODIMM_210",
+ "SODIMM_212",
+ "SODIMM_216",
+ "SODIMM_218",
+ "",
+ "",
+ "SODIMM_16",
+ "SODIMM_155",
+ "SODIMM_157",
+ "SODIMM_185",
+ "SODIMM_91";
};
&gpio2 {
- gpio-line-names = "";
+ gpio-line-names = "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "SODIMM_143",
+ "SODIMM_141",
+ "",
+ "",
+ "SODIMM_161",
+ "",
+ "SODIMM_84",
+ "SODIMM_78",
+ "SODIMM_74",
+ "SODIMM_80",
+ "SODIMM_82",
+ "SODIMM_70",
+ "SODIMM_72";
+};
+
+&gpio3 {
+ gpio-line-names = "SODIMM_52",
+ "SODIMM_54",
+ "",
+ "",
+ "",
+ "",
+ "SODIMM_56",
+ "SODIMM_58",
+ "SODIMM_60",
+ "SODIMM_62",
+ "",
+ "",
+ "",
+ "",
+ "SODIMM_66",
+ "",
+ "SODIMM_64",
+ "",
+ "",
+ "SODIMM_34",
+ "SODIMM_19",
+ "",
+ "SODIMM_32",
+ "",
+ "",
+ "SODIMM_30",
+ "SODIMM_59",
+ "SODIMM_57",
+ "SODIMM_63",
+ "SODIMM_61";
+};
- ctrl_sleep_moci {
+&gpio4 {
+ gpio-line-names = "SODIMM_252",
+ "SODIMM_222",
+ "SODIMM_36",
+ "SODIMM_220",
+ "SODIMM_193",
+ "SODIMM_191",
+ "SODIMM_201",
+ "SODIMM_203",
+ "SODIMM_205",
+ "SODIMM_207",
+ "SODIMM_199",
+ "SODIMM_197",
+ "SODIMM_221",
+ "SODIMM_219",
+ "SODIMM_217",
+ "SODIMM_215",
+ "SODIMM_211",
+ "SODIMM_213",
+ "SODIMM_189",
+ "SODIMM_244",
+ "SODIMM_38",
+ "",
+ "SODIMM_76",
+ "SODIMM_135",
+ "SODIMM_133",
+ "SODIMM_17",
+ "SODIMM_24",
+ "SODIMM_26",
+ "SODIMM_21",
+ "SODIMM_256",
+ "SODIMM_48",
+ "SODIMM_44";
+
+ ctrl-sleep-moci-hog {
gpio-hog;
/* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */
gpios = <29 GPIO_ACTIVE_HIGH>;
@@ -268,10 +364,6 @@
};
};
-&gpio5 {
- gpio-line-names = "";
-};
-
/* On-module I2C */
&i2c1 {
clock-frequency = <400000>;
@@ -407,6 +499,12 @@
reg = <0x32>;
};
+ /* On-module temperature sensor */
+ hwmon_temp_module: sensor@48 {
+ compatible = "ti,tmp1075";
+ reg = <0x48>;
+ };
+
adc@49 {
compatible = "ti,ads1015";
reg = <0x49>;
@@ -718,7 +816,7 @@
pinctrl-0 = <&pinctrl_uart3>;
};
-/* Verdin UART_4 */
+/* Verdin UART_4, used for Bluetooth on Wi-Fi/Bluetooth SKUs */
&uart4 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart4>;
@@ -732,26 +830,27 @@
fsl,phy-tx-preemp-amp-tune = <3>;
fsl,phy-tx-rise-tune = <0>;
fsl,phy-tx-vref-tune = <6>;
- vbus-supply = <&reg_usb0_vbus>;
};
&usb_dwc3_0 {
-// dr_mode = "otg";
- dr_mode = "peripheral";
+ extcon = <&extcon_usb_1_id>;
+ dr_mode = "otg";
hnp-disable;
srp-disable;
adp-disable;
- usb-role-switch;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_usb1_en>;
};
/* Verdin USB_2 */
&usb3_phy1 {
fsl,phy-tx-preemp-amp-tune = <2>;
- vbus-supply = <&reg_usb1_vbus>;
};
&usb_dwc3_1 {
dr_mode = "host";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_usb2_en>;
};
/* Verdin SD_1 */
@@ -759,10 +858,11 @@
bus-width = <4>;
cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>;
disable-wp;
- pinctrl-names = "default", "state_100mhz", "state_200mhz";
+ pinctrl-names = "default", "state_100mhz", "state_200mhz", "sleep";
pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_cd>;
pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_cd>;
pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_cd>;
+ pinctrl-3 = <&pinctrl_usdhc2_sleep>, <&pinctrl_usdhc2_cd_sleep>;
vmmc-supply = <&reg_usdhc2_vmmc>;
};
@@ -802,12 +902,14 @@
};
&iomuxc {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_gpio1>, <&pinctrl_gpio2>,
- <&pinctrl_gpio3>, <&pinctrl_gpio4>,
- <&pinctrl_gpio7>, <&pinctrl_gpio8>,
- <&pinctrl_gpio_hog1>, <&pinctrl_gpio_hog2>, <&pinctrl_gpio_hog3>,
- <&pinctrl_hdmi_hog>, <&pinctrl_pmic_tpm_ena>;
+ pinctrl_bt_uart: btuartgrp {
+ fsl,pins = <
+ MX8MP_IOMUXC_ECSPI2_SCLK__UART4_DCE_RX 0x1c4
+ MX8MP_IOMUXC_ECSPI2_MOSI__UART4_DCE_TX 0x1c4
+ MX8MP_IOMUXC_ECSPI2_MISO__UART4_DCE_CTS 0x1c4
+ MX8MP_IOMUXC_ECSPI2_SS0__UART4_DCE_RTS 0x1c4
+ >;
+ };
pinctrl_ctrl_sleep_moci: ctrlsleepmocigrp {
fsl,pins = <
@@ -841,6 +943,12 @@
MX8MP_IOMUXC_ENET_TD3__ENET_QOS_RGMII_TD3 0x1f
MX8MP_IOMUXC_ENET_TX_CTL__ENET_QOS_RGMII_TX_CTL 0x1f
MX8MP_IOMUXC_ENET_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK 0x1f
+ >;
+ };
+
+ /* ETH_INT# shared with TPM_INT# (usually N/A) */
+ pinctrl_eth_tpm_int: ethtpmintgrp {
+ fsl,pins = <
MX8MP_IOMUXC_GPIO1_IO10__GPIO1_IO10 0x1c4
>;
};
@@ -975,6 +1083,7 @@
>;
};
+ /* Non-wifi MSP usage only */
pinctrl_gpio_hog1: gpiohog1grp {
fsl,pins = <
MX8MP_IOMUXC_ECSPI2_MISO__GPIO5_IO12 0x1c4 /* SODIMM 116 */
@@ -984,16 +1093,26 @@
>;
};
+ /* USB_2_OC# */
pinctrl_gpio_hog2: gpiohog2grp {
fsl,pins = <
- MX8MP_IOMUXC_SAI3_MCLK__GPIO5_IO02 0x1c4 /* SODIMM 91 */
+ MX8MP_IOMUXC_SAI3_MCLK__GPIO5_IO02 0x1c4 /* SODIMM 187 */
>;
};
pinctrl_gpio_hog3: gpiohog3grp {
fsl,pins = <
MX8MP_IOMUXC_GPIO1_IO13__GPIO1_IO13 0x1c4 /* SODIMM 157 */
- MX8MP_IOMUXC_GPIO1_IO15__GPIO1_IO15 0x1c4 /* SODIMM 187 */
+ /* CSI_1_MCLK */
+ MX8MP_IOMUXC_GPIO1_IO15__GPIO1_IO15 0x1c4 /* SODIMM 91 */
+ >;
+ };
+
+ /* Wifi usage only */
+ pinctrl_gpio_hog4: gpiohog4grp {
+ fsl,pins = <
+ MX8MP_IOMUXC_UART4_RXD__GPIO5_IO28 0x1c4 /* SODIMM 151 */
+ MX8MP_IOMUXC_UART4_TXD__GPIO5_IO29 0x1c4 /* SODIMM 153 */
>;
};
@@ -1131,18 +1250,6 @@
>;
};
- pinctrl_reg_usb1_en: regusb1engrp {
- fsl,pins = <
- MX8MP_IOMUXC_GPIO1_IO12__GPIO1_IO12 0x184 /* SODIMM 155 */
- >;
- };
-
- pinctrl_reg_usb2_en: regusb2engrp {
- fsl,pins = <
- MX8MP_IOMUXC_GPIO1_IO14__GPIO1_IO14 0x184 /* SODIMM 185 */
- >;
- };
-
pinctrl_sai1: sai1grp {
fsl,pins = <
MX8MP_IOMUXC_SAI5_RXD1__AUDIOMIX_SAI1_TX_SYNC 0x1d6 /* SODIMM 32 */
@@ -1162,13 +1269,6 @@
>;
};
- /* control signal for optional ATTPM20P */
- pinctrl_pmic_tpm_ena: pmictpmenagrp {
- fsl,pins = <
- MX8MP_IOMUXC_SD1_RESET_B__GPIO2_IO10 0x1c4 /* PMIC_TPM_ENA */
- >;
- };
-
pinctrl_uart1: uart1grp {
fsl,pins = <
MX8MP_IOMUXC_UART1_RXD__UART1_DCE_RX 0x1c4 /* SODIMM 129 */
@@ -1194,10 +1294,30 @@
>;
};
+ /* Non-wifi usage only */
pinctrl_uart4: uart4grp {
fsl,pins = <
- MX8MP_IOMUXC_UART4_TXD__UART4_DCE_TX 0x1c4 /* SODIMM 151 */
- MX8MP_IOMUXC_UART4_RXD__UART4_DCE_RX 0x1c4 /* SODIMM 153 */
+ MX8MP_IOMUXC_UART4_RXD__UART4_DCE_RX 0x1c4 /* SODIMM 151 */
+ MX8MP_IOMUXC_UART4_TXD__UART4_DCE_TX 0x1c4 /* SODIMM 153 */
+ >;
+ };
+
+ pinctrl_usb1_en: usb1engrp {
+ fsl,pins = <
+ MX8MP_IOMUXC_GPIO1_IO12__USB1_PWR 0x184 /* SODIMM 155 */
+ >;
+ };
+
+ /* USB_1_ID */
+ pinctrl_usb_1_id: usb1idgrp {
+ fsl,pins = <
+ MX8MP_IOMUXC_SD1_RESET_B__GPIO2_IO10 0x1c4 /* SODIMM 161 */
+ >;
+ };
+
+ pinctrl_usb2_en: usb2engrp {
+ fsl,pins = <
+ MX8MP_IOMUXC_GPIO1_IO14__USB2_PWR 0x184 /* SODIMM 185 */
>;
};
@@ -1241,6 +1361,12 @@
>;
};
+ pinctrl_usdhc2_cd_sleep: usdhc2cdslpgrp {
+ fsl,pins = <
+ MX8MP_IOMUXC_SD2_CD_B__GPIO2_IO12 0x0 /* SODIMM 84 */
+ >;
+ };
+
pinctrl_usdhc2_pwr_en: usdhc2pwrengrp {
fsl,pins = <
MX8MP_IOMUXC_SAI2_RXC__GPIO4_IO22 0x4 /* SODIMM 76 */
@@ -1283,6 +1409,19 @@
>;
};
+ /* Avoid backfeeding with removed card power */
+ pinctrl_usdhc2_sleep: usdhc2slpgrp {
+ fsl,pins = <
+ MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK 0x100
+ MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD 0x100
+ MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0 0x100
+ MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1 0x100
+ MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2 0x100
+ MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3 0x100
+ MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT 0x0
+ >;
+ };
+
pinctrl_usdhc3: usdhc3grp {
fsl,pins = <
MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x190
@@ -1340,19 +1479,24 @@
>;
};
- pinctrl_wifi_ctrl: wifictrlgrp {
+ pinctrl_bluetooth_ctrl: bluetoothctrlgrp {
fsl,pins = <
MX8MP_IOMUXC_SD1_DATA6__GPIO2_IO08 0x1c4 /* WIFI_WKUP_BT */
+ >;
+ };
+
+ pinctrl_wifi_ctrl: wifictrlgrp {
+ fsl,pins = <
MX8MP_IOMUXC_SD1_DATA7__GPIO2_IO09 0x1c4 /* WIFI_WKUP_WLAN */
>;
};
- pinctrl_wifi_i2s: bti2sgrp {
+ pinctrl_wifi_i2s: wifii2sgrp {
fsl,pins = <
MX8MP_IOMUXC_SAI5_RXD2__GPIO3_IO23 0x1d6 /* WIFI_TX_BCLK */
- MX8MP_IOMUXC_SAI5_RXD0__GPIO3_IO21 0x1d6 /* WIFI_TX_DATA0 */
+ MX8MP_IOMUXC_SAI5_RXD0__GPIO3_IO21 0x96 /* WIFI_RX_DATA0 */
MX8MP_IOMUXC_SAI2_RXFS__GPIO4_IO21 0x1d6 /* WIFI_TX_SYNC */
- MX8MP_IOMUXC_SAI5_RXD3__GPIO3_IO24 0x96 /* WIFI_RX_DATA0 */
+ MX8MP_IOMUXC_SAI5_RXD3__GPIO3_IO24 0x1d6 /* WIFI_TX_DATA0 */
>;
};