From d49d36607bcd1b1c989dc4af1a838d4ef15b0c00 Mon Sep 17 00:00:00 2001 From: "Choraria, Rohit" Date: Thu, 15 Nov 2007 13:27:03 -0800 Subject: [PATCH] ARM: OMAP: Warm reset functionality for 34xx This patch adds the implementation for warm reset functionality for OMAP3. Signed-off-by: Rohit Choraria Signed-off-by: Tony Lindgren --- arch/arm/mach-omap2/prcm.c | 11 +++++++++-- include/asm-arm/arch-omap/system.h | 2 +- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/arch/arm/mach-omap2/prcm.c b/arch/arm/mach-omap2/prcm.c index 9af88488ede..9857ba7039d 100644 --- a/arch/arm/mach-omap2/prcm.c +++ b/arch/arm/mach-omap2/prcm.c @@ -33,6 +33,13 @@ void omap_prcm_arch_reset(char mode) { u32 wkup; omap2_clk_prepare_for_reboot(); - wkup = prm_read_mod_reg(WKUP_MOD, RM_RSTCTRL) | OMAP_RST_DPLL3; - prm_write_mod_reg(wkup, WKUP_MOD, RM_RSTCTRL); + + if (cpu_is_omap24xx()) { + wkup = prm_read_mod_reg(WKUP_MOD, RM_RSTCTRL) | OMAP_RST_DPLL3; + prm_write_mod_reg(wkup, WKUP_MOD, RM_RSTCTRL); + } else if (cpu_is_omap34xx()) { + wkup = prm_read_mod_reg(OMAP3430_GR_MOD, RM_RSTCTRL) + | OMAP_RST_DPLL3; + prm_write_mod_reg(wkup, OMAP3430_GR_MOD, RM_RSTCTRL); + } } diff --git a/include/asm-arm/arch-omap/system.h b/include/asm-arm/arch-omap/system.h index ac2bfa433f0..5bdac693fdd 100644 --- a/include/asm-arm/arch-omap/system.h +++ b/include/asm-arm/arch-omap/system.h @@ -40,7 +40,7 @@ static inline void omap1_arch_reset(char mode) static inline void arch_reset(char mode) { - if (!cpu_is_omap24xx()) + if (!cpu_class_is_omap2()) omap1_arch_reset(mode); else omap_prcm_arch_reset(mode); -- 2.41.3