diff options
author | Sourabh Banerjee <sbanerje@codeaurora.org> | 2015-09-30 11:08:18 -0700 |
---|---|---|
committer | Ralph Nathan <ralphnathan@google.com> | 2015-10-12 13:10:50 -0700 |
commit | e7d8cc93313416cbd375d42500d98242a12ca479 (patch) | |
tree | 70691fec4b985c5dba0758234ce8a2b9e50d6ba0 | |
parent | e7a775d23560fa8c152b586d26e55fd21206276b (diff) | |
download | dragonboard-e7d8cc93313416cbd375d42500d98242a12ca479.tar.gz |
msm8916 audio audio policy configuration and mixer files
cloned from
git://codeaurora.org/quic/la/platform/vendor/qcom/msm8916_32
branch: LA.BR.1.2.4_rb1.10
Changes made to audio_policy.conf, audio_effects.conf and mixer_paths_sbc.xml
to address style and format issues.
Change-Id: I569bd3feba4bc68c25040d4976cff75b74d3bf0a
Signed-off-by: Sourabh Banerjee <sbanerje@codeaurora.org>
-rwxr-xr-x | base_product/audio_effects.conf | 291 | ||||
-rwxr-xr-x | base_product/audio_policy.conf | 116 | ||||
-rw-r--r-- | base_product/dragonboard.mk | 6 | ||||
-rwxr-xr-x | base_product/mixer_paths_sbc.xml | 687 |
4 files changed, 1100 insertions, 0 deletions
diff --git a/base_product/audio_effects.conf b/base_product/audio_effects.conf new file mode 100755 index 0000000..adfc597 --- /dev/null +++ b/base_product/audio_effects.conf @@ -0,0 +1,291 @@ +# List of effect libraries to load. Each library element must contain a "path" element +# giving the full path of the library .so file. +# libraries { +# <lib name> { +# path <lib path> +# } +# } +libraries { + bundle { + path /system/lib/soundfx/libbundlewrapper.so + } + reverb { + path /system/lib/soundfx/libreverbwrapper.so + } + qcbassboost { + path /vendor/lib/soundfx/libqcbassboost.so + } + qcvirt { + path /vendor/lib/soundfx/libqcvirt.so + } + qcreverb { + path /vendor/lib/soundfx/libqcreverb.so + } + visualizer_sw { + path /system/lib/soundfx/libvisualizer.so + } + visualizer_hw { + path /system/lib/soundfx/libqcomvisualizer.so + } + downmix { + path /system/lib/soundfx/libdownmix.so + } + loudness_enhancer { + path /system/lib/soundfx/libldnhncr.so + } + proxy { + path /system/lib/soundfx/libeffectproxy.so + } + offload_bundle { + path /system/lib/soundfx/libqcompostprocbundle.so + } + audio_pre_processing { + path /system/lib/soundfx/libqcomvoiceprocessing.so + } +} + +# Default pre-processing library. Add to audio_effect.conf "libraries" section if +# audio HAL implements support for default software audio pre-processing effects +# +# pre_processing { +# path /system/lib/soundfx/libaudiopreprocessing.so +# } + +# List of effects to load. Each effect element must contain a "library" and a "uuid" element. +# The value of the "library" element must correspond to the name of one library element in the +# "libraries" element. +# The name of the effect element is indicative, only the value of the "uuid" element +# designates the effect. +# The uuid is the implementation specific UUID as specified by the effect vendor. This is not the +# generic effect type UUID. +# effects { +# <fx name> { +# library <lib name> +# uuid <effect uuid> +# } +# ... +# } + +effects { + +# additions for the proxy implementation +# Proxy implementation + #effectname { + #library proxy + #uuid xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx + + # SW implemetation of the effect. Added as a node under the proxy to + # indicate this as a sub effect. + #libsw { + #library libSW + #uuid yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy + #} End of SW effect + + # HW implementation of the effect. Added as a node under the proxy to + # indicate this as a sub effect. + #libhw { + #library libHW + #uuid zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz + #}End of HW effect + #} End of effect proxy + + bassboost { + library proxy + uuid 14804144-a5ee-4d24-aa88-0002a5d5c51b + + libsw { + library qcbassboost + uuid 23aca180-44bd-11e2-bcfd-0800200c9a66 + } + + libhw { + library offload_bundle + uuid 2c4a8c24-1581-487f-94f6-0002a5d5c51b + } + } + virtualizer { + library proxy + uuid d3467faa-acc7-4d34-acaf-0002a5d5c51b + + libsw { + library qcvirt + uuid e6c98a16-22a3-11e2-b87b-f23c91aec05e + } + + libhw { + library offload_bundle + uuid 509a4498-561a-4bea-b3b1-0002a5d5c51b + } + } + equalizer { + library proxy + uuid c8e70ecd-48ca-456e-8a4f-0002a5d5c51b + + libsw { + library bundle + uuid ce772f20-847d-11df-bb17-0002a5d5c51b + } + + libhw { + library offload_bundle + uuid a0dac280-401c-11e3-9379-0002a5d5c51b + } + } + volume { + library bundle + uuid 119341a0-8469-11df-81f9-0002a5d5c51b + } + reverb_env_aux { + library proxy + uuid 48404ac9-d202-4ccc-bf84-0002a5d5c51b + + libsw { + library qcreverb + uuid a8c1e5f3-293d-43cd-95ec-d5e26c02e217 + } + + libhw { + library offload_bundle + uuid 79a18026-18fd-4185-8233-0002a5d5c51b + } + } + reverb_env_ins { + library proxy + uuid b707403a-a1c1-4291-9573-0002a5d5c51b + + libsw { + library qcreverb + uuid 791fff8b-8129-4655-83a4-59bc61034c3a + } + + libhw { + library offload_bundle + uuid eb64ea04-973b-43d2-8f5e-0002a5d5c51b + } + } + reverb_pre_aux { + library proxy + uuid 1b78f587-6d1c-422e-8b84-0002a5d5c51b + + libsw { + library qcreverb + uuid 53ef1db5-c0c0-445b-b060-e34d20ebb70a + } + + libhw { + library offload_bundle + uuid 6987be09-b142-4b41-9056-0002a5d5c51b + } + } + reverb_pre_ins { + library proxy + uuid f3e178d2-ebcb-408e-8357-0002a5d5c51b + + libsw { + library qcreverb + uuid b08a0e38-22a5-11e2-b87b-f23c91aec05e + } + + libhw { + library offload_bundle + uuid aa2bebf6-47cf-4613-9bca-0002a5d5c51b + } + } + visualizer { + library proxy + uuid 1d0a1a53-7d5d-48f2-8e71-27fbd10d842c + + libsw { + library visualizer_sw + uuid d069d9e0-8329-11df-9168-0002a5d5c51b + } + + libhw { + library visualizer_hw + uuid 7a8044a0-1a71-11e3-a184-0002a5d5c51b + } + } + downmix { + library downmix + uuid 93f04452-e4fe-41cc-91f9-e475b6d1d69f + } + loudness_enhancer { + library loudness_enhancer + uuid fa415329-2034-4bea-b5dc-5b381c8d1e2c + } + aec { + library audio_pre_processing + uuid 0f8d0d2a-59e5-45fe-b6e4-248c8a799109 + } + ns { + library audio_pre_processing + uuid 1d97bb0b-9e2f-4403-9ae3-58c2554306f8 + } +} + +# Default pre-processing effects. Add to audio_effect.conf "effects" section if +# audio HAL implements support for them. +# +# agc { +# library pre_processing +# uuid aa8130e0-66fc-11e0-bad0-0002a5d5c51b +# } +# aec { +# library pre_processing +# uuid bb392ec0-8d4d-11e0-a896-0002a5d5c51b +# } +# ns { +# library pre_processing +# uuid c06c8400-8e06-11e0-9cb6-0002a5d5c51b +# } + +# Audio preprocessor configurations. +# The pre processor configuration consists in a list of elements each describing +# pre processor settings for a given input source. Valid input source names are: +# "mic", "camcorder", "voice_recognition", "voice_communication" +# Each input source element contains a list of effects elements. The name of the effect +# element must be the name of one of the effects in the "effects" list of the file. +# Each effect element may optionally contain a list of parameters and their +# default value to apply when the pre processor effect is created. +# A parameter is defined by a "param" element and a "value" element. Each of these elements +# consists in one or more elements specifying a type followed by a value. +# The types defined are: "int", "short", "float", "bool" and "string" +# When both "param" and "value" are a single int, a simple form is allowed where just +# the param and value pair is present in the parameter description +# pre_processing { +# <input source name> { +# <fx name> { +# <param 1 name> { +# param { +# int|short|float|bool|string <value> +# [ int|short|float|bool|string <value> ] +# ... +# } +# value { +# int|short|float|bool|string <value> +# [ int|short|float|bool|string <value> ] +# ... +# } +# } +# <param 2 name > {<param> <value>} +# ... +# } +# ... +# } +# ... +# } + +# Added aec, ns effects for voice_commuincation, which are supported by the board + +pre_processing { + voice_communication { + aec { + } + ns { + } + } +} + +# +# TODO: add default audio pre processor configurations after debug and tuning phase +# diff --git a/base_product/audio_policy.conf b/base_product/audio_policy.conf new file mode 100755 index 0000000..6f440c7 --- /dev/null +++ b/base_product/audio_policy.conf @@ -0,0 +1,116 @@ +# Global configuration section: lists input and output devices always present on the device +# as well as the output device selected by default. +# Devices are designated by a string that corresponds to the enum in audio.h + +global_configuration { + attached_output_devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER + default_output_device AUDIO_DEVICE_OUT_SPEAKER + attached_input_devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BACK_MIC|AUDIO_DEVICE_IN_REMOTE_SUBMIX|AUDIO_DEVICE_IN_FM_RX|AUDIO_DEVICE_IN_FM_RX_A2DP|AUDIO_DEVICE_IN_VOICE_CALL +} + +# audio hardware module section: contains descriptors for all audio hw modules present on the +# device. Each hw module node is named after the corresponding hw module library base name. +# For instance, "primary" corresponds to audio.primary.<device>.so. +# The "primary" module is mandatory and must include at least one output with +# AUDIO_OUTPUT_FLAG_PRIMARY flag. +# Each module descriptor contains one or more output profile descriptors and zero or more +# input profile descriptors. Each profile lists all the parameters supported by a given output +# or input stream category. +# The "channel_masks", "formats", "devices" and "flags" are specified using strings corresponding +# to enums in audio.h and audio_policy.h. They are concatenated by use of "|" without space or "\n". + +audio_hw_modules { + primary { + outputs { + primary { + sampling_rates 44100|48000 + channel_masks AUDIO_CHANNEL_OUT_STEREO + formats AUDIO_FORMAT_PCM_16_BIT + devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_PROXY|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET|AUDIO_DEVICE_OUT_FM|AUDIO_DEVICE_OUT_FM_TX + flags AUDIO_OUTPUT_FLAG_PRIMARY + } + low_latency { + sampling_rates 44100|48000 + channel_masks AUDIO_CHANNEL_OUT_STEREO + formats AUDIO_FORMAT_PCM_16_BIT + devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY|AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET|AUDIO_DEVICE_OUT_FM|AUDIO_DEVICE_OUT_FM_TX + flags AUDIO_OUTPUT_FLAG_FAST + } + compress_offload { + sampling_rates 8000|11025|16000|22050|32000|44100|48000 + channel_masks AUDIO_CHANNEL_OUT_MONO|AUDIO_CHANNEL_OUT_STEREO + formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_AAC_LC|AUDIO_FORMAT_AAC_HE_V1|AUDIO_FORMAT_AAC_HE_V2 + devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_PROXY|AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET|AUDIO_DEVICE_OUT_FM_TX + flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING + } + voip_rx { + sampling_rates 8000|16000 + channel_masks AUDIO_CHANNEL_OUT_MONO + formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_AMR_NB|AUDIO_FORMAT_AMR_WB|AUDIO_FORMAT_QCELP|AUDIO_FORMAT_EVRC|AUDIO_FORMAT_EVRCB|AUDIO_FORMAT_EVRCWB|AUDIO_FORMAT_EVRCNW + devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET|AUDIO_DEVICE_OUT_ALL_USB|AUDIO_DEVICE_OUT_ALL_SCO + flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_VOIP_RX + } + } + inputs { + primary { + sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000 + channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_FRONT_BACK + formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_AMR_NB|AUDIO_FORMAT_AMR_WB|AUDIO_FORMAT_QCELP|AUDIO_FORMAT_EVRC|AUDIO_FORMAT_EVRCB|AUDIO_FORMAT_EVRCWB|AUDIO_FORMAT_EVRCNW + devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_BACK_MIC|AUDIO_DEVICE_IN_ANLG_DOCK_HEADSET|AUDIO_DEVICE_IN_FM_RX|AUDIO_DEVICE_IN_FM_RX_A2DP|AUDIO_DEVICE_IN_VOICE_CALL + } + } + } + a2dp { + outputs { + a2dp { + sampling_rates 44100 + channel_masks AUDIO_CHANNEL_OUT_STEREO + formats AUDIO_FORMAT_PCM_16_BIT + devices AUDIO_DEVICE_OUT_ALL_A2DP + } + } + } + usb { + outputs { + usb_accessory { + sampling_rates 44100 + channel_masks AUDIO_CHANNEL_OUT_STEREO + formats AUDIO_FORMAT_PCM_16_BIT + devices AUDIO_DEVICE_OUT_USB_ACCESSORY + } + usb_device { + sampling_rates dynamic + channel_masks dynamic + formats dynamic + devices AUDIO_DEVICE_OUT_USB_DEVICE + } + } + inputs { + usb_device { + sampling_rates dynamic + channel_masks AUDIO_CHANNEL_IN_STEREO + formats AUDIO_FORMAT_PCM_16_BIT + devices AUDIO_DEVICE_IN_USB_DEVICE + } + } + } + r_submix { + outputs { + submix { + sampling_rates 48000 + channel_masks AUDIO_CHANNEL_OUT_STEREO + formats AUDIO_FORMAT_PCM_16_BIT + devices AUDIO_DEVICE_OUT_REMOTE_SUBMIX + } + } + inputs { + submix { + sampling_rates 48000 + channel_masks AUDIO_CHANNEL_IN_STEREO + formats AUDIO_FORMAT_PCM_16_BIT + devices AUDIO_DEVICE_IN_REMOTE_SUBMIX + } + } + } +} + diff --git a/base_product/dragonboard.mk b/base_product/dragonboard.mk index b841562..9475f6e 100644 --- a/base_product/dragonboard.mk +++ b/base_product/dragonboard.mk @@ -25,6 +25,12 @@ PRODUCT_DEVICE := dragonboard PRODUCT_COPY_FILES += \ device/qcom/dragonboard/base_product/weaved.conf:system/etc/weaved/weaved.conf +# Install DragonBoard-specific audio policy, audio efects config and mixer path files. +PRODUCT_COPY_FILES += \ + device/qcom/dragonboard/base_product/audio_policy.conf:system/etc/audio_policy.conf \ + device/qcom/dragonboard/base_product/audio_effects.conf:system/etc/audio_effects.conf \ + device/qcom/dragonboard/base_product/mixer_paths_sbc.xml:system/etc/mixer_paths_sbc.xml + # Include the copy-boot_X-to-boot implementation of the boot_control HAL. PRODUCT_PACKAGES += \ bootctrl.default diff --git a/base_product/mixer_paths_sbc.xml b/base_product/mixer_paths_sbc.xml new file mode 100755 index 0000000..08fc604 --- /dev/null +++ b/base_product/mixer_paths_sbc.xml @@ -0,0 +1,687 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<mixer> + <!-- These are the initial mixer settings --> + <ctl name="Voice Rx Device Mute" id="0" value="0" /> + <ctl name="Voice Rx Device Mute" id="1" value="-1" /> + <ctl name="Voice Rx Device Mute" id="2" value="20" /> + <ctl name="Voice Tx Mute" id="0" value="0" /> + <ctl name="Voice Tx Mute" id="1" value="-1" /> + <ctl name="Voice Tx Mute" id="2" value="500" /> + <ctl name="Voice Rx Gain" id="0" value="0" /> + <ctl name="Voice Rx Gain" id="1" value="-1" /> + <ctl name="Voice Rx Gain" id="2" value="20" /> + <ctl name="Voip Tx Mute" id="0" value="0" /> + <ctl name="Voip Tx Mute" id="1" value="500" /> + <ctl name="Voip Rx Gain" id="0" value="0" /> + <ctl name="Voip Rx Gain" id="1" value="20" /> + <ctl name="Voip Mode Config" value="12" /> + <ctl name="Voip Rate Config" value="0" /> + <ctl name="Voip Evrc Min Max Rate Config" id="0" value="1" /> + <ctl name="Voip Evrc Min Max Rate Config" id="1" value="4" /> + <ctl name="Voip Dtx Mode" value="0" /> + <ctl name="TTY Mode" value="Off" /> + <ctl name="HPHL Volume" value="9" /> + <ctl name="HPHR Volume" value="9" /> + <ctl name="RX1 Digital Volume" value="84" /> + <ctl name="RX2 Digital Volume" value="84" /> + <ctl name="RX3 Digital Volume" value="84" /> + <ctl name="IIR1 INP1 Volume" value="84" /> + <ctl name="IIR1 INP2 Volume" value="84" /> + <ctl name="IIR1 INP3 Volume" value="84" /> + <ctl name="IIR1 INP4 Volume" value="84" /> + <ctl name="ADC1 Volume" value="6" /> + <ctl name="ADC2 Volume" value="6" /> + <ctl name="ADC3 Volume" value="6" /> + <ctl name="DEC1 Volume" value="84" /> + <ctl name="DEC2 Volume" value="84" /> + <ctl name="DEC2 MUX" value="ZERO" /> + <ctl name="DEC1 MUX" value="ZERO" /> + <ctl name="ADC2 MUX" value="ZERO" /> + <ctl name="RDAC2 MUX" value="ZERO" /> + <ctl name="RX2 MIX2 INP2" value="ZERO" /> + <ctl name="RX2 MIX2 INP1" value="ZERO" /> + <ctl name="RX1 MIX2 INP2" value="ZERO" /> + <ctl name="RX1 MIX2 INP1" value="ZERO" /> + <ctl name="RX3 MIX1 INP2" value="ZERO" /> + <ctl name="RX3 MIX1 INP1" value="ZERO" /> + <ctl name="RX2 MIX1 INP2" value="ZERO" /> + <ctl name="RX2 MIX1 INP1" value="ZERO" /> + <ctl name="RX1 MIX1 INP2" value="ZERO" /> + <ctl name="RX1 MIX1 INP1" value="ZERO" /> + <ctl name="EAR_S" value="ZERO" /> + <ctl name="HPHL" value="ZERO" /> + <ctl name="HPHR" value="ZERO" /> + <ctl name="SPK DAC Switch" value="0" /> + <ctl name="Speaker Boost" value="ENABLE" /> + <ctl name="EAR PA Gain" value="POS_1P5_DB" /> + <ctl name="EAR PA Boost" value="ENABLE" /> + <ctl name="MI2S_RX Channels" value="Two" /> + <ctl name="MI2S_TX Channels" value="One" /> + <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia1" value="0" /> + <ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia1" value="0" /> + <ctl name="INTERNAL_BT_SCO_RX Audio Mixer MultiMedia1" value="0" /> + <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia4" value="0" /> + <ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia4" value="0" /> + <ctl name="INTERNAL_BT_SCO_RX Audio Mixer MultiMedia4" value="0" /> + <ctl name="AFE_PCM_RX Audio Mixer MultiMedia4" value="0" /> + <ctl name="INTERNAL_FM_RX Audio Mixer MultiMedia4" value="0" /> + <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia5" value="0" /> + <ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia5" value="0" /> + <ctl name="INTERNAL_BT_SCO_RX Audio Mixer MultiMedia5" value="0" /> + <ctl name="MultiMedia1 Mixer TERT_MI2S_TX" value="0" /> + <ctl name="MultiMedia5 Mixer TERT_MI2S_TX" value="0" /> + <ctl name="MultiMedia1 Mixer INTERNAL_BT_SCO_TX" value="0" /> + <ctl name="PRI_MI2S_RX_Voice Mixer CSVoice" value="0" /> + <ctl name="QUAT_MI2S_RX_Voice Mixer CSVoice" value="0" /> + <ctl name="Voice_Tx Mixer TERT_MI2S_TX_Voice" value="0" /> + + <!-- Voice BTSCO --> + <ctl name="Internal BTSCO SampleRate" value="8000" /> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer CSVoice" value="0" /> + <ctl name="Voice_Tx Mixer INTERNAL_BT_SCO_TX_Voice" value="0" /> + <!-- Voice BTSCO end --> + + <!-- Voice2 --> + <ctl name="PRI_MI2S_RX_Voice Mixer Voice2" value="0" /> + <ctl name="Voice2_Tx Mixer TERT_MI2S_TX_Voice2" value="0" /> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer Voice2" value="0" /> + <ctl name="Voice2_Tx Mixer INTERNAL_BT_SCO_TX_Voice2" value="0" /> + <ctl name="AFE_PCM_RX_Voice Mixer Voice2" value="0" /> + <ctl name="Voice2_Tx Mixer AFE_PCM_TX_Voice2" value="0" /> + <!-- Voice2 end --> + + <!-- Voip --> + <ctl name="PRI_MI2S_RX_Voice Mixer Voip" value="0" /> + <ctl name="Voip_Tx Mixer TERT_MI2S_TX_Voip" value="0" /> + <ctl name="Internal BTSCO SampleRate" value="8000" /> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer Voip" value="0" /> + <ctl name="Voip_Tx Mixer INTERNAL_BT_SCO_TX_Voip" value="0" /> + <!-- Voip end --> + + <!-- fm --> + <ctl name="Internal FM RX Volume" value="0" /> + <ctl name="PRI_MI2S_RX Port Mixer INTERNAL_FM_TX" value="0" /> + <ctl name="MI2S_DL_HL Switch" value="1" /> + <ctl name="MultiMedia1 Mixer INTERNAL_FM_TX" value="0" /> + <ctl name="MultiMedia2 Mixer INTERNAL_FM_TX" value="0" /> + <ctl name="INTERNAL_FM_RX Audio Mixer MultiMedia1" value="0" /> + <ctl name="INTERNAL_FM_RX Audio Mixer MultiMedia5" value="0" /> + <!-- fm end --> + + <!-- Incall Recording --> + <ctl name="MultiMedia1 Mixer VOC_REC_UL" value="0" /> + <ctl name="MultiMedia1 Mixer VOC_REC_DL" value="0" /> + <!-- Incall Recording end --> + + <!-- Incall Music --> + <ctl name="Incall_Music Audio Mixer MultiMedia2" value="0" /> + <ctl name="Incall_Music_2 Audio Mixer MultiMedia9" value="0" /> + <!-- Incall Music end --> + + <!-- QCHAT --> + <ctl name="PRI_MI2S_RX_Voice Mixer QCHAT" value="0" /> + <ctl name="QCHAT_Tx Mixer TERT_MI2S_TX_QCHAT" value="0" /> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer QCHAT" value="0" /> + <ctl name="QCHAT_Tx Mixer INTERNAL_BT_SCO_TX_QCHAT" value="0" /> + <!-- QCHAT end --> + + <!-- EC_REF --> + <ctl name="AUDIO_REF_EC_UL1 MUX" value="None" /> + + <!-- IIR --> + <ctl name="IIR1 Band1" id ="0" value="268435456" /> + <ctl name="IIR1 Band1" id ="1" value="0" /> + <ctl name="IIR1 Band1" id ="2" value="0" /> + <ctl name="IIR1 Band1" id ="3" value="0" /> + <ctl name="IIR1 Band1" id ="4" value="0" /> + <ctl name="IIR1 Band2" id ="0" value="268435456" /> + <ctl name="IIR1 Band2" id ="1" value="0" /> + <ctl name="IIR1 Band2" id ="2" value="0" /> + <ctl name="IIR1 Band2" id ="3" value="0" /> + <ctl name="IIR1 Band2" id ="4" value="0" /> + <ctl name="IIR1 Band3" id ="0" value="268435456" /> + <ctl name="IIR1 Band3" id ="1" value="0" /> + <ctl name="IIR1 Band3" id ="2" value="0" /> + <ctl name="IIR1 Band3" id ="3" value="0" /> + <ctl name="IIR1 Band3" id ="4" value="0" /> + <ctl name="IIR1 Band4" id ="0" value="268435456" /> + <ctl name="IIR1 Band4" id ="1" value="0" /> + <ctl name="IIR1 Band4" id ="2" value="0" /> + <ctl name="IIR1 Band4" id ="3" value="0" /> + <ctl name="IIR1 Band4" id ="4" value="0" /> + <ctl name="IIR1 Band5" id ="0" value="268435456" /> + <ctl name="IIR1 Band5" id ="1" value="0" /> + <ctl name="IIR1 Band5" id ="2" value="0" /> + <ctl name="IIR1 Band5" id ="3" value="0" /> + <ctl name="IIR1 Band5" id ="4" value="0" /> + <ctl name="IIR1 Enable Band1" value="0" /> + <ctl name="IIR1 Enable Band2" value="0" /> + <ctl name="IIR1 Enable Band3" value="0" /> + <ctl name="IIR1 Enable Band4" value="0" /> + <ctl name="IIR1 Enable Band5" value="0" /> + <!-- IIR end --> + + <!-- ADSP testfwk --> + <ctl name="MI2S_DL_HL Switch" value="0" /> + <!-- ADSP testfwk end--> + + <!-- These are audio route (FE to BE) specific mixer settings --> + <path name="deep-buffer-playback"> + <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia1" value="1" /> + </path> + + <path name="deep-buffer-playback hdmi"> + <ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia1" value="1" /> + </path> + + <path name="deep-buffer-playback bt-sco"> + <ctl name="INTERNAL_BT_SCO_RX Audio Mixer MultiMedia1" value="1" /> + </path> + + <path name="deep-buffer-playback bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="deep-buffer-playback bt-sco" /> + </path> + + <path name="deep-buffer-playback afe-proxy"> + <ctl name="AFE_PCM_RX Audio Mixer MultiMedia1" value="1" /> + </path> + + <path name="deep-buffer-playback usb-headphones"> + <path name="deep-buffer-playback afe-proxy" /> + </path> + + <path name="deep-buffer-playback speaker-and-usb-headphones"> + <path name="deep-buffer-playback usb-headphones" /> + <path name="deep-buffer-playback" /> + </path> + + <path name="deep-buffer-playback transmission-fm"> + <ctl name="INTERNAL_FM_RX Audio Mixer MultiMedia1" value="1" /> + </path> + + <path name="low-latency-playback"> + <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia5" value="1" /> + </path> + + <path name="low-latency-playback hdmi"> + <ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia5" value="1" /> + </path> + + <path name="low-latency-playback bt-sco"> + <ctl name="INTERNAL_BT_SCO_RX Audio Mixer MultiMedia5" value="1" /> + </path> + + <path name="low-latency-playback bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="low-latency-playback bt-sco" /> + </path> + + <path name="low-latency-playback afe-proxy"> + <ctl name="AFE_PCM_RX Audio Mixer MultiMedia5" value="1" /> + </path> + + <path name="low-latency-playback usb-headphones"> + <path name="low-latency-playback afe-proxy" /> + </path> + + <path name="low-latency-playback speaker-and-usb-headphones"> + <path name="low-latency-playback usb-headphones" /> + <path name="low-latency-playback" /> + </path> + + <path name="low-latency-playback transmission-fm"> + <ctl name="INTERNAL_FM_RX Audio Mixer MultiMedia5" value="1" /> + </path> + + <path name="compress-offload-playback"> + <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia4" value="1" /> + </path> + + <path name="compress-offload-playback hdmi"> + <ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia4" value="1" /> + </path> + + <path name="compress-offload-playback bt-sco"> + <ctl name="INTERNAL_BT_SCO_RX Audio Mixer MultiMedia4" value="1" /> + </path> + + <path name="compress-offload-playback bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="compress-offload-playback bt-sco" /> + </path> + + <path name="compress-offload-playback afe-proxy"> + <ctl name="AFE_PCM_RX Audio Mixer MultiMedia4" value="1" /> + </path> + + <path name="compress-offload-playback usb-headphones"> + <path name="compress-offload-playback afe-proxy" /> + </path> + + <path name="compress-offload-playback speaker-and-usb-headphones"> + <path name="compress-offload-playback usb-headphones" /> + <path name="compress-offload-playback" /> + </path> + + <path name="compress-offload-playback transmission-fm"> + <ctl name="INTERNAL_FM_RX Audio Mixer MultiMedia4" value="1" /> + </path> + + <path name="audio-record"> + <ctl name="MultiMedia1 Mixer TERT_MI2S_TX" value="1" /> + </path> + + <path name="audio-record speaker"> + <ctl name="MultiMedia1 Mixer TERT_MI2S_TX" value="1" /> + </path> + + <path name="audio-record bt-sco"> + <ctl name="MultiMedia1 Mixer INTERNAL_BT_SCO_TX" value="1" /> + </path> + + <path name="audio-record bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="audio-record bt-sco" /> + </path> + + <path name="audio-record usb-headset-mic"> + <ctl name="MultiMedia1 Mixer AFE_PCM_TX" value="1" /> + </path> + + <path name="audio-record capture-fm"> + <ctl name="MultiMedia1 Mixer INTERNAL_FM_TX" value="1" /> + </path> + + <path name="low-latency-record"> + <ctl name="MultiMedia5 Mixer TERT_MI2S_TX" value="1" /> + </path> + + <path name="fm-virtual-record capture-fm"> + <ctl name="MultiMedia2 Mixer INTERNAL_FM_TX" value="1" /> + </path> + + <path name="voice-call"> + <ctl name="PRI_MI2S_RX_Voice Mixer CSVoice" value="1" /> + <ctl name="Voice_Tx Mixer TERT_MI2S_TX_Voice" value="1" /> + </path> + + <path name="voice-call hdmi"> + <ctl name="QUAT_MI2S_RX_Voice Mixer CSVoice" value="1" /> + <ctl name="Voice_Tx Mixer TERT_MI2S_TX_Voice" value="1" /> + </path> + + + <path name="voice-call bt-sco"> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer CSVoice" value="1" /> + <ctl name="Voice_Tx Mixer INTERNAL_BT_SCO_TX_Voice" value="1" /> + </path> + + <path name="voice-call bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="voice-call bt-sco" /> + </path> + + <path name="voice-call usb-headphones"> + <ctl name="AFE_PCM_RX_Voice Mixer CSVoice" value="1" /> + <ctl name="Voice_Tx Mixer AFE_PCM_TX_Voice" value="1" /> + </path> + + <path name="voice2-call"> + <ctl name="PRI_MI2S_RX_Voice Mixer Voice2" value="1" /> + <ctl name="Voice2_Tx Mixer TERT_MI2S_TX_Voice2" value="1" /> + </path> + + <path name="voice2-call hdmi"> + <ctl name="QUAT_MI2S_RX_Voice Mixer Voice2" value="1" /> + <ctl name="Voice2_Tx Mixer TERT_MI2S_TX_Voice2" value="1" /> + </path> + + <path name="voice2-call bt-sco"> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer Voice2" value="1" /> + <ctl name="Voice2_Tx Mixer INTERNAL_BT_SCO_TX_Voice2" value="1" /> + </path> + + <path name="voice2-call bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="voice2-call bt-sco" /> + </path> + + <path name="voice2-call usb-headphones"> + <ctl name="AFE_PCM_RX_Voice Mixer Voice2" value="1" /> + <ctl name="Voice2_Tx Mixer AFE_PCM_TX_Voice2" value="1" /> + </path> + + <path name="play-fm"> + <ctl name="Internal FM RX Volume" value="1" /> + <ctl name="PRI_MI2S_RX Port Mixer INTERNAL_FM_TX" value="1" /> + <ctl name="MI2S_DL_HL Switch" value="1" /> + </path> + + <path name="incall-rec-uplink"> + <ctl name="MultiMedia1 Mixer VOC_REC_UL" value="1" /> + </path> + + <path name="incall-rec-uplink bt-sco"> + <path name="incall-rec-uplink" /> + </path> + + <path name="incall-rec-uplink bt-sco-wb"> + <path name="incall-rec-uplink" /> + </path> + + <path name="incall-rec-downlink"> + <ctl name="MultiMedia1 Mixer VOC_REC_DL" value="1" /> + </path> + + <path name="incall-rec-downlink bt-sco"> + <path name="incall-rec-downlink" /> + </path> + + <path name="incall-rec-downlink bt-sco-wb"> + <path name="incall-rec-downlink" /> + </path> + + <path name="incall-rec-uplink-and-downlink"> + <path name="incall-rec-uplink" /> + <path name="incall-rec-downlink" /> + </path> + + <path name="incall-rec-uplink-and-downlink bt-sco"> + <path name="incall-rec-uplink-and-downlink" /> + </path> + + <path name="incall-rec-uplink-and-downlink bt-sco-wb"> + <path name="incall-rec-uplink-and-downlink" /> + </path> + + <path name="incall_music_uplink"> + <ctl name="Incall_Music Audio Mixer MultiMedia2" value="1" /> + </path> + + <path name="incall_music_uplink2"> + <ctl name="Incall_Music_2 Audio Mixer MultiMedia9" value="1" /> + </path> + + <path name="volte-call"> + <ctl name="PRI_MI2S_RX_Voice Mixer VoLTE" value="1" /> + <ctl name="VoLTE_Tx Mixer TERT_MI2S_TX_VoLTE" value="1" /> + </path> + + <path name="volte-call hdmi"> + <ctl name="HDMI_RX_Voice Mixer VoLTE" value="1" /> + <ctl name="VoLTE_Tx Mixer SLIM_0_TX_VoLTE" value="1" /> + </path> + + <path name="volte-call bt-sco"> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer VoLTE" value="1" /> + <ctl name="VoLTE_Tx Mixer INTERNAL_BT_SCO_TX_VoLTE" value="1" /> + </path> + + <path name="volte-call bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="volte-call bt-sco" /> + </path> + + <path name="volte-call usb-headphones"> + <ctl name="AFE_PCM_RX_Voice Mixer VoLTE" value="1" /> + <ctl name="VoLTE_Tx Mixer AFE_PCM_TX_VoLTE" value="1" /> + </path> + + <path name="compress-voip-call"> + <ctl name="PRI_MI2S_RX_Voice Mixer Voip" value="1" /> + <ctl name="Voip_Tx Mixer TERT_MI2S_TX_Voip" value="1" /> + </path> + + <path name="compress-voip-speaker"> + <ctl name="PRI_MI2S_RX_Voice Mixer Voip" value="1" /> + <ctl name="Voip_Tx Mixer TERT_MI2S_TX_Voip" value="1" /> + </path> + + <path name="compress-voip-call bt-sco"> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer Voip" value="1" /> + <ctl name="Voip_Tx Mixer INTERNAL_BT_SCO_TX_Voip" value="1" /> + </path> + + <path name="compress-voip-call bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="compress-voip-call bt-sco" /> + </path> + + <path name="qchat-call"> + <ctl name="PRI_MI2S_RX_Voice Mixer QCHAT" value="1" /> + <ctl name="QCHAT_Tx Mixer TERT_MI2S_TX_QCHAT" value="1" /> + </path> + + <path name="qchat-call bt-sco"> + <ctl name="INTERNAL_BT_SCO_RX_Voice Mixer QCHAT" value="1" /> + <ctl name="QCHAT_Tx Mixer INTERNAL_BT_SCO_TX_QCHAT" value="1" /> + </path> + + <path name="qchat-call bt-sco-wb"> + <ctl name="Internal BTSCO SampleRate" value="16000" /> + <path name="qchat-call bt-sco" /> + </path> + + <!-- These are actual sound device specific mixer settings --> + <path name="adc1"> + <ctl name="DEC1 MUX" value="ADC1" /> + </path> + + <path name="adc2"> + <ctl name="DEC1 MUX" value="ADC2" /> + </path> + + <path name="speaker"> + <ctl name="RX3 MIX1 INP1" value="RX1" /> + <ctl name="SPK DAC Switch" value="1" /> + </path> + + <path name="hdmi"> + <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia1" value="0" /> + <ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia1" value="1" /> + <ctl name="MI2S_RX Channels" value="Two" /> + </path> + + <path name="speaker-mic"> + <path name="adc1" /> + <ctl name="IIR1 INP1 MUX" value="DEC1" /> + </path> + + <path name="handset"> + <ctl name="RX1 MIX1 INP1" value="RX1" /> + <ctl name="RDAC2 MUX" value="RX1" /> + <ctl name="RX1 Digital Volume" value="84" /> + <ctl name="EAR PA Gain" value="POS_6_DB" /> + <ctl name="EAR_S" value="Switch" /> + </path> + + <path name="handset-mic"> + <path name="adc1" /> + <ctl name="IIR1 INP1 MUX" value="DEC1" /> + </path> + + <path name="headphones"> + <ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia1" value="0" /> + <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia1" value="1" /> + <ctl name="MI2S_RX Channels" value="Two" /> + <ctl name="RX1 MIX1 INP1" value="RX1" /> + <ctl name="RX2 MIX1 INP1" value="RX2" /> + <ctl name="RDAC2 MUX" value="RX2" /> + <ctl name="HPHL" value="Switch" /> + <ctl name="HPHR" value="Switch" /> + </path> + + <path name="headset-mic"> + <path name="adc2" /> + <ctl name="ADC2 MUX" value="INP2" /> + <ctl name="IIR1 INP1 MUX" value="DEC1" /> + </path> + + <path name="sidetone-iir"> + <ctl name="IIR1 Enable Band1" value="1" /> + <ctl name="IIR1 Enable Band2" value="1" /> + <ctl name="IIR1 Enable Band3" value="1" /> + <ctl name="IIR1 Enable Band4" value="1" /> + <ctl name="IIR1 Enable Band5" value="1" /> + </path> + + <path name="sidetone-handset"> + <path name="sidetone-iir" /> + <ctl name="IIR1 INP1 Volume" value="53" /> + <ctl name="RX1 MIX2 INP1" value="IIR1" /> + </path> + + <path name="sidetone-headphone"> + <path name="sidetone-iir" /> + <ctl name="RX1 MIX2 INP1" value="IIR1" /> + <ctl name="RX2 MIX2 INP1" value="IIR1" /> + <ctl name="IIR1 INP1 Volume" value="53" /> + </path> + + <path name="voice-handset"> + <path name="sidetone-handset" /> + <path name="handset" /> + </path> + + <path name="voice-speaker"> + <path name="speaker" /> + </path> + + <path name="voice-speaker-mic"> + <path name="speaker-mic" /> + </path> + + <path name="voice-headphones"> + <path name="sidetone-headphone" /> + <path name="headphones" /> + <path name="sidetone-headphone" /> + </path> + + <path name="voice-headset-mic"> + <path name="headset-mic" /> + </path> + + <path name="speaker-and-headphones"> + <path name="speaker" /> + <path name="headphones" /> + </path> + + <path name="usb-headphones"> + </path> + + <path name="afe-proxy"> + </path> + + <path name="transmission-fm"> + </path> + + <path name="speaker-and-usb-headphones"> + <path name="speaker" /> + <path name="usb-headphones" /> + </path> + + <path name="voice-rec-mic"> + <path name="handset-mic" /> + </path> + + <path name="camcorder-mic"> + <path name="handset-mic" /> + </path> + + <path name="bt-sco-headset"> + </path> + + <path name="bt-sco-mic"> + </path> + + <path name="usb-headset-mic"> + </path> + + <path name="capture-fm"> + </path> + + <!-- Dual MIC devices --> + <path name="speaker-dmic-endfire"> + <path name="adc1" /> + <ctl name="DEC2 MUX" value="ADC2" /> + <ctl name="MI2S_TX Channels" value="Two" /> + <ctl name="ADC2 MUX" value="INP3" /> + </path> + + <path name="dmic-endfire"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="voice-dmic-ef-tmus"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-dmic-ef"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-speaker-dmic-ef"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-rec-dmic-ef"> + <path name="dmic-endfire" /> + </path> + + <path name="voice-rec-dmic-ef-fluence"> + <path name="dmic-endfire" /> + </path> + + <path name="handset-stereo-dmic-ef"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="speaker-stereo-dmic-ef"> + <path name="speaker-dmic-endfire" /> + </path> + + <path name="echo-reference"> + <ctl name="AUDIO_REF_EC_UL1 MUX" value="I2S_RX" /> + </path> + + <!-- TTY devices --> + + <path name="tty-headphones"> + <ctl name="RX1 MIX1 INP1" value="RX1" /> + <ctl name="HPHL" value="Switch" /> + </path> + + <path name="voice-tty-full-headphones"> + <ctl name="TTY Mode" value="FULL" /> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-vco-headphones"> + <ctl name="TTY Mode" value="VCO" /> + <path name="tty-headphones" /> + </path> + + <path name="voice-tty-hco-handset"> + <ctl name="TTY Mode" value="HCO" /> + <path name="handset" /> + </path> + + <path name="voice-tty-full-headset-mic"> + <path name="adc2" /> + <ctl name="ADC2 MUX" value="INP2" /> + </path> + + <path name="voice-tty-hco-headset-mic"> + <path name="voice-tty-full-headset-mic" /> + </path> + + <path name="voice-tty-vco-handset-mic"> + <path name="adc1" /> + </path> + + <path name="ADSP testfwk"> + <ctl name="MI2S_DL_HL Switch" value="1" /> + </path> + +</mixer> |