frameworks/base: Add an option to disable hw acceleration via system prop.

Hardware accelerated graphics on devices without updated proprietary files
and/or drivers is causing graphics glitches and reboots. Add the ability
to disable it to alleviate the problems until each device can support it.

Change-Id: I2506d42be6bd5a32fab7380e89817e8b9f7b074b
PackageManager: Restrict system packages to protected storage

Don't allow packages signed with the platform key to be
installed into user (or app) controlled storage

(cherry-picked from 64fa8092090d067d78163b8ebce45baa1123ce9d
 with changed file path)

Patch set 2: Fix compile error due to changed function name

Change-Id: I7390b3bdf5289411f7a335c69635bed9f74bbfb3
opengl/libs/EGL: Bring back eglRenderBufferANDROID extention

This change brings back the eglGetRenderBufferANDROID extension Define EGL_EGLEXT_PROTOTYPES in order to be able to use this extension.

    Revert "cleanup EGL a bit. remove unused extension."

    This reverts commit 9d75f1341524910b00d35dd4eeb426d7e7791f6e.

Change-Id: I8b3805157cb1f72af507bc823d16910b738cec4c

Conflicts:

	opengl/libagl/Android.mk
LegacyUSB: Add support for legacy USB implementations

Rebased for ICS 4.0.3

Change-Id: I029d8eeca4de6d92499856feab2761a8bfa9a526

Conflicts:

	core/res/res/values/config.xml
force usb legacy sysfs paths and fix the lun file

Change-Id: I06aae9536a9824f53de3aaecb8ba3e3c986167bc
Process the BTN_MOUSE event

This is required in order to make the trackball on devices that has it to
work properly, like it does before ICS. In addition to this patch, you just
need an .idc file that matches the device name for your the trackball. You can
find it by either looking in a kernel log or a logcat.

For example, a device with a Crucial optical navigation pad, will be called
curcial-oj.idc

The .idc file should contain the following:

cursor.mode = navigation
cursor.orientationAware = 1

Place the file in /system/usr/idc folder.

Enable in BoardConfig.mk with BOARD_USE_LEGACY_TRACKPAD := true

Change-Id: I57e9912b9e4d6242c980c99f4fd28b0d50f19bb8

Conflicts:

	services/input/Android.mk
UMS: fix sticky notifications

properly detect usb plug/unplug events
patch from tytung

Change-Id: I27f9f66b78fe9cd14272768a242c3eb5d00a7097
Hack for legacy trackball wake with toggle

relies on current LEGACY_TRACKPAD board define

Change-Id: I35cf6c9a87e07401d9bea2291ddd93e9ac60293e

Conflicts:

	policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
Hold a reference to the allocated buffers in GraphicBufferAlloc

Store the allocated GraphicBuffers in a vector list. This list is
cleared only when SurfaceTextures requests that the buffers be freed.
Premature deletion of GraphicBuffers and therefore deallocation of
gralloc handles are prevented.

This change partially reverts:
commit 5f05f99aaedaba18c426fac287bcb18d56dbe881
Author: Mathias Agopian <mathias@google.com>
Date:   Fri Apr 8 19:10:43 2011 -0700

    Fix a GraphicBuffer leak in SurfaceTexture

    This leak was intentional, it was there to deal with the fact that
    some gralloc implementations don't track buffer handles with
    file-descriptors so buffers needed to stay alive until there were
    registered, which is not guaranteed by binder transactions.

Change-Id: Ia732806bf8d8d15b66944569e8aa2120641d9812
CRs-fixed: 327655