msm: pm: Introduce Kconfigs for each PM driver
This simplifies the Makefile and also allows #ifdefs to be used
in pm.h that can conditionally stub out functions based on the PM
driver that is compiled in.
Change-Id: I2e77070fcfabc8c8dd922ff902afb01ec313d5e5
Signed-off-by: Matt Wagantall <mattw@codeaurora.org>
diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig
index 8a7d466..3f04ce0 100644
--- a/arch/arm/mach-msm/Kconfig
+++ b/arch/arm/mach-msm/Kconfig
@@ -8,6 +8,7 @@
select MSM_VIC
select CPU_V6
select MSM_REMOTE_SPINLOCK_SWP
+ select MSM_PM if PM
config ARCH_MSM7X25
bool "MSM7x25"
@@ -16,6 +17,7 @@
select CPU_V6
select MSM_REMOTE_SPINLOCK_SWP
select MULTI_IRQ_HANDLER
+ select MSM_PM if PM
config ARCH_MSM7X27
bool "MSM7x27"
@@ -32,6 +34,7 @@
select MSM_PROC_COMM_REGULATOR
select CLEANCACHE
select QCACHE
+ select MSM_PM2 if PM
config ARCH_MSM7X30
bool "MSM7x30"
@@ -55,6 +58,7 @@
select REGULATOR
select MSM_PROC_COMM_REGULATOR
select MULTI_IRQ_HANDLER
+ select MSM_PM2 if PM
config ARCH_QSD8X50
bool "QSD8X50"
@@ -66,6 +70,7 @@
select EMULATE_DOMAIN_MANAGER_V7
select MSM_GPIOMUX
select MSM_DALRPC
+ select MSM_PM2 if PM
config ARCH_MSM8X60
bool "MSM8X60"
@@ -121,6 +126,7 @@
select MSM_SPM_V1
select MSM_SCM if SMP
select MULTI_IRQ_HANDLER
+ select MSM_PM8X60 if PM
config ARCH_MSM8960
bool "MSM8960"
@@ -159,6 +165,7 @@
select QCACHE
select MSM_MULTIMEDIA_USE_ION
select MULTI_IRQ_HANDLER
+ select MSM_PM8X60 if PM
config ARCH_MSM8930
bool "MSM8930"
@@ -195,6 +202,7 @@
select FIX_MOVABLE_ZONE
select MSM_ULTRASOUND
select MULTI_IRQ_HANDLER
+ select MSM_PM8X60 if PM
config ARCH_APQ8064
bool "APQ8064"
@@ -212,6 +220,7 @@
select MSM_RPM
select MSM_SPM_V2
select MSM_L2_SPM
+ select MSM_PM8X60 if PM
config ARCH_MSMCOPPER
bool "MSM Copper"
@@ -247,6 +256,7 @@
select REGULATOR
select MSM_RPM_REGULATOR
select MULTI_IRQ_HANDLER
+ select MSM_PM8X60 if PM
config ARCH_MSM8625
bool "MSM8625"
@@ -1840,6 +1850,22 @@
config MSM_NATIVE_RESTART
bool
+config MSM_PM
+ depends on PM
+ bool
+
+config MSM_PM2
+ depends on PM
+ bool
+
+config MSM_PM8X60
+ depends on PM
+ bool
+
+config MSM_NOPM
+ default y if !PM
+ bool
+
config MSM_BUS_SCALING
bool "Bus scaling driver"
default n
diff --git a/arch/arm/mach-msm/Makefile b/arch/arm/mach-msm/Makefile
index d714cfa..ed85663 100644
--- a/arch/arm/mach-msm/Makefile
+++ b/arch/arm/mach-msm/Makefile
@@ -140,21 +140,11 @@
obj-$(CONFIG_MSM8X60_AUDIO) += qdsp6v2/
obj-$(CONFIG_MSM_AUDIO_QDSP6) += qdsp6v2/
obj-$(CONFIG_MSM_HW3D) += hw3d.o
-ifdef CONFIG_PM
- obj-$(CONFIG_ARCH_APQ8064) += pm-8x60.o
- obj-$(CONFIG_ARCH_MSM8960) += pm-8x60.o
- obj-$(CONFIG_ARCH_MSM8X60) += pm-8x60.o
- obj-$(CONFIG_ARCH_MSM9615) += pm-8x60.o
- obj-$(CONFIG_ARCH_QSD8X50) += pm2.o
- obj-$(CONFIG_ARCH_MSM7X30) += pm2.o
- obj-$(CONFIG_ARCH_MSM7X27) += pm2.o
- obj-$(CONFIG_ARCH_MSM7X27A) += pm2.o
- obj-$(CONFIG_ARCH_MSM7X25) += pm.o
- obj-$(CONFIG_ARCH_MSM7X01A) += pm.o
- obj-y += pm-boot.o
-else
- obj-y += no-pm.o
-endif
+obj-$(CONFIG_PM) += pm-boot.o
+obj-$(CONFIG_MSM_PM8X60) += pm-8x60.o
+obj-$(CONFIG_MSM_PM2) += pm2.o
+obj-$(CONFIG_MSM_PM) += pm.o
+obj-$(CONFIG_MSM_NOPM) += no-pm.o
obj-$(CONFIG_MSM_SPM_V1) += spm.o
obj-$(CONFIG_MSM_SPM_V2) += spm-v2.o spm_devices.o