telephony : update stk functionality for samsung phones ported from CM9

Description: This update enables sms based stk Apps(Mobile identinty, mobile banking,...) on Samsung phones

* moved CatService.getInstance() from IccCard to GSMPhone and CDMAPhone,
we need to pass iccSmsInterface on CatService startup for sending sms.

Change-Id: I32c89b823cecae711b93a0f6717b9bdb39e9ab7e
frameworks/base: Add support for QCELP/EVRC formats

Change-Id: I82e4e2c23e6ed3e2421fe54ff8bd4f848768b8c6
ActivityThread: Avoid creating duplicate handlers and reuse mH

sMainThreadHandler is used for notification of changes in
SharedPreferences and refers to a new instance of Handler instead
of the existing instance, mH, of the ActivityThread. Fix to reuse
existing handlers associated with main looper.

Change-Id: I794a5802a9eacdb188bd0619db5e70e3ae89a07d
StorageManager: fix issue that GREF has increased to 2011 in system server with intel stress test.

Issue description:
When run ICS stress test, always meet GREF issue. one of contributor is MountService$MountServiceBinderListener.
log info
19:21:11.609   222 24316 W dalvikvm:        24 of com.android.server.am.ActivityManagerService$AppDeathRecipient (24 unique instances)
19:21:11.609   222 24316 W dalvikvm:       479 of com.android.server.MountService$MountServiceBinderListener (479 unique instances)
19:21:11.619   222 24316 W dalvikvm:         7 of com.android.server.accessibility.AccessibilityManagerService$6 (7 unique instances)
Note: PID 222 is system server.

Issue alaysis:
Everyone can call getSystemService(Context.STORAGE_SERVICE) to get service.
When other service get StorageManager, StorageManager will new MountServiceBinderLister and
register a listener in MountService, which won't be unregistered. It's easy to generate a lot of
instance of unused MountService$MountServiceBinderListener in system server.

Issue fix:
So change the policy to be:
1. Doesn't new MountServiceBinderLister in construction.
2. when other service needs to register listener in StorageManager,
StorageManager will register listener with MountService.
3. When other service needs to unregister listener in StorageManager,
if there is no more other listeners in StorageManager, StorageManager
will unregister listener in MountService.

Change-Id: Iaaf889f44a1a5f62b9f65b3ab1b486c9b7dcaf7f
Author: Chuanxiao Dong <chuanxiao.dong@intel.com>
Signed-off-by: Bo Huang <bo.b.huang@intel.com>
Signed-off-by: Jack Ren <jack.ren@intel.com>
Signed-off-by: Bruce Beare  <bruce.j.beare@intel.com>
Fix SurfaceView notifies on invalid surfaces.

SurfaceView notifies registered callbacks on invalid
Surfaces.

Change-Id: Iddc9a5cd073fb73a0e7e9b9ca64ff4fac0777ca7
Return early when checking divider before child zero.

Previously the `getChildAt` method would be called with an index of -1 which
would lead to an exception being thrown and caught. This is unnecessary since
we know there will never be a divider before the first child. It also avoids
additional object creation since this method can be invoked quite frequently.

Change-Id: Iab44520d5d52f96a829a009cdd1201696edbf9a4
Telephony: Add HSPAP to getTcpBufferSizesPropName

When device is camped on HSPAP TCP Buffer sizes need to be configured
properly to support higher data rates. Without this change, default TCP
buffer sizes will be used and throughput will be low.

Change-Id: Ica5884b35851a32e57c82c63b148df5be580ae83
Revert "ActivityThread: Avoid creating duplicate handlers and reuse mH"

This reverts commit 54ec46e0470f121d0c123b593958b940076626b4.
Framework: Volume panel cleanup (1/2)

- Hide notifications volume slider when linked with ringtone volume.
- Default to expandable panel style. This was made default on the settings side
in commit Ibd25bd1f058d49ab0560ed073c3b45782d165cbb
- Use a ContentObserver to monitor system settings.
- Moved static final variables out of Settings.java.
- Cleanup of a couple of untidy bits from initial jellybean merge.

Patch Set 2: Fix whitespace.

Change-Id: I738da63a4d59ad5ee52b1aa9e0e4f4c9c93a7576
Merge "telephony : update stk functionality for samsung phones ported from CM9" into jellybean
Merge remote-tracking branch 'upstream/jellybean' into jellybean

Conflicts:
	core/java/android/view/VolumePanel.java

Change-Id: I8a37a7ffd9a27dcb26446a899b12bbd74f786bb2