blob: d482e972b43fa23a0905930e4c90efbb27308ea6 [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)
Jean-Michel Trivic0750692015-10-12 12:12:32 -070010ifneq ($(filter msm8960,$(TARGET_BOARD_PLATFORM)),)
11 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="2"
12endif
Ajay Dudani89541032015-03-30 17:39:24 -070013ifneq ($(filter msm8974 msm8226 msm8084 msm8992 msm8994,$(TARGET_BOARD_PLATFORM)),)
Ajay Dudanibe3335a2013-08-19 18:47:21 -070014 # B-family platform uses msm8974 code base
15 AUDIO_PLATFORM = msm8974
Jean-Michel Trivi7246fb62015-10-08 20:20:48 -070016ifneq ($(filter msm8974,$(TARGET_BOARD_PLATFORM)),)
Humberto Borba00b40132015-11-12 20:31:50 -020017 LOCAL_CFLAGS := -DPLATFORM_MSM8974
Jean-Michel Trivi7246fb62015-10-08 20:20:48 -070018 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="2"
19endif
Ravi Kumar Alamanda8e6e98f2013-11-05 15:57:39 -080020ifneq ($(filter msm8226,$(TARGET_BOARD_PLATFORM)),)
21 LOCAL_CFLAGS := -DPLATFORM_MSM8x26
Prashant Malanic92c5962015-08-11 15:10:18 -070022 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="2"
Ravi Kumar Alamanda8e6e98f2013-11-05 15:57:39 -080023endif
Ravi Kumar Alamanda83281a92014-05-19 18:14:57 -070024ifneq ($(filter msm8084,$(TARGET_BOARD_PLATFORM)),)
25 LOCAL_CFLAGS := -DPLATFORM_MSM8084
Prashant Malanic92c5962015-08-11 15:10:18 -070026 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="2"
Ravi Kumar Alamanda83281a92014-05-19 18:14:57 -070027endif
Patrick Tjin11c2e2d2015-03-12 11:44:18 -070028ifneq ($(filter msm8992,$(TARGET_BOARD_PLATFORM)),)
29 LOCAL_CFLAGS := -DPLATFORM_MSM8994
Prashant Malanic92c5962015-08-11 15:10:18 -070030 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="4"
Ravi Kumar Alamanda533bb722015-09-23 13:47:03 -070031 LOCAL_CFLAGS += -DKPI_OPTIMIZE_ENABLED
Patrick Tjin11c2e2d2015-03-12 11:44:18 -070032endif
33ifneq ($(filter msm8994,$(TARGET_BOARD_PLATFORM)),)
34 LOCAL_CFLAGS := -DPLATFORM_MSM8994
Prashant Malanic92c5962015-08-11 15:10:18 -070035 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="4"
Ravi Kumar Alamanda533bb722015-09-23 13:47:03 -070036 LOCAL_CFLAGS += -DKPI_OPTIMIZE_ENABLED
Patrick Tjin11c2e2d2015-03-12 11:44:18 -070037endif
Ajay Dudanibe3335a2013-08-19 18:47:21 -070038endif
39
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -080040LOCAL_SRC_FILES := \
41 audio_hw.c \
Vineeta Srivastava4b89e372014-06-19 14:21:42 -070042 voice.c \
Haynes Mathew George5bc18842014-06-16 16:36:20 -070043 platform_info.c \
Eric Laurent0499d4f2014-08-25 22:39:29 -050044 audio_extn/ext_speaker.c \
Ravi Kumar Alamanda533bb722015-09-23 13:47:03 -070045 audio_extn/audio_extn.c \
Ajay Dudanibe3335a2013-08-19 18:47:21 -070046 $(AUDIO_PLATFORM)/platform.c
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -080047
48LOCAL_SHARED_LIBRARIES := \
49 liblog \
50 libcutils \
51 libtinyalsa \
Ravi Kumar Alamanda4e02e552013-07-17 15:22:04 -070052 libtinycompress \
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -080053 libaudioroute \
Haynes Mathew George5bc18842014-06-16 16:36:20 -070054 libdl \
55 libexpat
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -080056
57LOCAL_C_INCLUDES += \
58 external/tinyalsa/include \
Ravi Kumar Alamanda4e02e552013-07-17 15:22:04 -070059 external/tinycompress/include \
Ravi Kumar Alamandaf70ffb42013-04-16 15:55:53 -070060 $(call include-path-for, audio-route) \
Eric Laurentb23d5282013-05-14 15:27:20 -070061 $(call include-path-for, audio-effects) \
Ravi Kumar Alamanda8e6e98f2013-11-05 15:57:39 -080062 $(LOCAL_PATH)/$(AUDIO_PLATFORM) \
Vineeta Srivastava4b89e372014-06-19 14:21:42 -070063 $(LOCAL_PATH)/audio_extn \
Haynes Mathew George5bc18842014-06-16 16:36:20 -070064 $(LOCAL_PATH)/voice_extn \
65 external/expat/lib
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -080066
Vineeta Srivastava4b89e372014-06-19 14:21:42 -070067ifeq ($(strip $(AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS)),true)
68 LOCAL_CFLAGS += -DMULTI_VOICE_SESSION_ENABLED
69 LOCAL_SRC_FILES += voice_extn/voice_extn.c
70endif
71
Ravi Kumar Alamanda8e6e98f2013-11-05 15:57:39 -080072ifeq ($(strip $(AUDIO_FEATURE_ENABLED_HFP)),true)
73 LOCAL_CFLAGS += -DHFP_ENABLED
74 LOCAL_SRC_FILES += audio_extn/hfp.c
75endif
76
Uday Kishore Pasupuleti075842f2015-07-28 15:18:31 -070077ifeq ($(strip $(AUDIO_FEATURE_SUPPORTED_EXTERNAL_BT)),true)
78 LOCAL_CFLAGS += -DEXTERNAL_BT_SUPPORTED
79endif
80
Uday Kishore Pasupuleticec8ad82015-04-15 10:34:06 -070081ifeq ($(strip $(AUDIO_FEATURE_NO_AUDIO_OUT)),true)
82 LOCAL_CFLAGS += -DNO_AUDIO_OUT
83endif
84
Ravi Kumar Alamandaa417cc52015-05-01 16:41:56 -070085ifeq ($(strip $(BOARD_SUPPORTS_SOUND_TRIGGER)),true)
86 LOCAL_CFLAGS += -DSOUND_TRIGGER_ENABLED
87 LOCAL_CFLAGS += -DSOUND_TRIGGER_PLATFORM_NAME=$(TARGET_BOARD_PLATFORM)
88 LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-audio/sound_trigger
89 LOCAL_SRC_FILES += audio_extn/soundtrigger.c
90endif
91
Ravi Kumar Alamanda63863002015-04-22 11:15:25 -070092ifeq ($(strip $(AUDIO_FEATURE_ENABLED_SPKR_PROTECTION)),true)
93 LOCAL_CFLAGS += -DSPKR_PROT_ENABLED
94 LOCAL_SRC_FILES += audio_extn/spkr_protection.c
95endif
96
zhaoyang yin4211fad2015-06-04 21:13:25 +080097ifeq ($(strip $(AUDIO_FEATURE_ENABLED_DSM_FEEDBACK)),true)
98 LOCAL_CFLAGS += -DDSM_FEEDBACK_ENABLED
99 LOCAL_SRC_FILES += audio_extn/dsm_feedback.c
100endif
101
Ravi Kumar Alamanda76315572015-04-23 13:13:56 -0700102ifneq ($(filter msm8992 msm8994,$(TARGET_BOARD_PLATFORM)),)
103 # push codec/mad calibration to HW dep node
104 # applicable to msm8992/8994 or newer platforms
105 LOCAL_CFLAGS += -DHWDEP_CAL_ENABLED
106 LOCAL_SRC_FILES += audio_extn/hwdep_cal.c
107endif
108
Ravi Kumar Alamanda80e2d862014-05-05 16:00:33 -0700109LOCAL_MODULE := audio.primary.$(TARGET_BOARD_PLATFORM)
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -0800110
Pat Tjin54f1e882015-04-13 14:19:21 -0700111LOCAL_MODULE_RELATIVE_PATH := hw
Ravi Kumar Alamanda2dfba2b2013-01-17 16:50:22 -0800112
113LOCAL_MODULE_TAGS := optional
114
115include $(BUILD_SHARED_LIBRARY)
116
117endif