audio-driver: Update build files for LA automotive

enable conditional build for audio driver modules for LA
automotive.

Change-Id: Ifb18ea6f8af531a99e29904c2245424657b42df7
Signed-off-by: Cong Tang <congt@codeaurora.org>
diff --git a/asoc/Android.mk b/asoc/Android.mk
index ca2dffc..1293f5f 100644
--- a/asoc/Android.mk
+++ b/asoc/Android.mk
@@ -5,8 +5,12 @@
 # Check if this driver needs be built for current target
 ifeq ($(call is-board-platform,msmnile),true)
 TARGET := msmnile
+ifeq ($(TARGET_PRODUCT), $(filter $(TARGET_PRODUCT), msmnile_au))
+AUDIO_SELECT  := CONFIG_SND_SOC_SA8155=m
+else
 AUDIO_SELECT  := CONFIG_SND_SOC_SM8150=m
 endif
+endif
 
 ifeq ($(call is-board-platform,$(MSMSTEPPE)),true)
 TARGET := talos
diff --git a/asoc/Kbuild b/asoc/Kbuild
index bf6b583..4890912 100644
--- a/asoc/Kbuild
+++ b/asoc/Kbuild
@@ -15,9 +15,15 @@
 
 ifeq ($(KERNEL_BUILD), 0)
 	ifeq ($(CONFIG_ARCH_SM8150), y)
-		include $(AUDIO_ROOT)/config/sm8150auto.conf
-		export
-		INCS    +=  -include $(AUDIO_ROOT)/config/sm8150autoconf.h
+		ifdef CONFIG_SND_SOC_SA8155
+			include $(AUDIO_ROOT)/config/sa8155auto.conf
+			export
+			INCS    +=  -include $(AUDIO_ROOT)/config/sa8155autoconf.h
+		else
+			include $(AUDIO_ROOT)/config/sm8150auto.conf
+			export
+			INCS    +=  -include $(AUDIO_ROOT)/config/sm8150autoconf.h
+		endif
 	endif
 	ifeq ($(CONFIG_ARCH_SM6150), y)
 		include $(AUDIO_ROOT)/config/sm6150auto.conf
@@ -78,7 +84,6 @@
 
 # for SM8150 sound card driver
 ifdef CONFIG_SND_SOC_SM8150
-	MACHINE_OBJS += sa8155.o
 	MACHINE_OBJS += sm8150.o
 	MACHINE_OBJS += machine_815x_init.o
 endif
@@ -104,6 +109,11 @@
 	MACHINE_OBJS += kona.o
 endif
 
+# for sa8155 sound card driver
+ifdef CONFIG_SND_SOC_SA8155
+	MACHINE_OBJS += sa8155.o
+endif
+
 ifdef CONFIG_SND_SOC_CPE
 	CPE_LSM_OBJS += msm-cpe-lsm.o
 endif
@@ -205,6 +215,9 @@
 obj-$(CONFIG_SND_SOC_LITO) += machine_dlkm.o
 machine_dlkm-y := $(MACHINE_OBJS)
 
+obj-$(CONFIG_SND_SOC_SA8155) += machine_dlkm.o
+machine_dlkm-y := $(MACHINE_OBJS)
+
 obj-$(CONFIG_SND_SOC_CPE) += cpe_lsm_dlkm.o
 cpe_lsm_dlkm-y := $(CPE_LSM_OBJS)
 
diff --git a/asoc/codecs/Android.mk b/asoc/codecs/Android.mk
index 539bd55..145da09 100644
--- a/asoc/codecs/Android.mk
+++ b/asoc/codecs/Android.mk
@@ -4,8 +4,12 @@
 
 # Check if this driver needs be built for current target
 ifeq ($(call is-board-platform,msmnile),true)
+ifeq ($(TARGET_PRODUCT), $(filter $(TARGET_PRODUCT), msmnile_au))
+AUDIO_SELECT  := CONFIG_SND_SOC_SA8155=m
+else
 AUDIO_SELECT  := CONFIG_SND_SOC_SM8150=m
 endif
+endif
 
 ifeq ($(call is-board-platform,$(MSMSTEPPE)),true)
 AUDIO_SELECT  := CONFIG_SND_SOC_SM6150=m
@@ -52,6 +56,7 @@
 KBUILD_OPTIONS += $(AUDIO_SELECT)
 
 ###########################################################
+ifneq ($(TARGET_PRODUCT), $(filter $(TARGET_PRODUCT), msmnile_au))
 include $(CLEAR_VARS)
 LOCAL_MODULE              := $(AUDIO_CHIPSET)_wcd_core.ko
 LOCAL_MODULE_KBUILD_NAME  := wcd_core_dlkm.ko
@@ -107,21 +112,22 @@
 include $(DLKM_DIR)/AndroidKernelModule.mk
 ###########################################################
 include $(CLEAR_VARS)
-LOCAL_MODULE              := $(AUDIO_CHIPSET)_stub.ko
-LOCAL_MODULE_KBUILD_NAME  := stub_dlkm.ko
-LOCAL_MODULE_TAGS         := optional
-LOCAL_MODULE_DEBUG_ENABLE := true
-LOCAL_MODULE_PATH         := $(KERNEL_MODULES_OUT)
-include $(DLKM_DIR)/AndroidKernelModule.mk
-###########################################################
-include $(CLEAR_VARS)
 LOCAL_MODULE              := $(AUDIO_CHIPSET)_mbhc.ko
 LOCAL_MODULE_KBUILD_NAME  := mbhc_dlkm.ko
 LOCAL_MODULE_TAGS         := optional
 LOCAL_MODULE_DEBUG_ENABLE := true
 LOCAL_MODULE_PATH         := $(KERNEL_MODULES_OUT)
 include $(DLKM_DIR)/AndroidKernelModule.mk
-###########################################################
+endif
+############################################################
+include $(CLEAR_VARS)
+LOCAL_MODULE              := $(AUDIO_CHIPSET)_stub.ko
+LOCAL_MODULE_KBUILD_NAME  := stub_dlkm.ko
+LOCAL_MODULE_TAGS         := optional
+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 e18a40b..d8d52b3 100644
--- a/asoc/codecs/Kbuild
+++ b/asoc/codecs/Kbuild
@@ -15,9 +15,15 @@
 
 ifeq ($(KERNEL_BUILD), 0)
 	ifeq ($(CONFIG_ARCH_SM8150), y)
-		include $(AUDIO_ROOT)/config/sm8150auto.conf
-		export
-		INCS    +=  -include $(AUDIO_ROOT)/config/sm8150autoconf.h
+		ifdef CONFIG_SND_SOC_SA8155
+			include $(AUDIO_ROOT)/config/sa8155auto.conf
+			export
+			INCS    +=  -include $(AUDIO_ROOT)/config/sa8155autoconf.h
+		else
+			include $(AUDIO_ROOT)/config/sm8150auto.conf
+			export
+			INCS    +=  -include $(AUDIO_ROOT)/config/sm8150autoconf.h
+		endif
 	endif
 	ifeq ($(CONFIG_ARCH_SM6150), y)
 		include $(AUDIO_ROOT)/config/sm6150auto.conf
diff --git a/asoc/machine_815x_init.c b/asoc/machine_815x_init.c
index cf8fbed..dfbf0a7 100644
--- a/asoc/machine_815x_init.c
+++ b/asoc/machine_815x_init.c
@@ -1,6 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0-only
 /*
- * Copyright (c) 2017-2018, The Linux Foundation. All rights reserved.
+ * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
  */
 
 #include <linux/kernel.h>
@@ -10,14 +10,12 @@
 static int __init audio_machine_815x_init(void)
 {
 	sm8150_init();
-	sa8155_init();
 	return 0;
 }
 
 static void audio_machine_815x_exit(void)
 {
 	sm8150_exit();
-	sa8155_exit();
 }
 
 module_init(audio_machine_815x_init);
diff --git a/asoc/machine_815x_init.h b/asoc/machine_815x_init.h
index 8ff4610..91a3997 100644
--- a/asoc/machine_815x_init.h
+++ b/asoc/machine_815x_init.h
@@ -1,14 +1,12 @@
 /* SPDX-License-Identifier: GPL-2.0-only */
 /*
-Copyright (c) 2017-2018, The Linux Foundation. All rights reserved.
+ * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
 */
 
 #ifndef __MACHINE_815X_INIT_H__
 #define __MACHINE_815X_INIT_H__
 int sm8150_init(void);
-int sa8155_init(void);
 
 void sm8150_exit(void);
-void sa8155_exit(void);
 #endif
 
diff --git a/asoc/sa8155.c b/asoc/sa8155.c
index e01b231..a3bbbdb 100644
--- a/asoc/sa8155.c
+++ b/asoc/sa8155.c
@@ -7288,6 +7288,9 @@
 	audio_notifier_deregister("sa8155");
 }
 
+module_init(sa8155_init);
+module_exit(sa8155_exit);
+
 MODULE_DESCRIPTION("ALSA SoC msm");
 MODULE_LICENSE("GPL v2");
 MODULE_ALIAS("platform:" DRV_NAME);