Bluetooth: Avoid a case where sleep is getting called in soft irq context

While turning off BT, sleep is getting called in the soft isr context
from work queue which is queued from a code section guarded under the
bh lock,
To resolve this released the bh lock before queing the work, as it wont
impact any BT functionality.

CRs-fixed: 405917
Change-Id: I1b872d724b4d0d384cc5314e0f493facd9829a54
Signed-off-by: Bhasker Neti <bneti@codeaurora.org>
Bluetooth: Resolved a race condition

Due to simultaneous disconnects from HCI and SCO
this race condtion arrives. While doing SCO disconnect
a null pointer check for HCI connection should be present
to avoid any crash due to this condtion.

CRs-Fixed: 415887
Change-Id: I23f0a7a256e267650db0abc2fc510b964b64c50c
Signed-off-by: Nitin Srivastava <nitinsr@codeaurora.org>
Bluetooth: Validate the hci connection before data transfer

Avoid the possible crash due to Bluetooth connection loss while data
trasfer is in progress. Bluetooth connection loss might happen due to
turn off of Bluetooth or reset of device when there is an active data
transfer over Bluetooth.

Change-Id: Ib15a9ac2df3a250d279774d6e45f1e37c9ea1cc0
CRs-fixed: 375238
Signed-off-by: Bhakthavatsala Raghavendra <braghave@codeaurora.org>
cpufreq: ondemand: sync ask-wip with beastmode-1.5/bm-wip
spade: button backlight to normal brightness.
Credit to @paulb-nl.
ARM: mach-msm: Add usb forced fast charge
Based on Chad's mod for galaxy nexus posted here: http://rootzwiki.com/topic/19720-kernel-patch-devs-only-force-ac-fast-charging/
This took a bit of hackery to get going on 7x30, but it should quite easily work on all HTC 7x30 devices on a primou based kernel.
This will create a sysfs interface to toggle fast charge, which forces charging on USB or cheap chinese AC chargers as standard AC for a faster charge.
d5bc80c : OCD tab fix
Update kernel config.
- Bump to r1a.
- Enable USB Force Fast Charge.
- Build 'powersave' cpufreq governor (for who want to use screenstate/profile feature).