summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Krummenacher <max.krummenacher@toradex.com>2020-11-02 21:22:30 +0100
committerDenys Drozdov <denys.drozdov@toradex.com>2021-01-08 19:42:09 +0200
commit7e333dac7ced4e037f7fac3c0551324ecce391d9 (patch)
treeca763f83c2916cfd69892add0d50b78f911785fe
parent5fafc6f47ac04e5dd077c7fe3e8cd543f1d0776e (diff)
verdin-imx8mm.c: enable sleep_moci output
This powers some peripherals on the carrier board e.g. the USB hub. Related-to: ELB-3206 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
-rw-r--r--board/toradex/verdin-imx8mm/verdin-imx8mm.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/board/toradex/verdin-imx8mm/verdin-imx8mm.c b/board/toradex/verdin-imx8mm/verdin-imx8mm.c
index c088db1f22..32d1aace82 100644
--- a/board/toradex/verdin-imx8mm/verdin-imx8mm.c
+++ b/board/toradex/verdin-imx8mm/verdin-imx8mm.c
@@ -34,6 +34,7 @@ DECLARE_GLOBAL_DATA_PTR;
#define I2C_PMIC 0
+#define GPIO_PAD_CTRL (PAD_CTL_HYS | PAD_CTL_PUE | PAD_CTL_PE | PAD_CTL_DSE4)
#define UART_PAD_CTRL (PAD_CTL_PUE | PAD_CTL_PE | PAD_CTL_DSE4)
#define WDOG_PAD_CTRL (PAD_CTL_DSE6 | PAD_CTL_ODE | PAD_CTL_PUE | PAD_CTL_PE)
@@ -49,7 +50,11 @@ static iomux_v3_cfg_t const uart_pads[] = {
};
static iomux_v3_cfg_t const wdog_pads[] = {
- IMX8MM_PAD_GPIO1_IO02_WDOG1_WDOG_B | MUX_PAD_CTRL(WDOG_PAD_CTRL),
+ IMX8MM_PAD_GPIO1_IO02_WDOG1_WDOG_B | MUX_PAD_CTRL(WDOG_PAD_CTRL),
+};
+
+static iomux_v3_cfg_t const sleep_moci_pads[] = {
+ IMX8MM_PAD_SAI3_TXD_GPIO5_IO1 | MUX_PAD_CTRL(GPIO_PAD_CTRL),
};
int board_early_init_f(void)
@@ -418,6 +423,11 @@ int board_late_init(void)
{
select_dt_from_module_version();
+ /* Power up carrier board HW, e.g. USB */
+ imx_iomux_v3_setup_multiple_pads(sleep_moci_pads, ARRAY_SIZE(sleep_moci_pads));
+ gpio_request(IMX_GPIO_NR(5, 1), "SLEEP_MOCI#");
+ gpio_direction_output(IMX_GPIO_NR(5, 1), 1);
+
return 0;
}