diff options
| author | Sergiu Cozma <lssjbrolli@gmail.com> | 2015-03-28 23:09:49 +0200 |
|---|---|---|
| committer | Sergiu Cozma <lssjbrolli@gmail.com> | 2015-03-28 23:09:49 +0200 |
| commit | 5d8e07568ee80a0c561d5c20b894e16f8430773b (patch) | |
| tree | 0aa8c0c91b11132a19cc00b801e7bfb90e90160e | |
| parent | b51f05b90f701707fb9c7c094bd4ad71cb96d038 (diff) | |
klimtlte: mixer_paths closer to stock and small tweaks for our device
Change-Id: Ic8caba881cfcc56a9481b7f6274cea68d1ba548e
| -rw-r--r-- | audio/audio_hw.c | 2 | ||||
| -rw-r--r-- | audio/mixer_paths.xml | 866 | ||||
| -rw-r--r-- | audio/routing.h | 52 |
3 files changed, 417 insertions, 503 deletions
diff --git a/audio/audio_hw.c b/audio/audio_hw.c index 35cac29..40857ef 100644 --- a/audio/audio_hw.c +++ b/audio/audio_hw.c @@ -1892,7 +1892,7 @@ struct audio_module HAL_MODULE_INFO_SYM = { .module_api_version = AUDIO_MODULE_API_VERSION_0_1, .hal_api_version = HARDWARE_HAL_API_VERSION, .id = AUDIO_HARDWARE_MODULE_ID, - .name = "JA audio HW HAL", + .name = "KlimtLTE audio HW HAL", .author = "The CyanogenMod Project", .methods = &hal_module_methods, }, diff --git a/audio/mixer_paths.xml b/audio/mixer_paths.xml index a3509d6..ea1f6b9 100644 --- a/audio/mixer_paths.xml +++ b/audio/mixer_paths.xml @@ -1,10 +1,10 @@ <mixer> <!-- INOUT_MAP { - <ctl name="Earpiece", "Builtin Mic", "Back Mic" /> + <ctl name="Earpiece", "Builtin Mic", "Third Mic"/> <ctl name="Speaker", "Back Mic", "Third Mic" /> <ctl name="Headset Out", "Headset In" /> - <ctl name="Headphone", "Builtin Mic" /> + <ctl name="Headphone", "Builtin Mic", "Third Mic" /> <ctl name="SCO Headset Out", "SCO Headset In" /> <ctl name="SCO", "SCO Headset In" /> <ctl name="SCO Carkit", "SCO Headset In" /> @@ -19,477 +19,391 @@ INPUT_CHANNEL_MAP { } --> - <!-- Initial mixer settings --> - - <!-- Noise gate control --> - <ctl name="Noise Gate Switch" value="0" />, - <ctl name="HPOUT1L NG HPOUT1L Switch" value="0" /> - <ctl name="HPOUT1R NG HPOUT1R Switch" value="0" /> - <ctl name="HPOUT2L NG HPOUT2L Switch" value="0" /> - <ctl name="HPOUT2R NG HPOUT2R Switch" value="0" /> - <ctl name="EPOUT NG EPOUT Switch" value="0" /> - <ctl name="SPKOUTL NG SPKOUTL Switch" value="0" /> - <ctl name="SPKOUTR NG SPKOUTR Switch" value="0" /> - <ctl name="SPKDAT1L NG SPKDAT1L Switch" value="0" /> - <ctl name="SPKDAT1R NG SPKDAT1R Switch" value="0" /> - <ctl name="Noise Gate Threshold Volume" value="3" /> - - <!-- Analog output AMP --> - <!-- AP Side is mixed to Input 1 of each out mixer --> - <!-- RCV(Mono) --> - <ctl name="EPOUT Input 1" value="AIF1RX1" /> - <ctl name="EPOUT Input 2" value="AIF1RX2" /> - <ctl name="EPOUT Digital Switch" value="1" /> - - <!-- SPK(Mono) --> - <ctl name="SPKOUTL Input 1" value="AIF1RX1" /> - <ctl name="SPKOUTL Input 2" value="AIF1RX2" /> - <ctl name="Speaker Digital Switch" value="1" /> - - <!-- HP(stereo) --> - <ctl name="HPOUT1L Input 1" value="AIF1RX1" /> - <ctl name="HPOUT1R Input 1" value="AIF1RX2" /> - <ctl name="HPOUT1 Digital Switch" value="1" /> - - <!-- VPS(stereo) --> - <ctl name="HPOUT2L Input 1" value="AIF1RX1" /> - <ctl name="HPOUT2R Input 1" value="AIF1RX2" /> - <ctl name="OUT2 Digital Switch" value="1" /> - - <!-- BT <-AP(use input 1) --> - <!-- ASRC2(RX domain) --> - <ctl name="ASRC2L Input" value="AIF2RX1" /> - <ctl name="ASRC2R Input" value="AIF2RX2" /> - - <!-- Currently use i2c dual mono(both L/R) --> - <!-- CP->RCV --> - <ctl name="EPOUT Input 3" value="None" /> - - <!-- CP->SPK --> - <ctl name="SPKOUTL Input 3" value="None" /> - - <!-- CP->HP --> - <ctl name="HPOUT1L Input 2" value="None" /> - <ctl name="HPOUT1R Input 2" value="None" /> - - <!-- CP->BT --> - <ctl name="AIF3TX1 Input 2" value="AIF2RX1" /> - <ctl name="AIF3TX2 Input 2" value="AIF2RX2" /> - - <!-- Route all mics via LHPF1 --> - <!-- need to move modifier field --> - <ctl name="LHPF1 Mode" value="High-pass" /> - <ctl name="LHPF2 Mode" value="High-pass" /> - - <!-- BT mic->CP --> - <ctl name="AIF2TX1 Input 2" value="AIF3RX1" /> - <ctl name="AIF2TX2 Input 2" value="AIF3RX2" /> - - <!-- Stereo recording from mics --> - <!-- need to move channeltype --> - - <!-- Gain for main and headset mics --> - <ctl name="IN1L Volume" value="30" /> - <ctl name="IN1R Volume" value="30" /> - - <!-- Gain for sub and 3rd mic --> - <ctl name="IN2L Volume" value="30" /> - <ctl name="IN2R Volume" value="30" /> - - <!-- Mics to AIF2TX --> - <ctl name="ASRC1L Input" value="LHPF1" /> - <ctl name="ASRC1R Input" value="LHPF2" /> - <ctl name="AIF2TX1 Input 1" value="ASRC1L" /> - <ctl name="AIF2TX2 Input 1" value="ASRC1R" /> - - <!-- BT<-CP(use input 2) --> - <ctl name="AIF1TX1 Input 2" value="ASRC2L" /> - <ctl name="AIF1TX2 Input 2" value="ASRC2R" /> - - <!-- LHPF1 & 2 filter --> - <ctl name="LHPF1 COEFF FILTER" value="130Hz" /> - <ctl name="LHPF2 COEFF FILTER" value="130Hz" /> - - <!-- common digital volume --> - <!-- don't change this common volume --> - <ctl name="AIF1TX1 Input 1 Volume" value="32" /> - <ctl name="AIF1TX1 Input 2 Volume" value="32" /> - <ctl name="AIF1TX1 Input 3 Volume" value="32" /> - <ctl name="AIF1TX1 Input 4 Volume" value="32" /> - <ctl name="AIF1TX2 Input 1 Volume" value="32" /> - <ctl name="AIF1TX2 Input 2 Volume" value="32" /> - <ctl name="AIF1TX2 Input 3 Volume" value="32" /> - <ctl name="AIF1TX2 Input 4 Volume" value="32" /> - <ctl name="AIF1TX3 Input 1 Volume" value="32" /> - <ctl name="AIF1TX3 Input 2 Volume" value="32" /> - <ctl name="AIF1TX3 Input 3 Volume" value="32" /> - <ctl name="AIF1TX3 Input 4 Volume" value="32" /> - <ctl name="AIF1TX4 Input 1 Volume" value="32" /> - <ctl name="AIF1TX4 Input 2 Volume" value="32" /> - <ctl name="AIF1TX4 Input 3 Volume" value="32" /> - <ctl name="AIF1TX4 Input 4 Volume" value="32" /> - <ctl name="AIF1TX5 Input 1 Volume" value="32" /> - <ctl name="AIF1TX5 Input 2 Volume" value="32" /> - <ctl name="AIF1TX5 Input 3 Volume" value="32" /> - <ctl name="AIF1TX5 Input 4 Volume" value="32" /> - <ctl name="AIF1TX6 Input 1 Volume" value="32" /> - <ctl name="AIF1TX6 Input 2 Volume" value="32" /> - <ctl name="AIF1TX6 Input 3 Volume" value="32" /> - <ctl name="AIF1TX6 Input 4 Volume" value="32" /> - <ctl name="AIF1TX7 Input 1 Volume" value="32" /> - <ctl name="AIF1TX7 Input 2 Volume" value="32" /> - <ctl name="AIF1TX7 Input 3 Volume" value="32" /> - <ctl name="AIF1TX7 Input 4 Volume" value="32" /> - <ctl name="AIF1TX8 Input 1 Volume" value="32" /> - <ctl name="AIF1TX8 Input 2 Volume" value="32" /> - <ctl name="AIF1TX8 Input 3 Volume" value="32" /> - <ctl name="AIF1TX8 Input 4 Volume" value="32" /> - <ctl name="AIF2TX1 Input 1 Volume" value="32" /> - <ctl name="AIF2TX1 Input 2 Volume" value="32" /> - <ctl name="AIF2TX1 Input 3 Volume" value="32" /> - <ctl name="AIF2TX1 Input 4 Volume" value="32" /> - <ctl name="AIF2TX2 Input 1 Volume" value="32" /> - <ctl name="AIF2TX2 Input 2 Volume" value="32" /> - <ctl name="AIF2TX2 Input 3 Volume" value="32" /> - <ctl name="AIF2TX2 Input 4 Volume" value="32" /> - <ctl name="AIF3TX1 Input 1 Volume" value="32" /> - <ctl name="AIF3TX1 Input 2 Volume" value="32" /> - <ctl name="AIF3TX1 Input 3 Volume" value="32" /> - <ctl name="AIF3TX1 Input 4 Volume" value="32" /> - <ctl name="AIF3TX2 Input 1 Volume" value="32" /> - <ctl name="AIF3TX2 Input 2 Volume" value="32" /> - <ctl name="AIF3TX2 Input 3 Volume" value="32" /> - <ctl name="AIF3TX2 Input 4 Volume" value="32" /> - - <ctl name="Input Ramp Up" value="8ms/6dB" /> - - <ctl name="RCV Switch" value="0" /> - <ctl name="SPK Switch" value="0" /> - <ctl name="HP Switch" value="0" /> - <ctl name="VPS Switch" value="0" /> - <ctl name="HDMI Switch" value="0" /> - <ctl name="Main Mic Switch" value="0" /> - <ctl name="Sub Mic Switch" value="0" /> - <ctl name="3rd Mic Switch" value="0" /> - <ctl name="Headset Mic Switch" value="0" /> - - <ctl name="AIF2 Mode" value="Master" /> - - <!-- Channels --> - - <path name="channel-left"> - <ctl name="AIF1TX1 Input 1" value="LHPF1" /> - <ctl name="AIF1TX2 Input 1" value="LHPF1" /> - <ctl name="ASRC1L Input" value="LHPF1" /> - <ctl name="ASRC1R Input" value="LHPF1" /> - </path> - - <path name="channel-right"> - <ctl name="AIF1TX1 Input 1" value="LHPF2" /> - <ctl name="AIF1TX2 Input 1" value="LHPF2" /> - <ctl name="ASRC1L Input" value="LHPF2" /> - <ctl name="ASRC1R Input" value="LHPF2" /> - </path> - - <path name="channel-stereo"> - <ctl name="AIF1TX1 Input 1" value="LHPF1" /> - <ctl name="AIF1TX2 Input 1" value="LHPF2" /> - <ctl name="ASRC1L Input" value="LHPF1" /> - <ctl name="ASRC1R Input" value="LHPF2" /> - </path> - - <path name="channel-none"> - <ctl name="AIF3TX1 Input 1" value="ASRC1L" /> - <ctl name="AIF3TX2 Input 1" value="ASRC1R" /> - <ctl name="ASRC1L Input" value="AIF1RX1" /> - <ctl name="ASRC1R Input" value="AIF1RX2" /> - </path> - - <!-- Volume --> - - <path name="speaker-volume"> - <ctl name="Speaker Digital Volume" value="144" /> - </path> - - <!-- Paths that roughly correspond to devices --> - - <path name="speaker"> - <ctl name="SPK Switch" value="1" /> - </path> - - <path name="earpiece"> - <ctl name="RCV Switch" value="1" /> - </path> - - <path name="headphones"> - <ctl name="HP Switch" value="1" /> - </path> - - <path name="sco-out"> - <ctl name="AIF3TX1 Input 2" value="AIF2RX1" /> - <ctl name="AIF3TX2 Input 2" value="AIF2RX2" /> - </path> - - <path name="dock"> - <ctl name="VPS Switch" value="1" /> - </path> - - <path name="aux-digital"> - <ctl name="HDMI Switch" value="1" /> - </path> - - <path name="aif2-stereo-mic"> - <ctl name="AIF2TX1 Input 1" value="ASRC1L" /> - <ctl name="AIF2TX2 Input 1" value="ASRC1R" /> - </path> - - <path name="builtin-mic"> - <ctl name="Main Mic Switch" value="1" /> - <ctl name="LHPF1 Input 1" value="IN1L" /> - <ctl name="IN1L Volume" value="18" /> - <ctl name="LHPF1 Input 1 Volume" value="32" /> - <ctl name="IN1L Digital Volume" value="128" /> - </path> - - <path name="back-mic"> - <ctl name="Sub Mic Switch" value="1" /> - <ctl name="LHPF2 Input 1" value="IN2L" /> - <ctl name="IN2L Volume" value="17" /> - <ctl name="LHPF2 Input 1 Volume" value="32" /> - <ctl name="IN2L Digital Volume" value="128" /> - </path> - - <path name="third-mic"> - <ctl name="3rd Mic Switch" value="1" /> - <ctl name="LHPF1 Input 1" value="IN2R" /> - <ctl name="IN2R Volume" value="20" /> - <ctl name="LHPF1 Input 1 Volume" value="32" /> - <ctl name="IN2R Digital Volume" value="128" /> - </path> - - <path name="headset-in"> - <ctl name="Headset Mic Switch" value="1" /> - <ctl name="HPOUT1L Input 3" value="None" /> - <ctl name="HPOUT1R Input 3" value="None" /> - <ctl name="LHPF1 Input 1" value="IN1R" /> - <ctl name="IN1R Volume" value="30" /> - <ctl name="IN1R Digital Volume" value="128" /> - </path> - - <path name="sco-in"> - <ctl name="AIF2TX1 Input 2" value="AIF3RX1" /> - <ctl name="AIF2TX2 Input 2" value="AIF3RX2" /> - <ctl name="ASRC2L Input" value="AIF3RX1" /> - <ctl name="ASRC2R Input" value="AIF3RX2" /> - <ctl name="AIF2TX1 Input 1" value="None" /> - <ctl name="AIF2TX2 Input 1" value="None" /> - </path> - - <!-- Paths used by HAL --> - - <!-- Playback paths --> - <path name="voice-speaker"> - <path name="speaker" /> - <ctl name="Speaker Digital Volume" value="144" /> - <ctl name="AIF2 Mode" value="Slave" /> - <ctl name="SPKOUTL Input 3" value="ASRC2L" /> - </path> - - <path name="voice-earpiece"> - <path name="earpiece" /> - <ctl name="EPOUT Digital Volume" value="128" /> - <ctl name="AIF2 Mode" value="Slave" /> - <ctl name="EPOUT Input 3" value="ASRC2L" /> - </path> - - <path name="voice-headphones"> - <path name="headphones" /> - <ctl name="Noise Gate Switch" value="0" /> - <ctl name="HPOUT1 Digital Volume" value="108" /> - <ctl name="AIF2 Mode" value="Slave" /> - <ctl name="HPOUT1L Input 2" value="ASRC2L" /> - <ctl name="HPOUT1R Input 2" value="ASRC2R" /> - </path> - - <path name="voice-speaker-wb"> - <path name="speaker" /> - <ctl name="Speaker Digital Volume" value="144" /> - <ctl name="SPKOUTL Input 1 Volume" value="10" /> - <ctl name="SPKOUTL Input 2 Volume" value="10" /> - <ctl name="SPKOUTL Input 3 Volume" value="32" /> - <ctl name="SPKOUTL Input 4 Volume" value="32" /> - <ctl name="AIF2 Mode" value="Slave" /> - <ctl name="SPKOUTL Input 3" value="ASRC2L" /> - </path> - - <path name="voice-earpiece-wb"> - <path name="earpiece" /> - <ctl name="EPOUT Digital Volume" value="128" /> - <ctl name="EPOUT Input 1 Volume" value="32" /> - <ctl name="EPOUT Input 2 Volume" value="32" /> - <ctl name="EPOUT Input 3 Volume" value="32" /> - <ctl name="EPOUT Input 4 Volume" value="32" /> - <ctl name="AIF2 Mode" value="Slave" /> - <ctl name="EPOUT Input 3" value="ASRC2L" /> - </path> - - <path name="voice-headphones-wb"> - <path name="headphones" /> - <ctl name="Noise Gate Switch" value="0" /> - <ctl name="HPOUT1 Digital Volume" value="108" /> - <ctl name="HPOUT1L Input 1 Volume" value="32" /> - <ctl name="HPOUT1R Input 1 Volume" value="32" /> - <ctl name="HPOUT1L Input 2 Volume" value="32" /> - <ctl name="HPOUT1R Input 2 Volume" value="32" /> - <ctl name="AIF2 Mode" value="Slave" /> - <ctl name="HPOUT1L Input 2" value="ASRC2L" /> - <ctl name="HPOUT1R Input 2" value="ASRC2R" /> - </path> - - <path name="media-speaker"> - <path name="speaker" /> - <path name="speaker-volume" /> - <ctl name="AIF2 Mode" value="Slave" /> - <ctl name="SPKOUTL Input 3" value="ASRC2L" /> - </path> - - <path name="media-earpiece"> - <path name="earpiece" /> - <ctl name="AIF2 Mode" value="Slave" /> - <ctl name="EPOUT Input 3" value="ASRC2L" /> - </path> - - <path name="media-headphones"> - <path name="headphones" /> - </path> - - <path name="voice-rec-speaker"> - <path name="speaker" /> - <path name="speaker-volume" /> - </path> - - <path name="voice-rec-headphones"> - <path name="headphones" /> - </path> - - <path name="communication-speaker"> - <path name="speaker" /> - </path> - - <path name="communication-earpiece"> - <path name="earpiece" /> - </path> - - <path name="communication-headphones"> - <path name="headphones" /> - </path> - - <path name="speaker-and-headphones"> - <path name="speaker" /> - <path name="headphones" /> - </path> - - <path name="bt-sco-headset"> - <path name="sco-out" /> - <ctl name="AIF2 Mode" value="Slave" /> - </path> - - <path name="bt-sco-headset-wb"> - <path name="sco-out" /> - <ctl name="AIF2 Mode" value="Slave" /> - </path> - - <!-- Capture paths --> - - <path name="voice-main-mic"> - <path name="channel-stereo" /> - <path name="aif2-stereo-mic" /> - <path name="builtin-mic" /> - <path name="back-mic" /> - <ctl name="IN1L Volume" value="25" /> - <ctl name="IN2L Volume" value="25" /> - </path> - - <path name="voice-main-mic-wb"> - <path name="channel-stereo" /> - <path name="aif2-stereo-mic" /> - <path name="builtin-mic" /> - <path name="back-mic" /> - <ctl name="IN1L Volume" value="25" /> - <ctl name="IN2L Volume" value="25" /> - </path> - - <path name="voice-speaker-main-mic"> - <path name="channel-stereo" /> - <path name="aif2-stereo-mic" /> - <path name="back-mic" /> - <path name="third-mic" /> - <ctl name="IN2L Volume" value="23" /> - <ctl name="IN2R Volume" value="23" /> - </path> - - <path name="voice-headset-mic"> - <path name="channel-left" /> - <path name="aif2-stereo-mic" /> - <path name="headset-in" /> - </path> - - <path name="voice-headset-mic-wb"> - <path name="channel-left" /> - <path name="aif2-stereo-mic" /> - <path name="headset-in" /> - </path> - - <path name="media-main-mic"> - <path name="channel-stereo" /> - <path name="aif2-stereo-mic" /> - <path name="builtin-mic" /> - <path name="back-mic" /> - </path> - - <path name="media-second-mic"> - <path name="channel-right" /> - <path name="aif2-stereo-mic" /> - <path name="back-mic" /> - </path> - - <path name="media-headset-mic"> - <path name="channel-left" /> - <path name="aif2-stereo-mic" /> - <path name="headset-in" /> - </path> - - <path name="voice-rec-main-mic"> - <path name="channel-left" /> - <path name="aif2-stereo-mic" /> - <path name="builtin-mic" /> - </path> - - <path name="communication-main-mic"> - <path name="channel-left" /> - <path name="aif2-stereo-mic" /> - <path name="builtin-mic" /> - </path> - - <path name="bt-sco-mic"> - <path name="channel-none" /> - <path name="sco-in" /> - </path> - - <path name="voice-rec-headset-mic"> - <path name="channel-left" /> - <path name="aif2-stereo-mic" /> - <path name="headset-in" /> - </path> - - <path name="communication-headset-mic"> - <path name="channel-left" /> - <path name="aif2-stereo-mic" /> - <path name="headset-in" /> - </path> - - <path name="none"> - <!-- Empty path --> - </path> - -</mixer>
\ No newline at end of file + <!-- Initial mixer settings --> + <!-- Noise gate control --> + <ctl name="Noise Gate Switch" value="0"/> + <ctl name="HPOUT1L NG HPOUT1L Switch" value="0"/> + <ctl name="HPOUT1R NG HPOUT1R Switch" value="0"/> + <ctl name="HPOUT2L NG HPOUT2L Switch" value="0"/> + <ctl name="HPOUT2R NG HPOUT2R Switch" value="0"/> + <ctl name="EPOUT NG EPOUT Switch" value="0"/> + <ctl name="SPKOUTL NG SPKOUTL Switch" value="0"/> + <ctl name="SPKOUTR NG SPKOUTR Switch" value="0"/> + <ctl name="SPKDAT1L NG SPKDAT1L Switch" value="0"/> + <ctl name="SPKDAT1R NG SPKDAT1R Switch" value="0"/> + <ctl name="Noise Gate Threshold Volume" value="3"/> + + <!-- Analog output AMP --> + <!-- Speaker --> + <ctl name="SPKOUTL Input 1" value="AIF1RX1"/> + <ctl name="SPKOUTR Input 1" value="AIF1RX2"/> + <ctl name="SPKOUTL Input 2" value="None"/> + <ctl name="SPKOUTR Input 3" value="None"/> + <ctl name="Speaker Digital Switch" value="1"/> + + <!-- Headphones/Headset --> + <ctl name="HPOUT1L Input 1" value="AIF1RX1"/> + <ctl name="HPOUT1R Input 1" value="AIF1RX2"/> + <ctl name="HPOUT1 Digital Switch" value="1"/> + <!-- Earpiece(Mono) --> + <ctl name="EPOUT Input 1" value="AIF1RX1"/> + <ctl name="EPOUT Input 2" value="AIF1RX2"/> + <ctl name="EPOUT Digital Switch" value="1"/> + <!-- LineOut(stereo) --> + <ctl name="HPOUT2L Input 1" value="AIF1RX1"/> + <ctl name="HPOUT2R Input 1" value="AIF1RX2"/> + <ctl name="OUT2 Digital Switch" value="1"/> + <!-- BT <-AP(use input 1) --> + <!-- ASRC2(RX domain) --> + <ctl name="ASRC2L Input" value="AIF2RX1"/> + <ctl name="ASRC2R Input" value="AIF2RX2"/> + <!-- CP->BT --> + <ctl name="AIF3TX1 Input 2" value="AIF2RX1"/> + <ctl name="AIF3TX2 Input 2" value="AIF2RX2"/> + <!-- Route all mics via LHPF1 --> + <!-- need to move modifier field --> + <ctl name="LHPF1 Mode" value="High-pass"/> + <ctl name="LHPF2 Mode" value="High-pass"/> + <!-- BT mic->CP --> + <ctl name="AIF2TX1 Input 2" value="AIF3RX1"/> + <ctl name="AIF2TX2 Input 2" value="AIF3RX2"/> + <!-- Stereo recording from mics --> + <!-- need to move channeltype --> + <!-- Gain for main and headset mics --> + <ctl name="IN1L Volume" value="30"/> + <ctl name="IN1R Volume" value="30"/> + <!-- Gain for sub and 3rd mic --> + <ctl name="IN2L Volume" value="30"/> + <ctl name="IN2R Volume" value="30"/> + <!-- Mics to AIF2TX --> + <ctl name="ASRC1L Input" value="LHPF1"/> + <ctl name="ASRC1R Input" value="LHPF2"/> + <ctl name="AIF2TX1 Input 1" value="ASRC1L"/> + <ctl name="AIF2TX2 Input 1" value="ASRC1R"/> + <!-- BT<-CP(use input 2) --> + <ctl name="AIF1TX1 Input 2" value="ASRC2L"/> + <ctl name="AIF1TX2 Input 2" value="ASRC2R"/> + <!-- LHPF1 & 2 filter --> + <ctl name="LHPF1 COEFF FILTER" value="64Hz"/> + <ctl name="LHPF2 COEFF FILTER" value="64Hz"/> + <!-- LHPF1 & 2 coefficients --> + <ctl name="LHPF1 Coefficients" value="0xf0 0x3a"/> + <ctl name="LHPF2 Coefficients" value="0xf0 0x3a"/> + + <!-- common digital volume --> + <!-- don't change this common volume --> + <ctl name="AIF1TX1 Input 1 Volume" value="32"/> + <ctl name="AIF1TX1 Input 2 Volume" value="32"/> + <ctl name="AIF1TX1 Input 3 Volume" value="32"/> + <ctl name="AIF1TX1 Input 4 Volume" value="32"/> + <ctl name="AIF1TX2 Input 1 Volume" value="32"/> + <ctl name="AIF1TX2 Input 2 Volume" value="32"/> + <ctl name="AIF1TX2 Input 3 Volume" value="32"/> + <ctl name="AIF1TX2 Input 4 Volume" value="32"/> + <ctl name="AIF1TX3 Input 1 Volume" value="32"/> + <ctl name="AIF1TX3 Input 2 Volume" value="32"/> + <ctl name="AIF1TX3 Input 3 Volume" value="32"/> + <ctl name="AIF1TX3 Input 4 Volume" value="32"/> + <ctl name="AIF1TX4 Input 1 Volume" value="32"/> + <ctl name="AIF1TX4 Input 2 Volume" value="32"/> + <ctl name="AIF1TX4 Input 3 Volume" value="32"/> + <ctl name="AIF1TX4 Input 4 Volume" value="32"/> + <ctl name="AIF1TX5 Input 1 Volume" value="32"/> + <ctl name="AIF1TX5 Input 2 Volume" value="32"/> + <ctl name="AIF1TX5 Input 3 Volume" value="32"/> + <ctl name="AIF1TX5 Input 4 Volume" value="32"/> + <ctl name="AIF1TX6 Input 1 Volume" value="32"/> + <ctl name="AIF1TX6 Input 2 Volume" value="32"/> + <ctl name="AIF1TX6 Input 3 Volume" value="32"/> + <ctl name="AIF1TX6 Input 4 Volume" value="32"/> + <ctl name="AIF1TX7 Input 1 Volume" value="32"/> + <ctl name="AIF1TX7 Input 2 Volume" value="32"/> + <ctl name="AIF1TX7 Input 3 Volume" value="32"/> + <ctl name="AIF1TX7 Input 4 Volume" value="32"/> + <ctl name="AIF1TX8 Input 1 Volume" value="32"/> + <ctl name="AIF1TX8 Input 2 Volume" value="32"/> + <ctl name="AIF1TX8 Input 3 Volume" value="32"/> + <ctl name="AIF1TX8 Input 4 Volume" value="32"/> + <ctl name="AIF2TX1 Input 1 Volume" value="32"/> + <ctl name="AIF2TX1 Input 2 Volume" value="32"/> + <ctl name="AIF2TX1 Input 3 Volume" value="32"/> + <ctl name="AIF2TX1 Input 4 Volume" value="32"/> + <ctl name="AIF2TX2 Input 1 Volume" value="32"/> + <ctl name="AIF2TX2 Input 2 Volume" value="32"/> + <ctl name="AIF2TX2 Input 3 Volume" value="32"/> + <ctl name="AIF2TX2 Input 4 Volume" value="32"/> + <ctl name="AIF3TX1 Input 1 Volume" value="32"/> + <ctl name="AIF3TX1 Input 2 Volume" value="32"/> + <ctl name="AIF3TX1 Input 3 Volume" value="32"/> + <ctl name="AIF3TX1 Input 4 Volume" value="32"/> + <ctl name="AIF3TX2 Input 1 Volume" value="32"/> + <ctl name="AIF3TX2 Input 2 Volume" value="32"/> + <ctl name="AIF3TX2 Input 3 Volume" value="32"/> + <ctl name="AIF3TX2 Input 4 Volume" value="32"/> + <ctl name="HPOUT1L Input 3 Volume" value="32"/> + <ctl name="HPOUT1R Input 3 Volume" value="32"/> + <ctl name="EPOUT Input 3 Volume" value="32"/> + <ctl name="EPOUT Input 4 Volume" value="32"/> + <ctl name="SPKOUTL Input 1 Volume" value="32"/> + <ctl name="SPKOUTR Input 1 Volume" value="32"/> + <ctl name="SPKOUTL Input 3 Volume" value="32"/> + <ctl name="EPOUT Digital Volume" value="128"/> + <ctl name="Speaker Digital Volume" value="122"/> + <ctl name="Input Ramp Up" value="8ms/6dB"/> + <ctl name="RCV Switch" value="0"/> + <ctl name="SPK Switch" value="0"/> + <ctl name="HP Switch" value="0"/> + <ctl name="VPS Switch" value="0"/> + <ctl name="HDMI Switch" value="0"/> + <ctl name="Main Mic Switch" value="0"/> + <ctl name="Sub Mic Switch" value="0"/> + <ctl name="3rd Mic Switch" value="0"/> + <ctl name="Headset Mic Switch" value="0"/> + <ctl name="AIF2 Mode" value="Master"/> + + <!-- Channels --> + <path name="channel-left"> + <ctl name="AIF1TX1 Input 1" value="LHPF1"/> + <ctl name="AIF1TX2 Input 1" value="LHPF1"/> + <ctl name="ASRC1L Input" value="LHPF1"/> + <ctl name="ASRC1R Input" value="LHPF1"/> + </path> + + <path name="channel-right"> + <ctl name="AIF1TX1 Input 1" value="LHPF2"/> + <ctl name="AIF1TX2 Input 1" value="LHPF2"/> + <ctl name="ASRC1L Input" value="LHPF2"/> + <ctl name="ASRC1R Input" value="LHPF2"/> + </path> + + <path name="channel-stereo"> + <ctl name="AIF1TX1 Input 1" value="LHPF1"/> + <ctl name="AIF1TX2 Input 1" value="LHPF2"/> + <ctl name="ASRC1L Input" value="LHPF1"/> + <ctl name="ASRC1R Input" value="LHPF2"/> + </path> + + <path name="channel-none"> + <ctl name="AIF3TX1 Input 1" value="ASRC1L"/> + <ctl name="AIF3TX2 Input 1" value="ASRC1R"/> + <ctl name="ASRC1L Input" value="AIF1RX1"/> + <ctl name="ASRC1R Input" value="AIF1RX2"/> + </path> + + <!-- Paths that roughly correspond to devices --> + <path name="speaker"> + <ctl name="SPK Switch" value="1"/> + </path> + + <path name="headphones"> + <ctl name="HP Switch" value="1"/> + </path> + + <path name="earpiece"> + <ctl name="RCV Switch" value="1"/> + </path> + + <path name="builtin-mic"> + <ctl name="Main Mic Switch" value="1"/> + <ctl name="LHPF1 Input 1" value="IN1L"/> + <ctl name="IN1L Volume" value="25"/> + <ctl name="LHPF1 Input 1 Volume" value="32"/> + <ctl name="IN1L Digital Volume" value="128"/> + </path> + + <path name="back-mic"> + <ctl name="Sub Mic Switch" value="1"/> + <ctl name="LHPF2 Input 1" value="IN2L"/> + <ctl name="IN2L Volume" value="28"/> + <ctl name="LHPF2 Input 1 Volume" value="32"/> + <ctl name="IN2L Digital Volume" value="128"/> + </path> + + <path name="third-mic"> + <ctl name="3rd Mic Switch" value="1"/> + <ctl name="LHPF2 Input 1" value="IN2R"/> + <ctl name="IN1L Volume" value="31"/> + <ctl name="LHPF1 Input 1 Volume" value="32"/> + <ctl name="IN1L Digital Volume" value="128"/> + </path> + + <path name="headset-in"> + <ctl name="Headset Mic Switch" value="1"/> + <ctl name="LHPF1 Input 1" value="IN1R"/> + <ctl name="IN1R Volume" value="18"/> + <ctl name="IN1R Digital Volume" value="128"/> + </path> + + <!--Setups--> + <path name="media-setup"> + <ctl name="HPOUT1L Input 3 Volume" value="6"/> + <ctl name="HPOUT1R Input 3 Volume" value="6"/> + <ctl name="EPOUT Input 1 Volume" value="28"/> + <ctl name="EPOUT Input 2 Volume" value="28"/> + <ctl name="EPOUT Input 3 Volume" value="30"/> + <ctl name="EPOUT Input 4 Volume" value="30"/> + <ctl name="SPKOUTL Input 1 Volume" value="31"/> + <ctl name="SPKOUTR Input 1 Volume" value="31"/> + <ctl name="SPKOUTL Input 3 Volume" value="30"/> + <ctl name="HPOUT1 Digital Volume" value="115"/> + <ctl name="EPOUT Digital Volume" value="122"/> + <ctl name="Speaker Digital Volume" value="121"/> + <ctl name="EPOUT DRE Switch" value="1"/> + </path> + + <path name="voice-setup"> + <ctl name="EPOUT Input 1 Volume" value="32"/> + <ctl name="EPOUT Input 2 Volume" value="32"/> + <ctl name="EPOUT Input 3 Volume" value="30"/> + <ctl name="EPOUT Input 4 Volume" value="30"/> + <ctl name="SPKOUTR Input 3" value="ASRC2R"/> + <ctl name="SPKOUTL Input 3" value="ASRC2L"/> + <ctl name="EPOUT Input 3" value="ASRC2L"/> + <ctl name="HPOUT1R Input 2" value="ASRC2R"/> + <ctl name="HPOUT1L Input 2" value="ASRC2L"/> + <ctl name="AIF2 Mode" value="Slave"/> + <ctl name="HPOUT1 DRE Switch" value="0"/> + <ctl name="EPOUT DRE Switch" value="0"/> + <ctl name="HPOUT1 Digital Volume" value="128"/> + </path> + + <path name="headphones-setup"> + <ctl name="HPOUT1L Input 3 Volume" value="6"/> + <ctl name="HPOUT1R Input 3 Volume" value="6"/> + <ctl name="SPKOUTL Input 1 Volume" value="30"/> + <ctl name="SPKOUTR Input 1 Volume" value="31"/> + <ctl name="SPKOUTL Input 3 Volume" value="30"/> + <ctl name="EPOUT Digital Volume" value="108"/> + </path> + + <!-- Paths used by HAL --> + <!-- Playback paths --> + <path name="voice-earpiece"> + <path name="earpiece"/> + </path> + + <path name="voice-earpiece-wb"> + <path name="voice-setup"/> + <path name="earpiece"/> + <ctl name="SPKOUTL Input 1 Volume" value="31"/> + <ctl name="SPKOUTR Input 1 Volume" value="30"/> + </path> + + <path name="voice-speaker"> + <path name="speaker"/> + </path> + + <path name="voice-speaker-wb"> + <path name="voice-setup"/> + <path name="speaker"/> + <ctl name="SPKOUTL Input 3 Volume" value="30"/> + <ctl name="Speaker Digital Volume" value="128"/> + </path> + + <path name="voice-headphones"> + <path name="headphones"/> + <ctl name="Noise Gate Switch" value="0"/> + </path> + + <path name="voice-headphones-wb"> + <path name="voice-setup"/> + <path name="headphones-setup"/> + <path name="headphones"/> + <ctl name="Noise Gate Switch" value="0"/> + <ctl name="LHPF2 Input 1" value="IN2L"/> + <ctl name="IN2L Volume" value="28"/> + <ctl name="HPOUT1 Digital Volume" value="116"/> + </path> + + <path name="media-speaker"> + <path name="speaker"/> + <path name="media-setup"/> + </path> + + <path name="media-earpiece"> + <path name="earpiece"/> + <path name="media-setup"/> + </path> + + <path name="media-headphones"> + <path name="headphones-setup"/> + <path name="headphones"/> + </path> + + <path name="speaker-and-headphones"> + <path name="speaker"/> + <path name="headphones"/> + </path> + + + <!-- Capture paths --> + <path name="voice-speaker-mic"> + <path name="back-mic"/> + <path name="channel-right"/> + <ctl name="IN1L Volume" value="31"/> + <ctl name="IN1R Volume" value="18"/> + <ctl name="LHPF1 Input 1" value="IN1L"/> + </path> + + <path name="voice-speaker-mic-wb"> + <path name="back-mic"/> + <path name="channel-right"/> + <ctl name="IN1L Volume" value="30"/> + <ctl name="IN1R Volume" value="30"/> + <ctl name="IN2L Volume" value="15"/> + <ctl name="LHPF1 Input 1" value="IN1L"/> + </path> + + <path name="voice-earpiece-mic"> + <path name="builtin-mic"/> + <path name="channel-left"/> + <ctl name="IN2L Volume" value="28"/> + <ctl name="IN1R Volume" value="18"/> + <ctl name="LHPF2 Input 1" value="IN2L"/> + </path> + + <path name="voice-earpiece-mic-wb"> + <path name="builtin-mic"/> + <path name="channel-left"/> + <ctl name="IN1L Volume" value="30"/> + <ctl name="IN2L Volume" value="30"/> + <ctl name="IN1R Volume" value="30"/> + </path> + + <path name="voice-headset-mic"> + <path name="headset-in"/> + <path name="channel-left"/> + </path> + + <path name="voice-headset-mic-wb"> + <path name="headset-in"/> + <path name="channel-left"/> + <ctl name="IN1L Volume" value="25"/> + </path> + + <path name="media-speaker-mic"> + <path name="back-mic"/> + <path name="channel-right"/> + <ctl name="IN1L Volume" value="31"/> + <ctl name="IN1R Volume" value="18"/> + <ctl name="LHPF1 Input 1" value="IN1L"/> + </path> + + <path name="media-earpiece-mic"> + <path name="builtin-mic"/> + <path name="channel-left"/> + <ctl name="IN2L Volume" value="28"/> + <ctl name="IN1R Volume" value="18"/> + <ctl name="LHPF2 Input 1" value="IN2L"/> + </path> + + <path name="media-headset-mic"> + <path name="channel-left"/> + <path name="headset-in"/> + </path> + + <path name="none"> + <!-- Empty path --> + </path> + +</mixer> diff --git a/audio/routing.h b/audio/routing.h index 0307e1c..fae05b5 100644 --- a/audio/routing.h +++ b/audio/routing.h @@ -59,42 +59,42 @@ struct route_config { const struct route_config voice_speaker = { "voice-speaker", - "voice-speaker-main-mic", + "voice-speaker-mic", { ES325_PRESET_VOIP_DESKTOP, ES325_PRESET_VOIP_DESKTOP } }; const struct route_config voice_speaker_wb = { "voice-speaker-wb", - "voice-speaker-main-mic", + "voice-speaker-mic-wb", { ES325_PRESET_VOIP_DESKTOP, ES325_PRESET_VOIP_DESKTOP } }; const struct route_config voice_earpiece = { "voice-earpiece", - "voice-main-mic", + "voice-earpiece-mic", { ES325_PRESET_VOIP_HANDHELD, ES325_PRESET_VOIP_HANDHELD } }; const struct route_config voice_earpiece_wb = { "voice-earpiece-wb", - "voice-main-mic-wb", + "voice-earpiece-mic-wb", { ES325_PRESET_VOIP_HANDHELD, ES325_PRESET_VOIP_HANDHELD } }; const struct route_config voice_headphones = { "voice-headphones", - "voice-main-mic", + "voice-earpiece-mic", { ES325_PRESET_VOIP_HEADPHONES, ES325_PRESET_VOIP_HEADPHONES } }; const struct route_config voice_headphones_wb = { "voice-headphones-wb", - "voice-main-mic-wb", + "voice-earpiece-mic-wb", { ES325_PRESET_VOIP_HEADPHONES, ES325_PRESET_VOIP_HEADPHONES } }; @@ -115,7 +115,7 @@ const struct route_config voice_headset_wb = { const struct route_config media_speaker = { "media-speaker", - "media-main-mic", + "media-speaker-mic", { ES325_PRESET_ASRA_HANDHELD, ES325_PRESET_ASRA_DESKTOP } }; @@ -129,14 +129,14 @@ const struct route_config bluetooth_sco_wb = { const struct route_config media_earpiece = { "media-earpiece", - "media-main-mic", + "media-earpiece-mic", { ES325_PRESET_VOIP_HANDHELD, ES325_PRESET_VOIP_HANDHELD } }; const struct route_config media_headphones = { "media-headphones", - "media-main-mic", + "media-earpiece-mic", { ES325_PRESET_VOIP_HEADPHONES, ES325_PRESET_VOIP_HEADPHONES } }; @@ -150,70 +150,70 @@ const struct route_config media_headset = { const struct route_config camcorder_speaker = { "media-speaker", - "media-main-mic", + "media-speaker-mic", { ES325_PRESET_CAMCORDER, ES325_PRESET_CAMCORDER } }; const struct route_config camcorder_headphones = { "media-headphones", - "media-second-mic", + "media-earpiece-mic", { ES325_PRESET_CAMCORDER, ES325_PRESET_CAMCORDER } }; const struct route_config voice_rec_speaker = { - "voice-rec-speaker", - "voice-rec-main-mic", + "media-speaker", + "media-speaker-mic", { ES325_PRESET_ASRA_HANDHELD, ES325_PRESET_ASRA_DESKTOP } }; const struct route_config voice_rec_headphones = { - "voice-rec-headphones", - "voice-rec-main-mic", + "media-headphones", + "media-earpiece-mic", { ES325_PRESET_ASRA_HANDHELD, ES325_PRESET_ASRA_DESKTOP } }; const struct route_config voice_rec_headset = { - "voice-rec-headphones", - "voice-rec-headset-mic", + "media-headphones", + "media-headset-mic", { ES325_PRESET_ASRA_HEADSET, ES325_PRESET_ASRA_HEADSET } }; const struct route_config communication_speaker = { - "communication-speaker", - "communication-main-mic", + "voice-speaker", + "voice-speaker-mic", { ES325_PRESET_VOIP_DESKTOP, ES325_PRESET_VOIP_DESKTOP } }; const struct route_config communication_earpiece = { - "communication-earpiece", - "communication-main-mic", + "voice-earpiece", + "voice-earpiece-mic", { ES325_PRESET_VOIP_HANDHELD, ES325_PRESET_VOIP_HANDHELD } }; const struct route_config communication_headphones = { - "communication-headphones", - "communication-main-mic", + "voice-headphones", + "voice-earpiece-mic", { ES325_PRESET_VOIP_HEADPHONES, ES325_PRESET_VOIP_HP_DESKTOP} }; const struct route_config communication_headset = { - "communication-headphones", - "communication-headset-mic", + "voice-headphones", + "voice-headset-mic", { ES325_PRESET_VOIP_HEADSET, ES325_PRESET_VOIP_HEADSET } }; const struct route_config speaker_and_headphones = { "speaker-and-headphones", - "main-mic", + "media-speaker-mic", { ES325_PRESET_CURRENT, ES325_PRESET_CURRENT } }; |
