Add support for ICS audio blobs

Change-Id: If0cde8860a5cb1fa63a40787bfe001cf18e9be6d
hardware_legacy: allow alternative vibrator implementations

The native vibrator code in libhardware_legacy assumes the vibrator
is always controlled by inputting timers into sysfs (at
/sys/class/timed_output/vibrator/enable). This isn't necessarily true,
there's an upcoming device which has the vibrator controlled by ioctl()
calls.

This patch lets the device configuration specify an alternative
vibrator implementation throught the variable BOARD_HAS_VIBRATOR_IMPLEMENTATION

That variable should point to a sourcefile that implements the vibrator
"int sendit(timeout_ms)" function, like this:

BOARD_HAS_VIBRATOR_IMPLEMENTATION := ../../device/vendor/model/vibrator.c

Change-Id: I78d60480f87ef00a0bab096d7f42e47501def936
Bring up to 4.2.1 for msm8660

Change-Id: I845c700617f1f5bc015d4dc805fcc90f32563d6a
Wimax: Squashed commit of the following:

SQN: WiMAX: initial import of Sequans WiMAX hardware control interface
wimax: LOG* -> ALOG*

Change-Id: I0b9d1cf996ef648b7b89930163b15dc8ab81e1c2
Revert "Bring up to 4.2.1 for msm8660"

This reverts commit ee0b7467b2b0ff47ae5968feda3f7f3306496cc0.
audio_policy: Fix volumes for ICS blob compat

Allow usage of the default audio_policy source, even if the primary
audio HAL is an ICS binary blob

Change-Id: I959a925f458e14380c2e5443b1378c4018d9f084
audio: Add support for QCOM audio devices, formats, and channels

- Add QCOM supported devices, fomats, and input/output
  channels in AudioPolicyManagerBase
- Add QCOM supported devices in AudioSystemLegacy.h

Change-Id: I5e2977a630c2bf9211af62d97ae024c5c57075f9

libhardware_legacy: Add support for DirectTrack

- Add support for DirectOutput in libhardware_legacy
- Add new APIs to AudioStreamOut base class
- Add audio output flags to openOutputStream

Change-Id: I301b3b9b2c2ad08dba75f616008d692e825af96f

audio: add missing QCOM audio devices, formats, and channels

- Add support for FM I/O devices and communication device for VOIP
- Add support for mp2 audio format
- Add support for 6.1 audio channels

Change-Id: I7b3042902c658dc8e5dfa34719fb80d18f3ff4e7

libhardware_legacy: Support LPA Playback

Add support to enable Playback in LPA mode

When Alarm is playing on headset+spkr, if LPA
playback is selected STARTEGY_MEDIA gets selected
and switches device from Combo device to Headset.
- Fix the issue by selecting Combo device only
even incase of LPA when stream ALARM/NOTIFICATION
is active.

Change-Id: Ifde78a744a17ce613eac92b4c3bcf875167aaeb6

Add ifdefs for QCOM enhanced features

Change-Id: I87ce3503ed85458c775d0c8c7fa649d8194e28e3
Merge tag 'android-4.2.2_r1' into jb422

Android 4.2.2 release 1
power: Add DVFS stub

Change-Id: I23837ff88a0a7b23474348b6fe8eee15cfe91e10
wifi: Choose correct nvram file on samsung hardware

Change-Id: I9d428ae61c1ce80d97e6ea513839ed64e8f61440
wifi.c: allow devices to specify driver delay

This is necessary on the Samsung smdk4210 tablets. Without
the delay, it takes roughly 30 seconds to enable wifi.

Change-Id: I6a3419e66958fc72ae60e5294f52124b1180d752
wifi: Add support for AP module args

 * Needed for Samsung's goofy handling of AP mode

Change-Id: I5ec65460b7c9f8ef34170473cf1bdaa36587767b
wifi: fix samsung wifi logic

Change-Id: Ib065c0dffa1265a17f5e4fd6ec0b0ad36bbc7b14
audio policy :Added EVRC and QCELP for 7x30 HAL compilation

Change-Id: I46ac52fa5e04edf1d55302f3868427fa35b378d7
STE_FMRDIO:enable STE_FM radio

Change-Id: I77ff268d37f0359c45600132281d5620c7c2d61d
fmradio: cleanup QCOM_FM_ENABLED/STE_FM defs and ifdef

Change-Id: Ia34dca04e6b9de3509987ad9d88a5fecc3820e2f
qcom-fm: audio: add support for FM feature

-Add set_fm_volume() to set handle fm volume

Change-Id: I2a2c6a60b9855d9360ff8fb90849517e77e5faab

Conflicts:

	audio/AudioPolicyManagerBase.cpp
	include/hardware_legacy/AudioSystemLegacy.h
[AUDIO] When setting a null device for an audio output, force the next routing request.

When a null device is set for an audio ouput, the outputDesc->mDevice is not updated,
thus the routing update is not done next time the device is selected for that output.
To meet the device change conditions, a boolean member mForceRouting has been
introduced to force the routing next time the output is set with a non-null device.

Change-Id: I95c6c3fb85dd6c229737739d111b08fa2f7d826b
Author: Vincent Becker <vincentx.becker@intel.com>
Signed-off-by: Vincent Becker <vincentx.becker@intel.com>
Signed-off-by: Zhi Jin <zhi.jin@intel.com>
Signed-off-by: Shuo Gao <shuo.gao@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
Signed-off-by: Jack Ren <jack.ren@intel.com>
Author-tracking-BZ: 53856
Primary output check for sonification is removed.

- When there are 3 different tracks (Ringtone, Music and Touchtone)
   the device switch happens for touchtones to primary if the primary
   output is active. This can lead to music being played in combo
   due to timing issue.
 - This is mainly because we have a check for, primary output if
   active we return true for SONIFICATION. This will set SONIFICATION
   for touch tones and this device switch will come after music device
   is set.
 - Hence music will start playing as SONIFICATION.
 - We have removed the primar output check for getting device strategy

Change-Id: Ibe2c381a887a49ea8b776fb2148f38b61532d021
CRs-Fixed: 456842
libhardware_legacy: Increase stream mute time

- Increase the stream mute time to avoid audio glitches
  while switching between combo devices.

Change-Id: I8b47e6e8b977b1025310fd2b16b452a6c11005bd
CRs-Fixed: 448577