瀏覽代碼

asoc: Added support for multiple project configuration

multiple targets can have same kernel config which can break
existing audio bazel compilation. Added support for multiple
project compilation for audio.

Change-Id: I1f357f6b14cd79acf94dbf9be4103c1f6b1cf108
Signed-off-by: Sarath Varma Ganapathiraju <[email protected]>
Sarath Varma Ganapathiraju 1 年之前
父節點
當前提交
0ef8277c0e
共有 10 個文件被更改,包括 394 次插入374 次删除
  1. 2 12
      BUILD.bazel
  2. 8 0
      EnableBazel.mk
  3. 366 0
      build/audio_target.bzl
  4. 0 50
      build/blair.bzl
  5. 0 56
      build/kalama.bzl
  6. 0 58
      build/niobe.bzl
  7. 0 63
      build/pineapple.bzl
  8. 0 54
      build/pitti.bzl
  9. 0 63
      build/volcano.bzl
  10. 18 18
      module_mgr.bzl

+ 2 - 12
BUILD.bazel

@@ -45,16 +45,6 @@ ddk_headers(
     hdrs = [":audio_common_headers",  ":audio_uapi_headers", ":audio_src_headers", ":audio_configs"]
 )
 
-load(":build/pineapple.bzl", "define_pineapple")
-load(":build/pitti.bzl", "define_pitti")
-load(":build/kalama.bzl", "define_kalama")
-load(":build/blair.bzl", "define_blair")
-load(":build/niobe.bzl", "define_niobe")
-load(":build/volcano.bzl", "define_volcano")
+load(":build/audio_target.bzl", "define_audio_target")
 
-define_kalama()
-define_pineapple()
-define_pitti()
-define_blair()
-define_niobe()
-define_volcano()
+define_audio_target()

+ 8 - 0
EnableBazel.mk

@@ -1,6 +1,8 @@
 ifeq ($(call is-board-platform-in-list,pineapple cliffs volcano),true)
 LOCAL_MODULE_DDK_BUILD := true
 
+LOCAL_MODULE_DDK_SUBTARGET_REGEX := "$(TARGET_BOARD_PLATFORM)_audio.*"
+
 LOCAL_MODULE_KO_DIRS := dsp/q6_notifier_dlkm.ko
 LOCAL_MODULE_KO_DIRS += dsp/spf_core_dlkm.ko
 LOCAL_MODULE_KO_DIRS += dsp/audpkt_ion_dlkm.ko
@@ -43,6 +45,8 @@ endif
 ifeq ($(call is-board-platform-in-list,pitti),true)
 LOCAL_MODULE_DDK_BUILD := true
 
+LOCAL_MODULE_DDK_SUBTARGET_REGEX := "audio.*"
+
 LOCAL_MODULE_KO_DIRS := dsp/q6_notifier_dlkm.ko
 LOCAL_MODULE_KO_DIRS += dsp/spf_core_dlkm.ko
 LOCAL_MODULE_KO_DIRS += dsp/audpkt_ion_dlkm.ko
@@ -77,6 +81,8 @@ endif
 ifeq ($(call is-board-platform-in-list,blair),true)
 LOCAL_MODULE_DDK_BUILD := true
 
+LOCAL_MODULE_DDK_SUBTARGET_REGEX := "audio.*"
+
 LOCAL_MODULE_KO_DIRS := dsp/q6_notifier_dlkm.ko
 LOCAL_MODULE_KO_DIRS += dsp/spf_core_dlkm.ko
 LOCAL_MODULE_KO_DIRS += dsp/audpkt_ion_dlkm.ko
@@ -109,6 +115,8 @@ endif
 ifeq ($(call is-board-platform-in-list, niobe),true)
 LOCAL_MODULE_DDK_BUILD := true
 
+LOCAL_MODULE_DDK_SUBTARGET_REGEX := "audio.*"
+
 LOCAL_MODULE_KO_DIRS := dsp/q6_notifier_dlkm.ko
 LOCAL_MODULE_KO_DIRS += dsp/spf_core_dlkm.ko
 LOCAL_MODULE_KO_DIRS += dsp/audpkt_ion_dlkm.ko

+ 366 - 0
build/audio_target.bzl

@@ -0,0 +1,366 @@
+load(":audio_modules.bzl", "audio_modules")
+load(":module_mgr.bzl", "define_target_modules")
+load("//msm-kernel:target_variants.bzl", "get_all_lunch_target_base_target_variants")
+load("//msm-kernel:target_variants.bzl", "get_all_la_variants", "get_all_le_variants", "get_all_lxc_variants")
+
+def define_blair(t, v, lt=None):
+    print(t)
+    define_target_modules(
+        target = "blair",
+        variant = v,
+        registry = audio_modules,
+        modules = [
+            "q6_dlkm",
+            "spf_core_dlkm",
+            "audpkt_ion_dlkm",
+            "q6_notifier_dlkm",
+            "adsp_loader_dlkm",
+            "audio_prm_dlkm",
+            "q6_pdr_dlkm",
+            "gpr_dlkm",
+            "audio_pkt_dlkm",
+            "pinctrl_lpi_dlkm",
+            "swr_dlkm",
+            "swr_ctrl_dlkm",
+            "snd_event_dlkm",
+            "machine_dlkm",
+            "wcd_core_dlkm",
+            "mbhc_dlkm",
+            "wcd9xxx_dlkm",
+            "stub_dlkm",
+            "bolero_cdc_dlkm",
+            "va_macro_dlkm",
+            "tx_macro_dlkm",
+            "rx_macro_dlkm",
+            "wsa881x_analog_dlkm",
+            "wcd937x_dlkm",
+            "wcd937x_slave_dlkm",
+            "wcd938x_dlkm",
+            "wcd938x_slave_dlkm",
+        ],
+        config_options = [
+            "CONFIG_SND_SOC_HOLI",
+            "CONFIG_SND_SOC_MSM_QDSP6V2_INTF",
+            "CONFIG_MSM_QDSP6_SSR",
+            "CONFIG_DIGITAL_CDC_RSC_MGR",
+            "CONFIG_SOUNDWIRE_MSTR_CTRL",
+            "CONFIG_WCD9XXX_CODEC_CORE_V2",
+            "CONFIG_MSM_CDC_PINCTRL",
+            "CONFIG_SND_SOC_WCD_IRQ",
+            "CONFIG_SND_SOC_WCD9XXX_V2",
+            "CONFIG_SND_SOC_WCD_MBHC_ADC",
+        ],
+        lunch_target = lt,
+    )
+
+def define_niobe(t, v, lt=None):
+    define_target_modules(
+        target = "niobe",
+        variant = v,
+        registry = audio_modules,
+        modules = [
+            "q6_dlkm",
+            "spf_core_dlkm",
+            "audpkt_ion_dlkm",
+            "q6_notifier_dlkm",
+            "adsp_loader_dlkm",
+            "audio_prm_dlkm",
+            "q6_pdr_dlkm",
+            "gpr_dlkm",
+            "audio_pkt_dlkm",
+            "pinctrl_lpi_dlkm",
+            "swr_dlkm",
+            "swr_ctrl_dlkm",
+            "snd_event_dlkm",
+            "machine_dlkm",
+            "wcd_core_dlkm",
+            "mbhc_dlkm",
+            "swr_dmic_dlkm",
+            "wcd9xxx_dlkm",
+            "swr_haptics_dlkm",
+            "stub_dlkm",
+            "hdmi_dlkm",
+            "lpass_cdc_dlkm",
+            "lpass_cdc_wsa_macro_dlkm",
+            "lpass_cdc_wsa2_macro_dlkm",
+            "lpass_cdc_va_macro_dlkm",
+            "lpass_cdc_rx_macro_dlkm",
+            "lpass_cdc_tx_macro_dlkm",
+            "wsa883x_dlkm",
+            "wsa884x_dlkm",
+            "wcd937x_dlkm",
+            "wcd937x_slave_dlkm",
+            "wcd938x_dlkm",
+            "wcd938x_slave_dlkm",
+        ],
+        config_options = [
+            "CONFIG_SND_SOC_NIOBE",
+            "CONFIG_SND_SOC_MSM_QDSP6V2_INTF",
+            "CONFIG_MSM_QDSP6_SSR",
+            "CONFIG_DIGITAL_CDC_RSC_MGR",
+            "CONFIG_SOUNDWIRE_MSTR_CTRL",
+            "CONFIG_SWRM_VER_2P0",
+            "CONFIG_WCD9XXX_CODEC_CORE_V2",
+            "CONFIG_MSM_CDC_PINCTRL",
+            "CONFIG_SND_SOC_WCD_IRQ",
+            "CONFIG_SND_SOC_WCD9XXX_V2",
+            "CONFIG_SND_SOC_WCD_MBHC_ADC",
+            "CONFIG_MSM_EXT_DISPLAY",
+        ],
+        lunch_target = lt,
+    )
+
+def define_pineapple(t, v, lt=None):
+    print(t)
+    define_target_modules(
+        target = "pineapple",
+        variant = v,
+        registry = audio_modules,
+        modules = [
+            "q6_dlkm",
+            "spf_core_dlkm",
+            "audpkt_ion_dlkm",
+            "q6_notifier_dlkm",
+            "adsp_loader_dlkm",
+            "audio_prm_dlkm",
+            "q6_pdr_dlkm",
+            "gpr_dlkm",
+            "audio_pkt_dlkm",
+            "pinctrl_lpi_dlkm",
+            "swr_dlkm",
+            "swr_ctrl_dlkm",
+            "snd_event_dlkm",
+            "machine_dlkm",
+            "wcd_core_dlkm",
+            "mbhc_dlkm",
+            "swr_dmic_dlkm",
+            "wcd9xxx_dlkm",
+            "swr_haptics_dlkm",
+            "stub_dlkm",
+            "hdmi_dlkm",
+            "lpass_cdc_dlkm",
+            "lpass_cdc_wsa_macro_dlkm",
+            "lpass_cdc_wsa2_macro_dlkm",
+            "lpass_cdc_va_macro_dlkm",
+            "lpass_cdc_rx_macro_dlkm",
+            "lpass_cdc_tx_macro_dlkm",
+            "wsa883x_dlkm",
+            "wsa884x_dlkm",
+            "wcd937x_dlkm",
+            "wcd937x_slave_dlkm",
+            "wcd938x_dlkm",
+            "wcd938x_slave_dlkm",
+            "wcd939x_dlkm",
+            "wcd939x_slave_dlkm",
+            "wcd9378_dlkm",
+            "wcd9378_slave_dlkm"
+        ],
+        config_options = [
+            "CONFIG_SND_SOC_PINEAPPLE",
+            "CONFIG_SND_SOC_MSM_QDSP6V2_INTF",
+            "CONFIG_MSM_QDSP6_SSR",
+            "CONFIG_DIGITAL_CDC_RSC_MGR",
+            "CONFIG_SOUNDWIRE_MSTR_CTRL",
+            "CONFIG_SWRM_VER_2P0",
+            "CONFIG_BOLERO_VER_2P6",
+            "CONFIG_WCD9XXX_CODEC_CORE_V2",
+            "CONFIG_MSM_CDC_PINCTRL",
+            "CONFIG_SND_SOC_WCD_IRQ",
+            "CONFIG_SND_SOC_WCD9XXX_V2",
+            "CONFIG_SND_SOC_WCD_MBHC_ADC",
+            "CONFIG_MSM_EXT_DISPLAY",
+        ],
+        lunch_target = lt,
+    )
+
+def define_kalama(t, v, lt=None):
+    define_target_modules(
+        target = "kalama",
+        variant = v,
+        registry = audio_modules,
+        modules = [
+            "q6_dlkm",
+            "spf_core_dlkm",
+            "audpkt_ion_dlkm",
+            "q6_notifier_dlkm",
+            "adsp_loader_dlkm",
+            "audio_prm_dlkm",
+            "q6_pdr_dlkm",
+            "gpr_dlkm",
+            "audio_pkt_dlkm",
+            "pinctrl_lpi_dlkm",
+            "swr_dlkm",
+            "swr_ctrl_dlkm",
+            "snd_event_dlkm",
+            "machine_dlkm",
+            "wcd_core_dlkm",
+            "mbhc_dlkm",
+            "swr_dmic_dlkm",
+            "wcd9xxx_dlkm",
+            "swr_haptics_dlkm",
+            "stub_dlkm",
+            "hdmi_dlkm",
+            "lpass_cdc_dlkm",
+            "lpass_cdc_wsa_macro_dlkm",
+            "lpass_cdc_wsa2_macro_dlkm",
+            "lpass_cdc_va_macro_dlkm",
+            "lpass_cdc_rx_macro_dlkm",
+            "lpass_cdc_tx_macro_dlkm",
+            "wsa883x_dlkm",
+            "wsa884x_dlkm",
+            "wcd938x_dlkm",
+            "wcd938x_slave_dlkm"
+        ],
+        config_options = [
+            "CONFIG_SND_SOC_KALAMA",
+            "CONFIG_SND_SOC_MSM_QDSP6V2_INTF",
+            "CONFIG_MSM_QDSP6_SSR",
+            "CONFIG_DIGITAL_CDC_RSC_MGR",
+            "CONFIG_SOUNDWIRE_MSTR_CTRL",
+            "CONFIG_SWRM_VER_2P0",
+            "CONFIG_WCD9XXX_CODEC_CORE_V2",
+            "CONFIG_MSM_CDC_PINCTRL",
+            "CONFIG_SND_SOC_WCD_IRQ",
+            "CONFIG_SND_SOC_WCD9XXX_V2",
+            "CONFIG_SND_SOC_WCD_MBHC_ADC",
+            "CONFIG_MSM_EXT_DISPLAY",
+        ],
+        lunch_target = lt,
+    )
+
+def define_pitti(t, v, lt=None):
+    print(t)
+    define_target_modules(
+        target = "pitti",
+        variant = v,
+        registry = audio_modules,
+        modules = [
+            "q6_dlkm",
+            "spf_core_dlkm",
+            "audpkt_ion_dlkm",
+            "q6_notifier_dlkm",
+            "adsp_loader_dlkm",
+            "audio_prm_dlkm",
+            "q6_pdr_dlkm",
+            "gpr_dlkm",
+            "audio_pkt_dlkm",
+            "pinctrl_lpi_dlkm",
+            "swr_dlkm",
+            "swr_ctrl_dlkm",
+            "snd_event_dlkm",
+            "machine_dlkm",
+            "swr_haptics_dlkm",
+            "wcd_core_dlkm",
+            "mbhc_dlkm",
+            "wcd9xxx_dlkm",
+            "stub_dlkm",
+            "hdmi_dlkm",
+            "lpass_cdc_dlkm",
+            "lpass_cdc_va_macro_dlkm",
+            "lpass_cdc_rx_macro_dlkm",
+            "lpass_cdc_tx_macro_dlkm",
+            "lpass_cdc_wsa_macro_dlkm",
+            "lpass_cdc_wsa2_macro_dlkm",
+            "wsa881x_analog_dlkm",
+            "wcd9378_dlkm",
+            "wcd9378_slave_dlkm"
+        ],
+        config_options = [
+            "CONFIG_SND_SOC_PITTI",
+            "CONFIG_SND_SOC_MSM_QDSP6V2_INTF",
+            "CONFIG_MSM_QDSP6_SSR",
+            "CONFIG_BOLERO_VER_2P1",
+            "CONFIG_DIGITAL_CDC_RSC_MGR",
+            "CONFIG_SOUNDWIRE_MSTR_CTRL",
+            "CONFIG_WCD9XXX_CODEC_CORE_V2",
+            "CONFIG_MSM_CDC_PINCTRL",
+            "CONFIG_SND_SOC_WCD_IRQ",
+            "CONFIG_SND_SOC_WCD9XXX_V2",
+            "CONFIG_SND_SOC_WCD_MBHC_ADC",
+            "CONFIG_MSM_EXT_DISPLAY",
+        ],
+        lunch_target = lt,
+    )
+
+def define_volcano(t, v, lt=None):
+    print(t)
+    define_target_modules(
+        target = "volcano",
+        variant = v,
+        registry = audio_modules,
+        modules = [
+            "q6_dlkm",
+            "spf_core_dlkm",
+            "audpkt_ion_dlkm",
+            "q6_notifier_dlkm",
+            "adsp_loader_dlkm",
+            "audio_prm_dlkm",
+            "q6_pdr_dlkm",
+            "gpr_dlkm",
+            "audio_pkt_dlkm",
+            "pinctrl_lpi_dlkm",
+            "swr_dlkm",
+            "swr_ctrl_dlkm",
+            "snd_event_dlkm",
+            "wcd_core_dlkm",
+            "mbhc_dlkm",
+            "machine_dlkm",
+            "swr_dmic_dlkm",
+            "wcd9xxx_dlkm",
+            "swr_haptics_dlkm",
+            "stub_dlkm",
+            "hdmi_dlkm",
+            "lpass_cdc_dlkm",
+            "lpass_cdc_wsa_macro_dlkm",
+            "lpass_cdc_wsa2_macro_dlkm",
+            "lpass_cdc_va_macro_dlkm",
+            "lpass_cdc_rx_macro_dlkm",
+            "lpass_cdc_tx_macro_dlkm",
+            "wsa883x_dlkm",
+            "wsa884x_dlkm",
+            "wcd937x_dlkm",
+            "wcd937x_slave_dlkm",
+            "wcd938x_dlkm",
+            "wcd938x_slave_dlkm",
+            "wcd939x_dlkm",
+            "wcd939x_slave_dlkm",
+            "wcd9378_dlkm",
+            "wcd9378_slave_dlkm"
+        ],
+        config_options = [
+            "CONFIG_SND_SOC_VOLCANO",
+            "CONFIG_SND_SOC_MSM_QDSP6V2_INTF",
+            "CONFIG_MSM_QDSP6_SSR",
+            "CONFIG_DIGITAL_CDC_RSC_MGR",
+            "CONFIG_SOUNDWIRE_MSTR_CTRL",
+            "CONFIG_SWRM_VER_1P7",
+            "CONFIG_BOLERO_VER_2P6",
+            "CONFIG_WCD9XXX_CODEC_CORE_V2",
+            "CONFIG_MSM_CDC_PINCTRL",
+            "CONFIG_SND_SOC_WCD_IRQ",
+            "CONFIG_SND_SOC_WCD9XXX_V2",
+            "CONFIG_SND_SOC_WCD_MBHC_ADC",
+            "CONFIG_MSM_EXT_DISPLAY",
+        ],
+        lunch_target = lt,
+    )
+
+def define_audio_target():
+    for (t, v) in get_all_la_variants():
+        print(t)
+        print(v)
+        if t == "blair":
+            define_blair(t, v)
+        if t == "pitti":
+            define_pitti(t, v)
+        if t == "pineapple":
+            define_pineapple(t, v)
+        if t == "kalama":
+            define_kalama(t, v)
+        if t == "niobe":
+            define_niobe(t, v)
+
+    for (lt, t, v) in get_all_lunch_target_base_target_variants():
+        print(lt)
+        if lt == "volcano":
+            define_volcano(t, v, lt)

+ 0 - 50
build/blair.bzl

@@ -1,50 +0,0 @@
-load(":audio_modules.bzl", "audio_modules")
-load(":module_mgr.bzl", "define_target_modules")
-
-def define_blair():
-    define_target_modules(
-        target = "blair",
-        variants = ["consolidate", "gki"],
-        registry = audio_modules,
-        modules = [
-            "q6_dlkm",
-            "spf_core_dlkm",
-            "audpkt_ion_dlkm",
-            "q6_notifier_dlkm",
-            "adsp_loader_dlkm",
-            "audio_prm_dlkm",
-            "q6_pdr_dlkm",
-            "gpr_dlkm",
-            "audio_pkt_dlkm",
-            "pinctrl_lpi_dlkm",
-            "swr_dlkm",
-            "swr_ctrl_dlkm",
-            "snd_event_dlkm",
-            "machine_dlkm",
-            "wcd_core_dlkm",
-            "mbhc_dlkm",
-            "wcd9xxx_dlkm",
-            "stub_dlkm",
-            "bolero_cdc_dlkm",
-            "va_macro_dlkm",
-            "tx_macro_dlkm",
-            "rx_macro_dlkm",
-            "wsa881x_analog_dlkm",
-            "wcd937x_dlkm",
-            "wcd937x_slave_dlkm",
-            "wcd938x_dlkm",
-            "wcd938x_slave_dlkm",
-        ],
-        config_options = [
-            "CONFIG_SND_SOC_HOLI",
-            "CONFIG_SND_SOC_MSM_QDSP6V2_INTF",
-            "CONFIG_MSM_QDSP6_SSR",
-            "CONFIG_DIGITAL_CDC_RSC_MGR",
-            "CONFIG_SOUNDWIRE_MSTR_CTRL",
-            "CONFIG_WCD9XXX_CODEC_CORE_V2",
-            "CONFIG_MSM_CDC_PINCTRL",
-            "CONFIG_SND_SOC_WCD_IRQ",
-            "CONFIG_SND_SOC_WCD9XXX_V2",
-            "CONFIG_SND_SOC_WCD_MBHC_ADC",
-        ]
-    )

+ 0 - 56
build/kalama.bzl

@@ -1,56 +0,0 @@
-load(":audio_modules.bzl", "audio_modules")
-load(":module_mgr.bzl", "define_target_modules")
-
-def define_kalama():
-    define_target_modules(
-        target = "kalama",
-        variants = ["consolidate", "gki"],
-        registry = audio_modules,
-        modules = [
-            "q6_dlkm",
-            "spf_core_dlkm",
-            "audpkt_ion_dlkm",
-            "q6_notifier_dlkm",
-            "adsp_loader_dlkm",
-            "audio_prm_dlkm",
-            "q6_pdr_dlkm",
-            "gpr_dlkm",
-            "audio_pkt_dlkm",
-            "pinctrl_lpi_dlkm",
-            "swr_dlkm",
-            "swr_ctrl_dlkm",
-            "snd_event_dlkm",
-            "machine_dlkm",
-            "wcd_core_dlkm",
-            "mbhc_dlkm",
-            "swr_dmic_dlkm",
-            "wcd9xxx_dlkm",
-            "swr_haptics_dlkm",
-            "stub_dlkm",
-            "hdmi_dlkm",
-            "lpass_cdc_dlkm",
-            "lpass_cdc_wsa_macro_dlkm",
-            "lpass_cdc_wsa2_macro_dlkm",
-            "lpass_cdc_va_macro_dlkm",
-            "lpass_cdc_rx_macro_dlkm",
-            "lpass_cdc_tx_macro_dlkm",
-            "wsa883x_dlkm",
-            "wsa884x_dlkm",
-            "wcd938x_dlkm",
-            "wcd938x_slave_dlkm"
-        ],
-        config_options = [
-            "CONFIG_SND_SOC_KALAMA",
-            "CONFIG_SND_SOC_MSM_QDSP6V2_INTF",
-            "CONFIG_MSM_QDSP6_SSR",
-            "CONFIG_DIGITAL_CDC_RSC_MGR",
-            "CONFIG_SOUNDWIRE_MSTR_CTRL",
-            "CONFIG_SWRM_VER_2P0",
-            "CONFIG_WCD9XXX_CODEC_CORE_V2",
-            "CONFIG_MSM_CDC_PINCTRL",
-            "CONFIG_SND_SOC_WCD_IRQ",
-            "CONFIG_SND_SOC_WCD9XXX_V2",
-            "CONFIG_SND_SOC_WCD_MBHC_ADC",
-            "CONFIG_MSM_EXT_DISPLAY",
-        ]
-    )

+ 0 - 58
build/niobe.bzl

@@ -1,58 +0,0 @@
-load(":audio_modules.bzl", "audio_modules")
-load(":module_mgr.bzl", "define_target_modules")
-
-def define_niobe():
-    define_target_modules(
-        target = "niobe",
-        variants = ["consolidate", "gki"],
-        registry = audio_modules,
-        modules = [
-            "q6_dlkm",
-            "spf_core_dlkm",
-            "audpkt_ion_dlkm",
-            "q6_notifier_dlkm",
-            "adsp_loader_dlkm",
-            "audio_prm_dlkm",
-            "q6_pdr_dlkm",
-            "gpr_dlkm",
-            "audio_pkt_dlkm",
-            "pinctrl_lpi_dlkm",
-            "swr_dlkm",
-            "swr_ctrl_dlkm",
-            "snd_event_dlkm",
-            "machine_dlkm",
-            "wcd_core_dlkm",
-            "mbhc_dlkm",
-            "swr_dmic_dlkm",
-            "wcd9xxx_dlkm",
-            "swr_haptics_dlkm",
-            "stub_dlkm",
-            "hdmi_dlkm",
-            "lpass_cdc_dlkm",
-            "lpass_cdc_wsa_macro_dlkm",
-            "lpass_cdc_wsa2_macro_dlkm",
-            "lpass_cdc_va_macro_dlkm",
-            "lpass_cdc_rx_macro_dlkm",
-            "lpass_cdc_tx_macro_dlkm",
-            "wsa883x_dlkm",
-            "wsa884x_dlkm",
-            "wcd937x_dlkm",
-            "wcd937x_slave_dlkm",
-            "wcd938x_dlkm",
-            "wcd938x_slave_dlkm",
-        ],
-        config_options = [
-            "CONFIG_SND_SOC_NIOBE",
-            "CONFIG_SND_SOC_MSM_QDSP6V2_INTF",
-            "CONFIG_MSM_QDSP6_SSR",
-            "CONFIG_DIGITAL_CDC_RSC_MGR",
-            "CONFIG_SOUNDWIRE_MSTR_CTRL",
-            "CONFIG_SWRM_VER_2P0",
-            "CONFIG_WCD9XXX_CODEC_CORE_V2",
-            "CONFIG_MSM_CDC_PINCTRL",
-            "CONFIG_SND_SOC_WCD_IRQ",
-            "CONFIG_SND_SOC_WCD9XXX_V2",
-            "CONFIG_SND_SOC_WCD_MBHC_ADC",
-            "CONFIG_MSM_EXT_DISPLAY",
-        ]
-    )

+ 0 - 63
build/pineapple.bzl

@@ -1,63 +0,0 @@
-load(":audio_modules.bzl", "audio_modules")
-load(":module_mgr.bzl", "define_target_modules")
-
-def define_pineapple():
-    define_target_modules(
-        target = "pineapple",
-        variants = ["consolidate", "gki"],
-        registry = audio_modules,
-        modules = [
-            "q6_dlkm",
-            "spf_core_dlkm",
-            "audpkt_ion_dlkm",
-            "q6_notifier_dlkm",
-            "adsp_loader_dlkm",
-            "audio_prm_dlkm",
-            "q6_pdr_dlkm",
-            "gpr_dlkm",
-            "audio_pkt_dlkm",
-            "pinctrl_lpi_dlkm",
-            "swr_dlkm",
-            "swr_ctrl_dlkm",
-            "snd_event_dlkm",
-            "machine_dlkm",
-            "wcd_core_dlkm",
-            "mbhc_dlkm",
-            "swr_dmic_dlkm",
-            "wcd9xxx_dlkm",
-            "swr_haptics_dlkm",
-            "stub_dlkm",
-            "hdmi_dlkm",
-            "lpass_cdc_dlkm",
-            "lpass_cdc_wsa_macro_dlkm",
-            "lpass_cdc_wsa2_macro_dlkm",
-            "lpass_cdc_va_macro_dlkm",
-            "lpass_cdc_rx_macro_dlkm",
-            "lpass_cdc_tx_macro_dlkm",
-            "wsa883x_dlkm",
-            "wsa884x_dlkm",
-            "wcd937x_dlkm",
-            "wcd937x_slave_dlkm",
-            "wcd938x_dlkm",
-            "wcd938x_slave_dlkm",
-            "wcd939x_dlkm",
-            "wcd939x_slave_dlkm",
-            "wcd9378_dlkm",
-            "wcd9378_slave_dlkm"
-        ],
-        config_options = [
-            "CONFIG_SND_SOC_PINEAPPLE",
-            "CONFIG_SND_SOC_MSM_QDSP6V2_INTF",
-            "CONFIG_MSM_QDSP6_SSR",
-            "CONFIG_DIGITAL_CDC_RSC_MGR",
-            "CONFIG_SOUNDWIRE_MSTR_CTRL",
-            "CONFIG_SWRM_VER_2P0",
-            "CONFIG_BOLERO_VER_2P6",
-            "CONFIG_WCD9XXX_CODEC_CORE_V2",
-            "CONFIG_MSM_CDC_PINCTRL",
-            "CONFIG_SND_SOC_WCD_IRQ",
-            "CONFIG_SND_SOC_WCD9XXX_V2",
-            "CONFIG_SND_SOC_WCD_MBHC_ADC",
-            "CONFIG_MSM_EXT_DISPLAY",
-        ]
-    )

+ 0 - 54
build/pitti.bzl

@@ -1,54 +0,0 @@
-load(":audio_modules.bzl", "audio_modules")
-load(":module_mgr.bzl", "define_target_modules")
-
-def define_pitti():
-    define_target_modules(
-        target = "pitti",
-        variants = ["consolidate", "gki"],
-        registry = audio_modules,
-        modules = [
-            "q6_dlkm",
-            "spf_core_dlkm",
-            "audpkt_ion_dlkm",
-            "q6_notifier_dlkm",
-            "adsp_loader_dlkm",
-            "audio_prm_dlkm",
-            "q6_pdr_dlkm",
-            "gpr_dlkm",
-            "audio_pkt_dlkm",
-            "pinctrl_lpi_dlkm",
-            "swr_dlkm",
-            "swr_ctrl_dlkm",
-            "snd_event_dlkm",
-            "machine_dlkm",
-            "wcd_core_dlkm",
-            "mbhc_dlkm",
-            "wcd9xxx_dlkm",
-            "swr_haptics_dlkm",
-            "stub_dlkm",
-            "hdmi_dlkm",
-            "lpass_cdc_dlkm",
-            "lpass_cdc_va_macro_dlkm",
-            "lpass_cdc_rx_macro_dlkm",
-            "lpass_cdc_tx_macro_dlkm",
-            "lpass_cdc_wsa2_macro_dlkm",
-            "lpass_cdc_wsa_macro_dlkm",
-            "wsa881x_analog_dlkm",
-            "wcd9378_dlkm",
-            "wcd9378_slave_dlkm"
-        ],
-        config_options = [
-            "CONFIG_SND_SOC_PITTI",
-            "CONFIG_SND_SOC_MSM_QDSP6V2_INTF",
-            "CONFIG_MSM_QDSP6_SSR",
-            "CONFIG_BOLERO_VER_2P1",
-            "CONFIG_DIGITAL_CDC_RSC_MGR",
-            "CONFIG_SOUNDWIRE_MSTR_CTRL",
-            "CONFIG_WCD9XXX_CODEC_CORE_V2",
-            "CONFIG_MSM_CDC_PINCTRL",
-            "CONFIG_SND_SOC_WCD_IRQ",
-            "CONFIG_SND_SOC_WCD9XXX_V2",
-            "CONFIG_SND_SOC_WCD_MBHC_ADC",
-            "CONFIG_MSM_EXT_DISPLAY",
-        ]
-    )

+ 0 - 63
build/volcano.bzl

@@ -1,63 +0,0 @@
-load(":audio_modules.bzl", "audio_modules")
-load(":module_mgr.bzl", "define_target_modules")
-
-def define_volcano():
-    define_target_modules(
-        target = "volcano",
-        variants = ["consolidate", "gki"],
-        registry = audio_modules,
-        modules = [
-            "q6_dlkm",
-            "spf_core_dlkm",
-            "audpkt_ion_dlkm",
-            "q6_notifier_dlkm",
-            "adsp_loader_dlkm",
-            "audio_prm_dlkm",
-            "q6_pdr_dlkm",
-            "gpr_dlkm",
-            "audio_pkt_dlkm",
-            "pinctrl_lpi_dlkm",
-            "swr_dlkm",
-            "swr_ctrl_dlkm",
-            "snd_event_dlkm",
-            "wcd_core_dlkm",
-            "mbhc_dlkm",
-            "machine_dlkm",
-            "swr_dmic_dlkm",
-            "wcd9xxx_dlkm",
-            "swr_haptics_dlkm",
-            "stub_dlkm",
-            "hdmi_dlkm",
-            "lpass_cdc_dlkm",
-            "lpass_cdc_wsa_macro_dlkm",
-            "lpass_cdc_wsa2_macro_dlkm",
-            "lpass_cdc_va_macro_dlkm",
-            "lpass_cdc_rx_macro_dlkm",
-            "lpass_cdc_tx_macro_dlkm",
-            "wsa883x_dlkm",
-            "wsa884x_dlkm",
-            "wcd937x_dlkm",
-            "wcd937x_slave_dlkm",
-            "wcd938x_dlkm",
-            "wcd938x_slave_dlkm",
-            "wcd939x_dlkm",
-            "wcd939x_slave_dlkm",
-            "wcd9378_dlkm",
-            "wcd9378_slave_dlkm"
-        ],
-        config_options = [
-            "CONFIG_SND_SOC_VOLCANO",
-            "CONFIG_SND_SOC_MSM_QDSP6V2_INTF",
-            "CONFIG_MSM_QDSP6_SSR",
-            "CONFIG_DIGITAL_CDC_RSC_MGR",
-            "CONFIG_SOUNDWIRE_MSTR_CTRL",
-            "CONFIG_SWRM_VER_1P7",
-            "CONFIG_BOLERO_VER_2P6",
-            "CONFIG_WCD9XXX_CODEC_CORE_V2",
-            "CONFIG_MSM_CDC_PINCTRL",
-            "CONFIG_SND_SOC_WCD_IRQ",
-            "CONFIG_SND_SOC_WCD9XXX_V2",
-            "CONFIG_SND_SOC_WCD_MBHC_ADC",
-            "CONFIG_MSM_EXT_DISPLAY",
-        ]
-    )

+ 18 - 18
module_mgr.bzl

@@ -48,19 +48,28 @@ def _combine_target_module_options(enabled_modules, config_options):
 
     return all_options | modules_options
 
-def _define_target_modules(target, variant, registry, modules, product = None, config_options = []):
+def _define_target_modules(target, variant, registry, modules, product = None, config_options = [],lunch_target=None):
+
+    if lunch_target != None:
+        kernel_build = "{}_{}_{}".format(target, variant, lunch_target)
+    else:
+        kernel_build = "{}_{}".format(target, variant)
+
+    dist_target_name = "{}_audio_dist".format(kernel_build)
+    data = [":{}_audio".format(kernel_build)]
+
     dep_formatter = lambda s : s.replace("%t", target)\
                                 .replace("%v", variant)\
                                 .replace("%p", product if product else "")\
                                 .replace("%b", "{}_{}".format(target, variant))
-    rule_prefix = "{}_{}_{}".format(target, variant, product) if product else "{}_{}".format(target, variant)
+
     enabled_modules = _get_enabled_module_objs(registry, modules)
     options = _combine_target_module_options(enabled_modules, config_options)
     headers = ["//msm-kernel:all_headers"] + registry.hdrs
     submodule_rules = []
 
     for module in enabled_modules:
-        rule_name = "{}_{}".format(rule_prefix, module.name)
+        rule_name = "{}_{}".format(kernel_build, module.name)
         srcs = _get_module_srcs(module, options)
         deps = headers + [dep_formatter(dep) for dep in module.deps]
 
@@ -78,14 +87,14 @@ def _define_target_modules(target, variant, registry, modules, product = None, c
         submodule_rules.append(rule_name)
 
     ddk_module(
-        name = "{}_modules".format(rule_prefix),
+        name = "{}_audio".format(kernel_build),
         kernel_build = "//msm-kernel:{}_{}".format(target, variant),
         deps = submodule_rules
     )
 
     copy_to_dist_dir(
-        name = "{}_modules_dist".format(rule_prefix),
-        data = [":{}_modules".format(rule_prefix)],
+        name = dist_target_name,
+        data = data,
         dist_dir = "out/target/product/{}/dlkm/lib/modules/".format(target),
         flat = True,
         wipe_dist_dir = False,
@@ -114,19 +123,10 @@ def create_module_registry(hdrs = []):
         get = module_map.get,
     )
 
-def define_target_modules(target, variants, registry, modules, config_options = [], products = []):
-    for variant in variants:
-        if products:
-            for product in products:
-                _define_target_modules(target = target,
-                                       variant = variant,
-                                       registry = registry,
-                                       modules = modules,
-                                       product = product,
-                                       config_options = config_options)
-        else:
+def define_target_modules(target, variant, registry, modules, config_options = [], lunch_target=None, products = []):
             _define_target_modules(target = target,
                                    variant = variant,
                                    registry = registry,
                                    modules = modules,
-                                   config_options = config_options)
+                                   config_options = config_options,
+                                   lunch_target = lunch_target)