diff options
Diffstat (limited to 'arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi')
-rwxr-xr-x | arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi | 288 |
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 = <®_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 = <®_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 = <®_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 = <®_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 */ >; }; |