OSDN Git Service

android-x86/system-bt.git
10 years agoMerge "Duplicate pair request are generated in BLE SMP."
Zhihai Xu [Fri, 6 Dec 2013 01:30:14 +0000 (01:30 +0000)]
Merge "Duplicate pair request are generated in BLE SMP."

10 years agoDuplicate pair request are generated in BLE SMP.
Zhihai Xu [Sat, 16 Nov 2013 03:16:26 +0000 (19:16 -0800)]
Duplicate pair request are generated in BLE SMP.

SMP_SEC_REQUEST_EVT  will trigger pair request for user permission.
Due to callback event isn't cleared, duplicate pare request is generated.
The fix is to clear the callback event after grant the permission for the pair request.
To avoid reporting duplicae SMP_SEC_REQUEST_EVT.

bug:11716879
Change-Id: I90805caa6f5360f8d64edfb711703e0e05863ea4

10 years agosometime the BLE connection parameter isnot updated for the first time
Zhihai Xu [Sun, 17 Nov 2013 01:07:38 +0000 (17:07 -0800)]
sometime the BLE connection parameter isnot updated for the first time

When we receive the BLE connection parameter update
from remote device after smp_send_pair_req before
start BLE service discovery(bta_gattc_set_discover_st).
We will miss update this BLE connection parameter.
The reason is we call
L2CA_EnableUpdateBleConnParams(p_cb->pairing_bda, FALSE);
in smp_send_pair_req ,We change the state to UPD_DISABLED.

When we receive the new BLE connection parameter from
remote device, we will update the state to UPD_PENDING,
which will update the new connection parameter
when enable the connection parameter update.

when we start BLE service discovery
we call L2CA_EnableUpdateBleConnParams(p_srcb->server_bda, FALSE);
in bta_gattc_set_discover_st, We will update the state back to
 UPD_DISABLED, which will cause we miss updating
the new connection parameter when enable the connection parameter update.

The fix is don't change the state to UPD_DISABLED
when the state is UPD_PENDING for disabling.

bug:11727252
Change-Id: I953b9ca669e3460e18b340e7779cc54e03d6305b

10 years agoMerge "Pairing with dissapeard HID decive never times out (in UI)"
Zhihai Xu [Tue, 3 Dec 2013 23:21:02 +0000 (23:21 +0000)]
Merge "Pairing with dissapeard HID decive never times out (in UI)"

10 years agoPairing with dissapeard HID decive never times out (in UI)
Kim Schulz [Mon, 30 Sep 2013 08:55:52 +0000 (10:55 +0200)]
Pairing with dissapeard HID decive never times out (in UI)

- added function to notify the UI about failed HID pairing

patch set2:
- added function header

patch set3:
- break long line

Bug: 10998578
Change-Id: I7314bf07da7ebac7252c6902d987fbca20da2abc

10 years agoMerge "Copy paste error in HDP source/sink check"
Zhihai Xu [Tue, 3 Dec 2013 23:16:38 +0000 (23:16 +0000)]
Merge "Copy paste error in HDP source/sink check"

10 years agoCopy paste error in HDP source/sink check
Kim Schulz [Mon, 30 Sep 2013 06:51:19 +0000 (08:51 +0200)]
Copy paste error in HDP source/sink check

- fixed copy paste error in sdp_api.c

Bug: 10998127
Change-Id: Icffdf04630777badf76ed46a3e203000df6ecc9f

10 years agoMerge "fixed assignment with no effect"
Zhihai Xu [Tue, 3 Dec 2013 23:13:21 +0000 (23:13 +0000)]
Merge "fixed assignment with no effect"

10 years agofixed assignment with no effect
Kim Schulz [Mon, 30 Sep 2013 07:07:04 +0000 (09:07 +0200)]
fixed assignment with no effect

a variable was wrongfully assigned to itself insted.

Bug: 10998131
Change-Id: Ia563e9f8aa43e264a6664d81d917b7517e1c89b5

10 years agoMerge "Fixed wrong operator in uipc.c that cause always true check"
Zhihai Xu [Tue, 3 Dec 2013 23:10:18 +0000 (23:10 +0000)]
Merge "Fixed wrong operator in uipc.c that cause always true check"

10 years agoFixed wrong operator in uipc.c that cause always true check
Kim Schulz [Mon, 30 Sep 2013 07:23:23 +0000 (09:23 +0200)]
Fixed wrong operator in uipc.c that cause always true check

- changed from using logical OR to using logical AND

Bug: 10998096
Change-Id: Idf15dbc1c605c94094b79137a4075040fe9bcf0b

10 years agomemset arguments wrongfully swapped
Kim Schulz [Tue, 24 Sep 2013 13:11:05 +0000 (15:11 +0200)]
memset arguments wrongfully swapped

the arguments for one of the memset calls was wrong.

Bug: 10907215
Change-Id: Ie00a3a6b829b99fd94659a764b6f0309684d9303

10 years agoam 46ebeb1d: Merge "LE: Increase number of simultaneous connections" into klp-dev
Matthew Xie [Tue, 12 Nov 2013 03:01:23 +0000 (19:01 -0800)]
am 46ebeb1d: Merge "LE: Increase number of simultaneous connections" into klp-dev

* commit '46ebeb1d5f2536445590d142f01247de4e24893c':
  LE: Increase number of simultaneous connections

10 years agoMerge "LE: Increase number of simultaneous connections" into klp-dev
Matthew Xie [Tue, 12 Nov 2013 02:56:19 +0000 (02:56 +0000)]
Merge "LE: Increase number of simultaneous connections" into klp-dev

10 years agoLE: Increase number of simultaneous connections
Andre Eisenbach [Fri, 1 Nov 2013 21:47:52 +0000 (14:47 -0700)]
LE: Increase number of simultaneous connections

Currently the maximum number of parallel connections is 4. This patch
increases the limit to allow for more devices.
bug 11571899
Change-Id: I42b77e6b67f59d7d430d879a5fb0eb80982160b5

10 years agoam 72658f48: BLE is disconnected due to BLE service record discovery failure.
Zhihai Xu [Mon, 11 Nov 2013 23:09:29 +0000 (15:09 -0800)]
am 72658f48: BLE is disconnected due to BLE service record discovery failure.

* commit '72658f48d653be0786ef924bb3abbf7df1ec6592':
  BLE is disconnected due to BLE service record discovery failure.

10 years agoBLE is disconnected due to BLE service record discovery failure.
Zhihai Xu [Mon, 11 Nov 2013 01:25:45 +0000 (17:25 -0800)]
BLE is disconnected due to BLE service record discovery failure.

the root cause of the problem is:
In BLE GATT client state machine, When It is in discovery state,
any command to access the service, characteristic and descriptor
will be queued, these commands will be executed after BLE service
discovery complete. When we queue the command, we will copy these
message. The problem is we didn't copy these message correctly.
We didn't deep copy these messages. There are pointers inside
these messages. These pointers are still point to the old message
which are already freed. When the messages are reused, the original
content will lost. The queued commands will be corrupted.
This is very serious issue, which can cause a lot of stability problem.

bug:11620252
Change-Id: I93082a9dbcc3a676f5f791c2b1ea98e49b165813

10 years agoam dbba0e65: Replace Broadcom proprietary license header with apache 2 header
Matthew Xie [Fri, 8 Nov 2013 19:35:20 +0000 (11:35 -0800)]
am dbba0e65: Replace Broadcom proprietary license header with apache 2 header

* commit 'dbba0e652e0ce23dd691df3c03979ec6e32c8db3':
  Replace Broadcom proprietary license header with apache 2 header

10 years agoReplace Broadcom proprietary license header with apache 2 header
Matthew Xie [Fri, 8 Nov 2013 18:13:21 +0000 (10:13 -0800)]
Replace Broadcom proprietary license header with apache 2 header

bug 11591406

Change-Id: Ibb9c6b3865e6d757236f1c5896775bb6f28e47be

10 years agoam 04e05e9a: Merge "LE: Add devices to the inquiry db before connecting" into klp-dev
Matthew Xie [Thu, 7 Nov 2013 19:12:13 +0000 (11:12 -0800)]
am 04e05e9a: Merge "LE: Add devices to the inquiry db before connecting" into klp-dev

* commit '04e05e9a39cbed22a099458c35207795a0039043':
  LE: Add devices to the inquiry db before connecting

10 years agoMerge "LE: Add devices to the inquiry db before connecting" into klp-dev
Matthew Xie [Thu, 7 Nov 2013 19:06:39 +0000 (19:06 +0000)]
Merge "LE: Add devices to the inquiry db before connecting" into klp-dev

10 years agoam dfd036d9: Merge "fix a memory leakage when Queue search or discovery event." into...
Zhihai Xu [Thu, 7 Nov 2013 19:05:40 +0000 (11:05 -0800)]
am dfd036d9: Merge "fix a memory leakage when Queue search or discovery event." into klp-dev

* commit 'dfd036d96a745af198a532748a600d0c4d6ab1f4':
  fix a memory leakage when Queue search or discovery event.

10 years agoMerge "fix a memory leakage when Queue search or discovery event." into klp-dev
Zhihai Xu [Thu, 7 Nov 2013 19:00:17 +0000 (19:00 +0000)]
Merge "fix a memory leakage when Queue search or discovery event." into klp-dev

10 years agoLE: Add devices to the inquiry db before connecting
Andre Eisenbach [Thu, 7 Nov 2013 07:35:48 +0000 (23:35 -0800)]
LE: Add devices to the inquiry db before connecting

Ensure that the remote device type is set correctly by reading the
device information from non-volatile storage and (re-)adding it to
the inquiry database before connecting to a remote GATT device.
bug 11573208
Change-Id: Ifa69da3d5871aed5293ea5e611144874b67afe72

10 years agofix a memory leakage when Queue search or discovery event.
Zhihai Xu [Thu, 7 Nov 2013 03:23:13 +0000 (19:23 -0800)]
fix a memory leakage when Queue search or discovery event.

bug:11562902
Change-Id: I16ba8cfb727d05e5d324c6301ba0ab23e729232b

10 years agoam c04aadc3: Merge "Fixes random host disconnection after establishing connection...
Zhihai Xu [Thu, 7 Nov 2013 03:11:57 +0000 (19:11 -0800)]
am c04aadc3: Merge "Fixes random host disconnection after establishing connection" into klp-dev

* commit 'c04aadc3d5925fa499aa0449f4e94a04308480ea':
  Fixes random host disconnection after establishing connection

10 years agoMerge "Fixes random host disconnection after establishing connection" into klp-dev
Zhihai Xu [Thu, 7 Nov 2013 03:06:33 +0000 (03:06 +0000)]
Merge "Fixes random host disconnection after establishing connection" into klp-dev

10 years agoFixes random host disconnection after establishing connection
Sunny Kapdi [Wed, 7 Aug 2013 19:30:20 +0000 (12:30 -0700)]
Fixes random host disconnection after establishing connection

Host starts encryption twice when the remote device is
already paired. The host sends disconnect when the
second encryption attempt returns failure. This fix
avoids duplicate encryption attempt.

bug:11450719
Change-Id: I8ec5c4a953180ec17585aece757810421bc44aae

10 years agoam 6088d83d: Merge "whitelist well tested devices for absolute volume feature" into...
Matthew Xie [Thu, 7 Nov 2013 00:11:44 +0000 (16:11 -0800)]
am 6088d83d: Merge "whitelist well tested devices for absolute volume feature" into klp-dev

* commit '6088d83d6ce30275b15fd0e5955a83f709f03172':
  whitelist well tested devices for absolute volume feature

10 years agoMerge "whitelist well tested devices for absolute volume feature" into klp-dev
Matthew Xie [Thu, 7 Nov 2013 00:05:25 +0000 (00:05 +0000)]
Merge "whitelist well tested devices for absolute volume feature" into klp-dev

10 years agowhitelist well tested devices for absolute volume feature
Matthew Xie [Wed, 6 Nov 2013 01:19:39 +0000 (17:19 -0800)]
whitelist well tested devices for absolute volume feature

We are blacklisting all the devices that are not in whitelist
instead of blacklisting known bad devices.
bug 11124170

Change-Id: I044970df611d2a800d7698d4a63331644ab107ce

10 years agoam 29fdb17a: Merge "need to save the BLE HID UUID to NVRAM" into klp-dev
Zhihai Xu [Wed, 6 Nov 2013 06:58:02 +0000 (22:58 -0800)]
am 29fdb17a: Merge "need to save the BLE HID UUID to NVRAM" into klp-dev

* commit '29fdb17a232f45c5550e7fa8d773f87e06ac58f1':
  need to save the BLE HID UUID to NVRAM

10 years agoMerge "need to save the BLE HID UUID to NVRAM" into klp-dev
Zhihai Xu [Wed, 6 Nov 2013 06:54:58 +0000 (06:54 +0000)]
Merge "need to save the BLE HID UUID to NVRAM" into klp-dev

10 years agoneed to save the BLE HID UUID to NVRAM
Zhihai Xu [Wed, 6 Nov 2013 02:06:54 +0000 (18:06 -0800)]
need to save the BLE HID UUID to NVRAM

need to save the BLE HID UUID to NVRAM.
otherwise we will miss the HID profile setting
in device profile list of the BLE HID device after reboot.

bug:11541617
Change-Id: I11e1c871768e999ec1f48396018c3be379cc1b7d

10 years agoam 8fb6973d: Merge "Add toyota venza to the auto pair blacklist" into klp-dev
Matthew Xie [Wed, 6 Nov 2013 02:02:49 +0000 (18:02 -0800)]
am 8fb6973d: Merge "Add toyota venza to the auto pair blacklist" into klp-dev

* commit '8fb6973d0988a91f7debfddd7dfb79a730138f52':
  Add toyota venza to the auto pair blacklist

10 years agoMerge "Add toyota venza to the auto pair blacklist" into klp-dev
Matthew Xie [Wed, 6 Nov 2013 01:25:24 +0000 (01:25 +0000)]
Merge "Add toyota venza to the auto pair blacklist" into klp-dev

10 years agoam e38180dc: Merge "Bluetooth: Send Error for Invalid AT Command." into klp-dev
Matthew Xie [Tue, 5 Nov 2013 05:55:07 +0000 (21:55 -0800)]
am e38180dc: Merge "Bluetooth: Send Error for Invalid AT Command." into klp-dev

* commit 'e38180dc7880e5aea76637138661d54bcd9cf875':
  Bluetooth: Send Error for Invalid AT Command.

10 years agoam 2003ec03: Merge "A typo to set wrong max connection interval value when we create...
Zhihai Xu [Tue, 5 Nov 2013 05:53:53 +0000 (21:53 -0800)]
am 2003ec03: Merge "A typo to set wrong max connection interval value when we create a BLE connection." into klp-dev

* commit '2003ec03dbf7c82cdb655fa64746397a1e775cc0':
  A typo to set wrong max connection interval value when we create a BLE connection.

10 years agoam cd9ceb9f: Merge "Unable to connect to a Motorola s705 until Bluetooth was toggled...
Zhihai Xu [Tue, 5 Nov 2013 05:53:20 +0000 (21:53 -0800)]
am cd9ceb9f: Merge "Unable to connect to a Motorola s705 until Bluetooth was toggled of and back on" into klp-dev

* commit 'cd9ceb9f48d633b68570e5f70768475c8fe93af1':
  Unable to connect to a Motorola s705 until Bluetooth was toggled of and back on

10 years agoam 7a5c5910: Fixes BLE HCI commands concurrency issue
Sunny Kapdi [Tue, 5 Nov 2013 05:53:19 +0000 (21:53 -0800)]
am 7a5c5910: Fixes BLE HCI commands concurrency issue

* commit '7a5c5910c1df73ab86e57d18c4e6e35a623d98ce':
  Fixes BLE HCI commands concurrency issue

10 years agoMerge "Bluetooth: Send Error for Invalid AT Command." into klp-dev
Matthew Xie [Mon, 4 Nov 2013 22:11:14 +0000 (22:11 +0000)]
Merge "Bluetooth: Send Error for Invalid AT Command." into klp-dev

10 years agoMerge "A typo to set wrong max connection interval value when we create a BLE connect...
Zhihai Xu [Sun, 3 Nov 2013 03:42:28 +0000 (03:42 +0000)]
Merge "A typo to set wrong max connection interval value when we create a BLE connection." into klp-dev

10 years agoBluetooth: Send Error for Invalid AT Command.
Sunny Kapdi [Mon, 29 Jul 2013 05:29:37 +0000 (10:59 +0530)]
Bluetooth: Send Error for Invalid AT Command.

Some Headsets send HFP 1.6 cmds even when it is not
supported by DUT.Send error response in those cases.

bug 11450717

Change-Id: If7745959c00fd49bd737b41a49adba9e726aa5c7

10 years agoMerge "Unable to connect to a Motorola s705 until Bluetooth was toggled of and back...
Zhihai Xu [Sat, 2 Nov 2013 00:09:49 +0000 (00:09 +0000)]
Merge "Unable to connect to a Motorola s705 until Bluetooth was toggled of and back on" into klp-dev

10 years agoA typo to set wrong max connection interval value when we create a BLE connection.
Zhihai Xu [Fri, 25 Oct 2013 23:47:49 +0000 (16:47 -0700)]
A typo to set wrong max connection interval value when we create a BLE connection.

when we set the max connection interval value,
we should use BTM_BLE_CONN_INT_MAX_DEF instead of BTM_BLE_CONN_INT_MIN
bug:11390678

Change-Id: Ia3f6d5e9cb91b2e998d014ed4849eff8455af770

10 years agoFixes BLE HCI commands concurrency issue
Sunny Kapdi [Wed, 14 Aug 2013 02:43:49 +0000 (19:43 -0700)]
Fixes BLE HCI commands concurrency issue

Removes HCI LE Read Remote features command call
to prevent the concurrency between this command and
HCI LE start encryption command.

CRs-fixed: 517330

bug:11450568
Change-Id: I6445ab8095a4261c2a3f84acea1c546e6924f50d
Signed-off-by: Sunny Kapdi <sunnyk@codeaurora.org>
10 years agoam 41e761b1: Merge "Treat devices advertising random addr. as LE only" into klp-dev
Matthew Xie [Tue, 29 Oct 2013 22:55:49 +0000 (15:55 -0700)]
am 41e761b1: Merge "Treat devices advertising random addr. as LE only" into klp-dev

* commit '41e761b106b50eb6bf08ae6a027bf27486b571cc':
  Treat devices advertising random addr. as LE only

10 years agoMerge "Treat devices advertising random addr. as LE only" into klp-dev
Matthew Xie [Tue, 29 Oct 2013 22:51:35 +0000 (22:51 +0000)]
Merge "Treat devices advertising random addr. as LE only" into klp-dev

10 years agoTreat devices advertising random addr. as LE only
Andre Eisenbach [Fri, 25 Oct 2013 23:17:45 +0000 (16:17 -0700)]
Treat devices advertising random addr. as LE only

Some remote devices use random addresses, but are not setting the
"BR/EDR not supported" flag. Thus we try to connect to the device using
BR/EDR.

This patch ignores the ADV flags if the device is using a random
address and always makes the connection over the LE transport.

bug 11418071
Change-Id: I628775b819abd8f17745aaf98db4bb3c59166955

10 years agoam 93449a36: Merge "Blacklist Devices that donot handle absolute volume well" into...
Matthew Xie [Thu, 24 Oct 2013 23:18:24 +0000 (16:18 -0700)]
am 93449a36: Merge "Blacklist Devices that donot handle absolute volume well" into klp-dev

* commit '93449a36de3b17e95f442ebd49614fa30707cbbb':
  Blacklist Devices that donot handle absolute volume well

10 years agoMerge "Blacklist Devices that donot handle absolute volume well" into klp-dev
Matthew Xie [Thu, 24 Oct 2013 23:05:57 +0000 (23:05 +0000)]
Merge "Blacklist Devices that donot handle absolute volume well" into klp-dev

10 years agoBlacklist Devices that donot handle absolute volume well
Matthew Xie [Thu, 24 Oct 2013 08:09:52 +0000 (01:09 -0700)]
Blacklist Devices that donot handle absolute volume well

Use vendor prefix address, include hbs730 headset, passat carkit
bug 11124170

Change-Id: I80f634366ce332c55581d7b1e36641e5ce3ad346

10 years agoam 03d68523: Merge "Do not deregister HH GATT IF in bta_gattc_disable for hid over...
Zhihai Xu [Thu, 24 Oct 2013 01:33:21 +0000 (18:33 -0700)]
am 03d68523: Merge "Do not deregister HH GATT IF in bta_gattc_disable for hid over GATT" into klp-dev

* commit '03d685233071eb9faa390f85869775d1058a0279':
  Do not deregister HH GATT IF in bta_gattc_disable for hid over GATT

10 years agoMerge "Do not deregister HH GATT IF in bta_gattc_disable for hid over GATT" into...
Zhihai Xu [Thu, 24 Oct 2013 01:25:32 +0000 (01:25 +0000)]
Merge "Do not deregister HH GATT IF in bta_gattc_disable for hid over GATT" into klp-dev

10 years agoam cbd63326: Merge "LE: Only prepend valid HID report IDs" into klp-dev
Zhihai Xu [Wed, 23 Oct 2013 23:42:38 +0000 (16:42 -0700)]
am cbd63326: Merge "LE: Only prepend valid HID report IDs" into klp-dev

* commit 'cbd63326930172f8b336a6e56f10eb8cfc9e8646':
  LE: Only prepend valid HID report IDs

10 years agoMerge "LE: Only prepend valid HID report IDs" into klp-dev
Zhihai Xu [Wed, 23 Oct 2013 23:33:31 +0000 (23:33 +0000)]
Merge "LE: Only prepend valid HID report IDs" into klp-dev

10 years agoDo not deregister HH GATT IF in bta_gattc_disable for hid over GATT
Zhihai Xu [Tue, 22 Oct 2013 22:26:33 +0000 (15:26 -0700)]
Do not deregister HH GATT IF in bta_gattc_disable for hid over GATT

The root cause is bta_gattc_disable de-register the HH GATT IF
which cause  bta_hh_cleanup_disable called
before we receive BTA_HH_INT_CLOSE_EVT.
The fix is "don't deregister HH GATT IF  in bta_gattc_disable and
let HH module to de-register the HH GATT IF by bta_hh_le_deregister".
because HH GATT IF is a special GATT IF
which won't be exposed to uplayer and
HH GATT IF belong to BTA HH module, it should be managed by BTA HH.
bug:11284861

Change-Id: Ia14cd2be3f3548a4d1e2dcfbc89fa3a75d9651db

10 years agoLE: Only prepend valid HID report IDs
Andre Eisenbach [Tue, 22 Oct 2013 14:49:45 +0000 (07:49 -0700)]
LE: Only prepend valid HID report IDs

If a remote HOGP device does not supply a valid report ID, do not
prepend it to the HID report.

This fixes interop issues with various LE mice, where the cursor would
not move on screen as expected.
BLTH02618447

Bug:11342157
Change-Id: I7832bb091654a5625f37b1531bd80fad9bbe6a51

10 years agoam 926267d2: Merge "Handle CL opening state in bta_jv_free_rfc_cb" into klp-dev
Matthew Xie [Sun, 20 Oct 2013 18:38:37 +0000 (11:38 -0700)]
am 926267d2: Merge "Handle CL opening state in bta_jv_free_rfc_cb" into klp-dev

* commit '926267d2240595fdc638176a7c6aa9e532fa179f':
  Handle CL opening state in bta_jv_free_rfc_cb

10 years agoMerge "Handle CL opening state in bta_jv_free_rfc_cb" into klp-dev
Matthew Xie [Sun, 20 Oct 2013 18:32:32 +0000 (18:32 +0000)]
Merge "Handle CL opening state in bta_jv_free_rfc_cb" into klp-dev

10 years agoHandle CL opening state in bta_jv_free_rfc_cb
Matthew Xie [Sun, 20 Oct 2013 08:04:06 +0000 (01:04 -0700)]
Handle CL opening state in bta_jv_free_rfc_cb

When the local device is openning an rfc channel and is being closed
before it's opened, we should close the channel instead of ignoring.
bug 11299049

Change-Id: I702500d489c8b3d3764e36340106433232a127c0

10 years agoam 0c2e29d5: BTU SIGSEGV on RFCOMM connect to Linux bluetooth dongle
Zhihai Xu [Fri, 18 Oct 2013 00:16:45 +0000 (17:16 -0700)]
am 0c2e29d5: BTU SIGSEGV on RFCOMM connect to Linux bluetooth dongle

* commit '0c2e29d5ae7cfd154c790703886d361708b02bbc':
  BTU SIGSEGV on RFCOMM connect to Linux bluetooth dongle

10 years agoBTU SIGSEGV on RFCOMM connect to Linux bluetooth dongle
Zhihai Xu [Thu, 17 Oct 2013 03:00:38 +0000 (20:00 -0700)]
BTU SIGSEGV on RFCOMM connect to Linux bluetooth dongle

fix a typo which cause the crash.

bug:11260131
Change-Id: I1cbe9f4d20be39f3ca13577687ac92b88b06e366

10 years agoam 031d239b: When rfcomm incoming queue is not empty, waiting for app ready to drain...
zzy [Sun, 13 Oct 2013 19:49:35 +0000 (12:49 -0700)]
am 031d239b: When rfcomm incoming queue is not empty, waiting for app ready to drain the data

* commit '031d239b408618294a5980cb3933e03e185f96cf':
  When rfcomm incoming queue is not empty, waiting for app ready to drain the data

10 years agoWhen rfcomm incoming queue is not empty, waiting for app ready to drain the data
zzy [Tue, 8 Oct 2013 23:54:08 +0000 (16:54 -0700)]
When rfcomm incoming queue is not empty, waiting for app ready to drain the data

Fixed the issue that rfcomm inbound packets could be out of order when host
flow control is activating.
bug 11031800

Change-Id: Idc1eb6633bb070f1ab2b33a9751fd7d714764d45

10 years agoUnable to connect to a Motorola s705 until Bluetooth was toggled of and back on
Zhihai Xu [Mon, 7 Oct 2013 22:11:22 +0000 (15:11 -0700)]
Unable to connect to a Motorola s705 until Bluetooth was toggled of and back on

we should use the same role as the previous connection, if phone walk out of range,
and reconnect back from remote device.
bug:10648781

Change-Id: I6abd77067d26769067ba2fbd45d9e8f75cf7c764

10 years agoam 65b8e0f3: Merge "Remove MMS support from MAP SDP" into klp-dev
Matthew Xie [Thu, 10 Oct 2013 01:02:21 +0000 (18:02 -0700)]
am 65b8e0f3: Merge "Remove MMS support from MAP SDP" into klp-dev

* commit '65b8e0f360f7fe7be001087c899eebc507115f9d':
  Remove MMS support from MAP SDP

10 years agoMerge "Remove MMS support from MAP SDP" into klp-dev
Matthew Xie [Thu, 10 Oct 2013 00:46:15 +0000 (00:46 +0000)]
Merge "Remove MMS support from MAP SDP" into klp-dev

10 years agoam 6b728e41: Merge "Interleave br/edr device discovery with BLE device scan for some...
Matthew Xie [Wed, 9 Oct 2013 23:47:45 +0000 (16:47 -0700)]
am 6b728e41: Merge "Interleave br/edr device discovery with BLE device scan for some targets" into klp-dev

* commit '6b728e412c22549ef51c19315ccf9ab3b7e16885':
  Interleave br/edr device discovery with BLE device scan for some targets

10 years agoMerge "Interleave br/edr device discovery with BLE device scan for some targets"...
Matthew Xie [Wed, 9 Oct 2013 23:40:09 +0000 (23:40 +0000)]
Merge "Interleave br/edr device discovery with BLE device scan for some targets" into klp-dev

10 years agoInterleave br/edr device discovery with BLE device scan for some targets
Matthew Xie [Mon, 30 Sep 2013 19:44:10 +0000 (12:44 -0700)]
Interleave br/edr device discovery with BLE device scan for some targets

This change only applies to targets which do not support interleaved scan
in controller.
bug 8508849

Change-Id: Ia99faf92c942b4b33abfde2708eff25ec9cd5468

10 years agoam 7939ed0c: added filter remove api to control the # of child node for bt_config.xml
zzy [Wed, 9 Oct 2013 22:24:05 +0000 (15:24 -0700)]
am 7939ed0c: added filter remove api to control the # of child node for bt_config.xml

* commit '7939ed0c9a50c769e9e648a2d7751e0894b485ed':
  added filter remove api to control the # of child node for bt_config.xml

10 years agoadded filter remove api to control the # of child node for bt_config.xml
zzy [Sat, 28 Sep 2013 00:05:37 +0000 (17:05 -0700)]
added filter remove api to control the # of child node for bt_config.xml

Bug 10949832

Change-Id: I10589b9d0a0b4b8d7cbf66122c66bb2e99be04a1

10 years agoRemove MMS support from MAP SDP
Matthew Xie [Wed, 9 Oct 2013 21:20:56 +0000 (14:20 -0700)]
Remove MMS support from MAP SDP

When we support MMS in the future. Revert this patch.
bug 10296324

Change-Id: I9d65895d6cb55b3967efcddc2c37b3f95ba3ce38

10 years agoam ccf9c15f: LE: Improved handling of illegal GATT PDUs
Andre Eisenbach [Tue, 8 Oct 2013 17:32:07 +0000 (10:32 -0700)]
am ccf9c15f: LE: Improved handling of illegal GATT PDUs

* commit 'ccf9c15f52eea21858d994601d71308e84c7c859':
  LE: Improved handling of illegal GATT PDUs

10 years agoLE: Improved handling of illegal GATT PDUs
Andre Eisenbach [Wed, 2 Oct 2013 22:37:21 +0000 (15:37 -0700)]
LE: Improved handling of illegal GATT PDUs

Do additional length checks when handling malformed messages. These
messages are never valid, and should be dropped if seen.

Before starting to parse out PDU content, it is verified that the
buffer contains sufficient bytes and error condition is returned
if this is not the case.

Bug: 11045073
Change-Id: Ifb792d1575e0514f33e75ed73247ea638807901e

10 years agoAdd toyota venza to the auto pair blacklist
Matthew Xie [Wed, 2 Oct 2013 07:40:27 +0000 (00:40 -0700)]
Add toyota venza to the auto pair blacklist

bug 10904063

Change-Id: Ia14f00eb45ff8ba1d7df73db575aff552af7677a

10 years agoam a7a4a61c: Merge "Crash after unpairing BT keyboard" into klp-dev
Zhihai Xu [Fri, 4 Oct 2013 23:34:06 +0000 (16:34 -0700)]
am a7a4a61c: Merge "Crash after unpairing BT keyboard" into klp-dev

* commit 'a7a4a61c943578f705062098d1677ab4a8b0d5f2':
  Crash after unpairing BT keyboard

10 years agoam 379743be: Failure to start playback on A2DP sink after connection
Zhihai Xu [Fri, 4 Oct 2013 23:30:20 +0000 (16:30 -0700)]
am 379743be: Failure to start playback on A2DP sink after connection

* commit '379743beded881127703334e1dda2cd327ec651d':
  Failure to start playback on A2DP sink after connection

10 years agoMerge "Crash after unpairing BT keyboard" into klp-dev
Zhihai Xu [Fri, 4 Oct 2013 23:25:06 +0000 (23:25 +0000)]
Merge "Crash after unpairing BT keyboard" into klp-dev

10 years agoam 3190d499: Merge "Fix uipc.c to never pass -1 to FD_ISSET."
Elliott Hughes [Thu, 3 Oct 2013 05:11:16 +0000 (22:11 -0700)]
am 3190d499: Merge "Fix uipc.c to never pass -1 to FD_ISSET."

* commit '3190d499c91fb8ac3246c4a401e4764465f635a4':
  Fix uipc.c to never pass -1 to FD_ISSET.

10 years agoMerge "Fix uipc.c to never pass -1 to FD_ISSET."
Elliott Hughes [Thu, 3 Oct 2013 05:07:21 +0000 (05:07 +0000)]
Merge "Fix uipc.c to never pass -1 to FD_ISSET."

10 years agoFix uipc.c to never pass -1 to FD_ISSET.
Elliott Hughes [Thu, 3 Oct 2013 04:28:50 +0000 (21:28 -0700)]
Fix uipc.c to never pass -1 to FD_ISSET.

The behavior of FD_ISSET when passed -1 is undefined.

I checked all calls of FD_SET and FD_CLR in this file, and they all
seem to be correctly guarded. None of the FD_ISSET calls were, so I
added a SAFE_FD_ISSET macro to return false when passed -1, which is
presumably what the callers intended.

This allows Bluetooth to be enabled on a device where the C library
aborts if passed any out of range fd.

Bug: 11047121
Change-Id: I261404a5a80884d5e9edab8beb3c93969113dc76

10 years agoCrash after unpairing BT keyboard
Zhihai Xu [Sun, 29 Sep 2013 22:12:55 +0000 (15:12 -0700)]
Crash after unpairing BT keyboard

The crash is caused to access an array use invalid index value.
The solution is to check the index before access the array.
bug:10992001

Change-Id: Iad83764de9545fb2348105cf9cd9d32a85f1d654

10 years agoFailure to start playback on A2DP sink after connection
Zhihai Xu [Sun, 29 Sep 2013 20:42:13 +0000 (13:42 -0700)]
Failure to start playback on A2DP sink after connection

This is what happen:
after Headset is connected, we call start_audio_datapath which will send AVDTP_Start command to Headset,
Headset reject it with bad state. Bluedroid stack will ack failure to start_audio_datapath.
The next time we write audio data to bluetooth, we will call start_audio_datapath again to send AVDTP_Start command to Headset
Headset reject it with bad state again. Bluedroid stack will ack failure to start_audio_datapath.
When the third time we call start_audio_datapath, right at that time we receive  AVDTP_Start command from Headset.
Handle AVDTP_Start command and Handle start_audio_datapath are in two different threads.
Handle AVDTP_Start command is in btu_task thread.
Handle start_audio_datapath() is in btif_task thread.
We have race condition in this case
Because when  btif_task processed BTIF_AV_START_STREAM_REQ_EVT(triggered by start_audio_datapath),
it don't know we receive  AVDTP_Start command which is processed in  btu_task.
btif_task will send a message BTA_AV_API_START_EVT to btu_task, which will be handled by bta_av_do_start.
AVDTP_start command from headset is handled by bta_av_start_ok.
bta_av_start_ok will send BTA_AV_START_EVT with suspending true to btif_task and send AVDTP_Suspend command
to headset to suspend the AVDTP for reconfiguration purpose.

in bta_av_do_start, we will check whether the AVDTP is already started, we will know the AVDTP is already start at this time because
bta_av_do_start is also running in btu_task. We will send BTA_AV_START_EVT with success to btif_task.

In the btif_task, BTA_AV_START_EVT will be processed by btif_av_state_opened_handler:
For the first BTA_AV_START_EVT with suspending true sent by bta_av_start_ok, it will ignore it:
if ((p_av->start.status == BTA_SUCCESS) && (p_av->start.suspending == TRUE))
               return TRUE;
For the second BTA_AV_START_EVT with success sent by bta_av_do_start , it will ack success to start_audio_datapath, and change to
BTIF_AV_STATE_STARTED/BTAV_AUDIO_STATE_STARTED, after receive success ack from bluedroid stack, we will start send Audio data to bluetooth.

At last we received  AVDTP_Suspend response accept from Headset, we will send BTA_AV_SUSPEND_EVT to btif_task, which will be
handled by btif_av_state_started_handler. It will call btif_a2dp_on_suspended and call audio_state_cb  with new audio state
BTAV_AUDIO_STATE_STOPPED.
so The state between bluedroid stack and audio data path is out of sync.
The fix is to send failure message if we know we suspend AVDTP in bta_av_do_start,
also make sure we won't miss acknowledgement for pending start if we exit opened state,
to avoid audio data path dead lock.

bug:10953908
Change-Id: I1704839977324b7c4e234eb843cddf3719e10d2c

10 years agoam a3c389f3: Merge "Avoid potential buffer overrun in bd2str caused by signed char"
Matthew Xie [Thu, 26 Sep 2013 23:33:57 +0000 (16:33 -0700)]
am a3c389f3: Merge "Avoid potential buffer overrun in bd2str caused by signed char"

* commit 'a3c389f35287c9b1642c6f9a35fd22ff28f47919':
  Avoid potential buffer overrun in bd2str caused by signed char

10 years agoMerge "Avoid potential buffer overrun in bd2str caused by signed char"
Matthew Xie [Thu, 26 Sep 2013 23:28:34 +0000 (23:28 +0000)]
Merge "Avoid potential buffer overrun in bd2str caused by signed char"

10 years agoAvoid potential buffer overrun in bd2str caused by signed char
Chris Dearman [Tue, 2 Jul 2013 21:13:44 +0000 (14:13 -0700)]
Avoid potential buffer overrun in bd2str caused by signed char

Use uint8_t to avoid sign extension as char's may be signed.
As a further safeguard, use snprintf()

Change-Id: Icdd4dba9b270bde41547677fa2f98bf215401a23

10 years agoam a30d95ac: Increase default bluetooth name from 15 to 31.
Matthew Xie [Wed, 18 Sep 2013 21:02:44 +0000 (14:02 -0700)]
am a30d95ac: Increase default bluetooth name from 15 to 31.

* commit 'a30d95acf60f04531923e8ab06d976744697bf51':
  Increase default bluetooth name from 15 to 31.

10 years agoIncrease default bluetooth name from 15 to 31.
Matthew Xie [Wed, 18 Sep 2013 19:30:36 +0000 (12:30 -0700)]
Increase default bluetooth name from 15 to 31.

bug 7441329

Change-Id: I79d64e77f206268ace06ce0f7b16119f63655bec

10 years agoam 17b504d0: native crash while skipping songs with A2DP connected
Zhihai Xu [Tue, 17 Sep 2013 16:59:44 +0000 (09:59 -0700)]
am 17b504d0: native crash while skipping songs with A2DP connected

* commit '17b504d0b0b90de00f5f0c59a3601e7b7f444730':
  native crash while skipping songs with A2DP connected

10 years agonative crash while skipping songs with A2DP connected
Zhihai Xu [Tue, 17 Sep 2013 01:16:47 +0000 (18:16 -0700)]
native crash while skipping songs with A2DP connected

this is caused by out of bound(invalid) index, pass to AVRC_MsgReq

bug:10787111
Change-Id: I5b06c646342d0d4e9202c6e22e1c1d67275efb43

10 years agoam b8ceaa48: Set default a2dp sbc encoding quality to high
Mattias Agren [Sat, 14 Sep 2013 04:07:07 +0000 (21:07 -0700)]
am b8ceaa48: Set default a2dp sbc encoding quality to high

* commit 'b8ceaa484a09be14263d5f10d022a272f9602378':
  Set default a2dp sbc encoding quality to high

10 years agoam 003284a0: Merge "fix wrong PBAP profile SDP record which may cause some carkit...
Zhihai Xu [Sat, 14 Sep 2013 04:01:47 +0000 (21:01 -0700)]
am 003284a0: Merge "fix wrong PBAP profile SDP record which may cause some carkit interop problem." into klp-dev

* commit '003284a0c70b60a7c959ea3bbc023e0fbda26be1':
  fix wrong PBAP profile SDP record which may cause some carkit interop problem.

10 years agoSet default a2dp sbc encoding quality to high
Mattias Agren [Fri, 5 Apr 2013 15:27:27 +0000 (17:27 +0200)]
Set default a2dp sbc encoding quality to high

* Increased bitpool to high quality setting (53). * Added rate quality
reduction to medium quality for basic rate connections * Enhanced
a2dp frame calculation ratio to smooth out frame distrubution * Removed
iop scaling patch.

Bug 8252054

Change-Id: I20725d0decfe5f820e1c03407889b6272e830aca

10 years agoMerge "fix wrong PBAP profile SDP record which may cause some carkit interop problem...
Zhihai Xu [Sat, 14 Sep 2013 03:59:15 +0000 (03:59 +0000)]
Merge "fix wrong PBAP profile SDP record which may cause some carkit interop problem." into klp-dev

10 years agoam 307e8d05: Merge "a2dp media packet sent too slow, which cause packet overflow...
Zhihai Xu [Sat, 14 Sep 2013 03:58:27 +0000 (20:58 -0700)]
am 307e8d05: Merge "a2dp media packet sent too slow, which cause packet overflow." into klp-dev

* commit '307e8d05d0fc11fd07111005c379655b89b9c217':
  a2dp media packet sent too slow, which cause packet overflow.

10 years agoMerge "a2dp media packet sent too slow, which cause packet overflow." into klp-dev
Zhihai Xu [Sat, 14 Sep 2013 03:56:22 +0000 (03:56 +0000)]
Merge "a2dp media packet sent too slow, which cause packet overflow." into klp-dev

10 years agoa2dp media packet sent too slow, which cause packet overflow.
Zhihai Xu [Sat, 14 Sep 2013 02:31:18 +0000 (19:31 -0700)]
a2dp media packet sent too slow, which cause packet overflow.

the error message: btif_media_aa_prep_2_send congestion buf count 24
The reason is we increase all bluedroid thread related TX data path priority:
media, timer, BTU and HCI_WORKER, but we didn't increase the RX data path
priority: userial_read_thread. If the RX thread is blocked, it will also
affect TX, because the HCI have flow control, we need receive HCI Number of
 Completed Packets Events to continue send packet to the controller.
If we HCI complete Packets Event packets is blocked, the HCI flow control
will block the HCI packet trnasmission until we get HCI complete packets
event to know how many buffer is available in the controller.
I tested with a chrysler CIP/VP4 carkit which show this error message,
After I apply this fix, I can't reproduce this problem any more.
This look like good fix for this issue.

bug:8252054
Change-Id: Ic78b9abb69648c50aa63e2b3c8b90038018fb6b5

10 years agofix wrong PBAP profile SDP record which may cause some carkit interop problem.
Zhihai Xu [Sat, 14 Sep 2013 00:38:49 +0000 (17:38 -0700)]
fix wrong PBAP profile SDP record which may cause some carkit interop problem.

bug:10488422
Change-Id: I8fb4a73a631c84dc812f44593743905f2d2ad108