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: Grazvydas Ignotas <notasas@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> --- V2: comments from http://marc.info/?t=127725956100006&r=1&w=2 fixed V1: original arch/arm/mach-omap1/io.c | 3 +-- arch/arm/mach-omap2/io.c | 2 +- arch/arm/plat-omap/common.c | 12 ++++++++++++ arch/arm/plat-omap/include/plat/cpu.h | 13 ++++++++++++- 4 files changed, 26 insertions(+), 4 deletions(-) diff --git a/arch/arm/mach-omap1/io.c b/arch/arm/mach-omap1/io.c index e4d8680..4f9ee73 100644 --- a/arch/arm/mach-omap1/io.c +++ b/arch/arm/mach-omap1/io.c @@ -20,7 +20,6 @@ #include "clock.h" -extern void omap1_check_revision(void); extern void omap_sram_init(void); /* @@ -102,7 +101,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 4e1f53d..eeb0e30 100644 --- a/arch/arm/mach-omap2/io.c +++ b/arch/arm/mach-omap2/io.c @@ -238,7 +238,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(); } diff --git a/arch/arm/plat-omap/common.c b/arch/arm/plat-omap/common.c index fca73cd..f240d9a 100644 --- a/arch/arm/plat-omap/common.c +++ b/arch/arm/plat-omap/common.c @@ -89,6 +89,18 @@ void __init omap_reserve(void) omap_vram_reserve_sdram_lmb(); } +void __init omap_check_revision(void) +{ +#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