Introduce a single omap generic check_revision that routes the request to the right revision of check_revision. Cc: Tony Lindgren <tony@xxxxxxxxxxx> Cc: Angelo Arrifano <miknix@xxxxxxxxx> Cc: "Zebediah C. McClure" <zmc@xxxxxxxxxx> Cc: Alistair Buxton <a.j.buxton@xxxxxxxxx> Cc: Paul Walmsley <paul@xxxxxxxxx> Cc: Sanjeev Premi <premi@xxxxxx> Cc: Santosh Shilimkar <santosh.shilimkar@xxxxxx> Cc: Senthilvadivu Gurusamy <svadivu@xxxxxx> Cc: Kevin Hilman <khilman@xxxxxxxxxxxxxxxxxxx> Cc: Tomi Valkeinen <tomi.valkeinen@xxxxxxxxx> Cc: Aaro Koskinen <aaro.koskinen@xxxxxxxxx> Cc: Vikram Pandita <vikram.pandita@xxxxxx> Cc: Vishwanath S <vishwa.s@xxxxxx> Cc: linux-omap@xxxxxxxxxxxxxxx Signed-off-by: Nishanth Menon <nm@xxxxxx> --- arch/arm/mach-omap1/io.c | 3 +-- arch/arm/mach-omap2/io.c | 2 +- arch/arm/plat-omap/common.c | 11 +++++++++++ arch/arm/plat-omap/include/plat/cpu.h | 13 ++++++++++++- 4 files changed, 25 insertions(+), 4 deletions(-) diff --git a/arch/arm/mach-omap1/io.c b/arch/arm/mach-omap1/io.c index 0178d33..aad837b 100644 --- a/arch/arm/mach-omap1/io.c +++ b/arch/arm/mach-omap1/io.c @@ -21,7 +21,6 @@ #include "clock.h" -extern void omap1_check_revision(void); extern void omap_sram_init(void); /* @@ -103,7 +102,7 @@ void __init omap1_map_common_io(void) /* We want to check CPU revision early for cpu_is_omapxxxx() macros. * IO space mapping must be initialized before we can do that. */ - omap1_check_revision(); + omap_check_revision(); #if defined (CONFIG_ARCH_OMAP730) || defined (CONFIG_ARCH_OMAP850) if (cpu_is_omap7xx()) { diff --git a/arch/arm/mach-omap2/io.c b/arch/arm/mach-omap2/io.c index b4860b6..e7fe326 100644 --- a/arch/arm/mach-omap2/io.c +++ b/arch/arm/mach-omap2/io.c @@ -239,7 +239,7 @@ static void __init _omap2_map_common_io(void) local_flush_tlb_all(); flush_cache_all(); - omap2_check_revision(); + omap_check_revision(); omap_sram_init(); omap_vram_reserve_sdram(); } diff --git a/arch/arm/plat-omap/common.c b/arch/arm/plat-omap/common.c index 219c01e..459a45f 100644 --- a/arch/arm/plat-omap/common.c +++ b/arch/arm/plat-omap/common.c @@ -81,6 +81,17 @@ const void *omap_get_var_config(u16 tag, size_t *len) } EXPORT_SYMBOL(omap_get_var_config); +void __init omap_check_revision() +{ +#ifdef CONFIG_ARCH_OMAP1 + if (cpu_is_omap7xx() || cpu_is_omap15xx() || cpu_is_omap16xx()) + omap1_check_revision(); +#endif +#ifdef CONFIG_ARCH_OMAP2PLUS + if (cpu_is_omap24xx() || cpu_is_omap34xx() || cpu_is_omap44xx()) + omap2_check_revision(); +#endif +} /* * 32KHz clocksource ... always available, on pretty most chips except * OMAP 730 and 1510. Other timers could be used as clocksources, with diff --git a/arch/arm/plat-omap/include/plat/cpu.h b/arch/arm/plat-omap/include/plat/cpu.h index 7514174..5f12a0b 100644 --- a/arch/arm/plat-omap/include/plat/cpu.h +++ b/arch/arm/plat-omap/include/plat/cpu.h @@ -431,7 +431,18 @@ IS_OMAP_TYPE(3517, 0x3517) int omap_chip_is(struct omap_chip_id oci); -void omap2_check_revision(void); +#ifdef CONFIG_ARCH_OMAP2PLUS +extern void omap2_check_revision(void); +#else +static inline void omap2_check_revision(void) {} +#endif + +#ifdef CONFIG_ARCH_OMAP1 +extern void omap1_check_revision(void); +#else +static inline void omap1_check_revision(void) {} +#endif +void omap_check_revision(void); /* * Runtime detection of OMAP3 features -- 1.6.3.3 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html