summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYe Li <ye.li@nxp.com>2020-09-01 20:34:39 -0700
committerYe Li <ye.li@nxp.com>2022-04-06 18:04:06 +0800
commitae43762a96223373cc49e0daa83dcb3dda60a851 (patch)
tree139fcedb839a425f176fafef697b2f7e30637499
parent9e79dd53613743a1814ba1fb545138098ef54ef7 (diff)
MLK-24616 imx8: misc: Fix hardcoded LPUART0 for LPCG
The LPCG enablement is hardcoded to LPUART0, it causes problem when customers want to use other UART ports Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> (cherry picked from commit 59bcdda5391d8d36068b44726a95d2e22bac1ed6) (cherry picked from commit 6c12b13f40416f23e7d13592d4d90b3956a14914) (cherry picked from commit 9dd6472acc970db5bd13f40973d84d9f79637478) (cherry picked from commit f83dcd48381e9194222f3231d9d1640ca2cc1048)
-rw-r--r--arch/arm/mach-imx/imx8/misc.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/arm/mach-imx/imx8/misc.c b/arch/arm/mach-imx/imx8/misc.c
index c78b3105a9..508a7c8558 100644
--- a/arch/arm/mach-imx/imx8/misc.c
+++ b/arch/arm/mach-imx/imx8/misc.c
@@ -18,6 +18,9 @@ int sc_pm_setup_uart(sc_rsrc_t uart_rsrc, sc_pm_clock_rate_t clk_rate)
sc_pm_clock_rate_t rate = clk_rate;
int ret;
+ if (uart_rsrc < SC_R_UART_0 || uart_rsrc > SC_R_UART_4)
+ return -EINVAL;
+
/* Power up UARTn */
ret = sc_pm_set_resource_power_mode(-1, uart_rsrc, SC_PM_PW_MODE_ON);
if (ret)
@@ -33,7 +36,7 @@ int sc_pm_setup_uart(sc_rsrc_t uart_rsrc, sc_pm_clock_rate_t clk_rate)
if (ret)
return ret;
- lpcg_all_clock_on(LPUART_0_LPCG);
+ lpcg_all_clock_on(LPUART_0_LPCG + (uart_rsrc - SC_R_UART_0) * 0x10000);
return 0;
}