From 2541d15f16479fd56debe1ea55dee03c3886e33c Mon Sep 17 00:00:00 2001 From: Tero Kristo Date: Mon, 31 Mar 2014 18:15:44 +0300 Subject: ARM: OMAP3/OMAP4: PRM: add prm_features flags and add IO wakeup under it prm_features flag will contain SoC specific feature enabler flags. Initially IO wakeup is added under this. Helps to get rid of runtime cpu_is_X checks. Signed-off-by: Tero Kristo Signed-off-by: Paul Walmsley --- arch/arm/mach-omap2/prm3xxx.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'arch/arm/mach-omap2/prm3xxx.c') diff --git a/arch/arm/mach-omap2/prm3xxx.c b/arch/arm/mach-omap2/prm3xxx.c index 2631b9f..9c95ac2 100644 --- a/arch/arm/mach-omap2/prm3xxx.c +++ b/arch/arm/mach-omap2/prm3xxx.c @@ -247,7 +247,7 @@ void omap3xxx_prm_reconfigure_io_chain(void) */ static void __init omap3xxx_prm_enable_io_wakeup(void) { - if (omap3_has_io_wakeup()) + if (prm_features & PRM_HAS_IO_WAKEUP) omap2_prm_set_mod_reg_bits(OMAP3430_EN_IO_MASK, WKUP_MOD, PM_WKEN); } @@ -407,6 +407,9 @@ static struct prm_ll_data omap3xxx_prm_ll_data = { int __init omap3xxx_prm_init(void) { + if (omap3_has_io_wakeup()) + prm_features |= PRM_HAS_IO_WAKEUP; + return prm_register(&omap3xxx_prm_ll_data); } @@ -417,6 +420,9 @@ static int __init omap3xxx_prm_late_init(void) if (!cpu_is_omap34xx()) return 0; + if (!(prm_features & PRM_HAS_IO_WAKEUP)) + return 0; + omap3xxx_prm_enable_io_wakeup(); ret = omap_prcm_register_chain_handler(&omap3_prcm_irq_setup); if (!ret) -- cgit v1.1