hal: allow msm8610 to use same functions as msm8226/msm8974

Change-Id: I0e161e28fe798884ed42bb13e23100ab0b66a062
hal: speaker protection is msm8974 only

Change-Id: If07c3b1ad902de283707da673c5c305451e4ee10
post_proc: Fix bassboost/virtualizer not disabled on speaker

When output is unintended device, there's no need to query enable_flag
before setting effect to disabled state. There's possiblity that
enable_flag is 0 as initialized value, which hinder effects from being
disabled.

Change-Id: Ib90c0ad0982dc8274129bb1bed7861e11670fbdb
hal: miscellaneous fixes

Fixes for the following issues reported by KW

21725, 21726, 21727, 21737, 21738, 21739, 21740, 21750,
21751, 21752, 25317, 30602, 32620, 36778, 41817, 41819,
50942, 54468, 54470, 54479, 55569, 54481, 55570, 55571,
58485, 85112, 85122, 85123

Change-Id: I9abef07db7ccdc19789a201eb268a97e1b360cad
hal: Fix no Tx issue during multi party HFP calls

- When an incoming MT HFP call is accepted during an ongoing
  MO HFP call, the MO call goes to held state. Later, if this held
  call is rejected, Tx is not heard at the far end of the incoming
  call from that moment.
- When the held call is rejected, the input device gets disabled due
  to which Tx samples are not captured.
- Fix the issue by ensuring that the input device is not set to none when
  HFP is active.

CRs-Fixed: 656928
Change-Id: Ie3f0886c0412bfdb3e450c54e9f4b651e992f84e
hal: Fix arguments passed to set_echo_reference

* set_echo_reference function takes (struct audio_device *, bool) but is
  being passed (struct mixer *, int) instead.

Change-Id: I3b4fab2b2d266eebac0d5bab80f7a377d442d8fa
hal: Fix digital USB headset combo device

 * Digital USB output was not handled in this case. Add it.

Change-Id: I8e984a2cf545dabdc6dc538b75e8ca7221fb6688
Revert "hal: add custom platform abstraction"

* Handle this in a more extensible way with upcoming platform info
  extension code.

This reverts commit 36a435d08826160ddbf9e0759711f7badae42566.

Change-Id: I9683e27b70f591bff6c5131523ef7c3e51ee6513
Revert "hal: Add speaker backend case handling"

* Handle this in a more extensible way with upcoming platform info
  extension code.

This reverts commit 957c3d94bf34da538b3cd296e17b94a9206fd8d1.

Change-Id: Ie0b86bfd8decd92bda76a2706e5ebd7dcedae89b
audio: extend platform parser

Extend platform parser with support for additional sections.
Supported sections now include acdb ids, pcm device ids and backend names.

Change-Id: Idfbc8a8bb490606686436c107db5b0c7d636ccbe
audio: Extend platform parser to allow device name aliasing

* Supported sections now include device names
* This allows for aliasing device names to a custom name

Change-Id: I880e90a7e887f020517d89ba276199c700c0eeae
hal: Fix voice call recording for msm8974

Voice call recording uses audio-record usecase which causes recording
only devices microphone. Use the correct usecase for call recording.

Change-Id: Iaa9fc30534263c6de9b4b66fa5ffa9a1e2cc8fd4
Merge pull request #9 from CyanogenMod/cm-11.0

#9