OMAP3: pm: introduce errata handling

Introduce errata handling for OMAP3. This patch introduces
errata variable and stub for initialization which will be
filled up by follow-on patches.

Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
This commit is contained in:
Nishanth Menon 2010-12-20 14:05:05 -06:00 committed by Kevin Hilman
parent 9d93b8a2c8
commit 8cdfd83473
2 changed files with 16 additions and 0 deletions

View File

@ -85,4 +85,11 @@ extern unsigned int save_secure_ram_context_sz;
extern unsigned int omap24xx_cpu_suspend_sz; extern unsigned int omap24xx_cpu_suspend_sz;
extern unsigned int omap34xx_cpu_suspend_sz; extern unsigned int omap34xx_cpu_suspend_sz;
#if defined(CONFIG_PM) && defined(CONFIG_ARCH_OMAP3)
extern u16 pm34xx_errata;
#define IS_PM34XX_ERRATUM(id) (pm34xx_errata & (id))
#else
#define IS_PM34XX_ERRATUM(id) 0
#endif /* defined(CONFIG_PM) && defined(CONFIG_ARCH_OMAP3) */
#endif #endif

View File

@ -68,6 +68,9 @@ static inline bool is_suspending(void)
#define OMAP343X_TABLE_VALUE_OFFSET 0xc0 #define OMAP343X_TABLE_VALUE_OFFSET 0xc0
#define OMAP343X_CONTROL_REG_VALUE_OFFSET 0xc8 #define OMAP343X_CONTROL_REG_VALUE_OFFSET 0xc8
/* pm34xx errata defined in pm.h */
u16 pm34xx_errata;
struct power_state { struct power_state {
struct powerdomain *pwrdm; struct powerdomain *pwrdm;
u32 next_state; u32 next_state;
@ -991,6 +994,10 @@ void omap_push_sram_idle(void)
save_secure_ram_context_sz); save_secure_ram_context_sz);
} }
static void __init pm_errata_configure(void)
{
}
static int __init omap3_pm_init(void) static int __init omap3_pm_init(void)
{ {
struct power_state *pwrst, *tmp; struct power_state *pwrst, *tmp;
@ -1000,6 +1007,8 @@ static int __init omap3_pm_init(void)
if (!cpu_is_omap34xx()) if (!cpu_is_omap34xx())
return -ENODEV; return -ENODEV;
pm_errata_configure();
printk(KERN_ERR "Power Management for TI OMAP3.\n"); printk(KERN_ERR "Power Management for TI OMAP3.\n");
/* XXX prcm_setup_regs needs to be before enabling hw /* XXX prcm_setup_regs needs to be before enabling hw