msm: acpuclock: Implement acpuclock APIs through function pointers
Create a generic wrapper acpuclock driver in acpuclock.c to call
SoC-specific function pointer API implementations. With the
exception of iomap conflicts, this should allow multiple acpuclock
driver implementations to be compiled into the same kernel binary.
Signed-off-by: Matt Wagantall <mattw@codeaurora.org>
Conflicts:
arch/arm/mach-msm/acpuclock-7201.c
arch/arm/mach-msm/board-msm8960.c
diff --git a/arch/arm/mach-msm/board-msm8960.c b/arch/arm/mach-msm/board-msm8960.c
index 4882772..a135037 100644
--- a/arch/arm/mach-msm/board-msm8960.c
+++ b/arch/arm/mach-msm/board-msm8960.c
@@ -79,6 +79,7 @@
#include "cpuidle.h"
#include "rpm_resources.h"
#include "mpm.h"
+#include "acpuclock.h"
static struct platform_device msm_fm_platform_init = {
.name = "iris_fm",
@@ -1930,9 +1931,10 @@
return 0;
}
-static struct msm_acpu_clock_platform_data msm8960_acpu_clock_data = {
+static struct acpuclk_platform_data msm8960_acpuclk_data __initdata = {
.acpu_switch_time_us = 0,
.vdd_switch_time_us = 0,
+ .init = acpuclk_8960_init,
};
#define MSM_SHARED_RAM_PHYS 0x80000000
@@ -3510,7 +3512,7 @@
platform_add_devices(common_devices, ARRAY_SIZE(common_devices));
pm8921_gpio_mpp_init();
platform_add_devices(sim_devices, ARRAY_SIZE(sim_devices));
- msm_acpu_clock_init(&msm8960_acpu_clock_data);
+ acpuclk_init(&msm8960_acpuclk_data);
msm8960_device_qup_spi_gsbi1.dev.platform_data =
&msm8960_qup_spi_gsbi1_pdata;
@@ -3601,7 +3603,7 @@
platform_add_devices(cdp_devices, ARRAY_SIZE(cdp_devices));
msm8960_init_cam();
msm8960_init_mmc();
- msm_acpu_clock_init(&msm8960_acpu_clock_data);
+ acpuclk_init(&msm8960_acpuclk_data);
register_i2c_devices();
msm8960_wcnss_init();
msm_fb_add_devices();