
Dear Andrew Bradford,
If configured to use UART{1,2,4,5}, such as on the Beaglebone RS232 cape, enable the required clocks for the UART in use.
Signed-off-by: Andrew Bradford andrew@bradfordembedded.com
arch/arm/cpu/armv7/am33xx/clock.c | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+)
diff --git a/arch/arm/cpu/armv7/am33xx/clock.c b/arch/arm/cpu/armv7/am33xx/clock.c index 2b19506..4eb9226 100644 --- a/arch/arm/cpu/armv7/am33xx/clock.c +++ b/arch/arm/cpu/armv7/am33xx/clock.c @@ -114,6 +114,34 @@ static void enable_per_clocks(void) while (readl(&cmwkup->wkup_uart0ctrl) != PRCM_MOD_EN) ;
- /* UART1 */
+#ifdef CONFIG_SERIAL2
- writel(PRCM_MOD_EN, &cmper->uart1clkctrl);
- while (readl(&cmper->uart1clkctrl) != PRCM_MOD_EN)
;
Call WATCHDOG_RESET() here, fix glboally
+#endif /* CONFIG_SERIAL2 */
- /* UART2 */
+#ifdef CONFIG_SERIAL3
- writel(PRCM_MOD_EN, &cmper->uart2clkctrl);
- while (readl(&cmper->uart2clkctrl) != PRCM_MOD_EN)
;
+#endif /* CONFIG_SERIAL3 */
- /* UART4 */
+#ifdef CONFIG_SERIAL5
- writel(PRCM_MOD_EN, &cmper->uart4clkctrl);
- while (readl(&cmper->uart4clkctrl) != PRCM_MOD_EN)
;
+#endif /* CONFIG_SERIAL5 */
- /* UART5 */
+#ifdef CONFIG_SERIAL6
- writel(PRCM_MOD_EN, &cmper->uart5clkctrl);
- while (readl(&cmper->uart5clkctrl) != PRCM_MOD_EN)
;
+#endif /* CONFIG_SERIAL6 */
- /* MMC0*/ writel(PRCM_MOD_EN, &cmper->mmc0clkctrl); while (readl(&cmper->mmc0clkctrl) != PRCM_MOD_EN)
Best regards, Marek Vasut