[PATCH] ARM: imx: assert SCC gate stays enabled

Sascha Hauer s.hauer at pengutronix.de
Wed Jul 4 03:02:42 EDT 2012


On Mon, Jul 02, 2012 at 11:30:34AM +0200, Uwe Kleine-König wrote:
> The SCC clock is needed in internal boot mode and so must keep enabled.
> This same issue was fixed for the pre-common-clk code in commit

Applied as fix.

Sascha

> 
> 	3d6e614 (mx35: Fix boot ROM hang in internal boot mode)
> 
> Cc: John Ogness <jogness at linutronix.de>
> Cc: Hans J. Koch <hjk at hansjkoch.de>
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig at pengutronix.de>
> ---
>  arch/arm/mach-imx/clk-imx35.c |    9 ++++++++-
>  1 file changed, 8 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm/mach-imx/clk-imx35.c b/arch/arm/mach-imx/clk-imx35.c
> index 920a8cc..c6422fb 100644
> --- a/arch/arm/mach-imx/clk-imx35.c
> +++ b/arch/arm/mach-imx/clk-imx35.c
> @@ -201,7 +201,6 @@ int __init mx35_clocks_init()
>  			pr_err("i.MX35 clk %d: register failed with %ld\n",
>  				i, PTR_ERR(clk[i]));
>  
> -
>  	clk_register_clkdev(clk[pata_gate], NULL, "pata_imx");
>  	clk_register_clkdev(clk[can1_gate], NULL, "flexcan.0");
>  	clk_register_clkdev(clk[can2_gate], NULL, "flexcan.1");
> @@ -264,6 +263,14 @@ int __init mx35_clocks_init()
>  	clk_prepare_enable(clk[iim_gate]);
>  	clk_prepare_enable(clk[emi_gate]);
>  
> +	/*
> +	 * SCC is needed to boot via mmc after a watchdog reset. The clock code
> +	 * before conversion to common clk also enabled UART1 (which isn't
> +	 * handled here and not needed for mmc) and IIM (which is enabled
> +	 * unconditionally above).
> +	 */
> +	clk_prepare_enable(clk[scc_gate]);
> +
>  	imx_print_silicon_rev("i.MX35", mx35_revision());
>  
>  #ifdef CONFIG_MXC_USE_EPIT
> -- 
> 1.7.10
> 
> 

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



More information about the linux-arm-kernel mailing list