aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/prcm.c
diff options
context:
space:
mode:
authorPaul Walmsley <paul@pwsan.com>2010-12-21 17:30:53 -0500
committerPaul Walmsley <paul@pwsan.com>2010-12-21 22:01:53 -0500
commitf5f9d132d1c212bf3828c7926d95f79e0c20d243 (patch)
tree979937fd6eeb58a5599bf5b1222d81c6ba6e3f3d /arch/arm/mach-omap2/prcm.c
parent166353bd75587a2158d713af1b9489a79e0ce297 (diff)
OMAP3: control/PRCM: move CONTROL_PADCONF_SYS_NIRQ save/restore to SCM code
For some reason, the PRCM context save/restore code also saves and restores a single System Control Module register, CONTROL_PADCONF_SYS_NIRQ. This is probably just an error -- the register should be handled by SCM code -- so this patch moves it there. If this register really does need to be saved and restored before the rest of the PRCM registers, the code to do so should live in the SCM code, and the PM code should call this separate function. This register pertains to devices with a stacked modem, so this patch is unlikely to affect most OMAP devices out there. Signed-off-by: Paul Walmsley <paul@pwsan.com> Cc: Kevin Hilman <khilman@deeprootsystems.com> Reviewed-by: Kevin Hilman <khilman@deeprootsystems.com> Tested-by: Kevin Hilman <khilman@deeprootsystems.com> Tested-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Tested-by: Rajendra Nayak <rnayak@ti.com>
Diffstat (limited to 'arch/arm/mach-omap2/prcm.c')
-rw-r--r--arch/arm/mach-omap2/prcm.c5
1 files changed, 0 insertions, 5 deletions
diff --git a/arch/arm/mach-omap2/prcm.c b/arch/arm/mach-omap2/prcm.c
index 2eca8475d39..d27cdbaeea5 100644
--- a/arch/arm/mach-omap2/prcm.c
+++ b/arch/arm/mach-omap2/prcm.c
@@ -42,7 +42,6 @@ static void __iomem *cm2_base;
42#define MAX_MODULE_ENABLE_WAIT 100000 42#define MAX_MODULE_ENABLE_WAIT 100000
43 43
44struct omap3_prcm_regs { 44struct omap3_prcm_regs {
45 u32 control_padconf_sys_nirq;
46 u32 iva2_cm_clksel1; 45 u32 iva2_cm_clksel1;
47 u32 iva2_cm_clksel2; 46 u32 iva2_cm_clksel2;
48 u32 cm_sysconfig; 47 u32 cm_sysconfig;
@@ -312,8 +311,6 @@ void __init omap2_set_globals_prcm(struct omap_globals *omap2_globals)
312#ifdef CONFIG_ARCH_OMAP3 311#ifdef CONFIG_ARCH_OMAP3
313void omap3_prcm_save_context(void) 312void omap3_prcm_save_context(void)
314{ 313{
315 prcm_context.control_padconf_sys_nirq =
316 omap_ctrl_readl(OMAP343X_CONTROL_PADCONF_SYSNIRQ);
317 prcm_context.iva2_cm_clksel1 = 314 prcm_context.iva2_cm_clksel1 =
318 cm_read_mod_reg(OMAP3430_IVA2_MOD, CM_CLKSEL1); 315 cm_read_mod_reg(OMAP3430_IVA2_MOD, CM_CLKSEL1);
319 prcm_context.iva2_cm_clksel2 = 316 prcm_context.iva2_cm_clksel2 =
@@ -466,8 +463,6 @@ void omap3_prcm_save_context(void)
466 463
467void omap3_prcm_restore_context(void) 464void omap3_prcm_restore_context(void)
468{ 465{
469 omap_ctrl_writel(prcm_context.control_padconf_sys_nirq,
470 OMAP343X_CONTROL_PADCONF_SYSNIRQ);
471 cm_write_mod_reg(prcm_context.iva2_cm_clksel1, OMAP3430_IVA2_MOD, 466 cm_write_mod_reg(prcm_context.iva2_cm_clksel1, OMAP3430_IVA2_MOD,
472 CM_CLKSEL1); 467 CM_CLKSEL1);
473 cm_write_mod_reg(prcm_context.iva2_cm_clksel2, OMAP3430_IVA2_MOD, 468 cm_write_mod_reg(prcm_context.iva2_cm_clksel2, OMAP3430_IVA2_MOD,