init: Properly detect hardware revision

 * get_hardware_name was returning early if the hardware type was set on
   the command line, and not proceeding to parse it from /proc/cpuinfo
 * Fix it so that it always parses ro.revision :)

Change-Id: Ib5d31d536066fc6829db756cb6e5f003a05bf440
init: Add option to disable the initlogo

 * It looks like crap on some hardware due to different framebuffer
   formats. Just disable it if the option is set.

Change-Id: Iad8ca25072fd16ca984050c6605bc1646821bee1
charger: Add support for non-standard charging interfaces

 * Certain devices may have multiple battery devices or broken uevent
   reporting when a power supply is disconnected.
 * Add a new BOARD_BATTERY_DEVICE_NAME to force which device to monitor.

Change-Id: I3045bf17a4d962cc5f0e6a951472916412ac0d0d
charger: allow custom charger res

Example: BOARD_CHARGER_RES := device/samsung/galaxys2/res/charger

Change-Id: I4cf359974475c06d219cb92c38efa2b8223ae367
init: Check for symlinks with lstat() not open()

Using open() with an O_NOFOLLOW flag will result in a file falsely
being determined to be a symlink if the open fails for another
reason.

For example, a character device that isn't ready due to the
underlying hardware not being initialized yet will fail to open()

An example of this are any CG2900 device files prior to
execution of ste-cg29xx_ctrl

This uses lstat() instead of open() with O_NOFOLLOW to check
whether a file is a symlink or not.

Change-Id: Ie0d8d94b426c84c29b1b04d41a4cc15536cb307c
Update unpackbootimg to verify the Android boot image magic value. It will also search the first 512 bytes for padding.

Change-Id: I490cba05f2bb616a3f64e3271ecaa61eb9e64be8
unpackbootimg: Fix up the padding search in case the magic does not fall on a 8 byte boundary.

Change-Id: I57471f9c2117cd7965b6958ea0aa88e356436da6
unpackbootimg: Fix magic search.

Change-Id: I68470b637556a08e48ff72b7ef8811cba13b04ad
unpackbootimg: apparently mkbootimg no longer accepts hex values

Change-Id: I95a33f7b40470e4500d418d863a65a75e7aa8499
unpackbootimg: Need to also update the written file.

Change-Id: I45faddbae85273c79b2837f97933634b6e70546f
init: Add a mechanism to extend the property service in device configs

Instead of every so often adding a new set of stuff here for a specific
device, let the device includes overload the property arrays. The
new device_perms.h header documents it

Change-Id: I477e27abebeb4b85abe5fcaf19333999b1625417
camera: change camera node permissions and add certain parameters.

Change-Id: Ia68160601c2b2ba3eebde9963b3972f2a09ff84a
charger: suspend when not animating

Suspend will save power (i.e. charge faster) by disabling unneeded
devices such as the touch-sensitive keys on galaxysmtd.

Change-Id: I9b2eae1af2e9687546af9dcb10ce1fcb4c1e1ed6
init: Reintroduce support for the older charger modes

For devices with pre-ICS bootloaders, bring in the support for
arbitrary cmdline charger flags from CM7

Change-Id: Ibf887f6aeca0b68aa38fe035aa586aed502f1662
Fix PowerHAL cpufreq permissions

The process containing PowerHAL didn't have group permissions to open
/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor|max_freq|min_freq.

Modified permissions to match AOSP using the system user as the owner.

Change-Id: Idbdad8b00b8ad7d7d2a845287cccbabb58fc5aba
system/core: Add command NATIVE_WINDOW_SET_BUFFERS_SIZE

Add native window command to set user defined buffer size.

Change-Id: Ib500e65283706d860d62cb487720008d7331ce2d
audio: Squashed set of commits for QCOM audio features

system/core: Add audio enums for QCELP/EVRC feature support

- Added required enums for QCELP/EVRC features.

Change-Id: Ib6b2297ebc9cac785fec99c3c2c80b1ad9b774f6

system/core: Added changes required for tunnel mode recording

- EVRC and QCELP format values are interchanged, due to
  this EVRC/QCELP are not recording with proper header.
- Added preproc_ctl, evrc/qcelp for tunnel mode recording.

Change-Id: I93db3170895387bec43a62214aa5d65aaab40c87

system/core: Add output flag for LPA and Tunnel

Change-Id: I621818502c273b2c8aba37f64a83539450a1aafa

audio: VOIP bringup and support for vocoders.

Setup permissions for MVS driver.

Add vocoder types.

Change-Id: Ie150be9b01137628ba3e3ea788d429096ba1f413

system/core: Add enums for voice call recording.

Add enums for voice call recording

Change-Id: Idd5cd19573c48a0a782bcd56cca38b4901391bbf

system/core: Add support for surround sound recording

- Add 5.1 input channel definitions and masks

Change-Id: I24375c0d9443cd6e8dd58114464bf9f528b97d43

Conflicts:
	include/system/audio.h