From: SRICHARAN R Date: Mon, 12 Mar 2012 02:25:52 +0000 (+0000) Subject: OMAP5: reset: Use cold reset in case of 5430ES1.0 X-Git-Tag: v2012.07-rc1~144^2~137 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=0696473be705287eb728356c79af19b69b60ab09;p=u-boot OMAP5: reset: Use cold reset in case of 5430ES1.0 Warm reset is not functional in case of omap5430ES1.0. So override the weak reset_cpu function to use cold reset instead. Signed-off-by: R Sricharan --- diff --git a/arch/arm/cpu/armv7/omap5/hwinit.c b/arch/arm/cpu/armv7/omap5/hwinit.c index 7da7075e1d..d01cc81333 100644 --- a/arch/arm/cpu/armv7/omap5/hwinit.c +++ b/arch/arm/cpu/armv7/omap5/hwinit.c @@ -160,3 +160,17 @@ void init_omap_revision(void) *omap_si_rev = OMAP5430_SILICON_ID_INVALID; } } + +void reset_cpu(ulong ignored) +{ + u32 omap_rev = omap_revision(); + + /* + * WARM reset is not functional in case of OMAP5430 ES1.0 soc. + * So use cold reset in case instead. + */ + if (omap_rev == OMAP5430_ES1_0) + writel(PRM_RSTCTRL_RESET << 0x1, PRM_RSTCTRL); + else + writel(PRM_RSTCTRL_RESET, PRM_RSTCTRL); +}