audio-driver: Update build files for sa6155

Enable conditional build for audio driver modules
specific to sa6155.

Change-Id: I58701a907242afcfe230623ff42b47c001e3d5f4
Signed-off-by: Rahul Sharma <rahsha@codeaurora.org>
diff --git a/asoc/Android.mk b/asoc/Android.mk
index 1fb172a..8a2a0cc 100644
--- a/asoc/Android.mk
+++ b/asoc/Android.mk
@@ -14,8 +14,12 @@
 
 ifeq ($(call is-board-platform,$(MSMSTEPPE)),true)
 TARGET := talos
+ifeq ($(TARGET_PRODUCT), $(filter $(TARGET_PRODUCT), sm6150_au))
+AUDIO_SELECT  := CONFIG_SND_SOC_SA6155=m
+else
 AUDIO_SELECT  := CONFIG_SND_SOC_SM6150=m
 endif
+endif
 
 ifeq ($(call is-board-platform,$(TRINKET)),true)
 TARGET := trinket
diff --git a/asoc/Kbuild b/asoc/Kbuild
index 00a6a44..9ca09b7 100644
--- a/asoc/Kbuild
+++ b/asoc/Kbuild
@@ -26,9 +26,15 @@
 		endif
 	endif
 	ifeq ($(CONFIG_ARCH_SM6150), y)
-		include $(AUDIO_ROOT)/config/sm6150auto.conf
-		export
-		INCS    +=  -include $(AUDIO_ROOT)/config/sm6150autoconf.h
+		ifdef CONFIG_SND_SOC_SA6155
+			include $(AUDIO_ROOT)/config/sa6155auto.conf
+			export
+			INCS    +=  -include $(AUDIO_ROOT)/config/sa6155autoconf.h
+		else
+			include $(AUDIO_ROOT)/config/sm6150auto.conf
+			export
+			INCS    +=  -include $(AUDIO_ROOT)/config/sm6150autoconf.h
+		endif
 	endif
 	ifeq ($(CONFIG_ARCH_TRINKET), y)
 		include $(AUDIO_ROOT)/config/sm6150auto.conf
@@ -96,10 +102,14 @@
 # for SM6150 sound card driver
 ifdef CONFIG_SND_SOC_SM6150
 	MACHINE_OBJS += sm6150.o
-	MACHINE_OBJS += sa6155.o
 	MACHINE_OBJS += machine_615x_init.o
 endif
 
+# For sa6155 sound card driver
+ifdef CONFIG_SND_SOC_SA6155
+	MACHINE_OBJS += sa6155.o
+endif
+
 # for qcs405 sound card driver
 ifdef CONFIG_SND_SOC_QCS405
 	MACHINE_OBJS += qcs405.o
@@ -211,6 +221,9 @@
 obj-$(CONFIG_SND_SOC_SM6150) += machine_dlkm.o
 machine_dlkm-y := $(MACHINE_OBJS)
 
+obj-$(CONFIG_SND_SOC_SA6155) += machine_dlkm.o
+machine_dlkm-y := $(MACHINE_OBJS)
+
 obj-$(CONFIG_SND_SOC_QCS405) += machine_dlkm.o
 machine_dlkm-y := $(MACHINE_OBJS)
 
diff --git a/asoc/codecs/Android.mk b/asoc/codecs/Android.mk
index 9e58936..077410c 100644
--- a/asoc/codecs/Android.mk
+++ b/asoc/codecs/Android.mk
@@ -12,8 +12,12 @@
 endif
 
 ifeq ($(call is-board-platform,$(MSMSTEPPE)),true)
+ifeq ($(TARGET_PRODUCT), $(filter $(TARGET_PRODUCT), sm6150_au))
+AUDIO_SELECT  := CONFIG_SND_SOC_SA6155=m
+else
 AUDIO_SELECT  := CONFIG_SND_SOC_SM6150=m
 endif
+endif
 
 ifeq ($(call is-board-platform,$(TRINKET)),true)
 AUDIO_SELECT  := CONFIG_SND_SOC_SM6150=m
@@ -54,9 +58,9 @@
 KBUILD_OPTIONS += MODNAME=wcd_core_dlkm
 KBUILD_OPTIONS += BOARD_PLATFORM=$(TARGET_BOARD_PLATFORM)
 KBUILD_OPTIONS += $(AUDIO_SELECT)
-
+# Target specific build
 ###########################################################
-ifneq ($(TARGET_PRODUCT), $(filter $(TARGET_PRODUCT), msmnile_au msmnile_gvmq))
+ifneq ($(TARGET_PRODUCT), $(filter $(TARGET_PRODUCT), msmnile_au sm6150_au msmnile_gvmq))
 include $(CLEAR_VARS)
 LOCAL_MODULE              := $(AUDIO_CHIPSET)_wcd_core.ko
 LOCAL_MODULE_KBUILD_NAME  := wcd_core_dlkm.ko
@@ -118,8 +122,8 @@
 LOCAL_MODULE_DEBUG_ENABLE := true
 LOCAL_MODULE_PATH         := $(KERNEL_MODULES_OUT)
 include $(DLKM_DIR)/AndroidKernelModule.mk
-endif
-############################################################
+endif # target specific build
+###########################################################
 include $(CLEAR_VARS)
 LOCAL_MODULE              := $(AUDIO_CHIPSET)_stub.ko
 LOCAL_MODULE_KBUILD_NAME  := stub_dlkm.ko
@@ -127,7 +131,7 @@
 LOCAL_MODULE_DEBUG_ENABLE := true
 LOCAL_MODULE_PATH         := $(KERNEL_MODULES_OUT)
 include $(DLKM_DIR)/AndroidKernelModule.mk
-##########################################################
+###########################################################
 include $(CLEAR_VARS)
 LOCAL_MODULE              := $(AUDIO_CHIPSET)_hdmi.ko
 LOCAL_MODULE_KBUILD_NAME  := hdmi_dlkm.ko
diff --git a/asoc/codecs/Kbuild b/asoc/codecs/Kbuild
index 4cda710..9b2aae3 100644
--- a/asoc/codecs/Kbuild
+++ b/asoc/codecs/Kbuild
@@ -26,9 +26,15 @@
 		endif
 	endif
 	ifeq ($(CONFIG_ARCH_SM6150), y)
-		include $(AUDIO_ROOT)/config/sm6150auto.conf
-		export
-		INCS    +=  -include $(AUDIO_ROOT)/config/sm6150autoconf.h
+		ifdef CONFIG_SND_SOC_SA6155
+			include $(AUDIO_ROOT)/config/sa6155auto.conf
+			export
+			INCS    +=  -include $(AUDIO_ROOT)/config/sa6155autoconf.h
+		else
+			include $(AUDIO_ROOT)/config/sm6150auto.conf
+			export
+			INCS    +=  -include $(AUDIO_ROOT)/config/sm6150autoconf.h
+		endif
 	endif
 	ifeq ($(CONFIG_ARCH_TRINKET), y)
 		include $(AUDIO_ROOT)/config/sm6150auto.conf
diff --git a/asoc/machine_615x_init.c b/asoc/machine_615x_init.c
index 4f5fd1b..d49ca5d 100644
--- a/asoc/machine_615x_init.c
+++ b/asoc/machine_615x_init.c
@@ -19,14 +19,12 @@
 static int __init audio_machine_615x_init(void)
 {
 	sm6150_init();
-	sa6155_init();
 	return 0;
 }
 
 static void audio_machine_615x_exit(void)
 {
 	sm6150_exit();
-	sa6155_exit();
 }
 
 module_init(audio_machine_615x_init);
diff --git a/asoc/machine_615x_init.h b/asoc/machine_615x_init.h
index ac7374d..e20d9f8 100644
--- a/asoc/machine_615x_init.h
+++ b/asoc/machine_615x_init.h
@@ -15,9 +15,7 @@
 #ifndef __MACHINE_615X_INIT_H__
 #define __MACHINE_615X_INIT_H__
 int sm6150_init(void);
-int sa6155_init(void);
 
 void sm6150_exit(void);
-void sa6155_exit(void);
 #endif
 
diff --git a/asoc/sa6155.c b/asoc/sa6155.c
index 0cd29ac..73217fa 100644
--- a/asoc/sa6155.c
+++ b/asoc/sa6155.c
@@ -7156,6 +7156,9 @@
 	audio_notifier_deregister("sa6155");
 }
 
+module_init(sa6155_init);
+module_exit(sa6155_exit);
+
 MODULE_DESCRIPTION("ALSA SoC msm");
 MODULE_LICENSE("GPL v2");
 MODULE_ALIAS("platform:" DRV_NAME);