summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Agner <stefan.agner@toradex.com>2017-12-27 17:07:18 +0100
committerMax Krummenacher <max.krummenacher@toradex.com>2018-11-29 10:45:59 +0100
commit81591346d11ffdf9a2442ad976390ffe0e61abda (patch)
tree01f8c012ca72d9e1aac11d5c49b22b2996af9a35
parentba629689c627a571d5902a1c50fe9927424b45c6 (diff)
apalis-imx8: fix eMMC/MMC/SD interface muxing
Signed-off-by: Stefan Agner <stefan.agner@toradex.com> (cherry picked from commit fa3d4f980a515b135778a74ce1b7476f61ef20d0) (cherry picked from commit 2ee92bc1dd56b44343079a5474d0fc4e79f28f4a) (cherry picked from commit 649afbe0aec4089112772a49a7e6f7d34c3741a7)
-rw-r--r--arch/arm/dts/fsl-imx8qm-apalis.dts22
-rw-r--r--board/toradex/apalis-imx8/apalis-imx8.c10
2 files changed, 20 insertions, 12 deletions
diff --git a/arch/arm/dts/fsl-imx8qm-apalis.dts b/arch/arm/dts/fsl-imx8qm-apalis.dts
index 2a5634e21f..b06021b2b1 100644
--- a/arch/arm/dts/fsl-imx8qm-apalis.dts
+++ b/arch/arm/dts/fsl-imx8qm-apalis.dts
@@ -190,9 +190,7 @@
pinctrl_usdhc2_gpio: usdhc2grpgpio {
fsl,pins = <
- SC_P_USDHC1_DATA6_LSIO_GPIO5_IO21 0x00000021
- SC_P_USDHC1_DATA7_LSIO_GPIO5_IO22 0x00000021
- SC_P_USDHC1_RESET_B_LSIO_GPIO4_IO07 0x00000021
+ SC_P_ESAI1_TX1_LSIO_GPIO2_IO09 0x00000021
>;
};
@@ -204,6 +202,10 @@
SC_P_USDHC1_DATA1_CONN_USDHC1_DATA1 0x00000021
SC_P_USDHC1_DATA2_CONN_USDHC1_DATA2 0x00000021
SC_P_USDHC1_DATA3_CONN_USDHC1_DATA3 0x00000021
+ SC_P_USDHC1_DATA4_CONN_USDHC1_DATA4 0x00000021
+ SC_P_USDHC1_DATA5_CONN_USDHC1_DATA5 0x00000021
+ SC_P_USDHC1_DATA6_CONN_USDHC1_DATA6 0x00000021
+ SC_P_USDHC1_DATA7_CONN_USDHC1_DATA7 0x00000021
SC_P_USDHC1_VSELECT_CONN_USDHC1_VSELECT 0x00000021
>;
};
@@ -216,6 +218,10 @@
SC_P_USDHC1_DATA1_CONN_USDHC1_DATA1 0x00000020
SC_P_USDHC1_DATA2_CONN_USDHC1_DATA2 0x00000020
SC_P_USDHC1_DATA3_CONN_USDHC1_DATA3 0x00000020
+ SC_P_USDHC1_DATA4_CONN_USDHC1_DATA4 0x00000020
+ SC_P_USDHC1_DATA5_CONN_USDHC1_DATA5 0x00000020
+ SC_P_USDHC1_DATA6_CONN_USDHC1_DATA6 0x00000020
+ SC_P_USDHC1_DATA7_CONN_USDHC1_DATA7 0x00000020
SC_P_USDHC1_VSELECT_CONN_USDHC1_VSELECT 0x00000020
>;
};
@@ -228,6 +234,10 @@
SC_P_USDHC1_DATA1_CONN_USDHC1_DATA1 0x00000020
SC_P_USDHC1_DATA2_CONN_USDHC1_DATA2 0x00000020
SC_P_USDHC1_DATA3_CONN_USDHC1_DATA3 0x00000020
+ SC_P_USDHC1_DATA4_CONN_USDHC1_DATA4 0x00000020
+ SC_P_USDHC1_DATA5_CONN_USDHC1_DATA5 0x00000020
+ SC_P_USDHC1_DATA6_CONN_USDHC1_DATA6 0x00000020
+ SC_P_USDHC1_DATA7_CONN_USDHC1_DATA7 0x00000020
SC_P_USDHC1_VSELECT_CONN_USDHC1_VSELECT 0x00000020
>;
};
@@ -240,8 +250,6 @@
SC_P_USDHC2_DATA1_CONN_USDHC2_DATA1 0x00000021
SC_P_USDHC2_DATA2_CONN_USDHC2_DATA2 0x00000021
SC_P_USDHC2_DATA3_CONN_USDHC2_DATA3 0x00000021
- /* WP */
- SC_P_USDHC2_WP_LSIO_GPIO4_IO11 0x00000021
/* CD */
SC_P_USDHC2_CD_B_LSIO_GPIO4_IO12 0x00000021
>;
@@ -329,8 +337,7 @@
pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
bus-width = <4>;
- cd-gpios = <&gpio5 22 GPIO_ACTIVE_LOW>;
- wp-gpios = <&gpio5 21 GPIO_ACTIVE_HIGH>;
+ cd-gpios = <&gpio2 9 GPIO_ACTIVE_LOW>;
vmmc-supply = <&reg_usdhc2_vmmc>;
status = "okay";
};
@@ -340,7 +347,6 @@
pinctrl-0 = <&pinctrl_usdhc3>;
bus-width = <4>;
cd-gpios = <&gpio4 12 GPIO_ACTIVE_LOW>;
- wp-gpios = <&gpio4 11 GPIO_ACTIVE_HIGH>;
status = "okay";
};
diff --git a/board/toradex/apalis-imx8/apalis-imx8.c b/board/toradex/apalis-imx8/apalis-imx8.c
index e5d5aee0e7..735b0e010d 100644
--- a/board/toradex/apalis-imx8/apalis-imx8.c
+++ b/board/toradex/apalis-imx8/apalis-imx8.c
@@ -96,7 +96,7 @@ int board_early_init_f(void)
#ifdef CONFIG_FSL_ESDHC
-#define USDHC1_CD_GPIO IMX_GPIO_NR(5, 22)
+#define USDHC1_CD_GPIO IMX_GPIO_NR(2, 9)
#define USDHC2_CD_GPIO IMX_GPIO_NR(4, 12)
static struct fsl_esdhc_cfg usdhc_cfg[CONFIG_SYS_FSL_USDHC_NUM] = {
@@ -127,8 +127,11 @@ static iomux_cfg_t usdhc1_sd[] = {
SC_P_USDHC1_DATA1 | MUX_PAD_CTRL(ESDHC_PAD_CTRL),
SC_P_USDHC1_DATA2 | MUX_PAD_CTRL(ESDHC_PAD_CTRL),
SC_P_USDHC1_DATA3 | MUX_PAD_CTRL(ESDHC_PAD_CTRL),
- SC_P_USDHC1_DATA6 | MUX_MODE_ALT(2) | MUX_PAD_CTRL(ESDHC_PAD_CTRL), /* Mux for WP */
- SC_P_USDHC1_DATA7 | MUX_MODE_ALT(3) | MUX_PAD_CTRL(ESDHC_PAD_CTRL), /* Mux for CD, GPIO5 IO22 */
+ SC_P_USDHC1_DATA4 | MUX_PAD_CTRL(ESDHC_PAD_CTRL),
+ SC_P_USDHC1_DATA5 | MUX_PAD_CTRL(ESDHC_PAD_CTRL),
+ SC_P_USDHC1_DATA6 | MUX_PAD_CTRL(ESDHC_PAD_CTRL),
+ SC_P_USDHC1_DATA7 | MUX_PAD_CTRL(ESDHC_PAD_CTRL),
+ SC_P_ESAI1_TX1 | MUX_MODE_ALT(3) | MUX_PAD_CTRL(ESDHC_PAD_CTRL), /* Mux for CD, GPIO2 IO09 */
SC_P_USDHC1_RESET_B | MUX_PAD_CTRL(ESDHC_PAD_CTRL),
SC_P_USDHC1_VSELECT | MUX_PAD_CTRL(ESDHC_PAD_CTRL),
};
@@ -141,7 +144,6 @@ static iomux_cfg_t usdhc2_sd[] = {
SC_P_USDHC2_DATA2 | MUX_PAD_CTRL(ESDHC_PAD_CTRL),
SC_P_USDHC2_DATA3 | MUX_PAD_CTRL(ESDHC_PAD_CTRL),
SC_P_USDHC2_RESET_B | MUX_PAD_CTRL(ESDHC_PAD_CTRL),
- SC_P_USDHC2_WP | MUX_PAD_CTRL(ESDHC_PAD_CTRL),
SC_P_USDHC2_CD_B | MUX_MODE_ALT(3) | MUX_PAD_CTRL(ESDHC_PAD_CTRL), /* Mux to GPIO4 IO12 */
};