blob: 6239c01e4238701197cc15c999b9803dd79ace08 [file] [log] [blame]
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -08001ifeq ($(strip $(BOARD_USES_ALSA_AUDIO)),true)
2
3LOCAL_PATH := $(call my-dir)
4
5include $(CLEAR_VARS)
6
7LOCAL_ARM_MODE := arm
8
Ajay Dudanibe3335a2013-08-19 18:47:21 -07009AUDIO_PLATFORM := $(TARGET_BOARD_PLATFORM)
Ravi Kumar Alamanda48c921d2013-10-29 06:07:44 -070010
Mingming Yin0e1b2902014-05-19 18:20:59 -070011ifneq ($(filter msm8974 msm8226 msm8610 apq8084 msm8994,$(TARGET_BOARD_PLATFORM)),)
Ajay Dudanibe3335a2013-08-19 18:47:21 -070012 # B-family platform uses msm8974 code base
13 AUDIO_PLATFORM = msm8974
Ravi Kumar Alamanda48c921d2013-10-29 06:07:44 -070014 MULTIPLE_HW_VARIANTS_ENABLED := true
Mingming Yin8e5a4f62013-10-07 15:23:41 -070015ifneq ($(filter msm8610,$(TARGET_BOARD_PLATFORM)),)
16 LOCAL_CFLAGS := -DPLATFORM_MSM8610
17endif
Shiv Maliyappanahalli34b585f2013-10-01 15:49:05 -070018ifneq ($(filter msm8226,$(TARGET_BOARD_PLATFORM)),)
19 LOCAL_CFLAGS := -DPLATFORM_MSM8x26
20endif
Vidyakumar Athotad9d9ff32013-11-13 11:46:52 -080021ifneq ($(filter apq8084,$(TARGET_BOARD_PLATFORM)),)
22 LOCAL_CFLAGS := -DPLATFORM_APQ8084
23endif
Mingming Yin0e1b2902014-05-19 18:20:59 -070024ifneq ($(filter msm8994,$(TARGET_BOARD_PLATFORM)),)
25 LOCAL_CFLAGS := -DPLATFORM_MSM8994
26endif
Ajay Dudanibe3335a2013-08-19 18:47:21 -070027endif
28
Naresh Tannirudb72d1e2014-03-05 17:33:47 +053029ifneq ($(filter msm8916,$(TARGET_BOARD_PLATFORM)),)
30 AUDIO_PLATFORM = msm8916
31 MULTIPLE_HW_VARIANTS_ENABLED := true
32 LOCAL_CFLAGS := -DPLATFORM_MSM8916
33endif
Naresh Tanniru8b919ac2014-01-30 19:12:53 +053034
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -080035LOCAL_SRC_FILES := \
36 audio_hw.c \
Shiv Maliyappanahalli34b585f2013-10-01 15:49:05 -070037 voice.c \
Ben Romberger61764e32014-01-10 13:49:02 -080038 platform_info.c \
Ajay Dudanibe3335a2013-08-19 18:47:21 -070039 $(AUDIO_PLATFORM)/platform.c
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -080040
Subhash Chandra Bose Naripeddy19dc03b2014-03-10 14:43:05 -070041LOCAL_SRC_FILES += audio_extn/audio_extn.c \
42 audio_extn/utils.c
Apoorv Raghuvanshi9eaf94e2013-10-04 16:13:44 -070043
Mingming Yin67e34512014-04-03 17:47:22 -070044ifneq ($(strip $(AUDIO_FEATURE_DISABLED_PCM_OFFLOAD)),true)
45 LOCAL_CFLAGS += -DPCM_OFFLOAD_ENABLED
46endif
47
Apoorv Raghuvanshi9eaf94e2013-10-04 16:13:44 -070048ifneq ($(strip $(AUDIO_FEATURE_DISABLED_ANC_HEADSET)),true)
49 LOCAL_CFLAGS += -DANC_HEADSET_ENABLED
50endif
51
Venkata Narendra Kumar Gutta88fd0bc2014-03-27 19:47:56 +053052ifneq ($(strip $(AUDIO_FEATURE_DISABLED_FLUENCE)),true)
53 LOCAL_CFLAGS += -DFLUENCE_ENABLED
54endif
55
Apoorv Raghuvanshi9eaf94e2013-10-04 16:13:44 -070056ifneq ($(strip $(AUDIO_FEATURE_DISABLED_PROXY_DEVICE)),true)
57 LOCAL_CFLAGS += -DAFE_PROXY_ENABLED
58endif
59
Apoorv Raghuvanshi6e262842013-10-06 14:39:35 -070060ifneq ($(strip $(AUDIO_FEATURE_DISABLED_FM)),true)
61 LOCAL_CFLAGS += -DFM_ENABLED
62 LOCAL_SRC_FILES += audio_extn/fm.c
63endif
64
Apoorv Raghuvanshi5792d4b2013-10-07 18:40:05 -070065ifneq ($(strip $(AUDIO_FEATURE_DISABLED_USBAUDIO)),true)
66 LOCAL_CFLAGS += -DUSB_HEADSET_ENABLED
67 LOCAL_SRC_FILES += audio_extn/usb.c
68endif
Vimal Puthanveed5b4d3f12013-11-05 15:57:39 -080069ifneq ($(strip $(AUDIO_FEATURE_DISABLED_HFP)),true)
70 LOCAL_CFLAGS += -DHFP_ENABLED
71 LOCAL_SRC_FILES += audio_extn/hfp.c
72endif
Apoorv Raghuvanshi5792d4b2013-10-07 18:40:05 -070073
Jitendra Singh Naruka9a6a8d42014-02-10 20:07:12 -080074ifneq ($(strip $(AUDIO_FEATURE_DISABLED_CUSTOMSTEREO)),true)
75 LOCAL_CFLAGS += -DCUSTOM_STEREO_ENABLED
76endif
77
Apoorv Raghuvanshi6178a3f2013-10-19 12:38:54 -070078ifneq ($(strip $(AUDIO_FEATURE_DISABLED_SSR)),true)
79 LOCAL_CFLAGS += -DSSR_ENABLED
80 LOCAL_SRC_FILES += audio_extn/ssr.c
81 LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-audio/surround_sound/
Nagender Telkarca2b4942014-03-24 12:25:42 -060082 LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/common/inc/
Apoorv Raghuvanshi6178a3f2013-10-19 12:38:54 -070083endif
84
Shiv Maliyappanahalli303f51d2013-10-25 16:24:27 -070085ifneq ($(strip $(AUDIO_FEATURE_DISABLED_MULTI_VOICE_SESSIONS)),true)
86 LOCAL_CFLAGS += -DMULTI_VOICE_SESSION_ENABLED
87 LOCAL_SRC_FILES += voice_extn/voice_extn.c
Shiv Maliyappanahalli303f51d2013-10-25 16:24:27 -070088 LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include
Nagender44733a42013-12-08 00:05:20 -070089 LOCAL_ADDITIONAL_DEPENDENCIES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr
Shiv Maliyappanahalli303f51d2013-10-25 16:24:27 -070090
91ifneq ($(strip $(AUDIO_FEATURE_DISABLED_INCALL_MUSIC)),true)
92 LOCAL_CFLAGS += -DINCALL_MUSIC_ENABLED
93endif
Narsinga Rao Chella05573b72013-11-15 15:21:40 -080094
95ifneq ($(strip $(AUDIO_FEATURE_DISABLED_COMPRESS_VOIP)),true)
96 LOCAL_CFLAGS += -DCOMPRESS_VOIP_ENABLED
97 LOCAL_SRC_FILES += voice_extn/compress_voip.c
98endif
Subhash Chandra Bose Naripeddy19dc03b2014-03-10 14:43:05 -070099
100endif
101
102ifneq ($(strip $(AUDIO_FEATURE_DISABLED_FORMATS)),true)
103LOCAL_CFLAGS += -DFORMATS_ENABLED
Gopikrishnaiah Anandanf538cef2013-10-28 14:06:03 -0700104endif
Shiv Maliyappanahalli303f51d2013-10-25 16:24:27 -0700105
Gopikrishnaiah Anandanf538cef2013-10-28 14:06:03 -0700106ifneq ($(strip, $(AUDIO_FEATURE_DISABLED_SPKR_PROTECTION)),true)
Vidyakumar Athota1c6419a2014-01-10 14:47:34 -0800107ifneq ($(filter msm8974 apq8084,$(TARGET_BOARD_PLATFORM)),)
Gopikrishnaiah Anandanf538cef2013-10-28 14:06:03 -0700108 LOCAL_CFLAGS += -DSPKR_PROT_ENABLED
109 LOCAL_SRC_FILES += audio_extn/spkr_protection.c
110 LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include
Nagender44733a42013-12-08 00:05:20 -0700111 LOCAL_ADDITIONAL_DEPENDENCIES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr
Gopikrishnaiah Anandanf538cef2013-10-28 14:06:03 -0700112endif
Shiv Maliyappanahalli303f51d2013-10-25 16:24:27 -0700113endif
114
Ravi Kumar Alamanda48c921d2013-10-29 06:07:44 -0700115ifdef MULTIPLE_HW_VARIANTS_ENABLED
116 LOCAL_CFLAGS += -DHW_VARIANTS_ENABLED
117 LOCAL_SRC_FILES += $(AUDIO_PLATFORM)/hw_info.c
118endif
119
Mingming Yine62d7842013-10-25 16:26:03 -0700120ifneq ($(strip $(AUDIO_FEATURE_DISABLED_COMPRESS_CAPTURE)),true)
121 LOCAL_CFLAGS += -DCOMPRESS_CAPTURE_ENABLED
122 LOCAL_SRC_FILES += audio_extn/compress_capture.c
123endif
124
Mingming Yin90310102013-11-13 16:57:00 -0800125ifneq ($(strip $(AUDIO_FEATURE_DISABLED_DS1_DOLBY_DDP)),true)
126 LOCAL_CFLAGS += -DDS1_DOLBY_DDP_ENABLED
127 LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include
Nagender44733a42013-12-08 00:05:20 -0700128 LOCAL_ADDITIONAL_DEPENDENCIES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr
Subhash Chandra Bose Naripeddy7690c562013-12-14 00:34:53 -0800129 LOCAL_SRC_FILES += audio_extn/dolby.c
Mingming Yin90310102013-11-13 16:57:00 -0800130endif
131
Subhash Chandra Bose Naripeddy7690c562013-12-14 00:34:53 -0800132ifneq ($(strip $(AUDIO_FEATURE_DISABLED_DS1_DOLBY_DAP)),true)
133 LOCAL_CFLAGS += -DDS1_DOLBY_DAP_ENABLED
134ifeq ($(strip $(AUDIO_FEATURE_DISABLED_DS1_DOLBY_DDP)),true)
135 LOCAL_SRC_FILES += audio_extn/dolby.c
136endif
137endif
138
Subhash Chandra Bose Naripeddy16ff4f82014-04-01 21:03:10 -0700139ifeq ($(strip $(AUDIO_FEATURE_ENABLED_MULTIPLE_TUNNEL)), true)
140 LOCAL_CFLAGS += -DMULTIPLE_OFFLOAD_ENABLED
141endif
Subhash Chandra Bose Naripeddy7690c562013-12-14 00:34:53 -0800142
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -0800143LOCAL_SHARED_LIBRARIES := \
144 liblog \
145 libcutils \
146 libtinyalsa \
Ravi Kumar Alamanda4e02e552013-07-17 15:22:04 -0700147 libtinycompress \
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -0800148 libaudioroute \
Ben Romberger61764e32014-01-10 13:49:02 -0800149 libdl \
Helen Zeng008aebd2014-02-23 19:13:12 -0800150 libexpat \
151 libmdmdetect
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -0800152
153LOCAL_C_INCLUDES += \
154 external/tinyalsa/include \
Ravi Kumar Alamanda4e02e552013-07-17 15:22:04 -0700155 external/tinycompress/include \
Ben Romberger61764e32014-01-10 13:49:02 -0800156 external/expat/lib \
Ravi Kumar Alamandaf70ffb42013-04-16 15:55:53 -0700157 $(call include-path-for, audio-route) \
Eric Laurentb23d5282013-05-14 15:27:20 -0700158 $(call include-path-for, audio-effects) \
Apoorv Raghuvanshi9eaf94e2013-10-04 16:13:44 -0700159 $(LOCAL_PATH)/$(AUDIO_PLATFORM) \
Narsinga Rao Chella05573b72013-11-15 15:21:40 -0800160 $(LOCAL_PATH)/audio_extn \
Helen Zeng008aebd2014-02-23 19:13:12 -0800161 $(LOCAL_PATH)/voice_extn \
162 $(TARGET_OUT_HEADERS)/libmdmdetect/inc
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -0800163
Kiran Kandi910e1862013-10-29 13:29:42 -0700164ifeq ($(strip $(AUDIO_FEATURE_ENABLED_LISTEN)),true)
165 LOCAL_CFLAGS += -DAUDIO_LISTEN_ENABLED
166 LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-audio/audio-listen
167 LOCAL_SRC_FILES += audio_extn/listen.c
168endif
169
Damir Didjustof1d46c72013-11-06 17:59:04 -0800170ifeq ($(strip $(AUDIO_FEATURE_ENABLED_AUXPCM_BT)),true)
171 LOCAL_CFLAGS += -DAUXPCM_BT_ENABLED
172endif
173
Mingming Yin8e5a4f62013-10-07 15:23:41 -0700174LOCAL_MODULE := audio.primary.$(TARGET_BOARD_PLATFORM)
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -0800175
176LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/hw
177
178LOCAL_MODULE_TAGS := optional
179
180include $(BUILD_SHARED_LIBRARY)
181
182endif