OSDN Git Service

android-x86/external-bluetooth-bluedroid.git
11 years agouse libusb_aah jb-x86
Chih-Wei Huang [Fri, 26 Jul 2013 08:26:05 +0000 (16:26 +0800)]
use libusb_aah

11 years agoSupport USB HCI
ravindranath [Tue, 19 Mar 2013 15:35:44 +0000 (11:35 -0400)]
Support USB HCI

Issue: AXIA-1459
Change-Id: Ie4cc5766446774a0bae3bbf7d9baa5f44e814f59
Signed-off-by: Ravindranath Doddi <ravindranathx.doddi@intel.com>
Signed-off-by: Krishnan V <krishnanx.vaidyanathan.venkitakrishnan@intel.com>
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
Signed-off-by: Matt Gumbel <matthew.k.gumbel@intel.com>
11 years agobt_hci_bdroid: check for failure to open hci
Matt Gumbel [Fri, 3 May 2013 00:37:26 +0000 (17:37 -0700)]
bt_hci_bdroid: check for failure to open hci

Initialization should not continue if we failed to open the hci transport.

Change-Id: Idf2008477f34ed216163ca47be637f415d640bf5
Signed-off-by: Matt Gumbel <matthew.k.gumbel@intel.com>
11 years agomerge in jb-mr2-zeroday-release history after reset to jb-mr2-dev
The Android Automerger [Sun, 30 Jun 2013 12:55:19 +0000 (05:55 -0700)]
merge in jb-mr2-zeroday-release history after reset to jb-mr2-dev

11 years agoLE: Release transmit buffer credits
Andre Eisenbach [Tue, 25 Jun 2013 23:44:56 +0000 (16:44 -0700)]
LE: Release transmit buffer credits

When an ACL link goes down, some controllers do not send a "number of
completed packets" update for the last ACL packets sent from the host to
the controller. This could result in incorrect L2CAP transmit window
calculations and no transmit credit to be available to send data to the
controller.
This patch restores transmit buffer creedits regardless of the
controller behaviour.
bug 9474159

Change-Id: I2540131034271a0269fa50698f370bceb7747e2d

11 years agomerge in jb-mr2-zeroday-release history after reset to jb-mr2-dev
The Android Automerger [Wed, 26 Jun 2013 19:17:08 +0000 (12:17 -0700)]
merge in jb-mr2-zeroday-release history after reset to jb-mr2-dev

11 years agoDo not abort bonding if link disconnects during SDP after Auth cmplt
Ganesh Ganapathi Batta [Thu, 20 Jun 2013 18:00:28 +0000 (11:00 -0700)]
Do not abort bonding if link disconnects during SDP after Auth cmplt

If ACL link gets dropped during service search after bonding,
re-attempt service search instead of setting bond state to BOND_NONE
Bug 8611134

Change-Id: I77672d9f4feab634b3795a41e0d4e58903b5d275

11 years agomerge in jb-mr2-release history after reset to jb-mr2-dev
The Android Automerger [Thu, 30 May 2013 12:55:24 +0000 (05:55 -0700)]
merge in jb-mr2-release history after reset to jb-mr2-dev

11 years agoFix for AV lockup on local and remote start collision
Kausik Sinnaswamy [Wed, 22 May 2013 10:48:31 +0000 (16:18 +0530)]
Fix for AV lockup on local and remote start collision

Bug: 7002859

Change-Id: I6170be864b44011b98e08d7e2599021a3eec70a3

11 years agomerge in jb-mr2-release history after reset to jb-mr2-dev
The Android Automerger [Wed, 22 May 2013 12:55:12 +0000 (05:55 -0700)]
merge in jb-mr2-release history after reset to jb-mr2-dev

11 years agoMedia profile drop on ending the outgoing video call and music is heard locally
Zhihai Xu [Thu, 16 May 2013 00:29:44 +0000 (17:29 -0700)]
Media profile drop on ending the outgoing video call and music is heard locally

receive AVDTP_Suspend response rejection which cause the A2DP disocnnected.
There is collision of AVDTP_Suspend request:
We send AVDTP_Suspend request and the headset send AVDTP_Suspend request also at the same time.
then We send AVDTP_Suspend response, but the headset send AVDTP_Suspend response rejection
with error code bad state after it receive the AVDTP_Suspend response from us.
we call bta_av_suspend_cfm twice in this case:
the first time we will call bta_av_suspend_cfm without error after receive AVDTP_Suspend request from headset.
the second time we will call bta_av_suspend_cfm with error bad state after receive AVDTP_Suspend response rejection from headset.
To fix this problem, we should ignore the AVDTP_Suspend response rejection from headset
after receive AVDTP_Suspend request from headset.
After we receive AVDTP_Suspend request from headset, the scb state will be changed to AVDT_SCB_OPEN_ST from AVDT_SCB_STREAM_ST.
but when we receive AVDTP_Suspend response rejection from headset, we should ignore it when we are in AVDT_SCB_OPEN_ST.
and also currently we already ignore AVDTP_Suspend response when we are in AVDT_SCB_OPEN_ST,
I don't know why we didn't do it for AVDTP Suspend rejection.

issue 8735903

Change-Id: I8db3ea6e7e4edfea41f255e7e29b8c7255cf3d96

11 years agomerge in jb-mr2-release history after reset to jb-mr2-dev
The Android Automerger [Wed, 15 May 2013 12:55:18 +0000 (05:55 -0700)]
merge in jb-mr2-release history after reset to jb-mr2-dev

11 years agoPreload timeout and retry mechanism (1/3)
YK Jeffrey Chao [Wed, 24 Apr 2013 18:38:06 +0000 (11:38 -0700)]
Preload timeout and retry mechanism (1/3)

If the Preload process was stuck due to unknown hardware init failure,
a 8-second ENABLE_TIMEOUT timeout would be eventually expired in Java layer
at AdapterState and attempted to set BT state back to STATE_OFF.
However BluetoothManagerService did not handle this case accordingly and led
to state mis-matching between Java layer and BTIF at the end.

Add a timeout and retry mechanism to manage Preload process.
Clean up native space resource and explicitly report STATE_OFF back to Java
space when Preload did not go through.

bug  7566317

Change-Id: I99a225e524f2b951249618990a2d0a8a39b43ff3

11 years agoAdded available size check to fix zero byte data available issue
zzy [Tue, 14 May 2013 00:34:41 +0000 (17:34 -0700)]
Added available size check to fix zero byte data available issue

Bug 8950703
      rfcomm connection failed in case zero byte data available

11 years agomerge in jb-mr2-release history after reset to jb-mr2-dev
The Android Automerger [Mon, 13 May 2013 12:55:20 +0000 (05:55 -0700)]
merge in jb-mr2-release history after reset to jb-mr2-dev

11 years agoStability fixes for a2dp hal control path
Mattias Agren [Fri, 5 Apr 2013 17:04:35 +0000 (19:04 +0200)]
Stability fixes for a2dp hal control path

Ensure av statemachine is preventing a2dp hal to restart the stream
when not ready. This prevents ending up in a scenario where a2dp hal
locks up. Code cleanup.
bug 7002859

Change-Id: I3f3eeaab4ca185733b8b0042ed2cfa701f76a203

11 years agoSolve compilation problem when BLE/GATT/SMP features are false
Matthew Xie [Tue, 7 May 2013 03:51:02 +0000 (20:51 -0700)]
Solve compilation problem when BLE/GATT/SMP features are false

bug 8664724
Change-Id: I582846ccf4b8995f298d8db533488fceb7993ae3

11 years agoMerge "Solve compilation problem when BLE/GATT/SMP features are false" into jb-mr2-dev
Matthew Xie [Thu, 9 May 2013 21:10:48 +0000 (21:10 +0000)]
Merge "Solve compilation problem when BLE/GATT/SMP features are false" into jb-mr2-dev

11 years agoNew call-in/-back functions for Controller to do vendor-specific shutdown (1/2)
YK Jeffrey Chao [Tue, 7 May 2013 23:28:52 +0000 (16:28 -0700)]
New call-in/-back functions for Controller to do vendor-specific shutdown (1/2)

A pair of asynchronous call-in and call-back API are added into the Host
Controller Vendor Lib interface (bt_vendor_lib.h). The caller calls this new
call-in function to inform the vendor module to perform vendor-specific
shutdown process (e.g. send HCI_RESET to BT Controller) before the caller calls
for interface cleanup() function. The vendor module is responsible for calling
call-back function to notify the caller completion of vendor-specific shutdown
process.
bug 7390787

Change-Id: I29e3c94ff78e17cdd7a06b44ae537e3b0ad1516d

11 years agoSolve compilation problem when BLE/GATT/SMP features are false
Matthew Xie [Tue, 7 May 2013 03:51:02 +0000 (20:51 -0700)]
Solve compilation problem when BLE/GATT/SMP features are false

bug 8664724
Change-Id: I582846ccf4b8995f298d8db533488fceb7993ae3

11 years agomerge in jb-mr2-release history after reset to jb-mr2-dev
The Android Automerger [Wed, 8 May 2013 12:55:17 +0000 (05:55 -0700)]
merge in jb-mr2-release history after reset to jb-mr2-dev

11 years agoRemove role adjustment logic from Conn busy/idle handler
Ganesh Ganapathi Batta [Fri, 12 Apr 2013 18:57:50 +0000 (11:57 -0700)]
Remove role adjustment logic from Conn busy/idle handler

Each call into connection busy/idle handler should not result in
Role adjustments except for AV profiles.
Bug:8322094

Change-Id: I1eba2c428e877772614052396315c6f0467d3378

11 years agoMerge "Fix a bug on jv and stack port handle conversion" into jb-mr2-dev
Matthew Xie [Tue, 7 May 2013 21:28:22 +0000 (21:28 +0000)]
Merge "Fix a bug on jv and stack port handle conversion" into jb-mr2-dev

11 years agoFix a bug on jv and stack port handle conversion
Matthew Xie [Mon, 6 May 2013 07:55:08 +0000 (00:55 -0700)]
Fix a bug on jv and stack port handle conversion

bug 8755557

Change-Id: Id639677aa4bc6322fed0eb1a842d1155cdcdd5fc

11 years agomerge in jb-mr2-release history after reset to jb-mr2-dev
The Android Automerger [Tue, 7 May 2013 12:55:10 +0000 (05:55 -0700)]
merge in jb-mr2-release history after reset to jb-mr2-dev

11 years agoFix for SDP data structure leak during pairing
Kausik Sinnaswamy [Fri, 3 May 2013 09:32:50 +0000 (15:02 +0530)]
Fix for SDP data structure leak during pairing

During pairing, bluedroid initiates a SDP request to search services.
Upon SDP completion, some data structure buffers were not returned to
the pool resulting in leak.

Bug : 8797456
Change-Id: Ic512fd22ca6b8b748c5b92c02e24016fe785c0b1

11 years agomerge in jb-mr2-release history after reset to jb-mr2-dev
The Android Automerger [Thu, 2 May 2013 12:55:11 +0000 (05:55 -0700)]
merge in jb-mr2-release history after reset to jb-mr2-dev

11 years agoBT problems in Acura MDX
Zhihai Xu [Wed, 1 May 2013 01:29:53 +0000 (18:29 -0700)]
BT problems in Acura MDX

problem2 unexpected beep from carkit during ringing.
The root cause is
the interval between the ring alert is 10 seconds. it is too long
for the carkit which trigger the beep from the carkit. After I
change the inteval to 5 seconds, no unexpected beep from the carkit.

issue 8720373

Change-Id: I6f1cc1faba27e61c80b31c63b6673436e003b117

11 years agomerge in jb-mr2-release history after reset to jb-mr2-dev
The Android Automerger [Tue, 30 Apr 2013 12:55:57 +0000 (05:55 -0700)]
merge in jb-mr2-release history after reset to jb-mr2-dev

11 years agoMerge "LE: Fix shared ACL buffer allocation" into jb-mr2-dev
Matthew Xie [Mon, 29 Apr 2013 23:06:32 +0000 (23:06 +0000)]
Merge "LE: Fix shared ACL buffer allocation" into jb-mr2-dev

11 years agoLE: Disable L2CAP connection parameter update during pairing
Andre Eisenbach [Wed, 17 Apr 2013 03:22:58 +0000 (11:22 +0800)]
LE: Disable L2CAP connection parameter update during pairing

Some peripherals change the connection parameters during the pairing
procedure. Ideally when service discovery is started, connection
parameters are reset to default values. In instances where the
connection update fails, service discovery takes a very long time and
may result in a GATT application not receiving a connection status
update.
Disabling connection paramter update during service discovery ensures
a quick service discovery and improves interoperability.

Bug: 8714594
Change-Id: I2177e57bf250b99e314a1b020cd0fadbd480214e

11 years agoLE: Fix shared ACL buffer allocation
Andre Eisenbach [Wed, 24 Apr 2013 23:02:04 +0000 (16:02 -0700)]
LE: Fix shared ACL buffer allocation

Allocate a static amount of LE buffers for chipsets that do not provide
separate ACL buffers for LE and BR/EDR.

Bug: 8714387
Change-Id: I74e954c0824ddfd89b50c14f6848db787f9b9bff

11 years agomerge in jb-mr2-release history after reset to jb-mr2-dev
The Android Automerger [Thu, 25 Apr 2013 12:55:15 +0000 (05:55 -0700)]
merge in jb-mr2-release history after reset to jb-mr2-dev

11 years agoHDP fix for Single SDP record
Priti Aghera [Tue, 2 Apr 2013 22:31:19 +0000 (15:31 -0700)]
HDP fix for Single SDP record

Modified stack code to support single SDP record
for each register app call.
bug 8656462
Change-Id: I92570243306d5c1ca8339042eba5733e43fdb72c

11 years agomerge in jb-mr2-release history after reset to jb-mr2-dev
The Android Automerger [Mon, 22 Apr 2013 12:55:19 +0000 (05:55 -0700)]
merge in jb-mr2-release history after reset to jb-mr2-dev

11 years agoMerge "LE (2/3): Add application ID to connection callback" into jb-mr2-dev
Matthew Xie [Thu, 18 Apr 2013 18:31:27 +0000 (18:31 +0000)]
Merge "LE (2/3): Add application ID to connection callback" into jb-mr2-dev

11 years agomerge in jb-mr2-release history after reset to jb-mr2-dev
The Android Automerger [Thu, 18 Apr 2013 12:55:25 +0000 (05:55 -0700)]
merge in jb-mr2-release history after reset to jb-mr2-dev

11 years agoProper management of controller ACL buffers.
Ganesh Ganapathi Batta [Tue, 16 Apr 2013 18:57:07 +0000 (11:57 -0700)]
Proper management of controller ACL buffers.

Reclaim all the unacknowledged controller ACL buffers associated
with a L2CAP link when L2CAP control block is released.
Bug:8589069

Change-Id: Icef1646041e73280a13dedc7a45564d032c59712

11 years agoAudio glitches while playing songs over MOTO S305 headset
Zhihai Xu [Wed, 17 Apr 2013 00:58:43 +0000 (17:58 -0700)]
Audio glitches while playing songs over MOTO S305 headset

The MOTO S305 doesn't support read remote extended features command.
The fix is we should always use ReadRemoteSupportedFeaturesCommand at first,
Only send ReadRemoteExtendedFeaturesCommand if extend features are supported
by remote device.

issue 8618753

Change-Id: Id6d9c0e712dc892bcfca20336d1290b9443213ac

11 years agoMerge "Audio glitches while playing songs over MOTO S305 headset" into jb-mr2-dev
Zhihai Xu [Wed, 17 Apr 2013 18:13:40 +0000 (18:13 +0000)]
Merge "Audio glitches while playing songs over MOTO S305 headset" into jb-mr2-dev

11 years agomerge in jb-mr2-release history after reset to jb-mr2-dev
The Android Automerger [Wed, 17 Apr 2013 12:55:17 +0000 (05:55 -0700)]
merge in jb-mr2-release history after reset to jb-mr2-dev

11 years agoLE (2/3): Add application ID to connection callback
Andre Eisenbach [Wed, 10 Apr 2013 18:20:36 +0000 (11:20 -0700)]
LE (2/3): Add application ID to connection callback

Bug: 8589393
Change-Id: Ib5c34ce1cddb0e32ad08ac3cbdeaa74cd8514f81

11 years agoChange the log display API called in the BT PAN call-out functions
YK Jeffrey Chao [Tue, 16 Apr 2013 22:39:28 +0000 (15:39 -0700)]
Change the log display API called in the BT PAN call-out functions

Replace the ALOGD calls with BTIF_TRACE_DEBUG/API calls to control
log output through TRC_BTIF setting in bt_stack.conf at run-time.

bug 7893834

Change-Id: Ia24e87abc13272d61c0b1785685b71a8aabdb34e

11 years agoAudio glitches while playing songs over MOTO S305 headset
Zhihai Xu [Wed, 17 Apr 2013 00:58:43 +0000 (17:58 -0700)]
Audio glitches while playing songs over MOTO S305 headset

The MOTO S305 doesn't support read remote extended features command.
The fix is we should always use ReadRemoteSupportedFeaturesCommand at first,
Only send ReadRemoteExtendedFeaturesCommand if extend features are supported
by remote device.

issue 8618753

Change-Id: Id6d9c0e712dc892bcfca20336d1290b9443213ac

11 years agoFix for Nyko playpad
Ganesh Ganapathi Batta [Tue, 9 Apr 2013 23:33:31 +0000 (16:33 -0700)]
Fix for Nyko playpad

Nyko playpad does not cmply with HID Device spec. NYKO gamepad
advertises as supporting virtual unplug but when virtual is sent
by host it responds with ERR_UNSUPPORTED_REQUEST. Modified BTIF
code to start a timer when VUP is issued and fire the timer if peer
does not respond.
Bug:8055549

Change-Id: I90db956fb243f1a518b00424b103ebf9f0a1b7f0

11 years agoMake host side of Read Local/Remote Extended Features more reliable
Ganesh Ganapathi Batta [Thu, 11 Apr 2013 23:13:14 +0000 (16:13 -0700)]
Make host side of Read Local/Remote Extended Features more reliable

Issue Ext feature request only if the local controller supports
the command. Fall back to read remote feature command,
if the extended feature request fails
Bug:8591628

Change-Id: I744d9845c04b30d2dca1fd491fea49616adbb2d7

11 years agoMake host side of Read Local/Remote Extended Features more reliable
Ganesh Ganapathi Batta [Thu, 11 Apr 2013 23:13:14 +0000 (16:13 -0700)]
Make host side of Read Local/Remote Extended Features more reliable

Issue Ext feature request only if the local controller supports
the command. Fall back to read remote feature command,
if the extended feature request fails
Bug:8591628

Change-Id: I744d9845c04b30d2dca1fd491fea49616adbb2d7

11 years agoMerge "Add liblog" into jb-mr2-dev
Ying Wang [Wed, 10 Apr 2013 05:13:33 +0000 (05:13 +0000)]
Merge "Add liblog" into jb-mr2-dev

11 years agoAdd liblog
Ying Wang [Wed, 10 Apr 2013 04:46:47 +0000 (21:46 -0700)]
Add liblog

Bug: 8580410
Change-Id: I3475705985b5db2cd3a640f8bc0ef173378edad2

11 years agoRead the extended feature after ACL channel creation
Matthew Xie [Tue, 9 Apr 2013 18:26:08 +0000 (11:26 -0700)]
Read the extended feature after ACL channel creation

This problem was introduced by Bluetooth stack merge.
bug 8521185

Change-Id: I9191c639e96382a452cf0fe336d5a9ef5b5f0f4a

11 years agoBT: JV rfcomm socket sniff support
Ganesh Ganapathi Batta [Sun, 24 Mar 2013 02:11:59 +0000 (03:11 +0100)]
BT: JV rfcomm socket sniff support

Bug:8322094

Change-Id: Ib472f39488b685ac396289e65c1da21fdfd93c4c

11 years agoProper handling of HCI command status event
Ganesh Ganapathi Batta [Fri, 5 Apr 2013 20:42:42 +0000 (13:42 -0700)]
Proper handling of HCI command status event

Loop through pending command Queue to find a match for
command status evt opcode
Bug:8186156

Change-Id: Ic95ed3834695fb84a8c0617ec601896f044b0f3c

11 years agoMerge "Fix typo around BLE_INCLUDED inclusion bug 8566685" into jb-mr2-dev
Matthew Xie [Mon, 8 Apr 2013 19:05:03 +0000 (19:05 +0000)]
Merge "Fix typo around BLE_INCLUDED inclusion bug 8566685" into jb-mr2-dev

11 years agoFix typo around BLE_INCLUDED inclusion
Ganesh Ganapathi Batta [Mon, 8 Apr 2013 15:32:01 +0000 (08:32 -0700)]
Fix typo around BLE_INCLUDED inclusion
bug 8566685

Change-Id: I173fedb711c16e8adc3d0d7aaebd08bac6de9d02

11 years agoFix LE background connections not adding device to white-list.
Andre Eisenbach [Thu, 4 Apr 2013 21:53:04 +0000 (14:53 -0700)]
Fix LE background connections not adding device to white-list.

Also changed maximum number of client applications to 32.

Change-Id: Id4697924b211330e231b36d7f89ca9d89b54117f

11 years agoLE: Avoid LE connection to a non-LE device
Andre Eisenbach [Mon, 1 Apr 2013 17:27:47 +0000 (10:27 -0700)]
LE: Avoid LE connection to a non-LE device

During device inquiry, an LE connection to a non-LE device may be
triggered to discover the remote connection parameters. This fix adds
device type checking to prevent LE connections to non-LE devices.

Change-Id: I9e34642e7503b1c87a8eb06ec854843f7be263b2

11 years agoFix LE buffer size for 0 length buffers
Andre Eisenbach [Wed, 3 Apr 2013 20:56:05 +0000 (13:56 -0700)]
Fix LE buffer size for 0 length buffers

If the local chip reports 0 LE data buffers and 0 LE ACL data package
length, then the default ACL buffer length as returned byt the
Read_Buffer_Size command is to be used instead.

Change-Id: I953fabe426a98cc1b005d3b46c3e7f227c23a686

11 years agoAdd support for PLAY_POS_CHANGED
Ravi Nagarajan [Tue, 2 Apr 2013 14:11:14 +0000 (07:11 -0700)]
Add support for PLAY_POS_CHANGED

Enable PLAY_POS_CHANGED support in get capabilities

Change-Id: I8f41209fe5be5345826136f14434488524e7b1bb

11 years agoReject element attribute request if count is 0xff
Ravi Nagarajan [Fri, 22 Mar 2013 11:16:57 +0000 (04:16 -0700)]
Reject element attribute request if count is 0xff

Updates from review. BTRC_MAX_ELEM_ATTR_SIZE set back to 7 and handled
invalid attribute count (oxff) in BTIF

Change-Id: Id2610c7882c4bc8aca04491d81b9b2c35f0682d0

11 years agoneed free the buffer to avoid memory leakage when send Avrcp packet
Zhihai Xu [Sat, 30 Mar 2013 00:33:57 +0000 (17:33 -0700)]
need free the buffer to avoid memory leakage when send Avrcp packet

Change-Id: I08b66a2dc779fef1e79d74209058223dcc5e4396

11 years agoneed send reject response to unsupported Avrcp 1.3 command
Zhihai Xu [Sat, 30 Mar 2013 00:27:01 +0000 (17:27 -0700)]
need send reject response to unsupported Avrcp 1.3 command

Without this change, some carkit will stuch waiting for response and crash.

Change-Id: I710f69077e400830a9cedd540bef5d51dc468272

11 years agoParse LMP features to enable LE support
Andre Eisenbach [Sat, 23 Mar 2013 01:00:51 +0000 (18:00 -0700)]
Parse LMP features to enable LE support

Only send LE commands if the local Bluetooth radio supports LE.
Improved remote feature parsing by reading extended features. Before
this change, only the first page of the features was parsed.
bug 8332905

Change-Id: I0b90771dcfc453efea157f463b9df006e0178609

11 years agoMerge "Initial version of Stack for AVRCP 1.3" into jb-mr2-dev
Zhihai Xu [Thu, 21 Mar 2013 16:48:01 +0000 (16:48 +0000)]
Merge "Initial version of Stack for AVRCP 1.3" into jb-mr2-dev

11 years agoInitial version of Stack for AVRCP 1.3
Ravi Nagarajan [Wed, 6 Mar 2013 13:29:48 +0000 (05:29 -0800)]
Initial version of Stack for AVRCP 1.3

BTIF and stack changes for supporting AVRCP 1.3

Change-Id: Id02eb7b6a385683cedc41c62b6f829f5d7620bd4

11 years agoLE fixes
Andre Eisenbach [Wed, 13 Feb 2013 08:02:11 +0000 (17:02 +0900)]
LE fixes

- Null pointer exception check added.

An exception occurs at the memcpy in the bta_dm_gatt_disc_result.
User removed the battery on Ble device(Smart Nudge) during bonding
and connection. This exception occurs sometimes.
I used Broadcom LE Explorer to reproduce it.

- Fixed disconnect and encryption behaviour

Disconnect will now disconnect the physical link immediately when no
other application is interested in the device anymore. Also, the
connection to a remote device is now dropped if encryption fails.

- Deep copy buffers when transfering context

Certain BTA server event types require a deep copy of the request
data buffers when transfering context. Shallow copy of the pointers
involved may cause a crash when overlapping read and write requests
are received.

- 2nd encryption has not started

need to send encryption complete callback
when the encryption fail due to link drop without a complete event.
Otherwise BTA layer would not be able to clean up the status,
and no further encryption can be started.

Change-Id: If93e0a188e8779830c8991e4193b96dc95e23e5d

11 years agoam 04c1c088: am c30f9355: Merge "Remove bluedroid configuration warning"
Conley Owens [Mon, 11 Mar 2013 21:16:53 +0000 (14:16 -0700)]
am 04c1c088: am c30f9355: Merge "Remove bluedroid configuration warning"

* commit '04c1c0883c0833f5cd1190446baa58d6c04018da':
  Remove bluedroid configuration warning

11 years agoam c30f9355: Merge "Remove bluedroid configuration warning"
Conley Owens [Mon, 11 Mar 2013 21:15:44 +0000 (14:15 -0700)]
am c30f9355: Merge "Remove bluedroid configuration warning"

* commit 'c30f9355997082a7a3479e8b21f0440bb822c4ac':
  Remove bluedroid configuration warning

11 years agoMerge "Remove bluedroid configuration warning"
Conley Owens [Mon, 11 Mar 2013 20:41:59 +0000 (20:41 +0000)]
Merge "Remove bluedroid configuration warning"

11 years agoRemove bluedroid configuration warning
Conley Owens [Tue, 5 Mar 2013 23:42:03 +0000 (15:42 -0800)]
Remove bluedroid configuration warning

This warning is fired on every full-eng build.  It seems excessive
given that there are very few other warning fired on a full-eng build
and 0 seems like a reasonable goal to shoot for.

Change-Id: I2fb2b5342dee35b3ed05343466309f6c335022ef

11 years agoam 93a2edbf: am 6c1b8172: Merge "bluedroid: use correct header file."
Nick Kralevich [Thu, 28 Feb 2013 23:18:44 +0000 (23:18 +0000)]
am 93a2edbf: am 6c1b8172: Merge "bluedroid: use correct header file."

* commit '93a2edbfe42df2dbeb436e0a2a5278367f6d5381':
  bluedroid: use correct header file.

11 years agoam 6c1b8172: Merge "bluedroid: use correct header file."
Nick Kralevich [Thu, 28 Feb 2013 23:17:20 +0000 (15:17 -0800)]
am 6c1b8172: Merge "bluedroid: use correct header file."

* commit '6c1b8172756dc99348bf87b8d19e44e88bb1c57e':
  bluedroid: use correct header file.

11 years agoMerge "bluedroid: use correct header file."
Nick Kralevich [Thu, 28 Feb 2013 22:52:53 +0000 (22:52 +0000)]
Merge "bluedroid: use correct header file."

11 years agobluedroid: use correct header file.
Nick Kralevich [Thu, 28 Feb 2013 22:04:16 +0000 (14:04 -0800)]
bluedroid: use correct header file.

Change-Id: Ia536e42e24fcc0491a16b160cd5b00189024e0f0

11 years agoInitial version of BLE support for Bluedroid
Ganesh Ganapathi Batta [Tue, 5 Feb 2013 23:22:31 +0000 (15:22 -0800)]
Initial version of BLE support for Bluedroid

Change-Id: I9825a5cef9be2559c34c2a529b211b7d471147cf

11 years agoCancel device search before starting SDP
Ganesh Ganapathi Batta [Sat, 16 Feb 2013 01:52:29 +0000 (17:52 -0800)]
Cancel device search before starting SDP

Also update bonding state when acl link goes down during bonding
b/8120036
Change-Id: I28e4cb6f35e4c524b7a67281e78a196ba1fce0cb

11 years agoFixed unpair and reconnect issue with certain non-pointing hid devices
Priti Aghera [Wed, 28 Nov 2012 02:03:22 +0000 (18:03 -0800)]
Fixed unpair and reconnect issue with certain non-pointing hid devices

Hid info would not be removed from storage if COD is
NON_KEYBOARD_NON_POINTING. Due to this the device will
be added to stack even if it is unpaired and subsequent connections
will fail.
bug 8055549

Change-Id: Ib493fc165120de3c71398f5fe24b17f31fa5fc3e

11 years agoResolved partial uipc channel read issue
Ganesh Ganapathi Batta [Fri, 8 Feb 2013 19:02:57 +0000 (11:02 -0800)]
Resolved partial uipc channel read issue

When partial data is read the previously read size wasn't
compensated for.  Ensure we don't transmit empty a2dp frames in case
of underrun
Bug 8026551

Change-Id: I4195ed798008378b93343bf7cd266c6e2f11b094

11 years agoam 6ff9944c: fix bt_hc_worker_thread() sometimes transmit more than num_hci_cmd_pkts
Toshi Kikuchi [Tue, 12 Feb 2013 05:49:03 +0000 (21:49 -0800)]
am 6ff9944c: fix bt_hc_worker_thread() sometimes transmit more than num_hci_cmd_pkts

# Via Toshi Kikuchi
* commit '6ff9944c9dda368fd79ebdf8d6748fc4922eafec':
  fix bt_hc_worker_thread() sometimes transmit more than num_hci_cmd_pkts

11 years agofix bt_hc_worker_thread() sometimes transmit more than num_hci_cmd_pkts
Toshi Kikuchi [Fri, 8 Feb 2013 08:13:22 +0000 (00:13 -0800)]
fix bt_hc_worker_thread() sometimes transmit more than num_hci_cmd_pkts

bt_hc_worker_thread() checks the controller's outstanding HCI
command credits (maintained in num_hci_cmd_pkts) and skips the rest
of the tx queue after it has used up the credits. But the skip
condition is not correct in the loop:

      if ((tx_cmd_pkts_pending == TRUE) || (num_hci_cmd_pkts <= 0))
      {
          tx_cmd_pkts_pending = TRUE;
          // skip the rest of the packets in the tx queue
          ...
      }

Since num_hci_cmd_pkts doesn't change during the loop, this condition
never becomes true. As a result, all the HCI commands in the tx queue
are sent if num_hci_cmd_pkts > 0. That is why sometimes more than
num_hck_cmd_pkts are sent.

To check a correct skip condition, we should count how many HCI
command packets are being sent:

      if ((tx_cmd_pkts_pending == TRUE) ||
          (sending_hci_cmd_pkts_count >= num_hci_cmd_pkts))

sending_hci_cmd_pkts_count is incremented every time a HCI command is
pushed for sending. It should never go beyond num_hci_cmd_pkts.

Change-Id: I58101b2785fc3ab4171cdf22497ca97a3ae3124a
Signed-off-by: Toshi Kikuchi <toshik@google.com>
11 years agofix too small buffer
Nick Kralevich [Thu, 31 Jan 2013 22:40:15 +0000 (14:40 -0800)]
fix too small buffer

property_get must be called with a buffer of at least
PROPERTY_VALUE_MAX len. The supplied buffer is too small.
Fixed.

Change-Id: I6c6b3050b30f6aa5ece69888263394e572551aff

11 years agofixed rfc resouce leaking and multi-session issue
Matthew Xie [Tue, 15 Jan 2013 23:54:03 +0000 (15:54 -0800)]
fixed rfc resouce leaking and multi-session issue

also added more debug messages
bug 7486080

Change-Id: Ic21e9d2df5f651b51ea2126a3cac25811808dcfb

11 years agoSnapshot 9fd57cbacd95e89602f430244c35bbc67f08b6d2
The Android Open Source Project [Thu, 13 Dec 2012 01:18:15 +0000 (17:18 -0800)]
Snapshot 9fd57cbacd95e89602f430244c35bbc67f08b6d2

Change-Id: Ibc3a4bf4161d286c7cfab89a19c676eb5cc9224f

11 years agoSnapshot 09118679ff7861de0fe2b742591e5d6aadba3fcc
The Android Open Source Project [Thu, 13 Dec 2012 00:04:31 +0000 (16:04 -0800)]
Snapshot 09118679ff7861de0fe2b742591e5d6aadba3fcc

Change-Id: I35cdb320673d847d8122bc03b9832d13673ea208

11 years agoSnapshot 0d153181bbe9ce75555b437567796a9aef4ef0ae
The Android Open Source Project [Thu, 13 Dec 2012 00:01:31 +0000 (16:01 -0800)]
Snapshot 0d153181bbe9ce75555b437567796a9aef4ef0ae

Change-Id: I99fb22bd2e10af658de4cfe26470e71bda147ce8

11 years agoSnapshot cdeccf6fdd8c2d494ea2867cb37a025bf8879baf
The Android Open Source Project [Thu, 13 Dec 2012 00:00:35 +0000 (16:00 -0800)]
Snapshot cdeccf6fdd8c2d494ea2867cb37a025bf8879baf

Change-Id: Ia2de32ccb97a9641462c72363b0a8c4288f4f36d