ARM: OMAP4+: PRM: setup prm_features from the PRM init time flags
authorTero Kristo <t-kristo@ti.com>
Fri, 21 Nov 2014 12:45:29 +0000 (14:45 +0200)
committerTero Kristo <t-kristo@ti.com>
Tue, 31 Mar 2015 18:26:52 +0000 (21:26 +0300)
Currently some cpu_is_X checks are used to setup prm_features, however
the same can be accomplished by just passing these flags from the PRM
init data. This is done in preparation to make PRM a separate driver.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
arch/arm/mach-omap2/prm44xx.c
arch/arm/mach-omap2/prm_common.c

index a980d245a0bb5946feca644c2f3b5fa59ffb616f..243133c4bf0d998db3dd19385b1e1763c124f0fc 100644 (file)
@@ -707,10 +707,10 @@ int __init omap44xx_prm_init(const struct omap_prcm_init_data *data)
 {
        omap_prm_base_init();
 
-       if (cpu_is_omap44xx() || soc_is_omap54xx() || soc_is_dra7xx())
+       if (data->flags & PRM_HAS_IO_WAKEUP)
                prm_features |= PRM_HAS_IO_WAKEUP;
 
-       if (!soc_is_dra7xx())
+       if (data->flags & PRM_HAS_VOLTAGE)
                prm_features |= PRM_HAS_VOLTAGE;
 
        omap4_prminst_set_prm_dev_inst(data->device_inst_offset);
index 3e932b8b8ce99eb3f909a0ce98625a63efc10cfe..04dfe8f844c9d844d96661e57e7ddf6267f42ffe 100644 (file)
@@ -669,6 +669,7 @@ static struct omap_prcm_init_data omap4_prm_data __initdata = {
        .index = TI_CLKM_PRM,
        .init = omap44xx_prm_init,
        .device_inst_offset = OMAP4430_PRM_DEVICE_INST,
+       .flags = PRM_HAS_IO_WAKEUP | PRM_HAS_VOLTAGE,
 };
 #endif
 
@@ -677,6 +678,7 @@ static struct omap_prcm_init_data omap5_prm_data __initdata = {
        .index = TI_CLKM_PRM,
        .init = omap44xx_prm_init,
        .device_inst_offset = OMAP54XX_PRM_DEVICE_INST,
+       .flags = PRM_HAS_IO_WAKEUP | PRM_HAS_VOLTAGE,
 };
 #endif
 
@@ -685,6 +687,7 @@ static struct omap_prcm_init_data dra7_prm_data __initdata = {
        .index = TI_CLKM_PRM,
        .init = omap44xx_prm_init,
        .device_inst_offset = DRA7XX_PRM_DEVICE_INST,
+       .flags = PRM_HAS_IO_WAKEUP,
 };
 #endif