socinfo: initialize socinfo in map_io

Having socinfo earlier allows the cpu_is functions to be used by the
timer driver, which helps in allowing multitarget compilation.

Signed-off-by: Jeff Ohlstein <johlstei@codeaurora.org>

Conflicts:

	arch/arm/mach-msm/board-qrdc.c
	arch/arm/mach-msm/board-qt8660.c
diff --git a/arch/arm/mach-msm/board-apq8064.c b/arch/arm/mach-msm/board-apq8064.c
index c29d88c..907fa72 100644
--- a/arch/arm/mach-msm/board-apq8064.c
+++ b/arch/arm/mach-msm/board-apq8064.c
@@ -274,6 +274,8 @@
 static void __init apq8064_map_io(void)
 {
 	msm_map_apq8064_io();
+	if (socinfo_init() < 0)
+		pr_err("socinfo_init() failed!\n");
 }
 
 static void __init apq8064_init_irq(void)
diff --git a/arch/arm/mach-msm/board-fsm9xxx.c b/arch/arm/mach-msm/board-fsm9xxx.c
index 57eea51..5244434 100644
--- a/arch/arm/mach-msm/board-fsm9xxx.c
+++ b/arch/arm/mach-msm/board-fsm9xxx.c
@@ -869,10 +869,6 @@
 
 static void __init fsm9xxx_init(void)
 {
-	if (socinfo_init() < 0)
-		pr_err("%s: socinfo_init() failed!\n",
-		       __func__);
-
 	acpuclk_init(&acpuclk_9xxx_soc_data);
 
 	regulator_has_full_constraints();
@@ -903,6 +899,10 @@
 	msm_shared_ram_phys = 0x00100000;
 	msm_map_fsm9xxx_io();
 	msm_clock_init(&fsm9xxx_clock_init_data);
+	if (socinfo_init() < 0)
+		pr_err("%s: socinfo_init() failed!\n",
+		       __func__);
+
 }
 
 MACHINE_START(FSM9XXX_SURF, "QCT FSM9XXX")
diff --git a/arch/arm/mach-msm/board-msm7x30.c b/arch/arm/mach-msm/board-msm7x30.c
index 108a532..ee9df6f 100644
--- a/arch/arm/mach-msm/board-msm7x30.c
+++ b/arch/arm/mach-msm/board-msm7x30.c
@@ -6938,10 +6938,6 @@
 						GPIO_CFG_2MA);
 	uint32_t soc_version = 0;
 
-	if (socinfo_init() < 0)
-		printk(KERN_ERR "%s: socinfo_init() failed!\n",
-		       __func__);
-
 	soc_version = socinfo_get_version();
 
 	msm_clock_init(&msm7x30_clock_init_data);
@@ -7212,6 +7208,9 @@
 {
 	msm_shared_ram_phys = 0x00100000;
 	msm_map_msm7x30_io();
+	if (socinfo_init() < 0)
+		printk(KERN_ERR "%s: socinfo_init() failed!\n",
+		       __func__);
 }
 
 static void __init msm7x30_init_early(void)
diff --git a/arch/arm/mach-msm/board-msm8960.c b/arch/arm/mach-msm/board-msm8960.c
index 43dafb0..97f1d3a 100644
--- a/arch/arm/mach-msm/board-msm8960.c
+++ b/arch/arm/mach-msm/board-msm8960.c
@@ -2324,6 +2324,9 @@
 {
 	msm_shared_ram_phys = MSM_SHARED_RAM_PHYS;
 	msm_map_msm8960_io();
+
+	if (socinfo_init() < 0)
+		pr_err("socinfo_init() failed!\n");
 }
 
 static void __init msm8960_init_irq(void)
@@ -4083,9 +4086,6 @@
 
 static void __init msm8960_sim_init(void)
 {
-	if (socinfo_init() < 0)
-		pr_err("socinfo_init() failed!\n");
-
 	BUG_ON(msm_rpm_init(&msm_rpm_data));
 	BUG_ON(msm_rpmrs_levels_init(msm_rpmrs_levels,
 				ARRAY_SIZE(msm_rpmrs_levels)));
@@ -4129,9 +4129,6 @@
 
 static void __init msm8960_rumi3_init(void)
 {
-	if (socinfo_init() < 0)
-		pr_err("socinfo_init() failed!\n");
-
 	BUG_ON(msm_rpm_init(&msm_rpm_data));
 	BUG_ON(msm_rpmrs_levels_init(msm_rpmrs_levels,
 				ARRAY_SIZE(msm_rpmrs_levels)));
@@ -4165,9 +4162,6 @@
 
 static void __init msm8960_cdp_init(void)
 {
-	if (socinfo_init() < 0)
-		pr_err("socinfo_init() failed!\n");
-
 	if (meminfo_init(SYS_MEMORY, SZ_256M) < 0)
 		pr_err("meminfo_init() failed!\n");
 
diff --git a/arch/arm/mach-msm/board-msm8x60.c b/arch/arm/mach-msm/board-msm8x60.c
index 49236f3..dee14e7 100644
--- a/arch/arm/mach-msm/board-msm8x60.c
+++ b/arch/arm/mach-msm/board-msm8x60.c
@@ -7478,6 +7478,9 @@
 {
 	msm_shared_ram_phys = MSM_SHARED_RAM_PHYS;
 	msm_map_msm8x60_io();
+
+	if (socinfo_init() < 0)
+		pr_err("socinfo_init() failed!\n");
 }
 
 /*
@@ -10053,9 +10056,6 @@
 	if (msm_xo_init())
 		pr_err("Failed to initialize XO votes\n");
 
-	if (socinfo_init() < 0)
-		printk(KERN_ERR "%s: socinfo_init() failed!\n",
-		       __func__);
 	msm8x60_check_2d_hardware();
 
 	/* Change SPM handling of core 1 if PMM 8160 is present. */
diff --git a/arch/arm/mach-msm/board-qsd8x50.c b/arch/arm/mach-msm/board-qsd8x50.c
index 09ee501..b7f6608 100644
--- a/arch/arm/mach-msm/board-qsd8x50.c
+++ b/arch/arm/mach-msm/board-qsd8x50.c
@@ -2401,9 +2401,6 @@
 
 static void __init qsd8x50_init(void)
 {
-	if (socinfo_init() < 0)
-		printk(KERN_ERR "%s: socinfo_init() failed!\n",
-		       __func__);
 	msm_clock_init(&qds8x50_clock_init_data);
 	qsd8x50_cfg_smc91x();
 	acpuclk_init(&acpuclk_8x50_soc_data);
@@ -2515,6 +2512,9 @@
 	msm_shared_ram_phys = MSM_SHARED_RAM_PHYS;
 	msm_map_qsd8x50_io();
 	qsd8x50_allocate_memory_regions();
+	if (socinfo_init() < 0)
+		printk(KERN_ERR "%s: socinfo_init() failed!\n",
+		       __func__);
 }
 
 MACHINE_START(QSD8X50_SURF, "QCT QSD8X50 SURF")
diff --git a/arch/arm/mach-msm/devices-9615.c b/arch/arm/mach-msm/devices-9615.c
index c934558..e25b1f0 100644
--- a/arch/arm/mach-msm/devices-9615.c
+++ b/arch/arm/mach-msm/devices-9615.c
@@ -391,9 +391,6 @@
 
 void __init msm9615_device_init(void)
 {
-	if (socinfo_init() < 0)
-		pr_err("socinfo_init() failed!\n");
-
 	msm_clock_init(&msm9615_clock_init_data);
 	acpuclk_init(&acpuclk_9615_soc_data);
 }
@@ -404,6 +401,8 @@
 	msm_shared_ram_phys = MSM_SHARED_RAM_PHYS;
 	msm_map_msm9615_io();
 	l2x0_cache_init();
+	if (socinfo_init() < 0)
+		pr_err("socinfo_init() failed!\n");
 }
 
 void __init msm9615_init_irq(void)
diff --git a/arch/arm/mach-msm/devices-msm7x27a.c b/arch/arm/mach-msm/devices-msm7x27a.c
index 4085040..ef187a6 100644
--- a/arch/arm/mach-msm/devices-msm7x27a.c
+++ b/arch/arm/mach-msm/devices-msm7x27a.c
@@ -697,9 +697,6 @@
 
 int __init msm7x2x_misc_init(void)
 {
-	if (socinfo_init() < 0)
-		pr_err("%s: socinfo_init() failed!\n", __func__);
-
 	msm_clock_init(&msm7x27a_clock_init_data);
 	if (cpu_is_msm7x27aa())
 		acpuclk_init(&acpuclk_7x27aa_soc_data);
@@ -732,6 +729,9 @@
 {
 	msm_map_common_io();
 	msm7x27x_cache_init();
+	if (socinfo_init() < 0)
+		pr_err("%s: socinfo_init() failed!\n", __func__);
+
 }
 
 struct platform_device *msm_footswitch_devices[] = {