Part Number: AM5718
Hi,
First off, I am aware of the number of similar questions here on the forum, and I've tried following many of them. I think my problem has to do with UART6 i particular, if referring to TRM Table 24-132. UART Clocks and Resets.
This table states that UART6 is reset by IPU_RET_RST, where almost every other UART is reset by L4PER_RET_RST.
I've tried a number of things, such as:
diff --git a/arch/arm/mach-omap2/clocks-common.c b/arch/arm/mach-omap2/clocks-common.c index 9ae93cf439..f4f51cae17 100644 --- a/arch/arm/mach-omap2/clocks-common.c +++ b/arch/arm/mach-omap2/clocks-common.c @@ -793,6 +793,10 @@ static void setup_clocks_for_console(void) CD_CLKCTRL_CLKTRCTRL_SW_WKUP << CD_CLKCTRL_CLKTRCTRL_SHIFT); + clrsetbits_le32((*prcm)->cm_ipu_clkstctrl, CD_CLKCTRL_CLKTRCTRL_MASK, + CD_CLKCTRL_CLKTRCTRL_SW_WKUP << + CD_CLKCTRL_CLKTRCTRL_SHIFT); + /* Enable all UARTs - console will be on one of them */ clrsetbits_le32((*prcm)->cm_l4per_uart1_clkctrl, MODULE_CLKCTRL_MODULEMODE_MASK, @@ -804,7 +808,7 @@ static void setup_clocks_for_console(void) MODULE_CLKCTRL_MODULEMODE_SW_EXPLICIT_EN << MODULE_CLKCTRL_MODULEMODE_SHIFT); - clrsetbits_le32((*prcm)->cm_l4per_uart3_clkctrl, + clrsetbits_le32((*prcm)->cm_l4per_uart6_clkctrl, MODULE_CLKCTRL_MODULEMODE_MASK, MODULE_CLKCTRL_MODULEMODE_SW_EXPLICIT_EN << MODULE_CLKCTRL_MODULEMODE_SHIFT); @@ -817,6 +821,10 @@ static void setup_clocks_for_console(void) clrsetbits_le32((*prcm)->cm_l4per_clkstctrl, CD_CLKCTRL_CLKTRCTRL_MASK, CD_CLKCTRL_CLKTRCTRL_HW_AUTO << CD_CLKCTRL_CLKTRCTRL_SHIFT); + + clrsetbits_le32((*prcm)->cm_ipu_clkstctrl, CD_CLKCTRL_CLKTRCTRL_MASK, + CD_CLKCTRL_CLKTRCTRL_HW_AUTO << + CD_CLKCTRL_CLKTRCTRL_SHIFT); } void do_enable_clocks(u32 const *clk_domains,
With a debugger I can see the following register:
CLKACTIVITY_UART6_GFCLK 0 - CLKACTIVITY_UART6_GFCLK_0 This field indicates the state of the UART6_GFCLK clock in the domain. [warm reset insensitive]
So I guess I haven't managed to take it out of reset and start its clock.
I would be very grateful for some assistance.
Best regards,
Fredrik Wigert