Correct uart clock root ID. Incorrect ID may result the clock is gated because rate value 0 is returned in imx_get_uartclk()
Signed-off-by: Jun Nie <jun....@linaro.org> --- arch/arm/include/asm/arch-mx7/clock.h | 18 ++++++++++++++++++ arch/arm/mach-imx/Kconfig | 7 +++++++ arch/arm/mach-imx/mx7/clock.c | 2 +- 3 files changed, 26 insertions(+), 1 deletion(-) diff --git a/arch/arm/include/asm/arch-mx7/clock.h b/arch/arm/include/asm/arch-mx7/clock.h index f56564e..dc91111 100644 --- a/arch/arm/include/asm/arch-mx7/clock.h +++ b/arch/arm/include/asm/arch-mx7/clock.h @@ -175,6 +175,24 @@ enum clk_root_index { CLK_ROOT_MAX, }; +#if (CONFIG_IMX_CONSOLE_UART_ID == 1) +#define UART_CLK_ROOT UART1_CLK_ROOT +#elif (CONFIG_IMX_CONSOLE_UART_ID == 2) +#define UART_CLK_ROOT UART2_CLK_ROOT +#elif (CONFIG_IMX_CONSOLE_UART_ID == 3) +#define UART_CLK_ROOT UART3_CLK_ROOT +#elif (CONFIG_IMX_CONSOLE_UART_ID == 4) +#define UART_CLK_ROOT UART4_CLK_ROOT +#elif (CONFIG_IMX_CONSOLE_UART_ID == 5) +#define UART_CLK_ROOT UART5_CLK_ROOT +#elif (CONFIG_IMX_CONSOLE_UART_ID == 6) +#define UART_CLK_ROOT UART6_CLK_ROOT +#elif (CONFIG_IMX_CONSOLE_UART_ID == 7) +#define UART_CLK_ROOT UART7_CLK_ROOT +#else +#error "Invalid IMX UART ID for serial console is defined" +#endif + struct clk_root_setting { enum clk_root_index root; u32 setting; diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig index ec09ef2..7c5db30 100644 --- a/arch/arm/mach-imx/Kconfig +++ b/arch/arm/mach-imx/Kconfig @@ -27,6 +27,13 @@ config IMX_BOOTAUX help bootaux [addr] to boot auxiliary core. +config IMX_CONSOLE_UART_ID + int "UART ID for console" + default 1 + depends on ARCH_MX7 + help + Specify the UART ID that's for serial console. + config USE_IMXIMG_PLUGIN bool "Use imximage plugin code" depends on ARCH_MX7 || ARCH_MX6 diff --git a/arch/arm/mach-imx/mx7/clock.c b/arch/arm/mach-imx/mx7/clock.c index 8cda71c..e364b16 100644 --- a/arch/arm/mach-imx/mx7/clock.c +++ b/arch/arm/mach-imx/mx7/clock.c @@ -53,7 +53,7 @@ static u32 get_ipg_clk(void) u32 imx_get_uartclk(void) { - return get_root_clk(UART1_CLK_ROOT); + return get_root_clk(UART_CLK_ROOT); } u32 imx_get_fecclk(void) -- 2.7.4 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot