diff mbox

[U-Boot,4/5] imx: mx6sx: select OSC as uart's clk parent

Message ID 1502180499-19109-4-git-send-email-peng.fan@nxp.com
State Awaiting Upstream
Delegated to: Stefano Babic
Headers show

Commit Message

Peng Fan Aug. 8, 2017, 8:21 a.m. UTC
As M4 is sourcing UART clk from OSC, to make UART work
when M4 is enabled, need to select OSC as clk parent,
24M OSC is enough for debug UART in uboot.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
---
 arch/arm/mach-imx/mx6/soc.c | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Stefano Babic Aug. 16, 2017, 10:06 a.m. UTC | #1
Hi Peng,

this is orthogonal in the pathcset. I apply this even if I have not
applied 2-3.

On 08/08/2017 10:21, Peng Fan wrote:
> As M4 is sourcing UART clk from OSC, to make UART work
> when M4 is enabled, need to select OSC as clk parent,
> 24M OSC is enough for debug UART in uboot.
> 
> Signed-off-by: Peng Fan <peng.fan@nxp.com>
> Cc: Stefano Babic <sbabic@denx.de>
> Cc: Fabio Estevam <fabio.estevam@nxp.com>
> ---
>  arch/arm/mach-imx/mx6/soc.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/arch/arm/mach-imx/mx6/soc.c b/arch/arm/mach-imx/mx6/soc.c
> index e2ecc3a..b4ec11a 100644
> --- a/arch/arm/mach-imx/mx6/soc.c
> +++ b/arch/arm/mach-imx/mx6/soc.c
> @@ -364,6 +364,7 @@ int arch_cpu_init(void)
>  {
>  	struct sched_ctrl_regs *regs =
>  		(struct sched_ctrl_regs *)MF2_SCHED_BASE_ADDR;
> +	struct mxc_ccm_reg *ccm = (struct mxc_ccm_reg *)CCM_BASE_ADDR;
>  
>  	init_aips();
>  
> @@ -434,6 +435,9 @@ int arch_cpu_init(void)
>  
>  	imx_set_wdog_powerdown(false); /* Disable PDE bit of WMCR register */
>  
> +	if (is_mx6sx())
> +		setbits_le32(&ccm->cscdr1, MXC_CCM_CSCDR1_UART_CLK_SEL);
> +
>  	/*
>  	 * To resolve USB camera bandwidth issue, the patch sets
>  	 * recommended AQoS setting from IC team value for peripheral
> 



Applied to u-boot-imx, -master, thanks !

Best regards,
Stefano Babic
diff mbox

Patch

diff --git a/arch/arm/mach-imx/mx6/soc.c b/arch/arm/mach-imx/mx6/soc.c
index e2ecc3a..b4ec11a 100644
--- a/arch/arm/mach-imx/mx6/soc.c
+++ b/arch/arm/mach-imx/mx6/soc.c
@@ -364,6 +364,7 @@  int arch_cpu_init(void)
 {
 	struct sched_ctrl_regs *regs =
 		(struct sched_ctrl_regs *)MF2_SCHED_BASE_ADDR;
+	struct mxc_ccm_reg *ccm = (struct mxc_ccm_reg *)CCM_BASE_ADDR;
 
 	init_aips();
 
@@ -434,6 +435,9 @@  int arch_cpu_init(void)
 
 	imx_set_wdog_powerdown(false); /* Disable PDE bit of WMCR register */
 
+	if (is_mx6sx())
+		setbits_le32(&ccm->cscdr1, MXC_CCM_CSCDR1_UART_CLK_SEL);
+
 	/*
 	 * To resolve USB camera bandwidth issue, the patch sets
 	 * recommended AQoS setting from IC team value for peripheral