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
init: Allow device-specific appends to the property service permission structs

Extends device_perms.h API to allow property_perms and control_perms to be
appended on a device-specific basis, without needing to redefine the entire
struct contents.

Conflicts:
	init/property_service.c

Change-Id: Ifa4ec83cbd72b063da5bb8964677fcfd8f4831c5
audio: Add APIs for supported compress formats

-Add APIs for supported compress capture & compress voip formats.
-Add default bytes per sample as 1.

Change-Id: If63a50f02389475855f2f0729b03b6049d44fb29
core: add QCOM_HARDWARE ifdefs

Change-Id: I5fb1420d5ce99a86cd8bc42556be5616ff89229b
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
Merge "audio: Add APIs for supported compress formats" into android-4.4
Merge "core: add QCOM_HARDWARE ifdefs" into android-4.4
Add unpackbootimg.

Change-Id: I9e3e279e2b48b3fdf5b64a7e9a28fa54e91ccace
unpackbootimg: Add support for device trees

Change-Id: I340eed99d2274a2f4cbaf5a9f27726ff3a9302e5
init: allow system UID to setenforce and set booleans

Allow system UID to setenforce and set booleans for SELinux.
Boolean ownerships must also be reset upon policy reload as
the boolean files in selinuxfs are regenerated to match the new policy.

Signed-off-by: Humberto Borba <humberos@gmail.com>
Change-Id: I0dae393892753b4745e6c956289196338bf771d5
bluetooth: Introduce new property type and permission

Introduce new property type and allow system and bluetooth
processes to set these properties so that transport layer of
AND and BT stack can set these properties for chip initialization
part

Fix: omni-318

Change-Id: I7735d4743d8b43ea935584901d5aa330df965868
pdp: introduce new property type and permission

Fix: omni-318

Signed-off-by: Humberto Borba <humberos@gmail.com>
Change-Id: I330efd4d551e87fa3211f427f3199c53d0ff981d
core: Add API to retrieve mtu size

Adding an API to libnetutils to retrieve mtu size of an interface
Made few utility functions from ifc_utils public

Change-Id: Iddec2dcd9f241b146d7f362e2df0724cf740d1f2
(cherry picked from commit 108cded7d96cc347f36b5b78c404c5ebccce13d7)
libnetutils: add ifc_set_mtu

Fix: omni-318

Change-Id: I3031e9ee38583648350f2c46baa7a9a714b9ea1e
Use RECOVERY_PRE_COMMAND before calling __reboot() recovery

For the Power menu,
frameworks/base/core/jni/android_os_Power.cpp#L180
already uses RECOVERY_PRE_COMMAND if
TARGET_RECOVERY_PRE_COMMAND is defined in the
BoardConfig.mk for a device to make a system() call before
calling __reboot() for recovery. This commit adds
the same thing to the other places that we know we are
getting into recovery using __reboot(), namely,
adb reboot recovery, the reboot binary and init
in the case of errors.

Signed-off-by: Humberto Borba <humberos@gmail.com>
Change-Id: If0a9c7f22de2aa187c921b60ad5edd77b49e095d
revert changes to main init.rc file

Move these to the Omni init, there's no need to have them here.

Revert "init: added missing permissions"
This reverts commit 012c4de62a414388aaa6193a5b1797e9bd02901c.

Revert "init: fixup cpufreq permissions"
This reverts commit c20a2550bd9c0b5311fe5aba716e8e885b9e2a56.

Signed-off-by: Humberto Borba <humberos@gmail.com>
Change-Id: I005c8a908edceda03a54e8ea5da31e5b3474b5cd
Merge "revert changes to main init.rc file" into android-4.4
Merge "init: allow system UID to setenforce and set booleans" into android-4.4
Merge "Use RECOVERY_PRE_COMMAND before calling __reboot() recovery" into android-4.4
Do not add default route during ifc_configure

Avoid duplicate default routes.
Remove adding of default routes during interface configuration as
route add/remove operation is managed by ConnectivityService via netd.
(cherry picked from commit 4a48635c72d91cf8decb7653948fe0c76de46098)

Change-Id: I982b95a44bf91d3850ca7752e307c1b1b6a66ecf