audio: Add QCOM feature support for frame size

- Add support for QCOM audio formats in audio_stream_frame_size
- Send correct channel count for voice call recording
- add support for VOIP
- reference change  I7a2f5a25c7571b3abf4cedb9d9104681304d1629

Change-Id: Ic1dc22571d4860f143efbc8a24f2933eae3c1de9
(cherry picked from commit 29ee43bc11557970569df2b192fd40fa41683ab2)
(cherry picked from commit ff693eda23e0009b0864e1b31ba1cbf49691c449)
(cherry picked from commit 4c6d213db8940842d0b9ab6b05fcd99116740965)
libhardware: Add APIs to support DirectTrack

 -Add APIs in HAL to support Low Power Audio
  playback and Tunnel Audio playback.

Change-Id: Ic9d595e599c3222e2535745a8f1ebfb018ef75ed
(cherry picked from commit 4af9447d1c37f117463e2855fec845adaa299737)
(cherry picked from commit 6c2165c00805016ad5b4c2af3ac4ebfb49fd9170)
(cherry picked from commit c15cb2d03a371314c922588562a3e8a9f7238c08)
libhardware: Add keys to support FM

Add keys for FM device and FM volume

Change-Id: Ib26df18a72f96bf19d577d99e93296a37f04ed7b
(cherry picked from commit 1dd30a530cf3b595d9877d0d15739b2b1b76889a)
(cherry picked from commit 2599b75a58206332ea00206171dfff078bda20ff)
(cherry picked from commit 0a3f3c974406228d6541a2df6d38b42fdbfd790b)
libhardware: Add MSM string parameters.

- Add MSM specific string parameters for
 VoIP, Fluence, SSR, A2DP and ADSP

Change-Id: I3b0dee240c507c4cad14529e4a79404d6902be7a
(cherry picked from commit 24f52207794e7f2c7ab0cbf8cfd933d2f11adf1e)
(cherry picked from commit 4709458913009c131d6f7a3716c72c3f180eca8e)
(cherry picked from commit 3e57aadd82c38d87522121f41e184cea34cb3653)
hardware: Add an ifdef to disable id match check

When wrapping HAL modules (for example camera wrapping vendor-camera), this
match check prevents vendor-camera to be loaded because its original name
is camera and not vendor-camera.

Change-Id: If79a941b54d83610638041440db907ae593b2e91