alsa_sound: Maintain separate mute states for each call type.

   Mute is not proapagated to CS call session during
   SRVCC handover.

   This is due to mute state is not updated to CS call
   session when SRVCC handover happens.

   Fix is to maintain different mute states to different
   call types, so that mute state will be updated on
   each call type independently.

   CRs-Fixed: 516986

Change-Id: I88a589ce74bba3e4018e0455f0008b5f1cb002e8
alsa_sound : send voc-cal data for play voip use case

- Volume not being changed when playing voicemail
  during MODE_IN_CALL
- The calibration data was not being sent to the DSP
  for the play voip use case
- Setting the current modifier properly
  Permitting sending of calibration data despite
  no change in rx and tx devices

Change-Id: Ice9599941d3d6c115daa63c44bf4a1daa8f50ba3
CRs-Fixed: 508126
Merge "   alsa_sound: Maintain separate mute states for each call type."
Merge "alsa_sound : send voc-cal data for play voip use case"
alsa_sound: primary desc check for sonification

- Audio glitches on alarm expiry if alarm starts
  on screen lock/standby mode

- On alarm expiry alarm tone will start play on combo device
  &screen unlock tone try to play on headset which results
  multiple device switch, as a result audio glitches are audible

- If sonfication strategy is used by primary desc , we will
  treat all non music streams with sonfication stragey which
  will avoid device switch

CRs-Fixed: 514467

Change-Id: I922210ff5d8538dc752a2c3a20676efb05809c83
audio: fix for volume burst during FM device switch

- Issue: Volume burst is heard during device switch
  (headphone and speaker) for FM playback
- Root cause: delayMs passed to CheckAndSetVolume is
  not applied for FM playback
- Fix: Double delayMs and apply FM volume with this delay

CRs-Fixed: 526553

Conflicts:

	alsa_sound/AudioPolicyManagerALSA.cpp

Change-Id: Ib7c7bd59ed584f85ea79a7606c635d60dffa3471
Merge "audio: fix for volume burst during FM device switch"
Merge "alsa_sound: primary desc check for sonification"
alsa_sound:  Fix to avoid crash while erasing item from mDeviceList

-In AudioHardwareALSA's destructor,while erasing item from mDeviceList
is leading to crash in current implementation, if List containing
more than one item.
-This is happening because of Invalid iterator value after deleting
current item from List, then using same iterator for next operation.
-It can avoid returning an Iterator item form List's erase function
and then use it for next operation.

Change-Id: I30ba5b5a9904c1d3cad1f470f9fae84d23a90aa5
CRs-Fixed: 517101
(cherry picked from commit 41d7bad968b94bc8ac1d6ea92849b2792604963e)
Merge "alsa_sound:  Fix to avoid crash while erasing item from mDeviceList"
alsa_sound: Fix Echo reference logic

-During Skype call , there is Echo hearing at far end device.
-This is happening because Echo reference is setting after enabling
 the devices, so a wrong EC reference id is sending to DSP.
-Echo reference should be set even before enabling the devices.

Change-Id: Ibd23dd9be11c7b1ae882a633be3d55779bc72c7c
CRs-Fixed: 536541
(cherry picked from commit d0dd74fbaff448194f49057fe3e16c16debc8f02)
Merge "alsa_sound: Fix Echo reference logic"
Merge branch 'jb_2.5' of git://codeaurora.org/platform/hardware/qcom/audio into cm-10.2

Change-Id: If58c40a26d116bbc9379237499682dcb4f700197
alsa_source: Undo the proxy/latency changes

 * This change causes problems on 4.3, revert it all.

Change-Id: I1d703e379fa9949fb4d8d51c59515acf68a97793
  alsa_sound: Fix for voice volume restore after reboot

  - Maximum volume is heard for call after reboot even if it
    was set to minimum during the last call before reboot.

  - During call after reboot, mLastvoiceVolume is getting
    updated improperly and hence proper volume is not
    being applied.

  - Fix is to cache the voice Volume properly.

  CRs-Fixed: 517731

Change-Id: Ia9512afaab94407f04011541db1b49b41cd5707a
audio-caf: snd_use_case_apply_voice_acdb: initialise current_mod[]

Change-Id: I38fd1638e34f38e97e9e48a0ddf51bb31e3b10f8
Add Motorola EMU audio dock support

Motorola EMU audio dock (USB->USB charge/audio Y cable) support
can be enabled by BOARD_USES_MOTOROLA_EMU_AUDIO.

- add EMU Antipop mixer control handling
- add Dock Speaker device use case
- fix one missing QCOM_USBAUDIO_ENABLED ifdef

Change-Id: Ie67339b222252411d3c7c0aaea6493a0ff10fd18
Add HAVE_SAMSUNG_AUDIO check in Alsa

Change-Id: Ibaad5bf6006b4745fe26b85939bb556c0b2177ce
legacy/alsa_sound: Replace STREAM_FM with STREAM_MUSIC.

- FM changes to move back to STREAM_MUSIC instead of STREAM_FM.
- This is done as, STREAM_FM changes from frameworks/base
has been replaced by STREAM_MUSIC.

Change-Id: I674fc148a85f722164aab42f9d4015f7923c13ec
legacy/alsa_sound: Fix for Music and FM volume concurrency.

- Call music volume and FM volume subsequently, as both use
STREAM_MUSIC, and change in one should get effective in other
application.
- Initialize FM volume to zero in Audio HAL. Store FM volume
even if FM is not active.

Change-Id: I29eb30f30a42dd2cac05fb8566e5f0725618df89