hal: add "haptics" device definition
Add a particular device for haptics usecase, remove
previous combo device definitions.
Change-Id: I4f4b6b464f2a0244c7014157cbbbb7ff783abf8a
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
index 88ed018..14ffc23 100644
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -538,13 +538,10 @@
[SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_HIFI_FILTER] = "speaker-and-headphones-hifi-filter",
[SND_DEVICE_OUT_HEADPHONES_44_1] = "headphones-44.1",
[SND_DEVICE_OUT_LINE] = "line",
- [SND_DEVICE_OUT_SPEAKER_AND_HAPTICS] = "speaker-and-haptics",
- [SND_DEVICE_OUT_HEADPHONES_AND_HAPTICS] = "headphones-and-haptics",
[SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES] = "speaker-and-headphones",
[SND_DEVICE_OUT_SPEAKER_SAFE_AND_HEADPHONES] = "speaker-safe-and-headphones",
[SND_DEVICE_OUT_SPEAKER_AND_LINE] = "speaker-and-line",
[SND_DEVICE_OUT_SPEAKER_SAFE_AND_LINE] = "speaker-safe-and-line",
- [SND_DEVICE_OUT_SPEAKER_HEADPHONES_AND_HAPTICS] = "speaker-headphones-and-haptics",
[SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_EXTERNAL_1] = "speaker-and-headphones-ext-1",
[SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_EXTERNAL_2] = "speaker-and-headphones-ext-2",
[SND_DEVICE_OUT_VOICE_HANDSET] = "voice-handset",
@@ -571,8 +568,6 @@
[SND_DEVICE_OUT_BT_A2DP] = "bt-a2dp",
[SND_DEVICE_OUT_SPEAKER_AND_BT_A2DP] = "speaker-and-bt-a2dp",
[SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_A2DP] = "speaker-safe-and-bt-a2dp",
- [SND_DEVICE_OUT_SPEAKER_BT_A2DP_AND_HAPTICS] = "speaker-bt-a2dp-and-haptics",
- [SND_DEVICE_OUT_SPEAKER_SAFE_BT_A2DP_AND_HAPTICS] = "speaker-safe-bt-a2dp-and-haptics",
[SND_DEVICE_OUT_VOICE_HANDSET_TMUS] = "voice-handset-tmus",
[SND_DEVICE_OUT_VOICE_TTY_FULL_HEADPHONES] = "voice-tty-full-headphones",
[SND_DEVICE_OUT_VOICE_TTY_FULL_HEADSET] = "voice-tty-full-headset",
@@ -590,8 +585,6 @@
[SND_DEVICE_OUT_VOICE_USB_HEADPHONES] = "usb-headphones",
[SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET] = "speaker-and-usb-headphones",
[SND_DEVICE_OUT_SPEAKER_SAFE_AND_USB_HEADSET] = "speaker-safe-and-usb-headphones",
- [SND_DEVICE_OUT_SPEAKER_USB_HEADSET_AND_HAPTICS] = "speaker-usb-headphones-and-haptics",
- [SND_DEVICE_OUT_SPEAKER_SAFE_USB_HEADSET_AND_HAPTICS] = "speaker-safe-usb-headphones-and-haptics",
[SND_DEVICE_OUT_TRANSMISSION_FM] = "transmission-fm",
[SND_DEVICE_OUT_ANC_HEADSET] = "anc-headphones",
[SND_DEVICE_OUT_ANC_FB_HEADSET] = "anc-fb-headphones",
@@ -622,12 +615,6 @@
[SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_SWB] = "speaker-and-bt-sco-swb",
[SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_WB] = "speaker-safe-and-bt-sco-wb",
[SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_SWB] = "speaker-safe-and-bt-sco-swb",
- [SND_DEVICE_OUT_SPEAKER_BT_SCO_AND_HAPTICS] = "speaker-bt-sco-and-haptics",
- [SND_DEVICE_OUT_SPEAKER_SAFE_BT_SCO_AND_HAPTICS] = "speaker-safe-bt-sco-and-haptics",
- [SND_DEVICE_OUT_SPEAKER_BT_SCO_WB_AND_HAPTICS] = "speaker-bt-sco-wb-and-haptics",
- [SND_DEVICE_OUT_SPEAKER_BT_SCO_SWB_AND_HAPTICS] = "speaker-bt-sco-swb-and-haptics",
- [SND_DEVICE_OUT_SPEAKER_SAFE_BT_SCO_WB_AND_HAPTICS] = "speaker-safe-bt-sco-wb-and-haptics",
- [SND_DEVICE_OUT_SPEAKER_SAFE_BT_SCO_SWB_AND_HAPTICS] = "speaker-safe-bt-sco-swb-and-haptics",
[SND_DEVICE_OUT_SPEAKER_WSA_AND_BT_SCO] = "wsa-speaker-and-bt-sco",
[SND_DEVICE_OUT_SPEAKER_WSA_AND_BT_SCO_WB] = "wsa-speaker-and-bt-sco-wb",
[SND_DEVICE_OUT_SPEAKER_WSA_AND_BT_SCO_SWB] = "wsa-speaker-and-bt-sco-wb",
@@ -639,6 +626,7 @@
[SND_DEVICE_OUT_BUS_PAX] = "bus-speaker",
[SND_DEVICE_OUT_BUS_RSE] = "bus-speaker",
[SND_DEVICE_OUT_CALL_PROXY] = "call-proxy",
+ [SND_DEVICE_OUT_HAPTICS] = "haptics",
/* Capture sound devices */
[SND_DEVICE_IN_HANDSET_MIC] = "handset-mic",
@@ -846,12 +834,8 @@
[SND_DEVICE_OUT_HEADPHONES] = 10,
[SND_DEVICE_OUT_HEADPHONES_DSD] = 10,
[SND_DEVICE_OUT_HEADPHONES_44_1] = 10,
- [SND_DEVICE_OUT_HEADPHONES_AND_HAPTICS] = 10,
- [SND_DEVICE_OUT_SPEAKER_AND_HAPTICS] = 10,
[SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES] = 10,
[SND_DEVICE_OUT_SPEAKER_SAFE_AND_HEADPHONES] = 10,
- [SND_DEVICE_OUT_SPEAKER_HEADPHONES_AND_HAPTICS] = 10,
- [SND_DEVICE_OUT_SPEAKER_SAFE_HEADPHONES_AND_HAPTICS] = 10,
[SND_DEVICE_OUT_SPEAKER_AND_LINE] = 10,
[SND_DEVICE_OUT_SPEAKER_SAFE_AND_LINE] = 10,
[SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_EXTERNAL_1] = 130,
@@ -880,22 +864,15 @@
[SND_DEVICE_OUT_DISPLAY_PORT1] = 18,
[SND_DEVICE_OUT_SPEAKER_AND_DISPLAY_PORT] = 14,
[SND_DEVICE_OUT_SPEAKER_AND_DISPLAY_PORT1] = 14,
- [SND_DEVICE_OUT_SPEAKER_DISPLAY_PORT_AND_HAPTICS] = 14,
- [SND_DEVICE_OUT_SPEAKER_DISPLAY_PORT1_AND_HAPTICS] = 14,
[SND_DEVICE_OUT_BT_SCO] = 22,
[SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO] = 14,
- [SND_DEVICE_OUT_SPEAKER_SAFE_BT_SCO_AND_HAPTICS] = 14,
[SND_DEVICE_OUT_BT_SCO_WB] = 39,
[SND_DEVICE_OUT_BT_SCO_SWB] = 39,
[SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_WB] = 14,
[SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_SWB] = 14,
- [SND_DEVICE_OUT_SPEAKER_SAFE_BT_SCO_WB_AND_HAPTICS] = 14,
- [SND_DEVICE_OUT_SPEAKER_SAFE_BT_SCO_SWB_AND_HAPTICS] = 14,
[SND_DEVICE_OUT_BT_A2DP] = 20,
[SND_DEVICE_OUT_SPEAKER_AND_BT_A2DP] = 14,
[SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_A2DP] = 14,
- [SND_DEVICE_OUT_SPEAKER_BT_A2DP_AND_HAPTICS] = 14,
- [SND_DEVICE_OUT_SPEAKER_SAFE_BT_A2DP_AND_HAPTICS] = 14,
[SND_DEVICE_OUT_VOICE_HANDSET_TMUS] = 88,
[SND_DEVICE_OUT_VOICE_TTY_FULL_HEADPHONES] = 17,
[SND_DEVICE_OUT_VOICE_TTY_FULL_HEADSET] = 17,
@@ -913,8 +890,6 @@
[SND_DEVICE_OUT_VOICE_USB_HEADPHONES] = 45,
[SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET] = 14,
[SND_DEVICE_OUT_SPEAKER_SAFE_AND_USB_HEADSET] = 14,
- [SND_DEVICE_OUT_SPEAKER_USB_HEADSET_AND_HAPTICS] = 14,
- [SND_DEVICE_OUT_SPEAKER_SAFE_USB_HEADSET_AND_HAPTICS] = 14,
[SND_DEVICE_OUT_TRANSMISSION_FM] = 0,
[SND_DEVICE_OUT_ANC_HEADSET] = 26,
[SND_DEVICE_OUT_ANC_FB_HEADSET] = 27,
@@ -943,6 +918,7 @@
[SND_DEVICE_OUT_BUS_PAX] = 60,
[SND_DEVICE_OUT_BUS_RSE] = 60,
[SND_DEVICE_OUT_CALL_PROXY] = 32,
+ [SND_DEVICE_OUT_HAPTICS] = 200,
[SND_DEVICE_IN_HANDSET_MIC] = 4,
[SND_DEVICE_IN_HANDSET_MIC_SB] = 163,
[SND_DEVICE_IN_HANDSET_MIC_NN] = 183,
@@ -1107,12 +1083,8 @@
{TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_HIFI_FILTER)},
{TO_NAME_INDEX(SND_DEVICE_OUT_HEADPHONES_44_1)},
{TO_NAME_INDEX(SND_DEVICE_OUT_LINE)},
- {TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_AND_HAPTICS)},
- {TO_NAME_INDEX(SND_DEVICE_OUT_HEADPHONES_AND_HAPTICS)},
{TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES)},
{TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_SAFE_AND_HEADPHONES)},
- {TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_HEADPHONES_AND_HAPTICS)},
- {TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_SAFE_HEADPHONES_AND_HAPTICS)},
{TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_AND_LINE)},
{TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_SAFE_AND_LINE)},
{TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_EXTERNAL_1)},
@@ -1134,20 +1106,15 @@
{TO_NAME_INDEX(SND_DEVICE_OUT_DISPLAY_PORT)},
{TO_NAME_INDEX(SND_DEVICE_OUT_DISPLAY_PORT1)},
{TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_AND_DISPLAY_PORT)},
- {TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_DISPLAY_PORT_AND_HAPTICS)},
{TO_NAME_INDEX(SND_DEVICE_OUT_BT_SCO)},
{TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO)},
- {TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_SAFE_BT_SCO_AND_HAPTICS)},
{TO_NAME_INDEX(SND_DEVICE_OUT_BT_SCO_WB)},
{TO_NAME_INDEX(SND_DEVICE_OUT_BT_SCO_SWB)},
{TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_WB)},
- {TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_SAFE_BT_SCO_WB_AND_HAPTICS)},
- {TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_SAFE_BT_SCO_SWB_AND_HAPTICS)},
+ {TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_SWB)},
{TO_NAME_INDEX(SND_DEVICE_OUT_BT_A2DP)},
{TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_AND_BT_A2DP)},
{TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_A2DP)},
- {TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_BT_A2DP_AND_HAPTICS)},
- {TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_SAFE_BT_A2DP_AND_HAPTICS)},
{TO_NAME_INDEX(SND_DEVICE_OUT_VOICE_HANDSET_TMUS)},
{TO_NAME_INDEX(SND_DEVICE_OUT_VOICE_HAC_HANDSET)},
{TO_NAME_INDEX(SND_DEVICE_OUT_VOICE_TTY_FULL_HEADPHONES)},
@@ -1160,9 +1127,6 @@
{TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_WSA_AND_BT_SCO)},
{TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_WSA_AND_BT_SCO_WB)},
{TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_WSA_AND_BT_SCO_SWB)},
- {TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_BT_SCO_AND_HAPTICS)},
- {TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_BT_SCO_WB_AND_HAPTICS)},
- {TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_BT_SCO_SWB_AND_HAPTICS)},
{TO_NAME_INDEX(SND_DEVICE_OUT_VOICE_TTY_FULL_USB)},
{TO_NAME_INDEX(SND_DEVICE_OUT_VOICE_TTY_VCO_USB)},
{TO_NAME_INDEX(SND_DEVICE_OUT_VOICE_TX)},
@@ -1173,8 +1137,6 @@
{TO_NAME_INDEX(SND_DEVICE_OUT_VOICE_USB_HEADPHONES)},
{TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET)},
{TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_SAFE_AND_USB_HEADSET)},
- {TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_USB_HEADSET_AND_HAPTICS)},
- {TO_NAME_INDEX(SND_DEVICE_OUT_SPEAKER_SAFE_USB_HEADSET_AND_HAPTICS)},
{TO_NAME_INDEX(SND_DEVICE_OUT_USB_HEADSET_SPEC)},
{TO_NAME_INDEX(SND_DEVICE_OUT_TRANSMISSION_FM)},
{TO_NAME_INDEX(SND_DEVICE_OUT_ANC_HEADSET)},
@@ -1204,6 +1166,7 @@
{TO_NAME_INDEX(SND_DEVICE_OUT_BUS_PAX)},
{TO_NAME_INDEX(SND_DEVICE_OUT_BUS_RSE)},
{TO_NAME_INDEX(SND_DEVICE_OUT_CALL_PROXY)},
+ {TO_NAME_INDEX(SND_DEVICE_OUT_HAPTICS)},
{TO_NAME_INDEX(SND_DEVICE_IN_HANDSET_MIC)},
{TO_NAME_INDEX(SND_DEVICE_IN_HANDSET_MIC_SB)},
{TO_NAME_INDEX(SND_DEVICE_IN_HANDSET_MIC_NN)},
@@ -2345,10 +2308,6 @@
backend_tag_table[SND_DEVICE_OUT_HEADPHONES_HIFI_FILTER] = strdup("headphones-hifi-filter");
backend_tag_table[SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_HIFI_FILTER] =
strdup("speaker-and-headphones-hifi-filter");
- backend_tag_table[SND_DEVICE_OUT_SPEAKER_AND_HAPTICS] =
- strdup("speaker-and-haptics");
- backend_tag_table[SND_DEVICE_OUT_HEADPHONES_AND_HAPTICS] =
- strdup("headphones-and-haptics");
backend_tag_table[SND_DEVICE_OUT_HEADPHONES_44_1] = strdup("headphones-44.1");
backend_tag_table[SND_DEVICE_OUT_VOICE_SPEAKER_VBAT] = strdup("voice-speaker-vbat");
backend_tag_table[SND_DEVICE_OUT_VOICE_SPEAKER_2_VBAT] = strdup("voice-speaker-2-vbat");
@@ -2368,6 +2327,7 @@
backend_tag_table[SND_DEVICE_OUT_VOICE_HEARING_AID] = strdup("hearing-aid");
backend_tag_table[SND_DEVICE_IN_VOICE_SPEAKER_MIC_HFP_MMSECNS] = strdup("bt-sco-mmsecns");
backend_tag_table[SND_DEVICE_OUT_CALL_PROXY] = strdup("call-proxy");
+ backend_tag_table[SND_DEVICE_OUT_HAPTICS] = strdup("haptics");
backend_tag_table[SND_DEVICE_IN_CALL_PROXY] = strdup("call-proxy-in");
hw_interface_table[SND_DEVICE_OUT_HANDSET] = strdup("SLIMBUS_0_RX");
@@ -2470,6 +2430,7 @@
hw_interface_table[SND_DEVICE_OUT_BUS_PAX] = strdup("QUAT_TDM_RX_0");
hw_interface_table[SND_DEVICE_OUT_BUS_RSE] = strdup("QUIN_TDM_RX_0");
hw_interface_table[SND_DEVICE_OUT_CALL_PROXY] = strdup("CALL_PROXY_RX");
+ hw_interface_table[SND_DEVICE_OUT_HAPTICS] = strdup("RX_CDC_DMA_RX_6");
hw_interface_table[SND_DEVICE_IN_HANDSET_MIC] = strdup("SLIMBUS_0_TX");
hw_interface_table[SND_DEVICE_IN_HANDSET_MIC_SB] = strdup("SLIMBUS_0_TX");
hw_interface_table[SND_DEVICE_IN_HANDSET_MIC_NN] = strdup("SLIMBUS_0_TX");
@@ -5317,9 +5278,6 @@
port = USB_AUDIO_RX_BACKEND;
else if (strcmp(backend_tag_table[snd_device], "call-proxy") == 0)
port = CALL_PROXY_RX_BACKEND;
- else if (strncmp(backend_tag_table[snd_device], "headphones-and-haptics",
- sizeof("headphones-and-haptics")) == 0)
- port = HEADPHONE_BACKEND;
}
} else if (snd_device >= SND_DEVICE_IN_BEGIN && snd_device < SND_DEVICE_IN_END) {
port = DEFAULT_CODEC_TX_BACKEND;
@@ -5475,6 +5433,25 @@
}
}
+ /* send haptics audio calibration */
+ if (usecase->id == USECASE_AUDIO_PLAYBACK_WITH_HAPTICS) {
+ acdb_dev_id =
+ acdb_device_table[platform_get_spkr_prot_snd_device(SND_DEVICE_OUT_HAPTICS)];
+ acdb_dev_type = ACDB_DEV_TYPE_OUT;
+ sample_rate = DEFAULT_OUTPUT_SAMPLING_RATE;
+ if (my_data->acdb_send_audio_cal_v4) {
+ my_data->acdb_send_audio_cal_v4(acdb_dev_id, acdb_dev_type,
+ app_type, sample_rate, i + 1,
+ sample_rate);
+ } else if (my_data->acdb_send_audio_cal_v3) {
+ my_data->acdb_send_audio_cal_v3(acdb_dev_id, acdb_dev_type,
+ app_type, sample_rate, i + 1);
+ } else if (my_data->acdb_send_audio_cal) {
+ my_data->acdb_send_audio_cal(acdb_dev_id, acdb_dev_type, app_type,
+ sample_rate);
+ }
+ }
+
return 0;
}
@@ -5871,12 +5848,6 @@
new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER;
new_snd_devices[1] = SND_DEVICE_OUT_HEADPHONES;
ret = 0;
- } else if (snd_device == SND_DEVICE_OUT_SPEAKER_HEADPHONES_AND_HAPTICS &&
- !platform_check_backends_match(SND_DEVICE_OUT_SPEAKER, SND_DEVICE_OUT_HEADPHONES)) {
- *num_devices = 2;
- new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER_AND_HAPTICS;
- new_snd_devices[1] = SND_DEVICE_OUT_HEADPHONES;
- ret = 0;
} else if (snd_device == SND_DEVICE_OUT_SPEAKER_AND_LINE &&
!platform_check_backends_match(SND_DEVICE_OUT_SPEAKER, SND_DEVICE_OUT_LINE)) {
*num_devices = 2;
@@ -5889,12 +5860,6 @@
new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER_SAFE;
new_snd_devices[1] = SND_DEVICE_OUT_HEADPHONES;
ret = 0;
- } else if (snd_device == SND_DEVICE_OUT_SPEAKER_SAFE_HEADPHONES_AND_HAPTICS &&
- !platform_check_backends_match(SND_DEVICE_OUT_SPEAKER_SAFE, SND_DEVICE_OUT_HEADPHONES)) {
- *num_devices = 2;
- new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER_SAFE_AND_HAPTICS;
- new_snd_devices[1] = SND_DEVICE_OUT_HEADPHONES;
- ret = 0;
} else if (snd_device == SND_DEVICE_OUT_SPEAKER_SAFE_AND_LINE &&
!platform_check_backends_match(SND_DEVICE_OUT_SPEAKER_SAFE, SND_DEVICE_OUT_LINE)) {
*num_devices = 2;
@@ -5989,12 +5954,6 @@
new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER;
new_snd_devices[1] = SND_DEVICE_OUT_USB_HEADSET;
ret = 0;
- } else if (snd_device == SND_DEVICE_OUT_SPEAKER_USB_HEADSET_AND_HAPTICS &&
- !platform_check_backends_match(SND_DEVICE_OUT_SPEAKER, SND_DEVICE_OUT_USB_HEADSET)) {
- *num_devices = 2;
- new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER_AND_HAPTICS;
- new_snd_devices[1] = SND_DEVICE_OUT_USB_HEADSET;
- ret = 0;
} else if (snd_device == SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_HIFI_FILTER &&
!platform_check_backends_match(SND_DEVICE_OUT_SPEAKER, SND_DEVICE_OUT_HEADPHONES_HIFI_FILTER)) {
*num_devices = 2;
@@ -6007,12 +5966,6 @@
new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER;
new_snd_devices[1] = SND_DEVICE_OUT_BT_SCO;
ret = 0;
- } else if (snd_device == SND_DEVICE_OUT_SPEAKER_BT_SCO_AND_HAPTICS &&
- !platform_check_backends_match(SND_DEVICE_OUT_SPEAKER, SND_DEVICE_OUT_BT_SCO)) {
- *num_devices = 2;
- new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER_AND_HAPTICS;
- new_snd_devices[1] = SND_DEVICE_OUT_BT_SCO;
- ret = 0;
} else if (snd_device == SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO &&
!platform_check_backends_match(SND_DEVICE_OUT_SPEAKER_SAFE,
SND_DEVICE_OUT_BT_SCO)) {
@@ -6020,31 +5973,12 @@
new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER_SAFE;
new_snd_devices[1] = SND_DEVICE_OUT_BT_SCO;
ret = 0;
- } else if (snd_device == SND_DEVICE_OUT_SPEAKER_SAFE_BT_SCO_AND_HAPTICS &&
- !platform_check_backends_match(SND_DEVICE_OUT_SPEAKER_SAFE,
- SND_DEVICE_OUT_BT_SCO)) {
- *num_devices = 2;
- new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER_SAFE_AND_HAPTICS;
- new_snd_devices[1] = SND_DEVICE_OUT_BT_SCO;
- ret = 0;
- } else if (snd_device == SND_DEVICE_OUT_SPEAKER_BT_SCO_WB_AND_HAPTICS &&
- !platform_check_backends_match(SND_DEVICE_OUT_SPEAKER, SND_DEVICE_OUT_BT_SCO_WB)) {
- *num_devices = 2;
- new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER_AND_HAPTICS;
- new_snd_devices[1] = SND_DEVICE_OUT_BT_SCO_WB;
- ret = 0;
} else if (snd_device == SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_WB &&
!platform_check_backends_match(SND_DEVICE_OUT_SPEAKER, SND_DEVICE_OUT_BT_SCO_WB)) {
*num_devices = 2;
new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER;
new_snd_devices[1] = SND_DEVICE_OUT_BT_SCO_WB;
ret = 0;
- } else if (snd_device == SND_DEVICE_OUT_SPEAKER_BT_SCO_WB_AND_HAPTICS &&
- !platform_check_backends_match(SND_DEVICE_OUT_SPEAKER, SND_DEVICE_OUT_BT_SCO_WB)) {
- *num_devices = 2;
- new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER_AND_HAPTICS;
- new_snd_devices[1] = SND_DEVICE_OUT_BT_SCO_WB;
- ret = 0;
} else if (snd_device == SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_WB &&
!platform_check_backends_match(SND_DEVICE_OUT_SPEAKER_SAFE,
SND_DEVICE_OUT_BT_SCO_WB)) {
@@ -6058,12 +5992,6 @@
new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER;
new_snd_devices[1] = SND_DEVICE_OUT_BT_SCO_SWB;
ret = 0;
- } else if (snd_device == SND_DEVICE_OUT_SPEAKER_BT_SCO_SWB_AND_HAPTICS &&
- !platform_check_backends_match(SND_DEVICE_OUT_SPEAKER, SND_DEVICE_OUT_BT_SCO_SWB)) {
- *num_devices = 2;
- new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER_AND_HAPTICS;
- new_snd_devices[1] = SND_DEVICE_OUT_BT_SCO_SWB;
- ret = 0;
} else if (snd_device == SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_SWB &&
!platform_check_backends_match(SND_DEVICE_OUT_SPEAKER_SAFE,
SND_DEVICE_OUT_BT_SCO_SWB)) {
@@ -6071,25 +5999,12 @@
new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER_SAFE;
new_snd_devices[1] = SND_DEVICE_OUT_BT_SCO_SWB;
ret = 0;
- } else if (snd_device == SND_DEVICE_OUT_SPEAKER_SAFE_BT_SCO_SWB_AND_HAPTICS &&
- !platform_check_backends_match(SND_DEVICE_OUT_SPEAKER_SAFE,
- SND_DEVICE_OUT_BT_SCO_SWB)) {
- *num_devices = 2;
- new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER_SAFE_AND_HAPTICS;
- new_snd_devices[1] = SND_DEVICE_OUT_BT_SCO_SWB;
- ret = 0;
} else if (snd_device == SND_DEVICE_OUT_SPEAKER_SAFE_AND_USB_HEADSET &&
!platform_check_backends_match(SND_DEVICE_OUT_SPEAKER_SAFE, SND_DEVICE_OUT_USB_HEADSET)) {
*num_devices = 2;
new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER_SAFE;
new_snd_devices[1] = SND_DEVICE_OUT_USB_HEADSET;
ret = 0;
- } else if (snd_device == SND_DEVICE_OUT_SPEAKER_SAFE_USB_HEADSET_AND_HAPTICS &&
- !platform_check_backends_match(SND_DEVICE_OUT_SPEAKER_SAFE, SND_DEVICE_OUT_USB_HEADSET)) {
- *num_devices = 2;
- new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER_SAFE_AND_HAPTICS;
- new_snd_devices[1] = SND_DEVICE_OUT_USB_HEADSET;
- ret = 0;
} else if (snd_device == SND_DEVICE_OUT_SPEAKER_WSA_AND_BT_SCO &&
!platform_check_backends_match(SND_DEVICE_OUT_SPEAKER_WSA, SND_DEVICE_OUT_BT_SCO)) {
*num_devices = 2;
@@ -6107,11 +6022,6 @@
new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER;
new_snd_devices[1] = SND_DEVICE_OUT_BT_A2DP;
ret = 0;
- } else if (SND_DEVICE_OUT_SPEAKER_BT_A2DP_AND_HAPTICS == snd_device) {
- *num_devices = 2;
- new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER_AND_HAPTICS;
- new_snd_devices[1] = SND_DEVICE_OUT_BT_A2DP;
- ret = 0;
} else if (SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_A2DP == snd_device &&
!platform_check_backends_match(SND_DEVICE_OUT_SPEAKER_SAFE,
SND_DEVICE_OUT_BT_A2DP)) {
@@ -6119,13 +6029,6 @@
new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER_SAFE;
new_snd_devices[1] = SND_DEVICE_OUT_BT_A2DP;
ret = 0;
- } else if (SND_DEVICE_OUT_SPEAKER_SAFE_BT_A2DP_AND_HAPTICS == snd_device &&
- !platform_check_backends_match(SND_DEVICE_OUT_SPEAKER_SAFE,
- SND_DEVICE_OUT_BT_A2DP)) {
- *num_devices = 2;
- new_snd_devices[0] = SND_DEVICE_OUT_SPEAKER_SAFE_AND_HAPTICS;
- new_snd_devices[1] = SND_DEVICE_OUT_BT_A2DP;
- ret = 0;
} else if (SND_DEVICE_IN_INCALL_REC_RX_TX == snd_device) {
*num_devices = 2;
new_snd_devices[0] = SND_DEVICE_IN_INCALL_REC_RX;
@@ -6370,8 +6273,6 @@
else if (audio_extn_is_hifi_filter_enabled(adev, out, snd_device,
my_data->codec_variant, channel_count, 1))
snd_device = SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_HIFI_FILTER;
- else if (out->usecase == USECASE_AUDIO_PLAYBACK_WITH_HAPTICS)
- snd_device = SND_DEVICE_OUT_SPEAKER_HEADPHONES_AND_HAPTICS;
else
snd_device = SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES;
} else if (compare_device_type(&devices, AUDIO_DEVICE_OUT_LINE) &&
@@ -6401,8 +6302,6 @@
else {
if (is_active_voice_call)
snd_device = SND_DEVICE_OUT_VOICE_SPEAKER_AND_VOICE_HEADPHONES;
- else if (out->usecase == USECASE_AUDIO_PLAYBACK_WITH_HAPTICS)
- snd_device = SND_DEVICE_OUT_SPEAKER_HEADPHONES_AND_HAPTICS;
else
snd_device = SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES;
}
@@ -6434,30 +6333,18 @@
}
} else if (compare_device_type(&devices, AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET) &&
compare_device_type(&devices, AUDIO_DEVICE_OUT_SPEAKER)) {
- if (out->usecase == USECASE_AUDIO_PLAYBACK_WITH_HAPTICS)
- snd_device = SND_DEVICE_OUT_SPEAKER_USB_HEADSET_AND_HAPTICS;
- else
- snd_device = SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET;
+ snd_device = SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET;
} else if ((compare_device_type(&devices, AUDIO_DEVICE_OUT_USB_DEVICE) &&
compare_device_type(&devices, AUDIO_DEVICE_OUT_SPEAKER)) ||
(compare_device_type(&devices, AUDIO_DEVICE_OUT_USB_HEADSET) &&
compare_device_type(&devices, AUDIO_DEVICE_OUT_SPEAKER))) {
- if (out->usecase == USECASE_AUDIO_PLAYBACK_WITH_HAPTICS)
- snd_device = SND_DEVICE_OUT_SPEAKER_USB_HEADSET_AND_HAPTICS;
- else
- snd_device = SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET;
+ snd_device = SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET;
} else if (compare_device_type(&devices, AUDIO_DEVICE_OUT_SPEAKER) &&
is_a2dp_out_device_type(&devices)) {
- if (out->usecase == USECASE_AUDIO_PLAYBACK_WITH_HAPTICS)
- snd_device = SND_DEVICE_OUT_SPEAKER_BT_A2DP_AND_HAPTICS;
- else
- snd_device = SND_DEVICE_OUT_SPEAKER_AND_BT_A2DP;
+ snd_device = SND_DEVICE_OUT_SPEAKER_AND_BT_A2DP;
} else if (compare_device_type(&devices, AUDIO_DEVICE_OUT_SPEAKER_SAFE) &&
is_a2dp_out_device_type(&devices)) {
- if (out->usecase == USECASE_AUDIO_PLAYBACK_WITH_HAPTICS)
- snd_device = SND_DEVICE_OUT_SPEAKER_SAFE_BT_A2DP_AND_HAPTICS;
- else
- snd_device = SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_A2DP;
+ snd_device = SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_A2DP;
} else if (is_sco_out_device_type(&devices) &&
compare_device_type(&devices, AUDIO_DEVICE_OUT_SPEAKER)) {
if (my_data->is_wsa_speaker) {
@@ -6470,10 +6357,6 @@
} else {
if (adev->swb_speech_mode != SPEECH_MODE_INVALID)
snd_device = SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_SWB;
- else if (out->usecase == USECASE_AUDIO_PLAYBACK_WITH_HAPTICS)
- snd_device = adev->bt_wb_speech_enabled ?
- SND_DEVICE_OUT_SPEAKER_BT_SCO_SWB_AND_HAPTICS :
- SND_DEVICE_OUT_SPEAKER_BT_SCO_AND_HAPTICS;
else
snd_device = adev->bt_wb_speech_enabled ?
SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_WB :
@@ -6483,10 +6366,6 @@
compare_device_type(&devices, AUDIO_DEVICE_OUT_SPEAKER_SAFE)) {
if (adev->swb_speech_mode != SPEECH_MODE_INVALID)
snd_device = SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_SWB;
- else if (out->usecase == USECASE_AUDIO_PLAYBACK_WITH_HAPTICS)
- snd_device = adev->bt_wb_speech_enabled ?
- SND_DEVICE_OUT_SPEAKER_SAFE_BT_SCO_SWB_AND_HAPTICS :
- SND_DEVICE_OUT_SPEAKER_SAFE_BT_SCO_AND_HAPTICS;
else
snd_device = adev->bt_wb_speech_enabled ?
SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_WB :
@@ -6495,10 +6374,7 @@
compare_device_type(&devices, AUDIO_DEVICE_OUT_SPEAKER_SAFE)) ||
(compare_device_type(&devices, AUDIO_DEVICE_OUT_USB_HEADSET) &&
compare_device_type(&devices, AUDIO_DEVICE_OUT_SPEAKER_SAFE))) {
- if (out->usecase == USECASE_AUDIO_PLAYBACK_WITH_HAPTICS)
- snd_device = SND_DEVICE_OUT_SPEAKER_SAFE_USB_HEADSET_AND_HAPTICS;
- else
- snd_device = SND_DEVICE_OUT_SPEAKER_SAFE_AND_USB_HEADSET;
+ snd_device = SND_DEVICE_OUT_SPEAKER_SAFE_AND_USB_HEADSET;
} else {
ALOGE("%s: Invalid combo device(%#x)", __func__, get_device_types(&devices));
goto exit;
@@ -6693,10 +6569,7 @@
} else if (compare_device_type(&devices, AUDIO_DEVICE_OUT_LINE)) {
snd_device = SND_DEVICE_OUT_LINE;
} else {
- if (out->usecase == USECASE_AUDIO_PLAYBACK_WITH_HAPTICS)
- snd_device = SND_DEVICE_OUT_HEADPHONES_AND_HAPTICS;
- else
- snd_device = SND_DEVICE_OUT_HEADPHONES;
+ snd_device = SND_DEVICE_OUT_HEADPHONES;
}
} else if (compare_device_type(&devices, AUDIO_DEVICE_OUT_LINE)) {
snd_device = SND_DEVICE_OUT_LINE;
@@ -6724,10 +6597,7 @@
else if (my_data->is_wsa_speaker)
snd_device = SND_DEVICE_OUT_SPEAKER_WSA;
else {
- if (out->usecase == USECASE_AUDIO_PLAYBACK_WITH_HAPTICS)
- snd_device = SND_DEVICE_OUT_SPEAKER_AND_HAPTICS;
- else
- snd_device = SND_DEVICE_OUT_SPEAKER;
+ snd_device = SND_DEVICE_OUT_SPEAKER;
}
} else if (is_sco_out_device_type(&devices)) {
if (adev->swb_speech_mode != SPEECH_MODE_INVALID)