1ifeq ($(strip $(BOARD_USES_ALSA_AUDIO)),true) 2 3LOCAL_PATH := $(call my-dir) 4 5include $(CLEAR_VARS) 6 7LOCAL_ARM_MODE := arm 8 9AUDIO_PLATFORM := $(TARGET_BOARD_PLATFORM) 10ifneq ($(filter msm8960,$(TARGET_BOARD_PLATFORM)),) 11 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="2" 12endif 13ifneq ($(filter msm8974 msm8226 msm8084 msm8992 msm8994,$(TARGET_BOARD_PLATFORM)),) 14 # B-family platform uses msm8974 code base 15 AUDIO_PLATFORM = msm8974 16ifneq ($(filter msm8974,$(TARGET_BOARD_PLATFORM)),) 17 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="2" 18endif 19ifneq ($(filter msm8226,$(TARGET_BOARD_PLATFORM)),) 20 LOCAL_CFLAGS := -DPLATFORM_MSM8x26 21 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="2" 22endif 23ifneq ($(filter msm8084,$(TARGET_BOARD_PLATFORM)),) 24 LOCAL_CFLAGS := -DPLATFORM_MSM8084 25 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="2" 26endif 27ifneq ($(filter msm8992,$(TARGET_BOARD_PLATFORM)),) 28 LOCAL_CFLAGS := -DPLATFORM_MSM8994 29 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="4" 30 LOCAL_CFLAGS += -DKPI_OPTIMIZE_ENABLED 31endif 32ifneq ($(filter msm8994,$(TARGET_BOARD_PLATFORM)),) 33 LOCAL_CFLAGS := -DPLATFORM_MSM8994 34 LOCAL_CFLAGS += -DMAX_TARGET_SPECIFIC_CHANNEL_CNT="4" 35 LOCAL_CFLAGS += -DKPI_OPTIMIZE_ENABLED 36endif 37endif 38 39LOCAL_SRC_FILES := \ 40 audio_hw.c \ 41 voice.c \ 42 platform_info.c \ 43 audio_extn/ext_speaker.c \ 44 audio_extn/audio_extn.c \ 45 $(AUDIO_PLATFORM)/platform.c 46 47LOCAL_SHARED_LIBRARIES := \ 48 liblog \ 49 libcutils \ 50 libtinyalsa \ 51 libtinycompress \ 52 libaudioroute \ 53 libdl \ 54 libexpat 55 56LOCAL_C_INCLUDES += \ 57 external/tinyalsa/include \ 58 external/tinycompress/include \ 59 $(call include-path-for, audio-route) \ 60 $(call include-path-for, audio-effects) \ 61 $(LOCAL_PATH)/$(AUDIO_PLATFORM) \ 62 $(LOCAL_PATH)/audio_extn \ 63 $(LOCAL_PATH)/voice_extn \ 64 external/expat/lib 65 66ifeq ($(strip $(AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS)),true) 67 LOCAL_CFLAGS += -DMULTI_VOICE_SESSION_ENABLED 68 LOCAL_SRC_FILES += voice_extn/voice_extn.c 69endif 70 71ifeq ($(strip $(AUDIO_FEATURE_ENABLED_HFP)),true) 72 LOCAL_CFLAGS += -DHFP_ENABLED 73 LOCAL_SRC_FILES += audio_extn/hfp.c 74endif 75 76ifeq ($(strip $(AUDIO_FEATURE_NO_AUDIO_OUT)),true) 77 LOCAL_CFLAGS += -DNO_AUDIO_OUT 78endif 79 80ifeq ($(strip $(BOARD_SUPPORTS_SOUND_TRIGGER)),true) 81 LOCAL_CFLAGS += -DSOUND_TRIGGER_ENABLED 82 LOCAL_CFLAGS += -DSOUND_TRIGGER_PLATFORM_NAME=$(TARGET_BOARD_PLATFORM) 83 LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-audio/sound_trigger 84 LOCAL_SRC_FILES += audio_extn/soundtrigger.c 85endif 86 87ifeq ($(strip $(AUDIO_FEATURE_ENABLED_SPKR_PROTECTION)),true) 88 LOCAL_CFLAGS += -DSPKR_PROT_ENABLED 89 LOCAL_SRC_FILES += audio_extn/spkr_protection.c 90endif 91 92ifeq ($(strip $(AUDIO_FEATURE_ENABLED_DSM_FEEDBACK)),true) 93 LOCAL_CFLAGS += -DDSM_FEEDBACK_ENABLED 94 LOCAL_SRC_FILES += audio_extn/dsm_feedback.c 95endif 96 97ifneq ($(filter msm8992 msm8994,$(TARGET_BOARD_PLATFORM)),) 98 # push codec/mad calibration to HW dep node 99 # applicable to msm8992/8994 or newer platforms 100 LOCAL_CFLAGS += -DHWDEP_CAL_ENABLED 101 LOCAL_SRC_FILES += audio_extn/hwdep_cal.c 102endif 103 104LOCAL_MODULE := audio.primary.$(TARGET_BOARD_PLATFORM) 105 106LOCAL_MODULE_RELATIVE_PATH := hw 107 108LOCAL_MODULE_TAGS := optional 109 110include $(BUILD_SHARED_LIBRARY) 111 112endif 113