hal: Add support for EC in regular audio recording

- Ensure EC reference is set when the source is MIC and fluence is
  enabled in the regular audio recording path.

Change-Id: I6648f41fcc578ded13e4fecdb7ef35bc6b0579d4
CRs-Fixed: 628085
hal: Add the missing sound device of voice_speaker

8x10 skuab uses lineout path instead of speaker. Add the missing
voice_speaker device in the array so that hal can select the
correct path for voice speaker in 8x10 skuab.

CRs-fixed: 621807
Change-Id: I5509184e368121cb1825392fce3860af20a9fa44
hal: update playback channel mapping for USB headset

- Set proper USB headset channel mapping before
  starting playback.
- Update audio_extn_set_afe_proxy_channel_mixer
  to handle channel mapping based on channel count.

CRs-Fixed: 620828

Change-Id: I9660e3088bc747c30891b0aa7ec8d22096dd0fa2
hal: Updated APIs to support Listen Multisession

Update open_listen_session API to add listen_open_params.

Change-Id: I203ef38676332a3054933750d200f1df36f0d097
8960: Fix proxy channel count setup

I9660e3088bc747c30891b0aa7ec8d22096dd0fa2 changed the method, but
applied the changes only to 8974. fixit

Change-Id: I3cd36eb80732ec9f6f8274153c4ac7cd799c3aec
Merge pull request #1 from CyanogenMod/cm-11.0

Cm 11.0