aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/control.h
diff options
context:
space:
mode:
authorNishanth Menon <nm@ti.com>2010-12-20 15:05:06 -0500
committerKevin Hilman <khilman@deeprootsystems.com>2010-12-21 17:45:50 -0500
commit458e999eb14a301d4176783c8fcb277f5d009b4e (patch)
tree7300efdef971f91e4d7601f9bc1174fe9716f313 /arch/arm/mach-omap2/control.h
parent8cdfd83473d9b408b924b5d32777ac3fddd251ff (diff)
OMAP3630: PM: Erratum i608: disable RTA
Erratum id: i608 RTA (Retention Till Access) feature is not supported and leads to device stability issues when enabled. This impacts modules with embedded memories on OMAP3630 Workaround is to disable RTA on boot and coming out of core off. For disabling RTA coming out of off mode, we do this by overriding the restore pointer for 3630 as the first point of entry before caches are touched and is common for GP and HS devices. To disable earlier than this could be possible by modifying the PPA for HS devices, but not for GP devices. Cc: Kevin Hilman <khilman@deeprootsystems.com> Cc: Tony Lindgren <tony@atomide.com> Acked-by: Jean Pihet <j-pihet@ti.com> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> [ambresh@ti.com: co-developer] Signed-off-by: Ambresh K <ambresh@ti.com> Signed-off-by: Nishanth Menon <nm@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Diffstat (limited to 'arch/arm/mach-omap2/control.h')
-rw-r--r--arch/arm/mach-omap2/control.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/arm/mach-omap2/control.h b/arch/arm/mach-omap2/control.h
index b6c6b7c450b..ec98dd71621 100644
--- a/arch/arm/mach-omap2/control.h
+++ b/arch/arm/mach-omap2/control.h
@@ -204,6 +204,10 @@
204#define OMAP343X_CONTROL_WKUP_DEBOBS3 (OMAP343X_CONTROL_GENERAL_WKUP + 0x014) 204#define OMAP343X_CONTROL_WKUP_DEBOBS3 (OMAP343X_CONTROL_GENERAL_WKUP + 0x014)
205#define OMAP343X_CONTROL_WKUP_DEBOBS4 (OMAP343X_CONTROL_GENERAL_WKUP + 0x018) 205#define OMAP343X_CONTROL_WKUP_DEBOBS4 (OMAP343X_CONTROL_GENERAL_WKUP + 0x018)
206 206
207/* 36xx-only RTA - Retention till Accesss control registers and bits */
208#define OMAP36XX_CONTROL_MEM_RTA_CTRL 0x40C
209#define OMAP36XX_RTA_DISABLE 0x0
210
207/* 34xx D2D idle-related pins, handled by PM core */ 211/* 34xx D2D idle-related pins, handled by PM core */
208#define OMAP3_PADCONF_SAD2D_MSTANDBY 0x250 212#define OMAP3_PADCONF_SAD2D_MSTANDBY 0x250
209#define OMAP3_PADCONF_SAD2D_IDLEACK 0x254 213#define OMAP3_PADCONF_SAD2D_IDLEACK 0x254
@@ -347,10 +351,11 @@ extern void omap3_save_scratchpad_contents(void);
347extern void omap3_clear_scratchpad_contents(void); 351extern void omap3_clear_scratchpad_contents(void);
348extern u32 *get_restore_pointer(void); 352extern u32 *get_restore_pointer(void);
349extern u32 *get_es3_restore_pointer(void); 353extern u32 *get_es3_restore_pointer(void);
354extern u32 *get_omap3630_restore_pointer(void);
350extern u32 omap3_arm_context[128]; 355extern u32 omap3_arm_context[128];
351extern void omap3_control_save_context(void); 356extern void omap3_control_save_context(void);
352extern void omap3_control_restore_context(void); 357extern void omap3_control_restore_context(void);
353 358extern void omap3630_ctrl_disable_rta(void);
354#else 359#else
355#define omap_ctrl_base_get() 0 360#define omap_ctrl_base_get() 0
356#define omap_ctrl_readb(x) 0 361#define omap_ctrl_readb(x) 0