Merge "hal: voice recording snd device is incorrect"
diff --git a/configs/audio_vendor_product.mk b/configs/audio_vendor_product.mk
index 569ed66..e183c40 100644
--- a/configs/audio_vendor_product.mk
+++ b/configs/audio_vendor_product.mk
@@ -165,9 +165,6 @@
TARGET_USES_AOSP := true
TARGET_USES_AOSP_FOR_AUDIO := true
-#Audio sample file for early services
-PRODUCT_COPY_FILES += device/qcom/$(TARGET_BOARD_PLATFORM)$(TARGET_BOARD_SUFFIX)/bike_bell.wav:$(TARGET_COPY_OUT_VENDOR)/etc/bike_bell.wav
-
# Audio configuration file
-include $(TOPDIR)vendor/qcom/opensource/audio-hal/primary-hal/configs/$(TARGET_BOARD_PLATFORM)$(TARGET_BOARD_SUFFIX)/$(TARGET_BOARD_PLATFORM)$(TARGET_BOARD_SUFFIX).mk
diff --git a/configs/lahaina/lahaina.mk b/configs/lahaina/lahaina.mk
index 36022af..8882d5d 100644
--- a/configs/lahaina/lahaina.mk
+++ b/configs/lahaina/lahaina.mk
@@ -414,7 +414,7 @@
#enable dualmic fluence for voice communication
PRODUCT_PROPERTY_OVERRIDES += \
-persist.audio.fluence.voicecomm=true
+persist.vendor.audio.fluence.voicecomm=true
ifneq ($(GENERIC_ODM_IMAGE),true)
$(warning "Enabling codec2.0 SW only for non-generic odm build variant")
diff --git a/configs/msmnile_au/msmnile_au.mk b/configs/msmnile_au/msmnile_au.mk
index 5f7545a..61554ec 100755
--- a/configs/msmnile_au/msmnile_au.mk
+++ b/configs/msmnile_au/msmnile_au.mk
@@ -524,3 +524,6 @@
persist.vendor.audio.calfile7=/vendor/etc/acdbdata/ADP/Headset_cal.acdb\
persist.vendor.audio.calfile8=/vendor/etc/acdbdata/ADP/Speaker_cal.acdb
endif
+
+#Audio sample file for early services
+PRODUCT_COPY_FILES += device/qcom/msmnile_au/bike_bell.wav:$(TARGET_COPY_OUT_VENDOR)/etc/bike_bell.wav
diff --git a/configs/msmsteppe_au/msmsteppe_au.mk b/configs/msmsteppe_au/msmsteppe_au.mk
index 31e7091..082af20 100644
--- a/configs/msmsteppe_au/msmsteppe_au.mk
+++ b/configs/msmsteppe_au/msmsteppe_au.mk
@@ -506,3 +506,6 @@
persist.vendor.audio.calfile7=/vendor/etc/acdbdata/ADP/Headset_cal.acdb\
persist.vendor.audio.calfile8=/vendor/etc/acdbdata/ADP/Speaker_cal.acdb
endif
+
+#Audio sample file for early services
+PRODUCT_COPY_FILES += device/qcom/$(MSMSTEPPE)_au/bike_bell.wav:$(TARGET_COPY_OUT_VENDOR)/etc/bike_bell.wav
diff --git a/hal/Makefile.am b/hal/Makefile.am
index f0d44cb..f14ab4c 100755
--- a/hal/Makefile.am
+++ b/hal/Makefile.am
@@ -203,7 +203,7 @@
lib_LTLIBRARIES = audio.primary.default.la
audio_primary_default_la_SOURCES = $(c_sources)
audio_primary_default_la_LIBADD = $(GLIB_LIBS) -llog -lcutils -ltinyalsa
-audio_primary_default_la_LIBADD += -ltinycompress -laudioroute -ldl -lexpat -laudioutils
+audio_primary_default_la_LIBADD += -ltinycompress -laudioroute -ldl -lexpat -laudioutils -lutils
audio_primary_default_la_LIBADD += -lm -lc -lresolv
if AUDIO_PARSER
audio_primary_default_la_LIBADD += -laudioparsers
diff --git a/hal/audio_hw.c b/hal/audio_hw.c
index 5c12db8..d822863 100644
--- a/hal/audio_hw.c
+++ b/hal/audio_hw.c
@@ -3238,8 +3238,14 @@
if (priority_in == in) {
priority_in = get_priority_input(adev);
- if (priority_in)
- select_devices(adev, priority_in->usecase);
+ if (priority_in) {
+ if (is_usb_in_device_type(&priority_in->device_list)) {
+ if (audio_extn_usb_connected(NULL))
+ select_devices(adev, priority_in->usecase);
+ } else {
+ select_devices(adev, priority_in->usecase);
+ }
+ }
}
enable_gcov();
@@ -8845,8 +8851,7 @@
struct listnode *node;
list_for_each(node, &adev->usecase_list) {
usecase = node_to_item(node, struct audio_usecase, list);
- if (usecase->stream.in && (usecase->type == PCM_CAPTURE ||
- usecase->type == VOICE_CALL) &&
+ if (usecase->stream.in && (usecase->type == PCM_CAPTURE) &&
(!is_btsco_device(SND_DEVICE_NONE, usecase->in_snd_device)) && (is_sco_in_device_type(&usecase->stream.in->device_list))) {
ALOGD("BT_SCO ON, switch all in use case to it");
select_devices(adev, usecase->id);