OSDN Git Service

android-x86/system-bt.git
8 years agoDO NOT MERGE Blacklist devices for absolute volume control
Andre Eisenbach [Wed, 2 Mar 2016 03:19:55 +0000 (03:19 +0000)]
DO NOT MERGE Blacklist devices for absolute volume control
am: 8fe9b6c9f7

* commit '8fe9b6c9f7538de91c1a3aded53518ca8c6d2fc0':
  DO NOT MERGE Blacklist devices for absolute volume control

8 years agoDO NOT MERGE Blacklist devices for absolute volume control
Andre Eisenbach [Fri, 11 Dec 2015 20:32:21 +0000 (12:32 -0800)]
DO NOT MERGE Blacklist devices for absolute volume control

Some devices do not play well with absolute volume control. They either
play back music at unacceptably loud volume levels or provide
insufficiently granular volume control where a single "step" of volume
change results in unexpectedly large jumps in volume.

Bug: 2607006426060431
Change-Id: I5a336fba87119325b47a5ad385e9c48a631f2121

8 years agoDO NOT MERGE ANYWHERE Sync filesystem after saving a backup of the config file.
Sharvil Nanavati [Tue, 1 Mar 2016 02:13:49 +0000 (18:13 -0800)]
DO NOT MERGE ANYWHERE Sync filesystem after saving a backup of the config file.

Bug: 27292025
Change-Id: Ied3f84157f491dcdf416de211ffbdb45b2abd529

8 years agoDO NOT MERGE ANYWHERE Create backup for bt_config.conf
Ajay Panicker [Thu, 11 Feb 2016 20:33:30 +0000 (12:33 -0800)]
DO NOT MERGE ANYWHERE Create backup for bt_config.conf

Move current config file to a backup when a new config file is
saved. This backup can be used in case there is an error loading
the current config file.

Change-Id: Icc210c457dc71a72fc2e82ff72c91207b25deaf1

8 years agoMerge "DO NOT MERGE Add ability to add interop entries dynamically (2/2)" into mnc...
Andre Eisenbach [Wed, 24 Feb 2016 18:47:10 +0000 (18:47 +0000)]
Merge "DO NOT MERGE Add ability to add interop entries dynamically (2/2)" into mnc-dr-dev
am: bd48fd98ad

* commit 'bd48fd98ad78c53365c8354323a7a4e120494e1d':
  DO NOT MERGE Add ability to add interop entries dynamically (2/2)

8 years agoMerge "DO NOT MERGE Add ability to add interop entries dynamically (2/2)" into mnc...
Andre Eisenbach [Wed, 24 Feb 2016 18:35:37 +0000 (18:35 +0000)]
Merge "DO NOT MERGE Add ability to add interop entries dynamically (2/2)" into mnc-dr-dev

8 years agoDO NOT MERGE Add ability to add interop entries dynamically (2/2)
Andre Eisenbach [Thu, 14 Jan 2016 10:00:24 +0000 (02:00 -0800)]
DO NOT MERGE Add ability to add interop entries dynamically (2/2)

Add ability and interface for adding dynamic entries to the interop
workaround database.

Bug: 26548845
Change-Id: Id886e4233fc1548727e79f1581cdc0c6f0738d59

8 years agoDO NOT MERGE Remove Porsche car-kit pairing workaround am: ed01581886
Andre Eisenbach [Tue, 23 Feb 2016 23:02:43 +0000 (23:02 +0000)]
DO NOT MERGE Remove Porsche car-kit pairing workaround am: ed01581886
am: 0befe2bd60

* commit '0befe2bd60d3c0bc3ba7aa4e4247fb785726c64e':
  DO NOT MERGE Remove Porsche car-kit pairing workaround

8 years agoDO NOT MERGE Remove Porsche car-kit pairing workaround
Andre Eisenbach [Tue, 23 Feb 2016 22:55:32 +0000 (22:55 +0000)]
DO NOT MERGE Remove Porsche car-kit pairing workaround
am: ed01581886

* commit 'ed01581886db949a8ff6d9178077353e5bc43b5b':
  DO NOT MERGE Remove Porsche car-kit pairing workaround

8 years agoDO NOT MERGE Remove Porsche car-kit pairing workaround
Andre Eisenbach [Thu, 4 Feb 2016 21:19:32 +0000 (13:19 -0800)]
DO NOT MERGE Remove Porsche car-kit pairing workaround

Bug: 26551752
Change-Id: I14c5e3fcda0849874c8a94e48aeb7d09585617e1

8 years agoDO NOT MERGE ANYWHERE Update to use the new log tag for HCI timeout.
Jacky Cheung [Wed, 10 Feb 2016 18:47:46 +0000 (10:47 -0800)]
DO NOT MERGE ANYWHERE Update to use the new log tag for HCI timeout.

Change-Id: I488491aa11a864c46575c0bbfd599bc463f191c8

8 years agoDO NOT MERGE ANYWHERE Fix build break caused by duplicate log tag.
Sharvil Nanavati [Wed, 10 Feb 2016 02:57:43 +0000 (18:57 -0800)]
DO NOT MERGE ANYWHERE Fix build break caused by duplicate log tag.

Change-Id: Ibb309fdc99ff4f61d04bc6119e1e6d731c1516cb

8 years agoDO NOT MERGE ANYWHERE Add BT_HCI_TIMEOUT log event to track HCI timeouts.
Jacky Cheung [Thu, 4 Feb 2016 23:26:57 +0000 (15:26 -0800)]
DO NOT MERGE ANYWHERE Add BT_HCI_TIMEOUT log event to track HCI timeouts.

Change-Id: I365e3ccd48d40a215eb5b9fbdbf9ca1556190414

8 years agoMerge "Assume input from /dev/stdin if no argument provided to btsnooz.py." into...
Sharvil Nanavati [Mon, 8 Feb 2016 20:00:25 +0000 (20:00 +0000)]
Merge "Assume input from /dev/stdin if no argument provided to btsnooz.py." into cw-e-dev

8 years agoAssume input from /dev/stdin if no argument provided to btsnooz.py.
Sharvil Nanavati [Sat, 23 Jan 2016 01:03:03 +0000 (17:03 -0800)]
Assume input from /dev/stdin if no argument provided to btsnooz.py.

Change-Id: I54bd137e67eb1fc959663189bcdaac4690c2c645

8 years agoDO NOT MERGE ANYWHERE implement wakelocks on bt adapter init
Victor Tasayco Loarte [Wed, 27 Jan 2016 08:46:18 +0000 (09:46 +0100)]
DO NOT MERGE ANYWHERE implement wakelocks on bt adapter init

Implement wakelocks on bt adapter initialization. This fixes
an issue where the system enters suspend mode while bluetooth
device is initializing. This causes a watchdog time out. Fix
is to acquire a wakelock during this period to avoid entering
suspend mode.

Bug:26405327
Change-Id: I73202eccd3bce5dff2f6d5b816d5b77579d9484b
Tracked-On: https://jira.ndg.intel.com/browse/MARVIN-1263
Signed-off-by: Jean Ferraton <jean.regisx.ferraton@intel.com>
8 years agoDO NOT MERGE ANYWHERE Spoof response to AT+CNUM if we don't get a reply from the...
Sharvil Nanavati [Wed, 27 Jan 2016 17:43:16 +0000 (09:43 -0800)]
DO NOT MERGE ANYWHERE Spoof response to AT+CNUM if we don't get a reply from the audio gateway.

The Huawei Honor 4X CHE1-CL10 phone doesn't reply to AT+CNUM so
we end up disconnecting the service level connection. In this CL,
I'm spoofing an OK response to AT+CNUM in case we time out waiting
for a reply.

Bug: 26504036
Change-Id: I91d5ab4ea91fd67b3f6c6f796c39fd0091bff5cf

8 years agoMerge "DO NOT MERGE ANYWHERE Fix return value for HAL function config_clear." into...
Sharvil Nanavati [Wed, 27 Jan 2016 16:22:58 +0000 (16:22 +0000)]
Merge "DO NOT MERGE ANYWHERE Fix return value for HAL function config_clear." into cw-e-dev

8 years agoDO NOT MERGE ANYWHERE Fix return value for HAL function config_clear.
Sharvil Nanavati [Tue, 26 Jan 2016 21:09:22 +0000 (13:09 -0800)]
DO NOT MERGE ANYWHERE Fix return value for HAL function config_clear.

Change-Id: I75712f721f7031705d0accb4ffe89467d52d7aa3

8 years agoMerge "DO NOT MERGE ANYWHERE Update GKI_freebuf to gracefully handle NULL." into...
Sharvil Nanavati [Tue, 26 Jan 2016 13:29:32 +0000 (13:29 +0000)]
Merge "DO NOT MERGE ANYWHERE Update GKI_freebuf to gracefully handle NULL." into cw-e-dev

8 years agoRemove unused definition BOARD_HAVE_BLUETOOTH_BCM.
Sharvil Nanavati [Sat, 23 Jan 2016 00:54:33 +0000 (16:54 -0800)]
Remove unused definition BOARD_HAVE_BLUETOOTH_BCM.

Change-Id: I4f47ffbec067ad1d7b4db0269cd5f7ee21ae7861

8 years agoDO NOT MERGE ANYWHERE Update GKI_freebuf to gracefully handle NULL.
Sharvil Nanavati [Sat, 23 Jan 2016 01:35:07 +0000 (17:35 -0800)]
DO NOT MERGE ANYWHERE Update GKI_freebuf to gracefully handle NULL.

Change-Id: I45a3100c7d5c7a343996559c36f053881d333e5e

8 years agoMerge "DO NOT MERGE ANYWHERE" into cw-e-dev
Sharvil Nanavati [Wed, 20 Jan 2016 21:07:26 +0000 (21:07 +0000)]
Merge "DO NOT MERGE ANYWHERE" into cw-e-dev

8 years agoMerge "DO NOT MERGE ANYWHERE Disconnect the AVDT connection for A2DP SRC device....
Chenjie Luo [Wed, 20 Jan 2016 21:04:30 +0000 (21:04 +0000)]
Merge "DO NOT MERGE ANYWHERE Disconnect the AVDT connection for A2DP SRC device." into cw-e-dev

8 years agoDO NOT MERGE ANYWHERE Disconnect the AVDT connection for A2DP SRC device.
WANG XING [Wed, 20 Jan 2016 09:20:39 +0000 (17:20 +0800)]
DO NOT MERGE ANYWHERE Disconnect the AVDT connection for A2DP SRC device.

If phone send A2DP connection request to device, the
device will start 2 seconds timer loop to check the
connection status of A2DP, bluetooth wake
lock will not be released. If the remote device is A2DP
source device, disconnect the AVDT connection.

BUG=26274393

Change-Id: I3a419e9e3dd613f20c973638b166d2a6012c45f7
Signed-off-by: m00182044 <m00182044@notesmail.huawei.com>
8 years agoDO NOT MERGE ANYWHERE
Sharvil Nanavati [Wed, 20 Jan 2016 17:14:47 +0000 (09:14 -0800)]
DO NOT MERGE ANYWHERE

Move btsnooz.py script from Android Wear to the BT stack project.

Change-Id: I8368820b5ed9325d2c3b82885b9fe934c6bc87ca

8 years agoDO NOT MERGE ANYWHERE
Sharvil Nanavati [Fri, 15 Jan 2016 21:41:56 +0000 (13:41 -0800)]
DO NOT MERGE ANYWHERE

Update btsnooz log file format to log ACL and SCO headers.

Change-Id: I72db1769197150f34ebba6fcb9c0e3db2404f342

8 years agoDo not send AT+CHLD=? if the 3-way call feature is not supported
Devin Kim [Thu, 14 Jan 2016 01:37:57 +0000 (10:37 +0900)]
Do not send AT+CHLD=? if the 3-way call feature is not supported

The HF shall not issue the AT+CHLD=? test command in case
either the HF or the AG does not support the Three-way calling feature.
Currently HF sends AT+CHLD=? to AG device when SLC sequence on going.
It affects to SCO statemachine so that after going out of range and
coming back in range while active call alives, SCO state goes bad and
never comes back. This is out of specification of HFP and it should be
fixed by checking peer and local 3way call capability check.

Bug: 25703926
Change-Id: I66adac2345c6fb0df6741fdbfa67d9483fc38a00

8 years agoDO NOT MERGE ANYWHERE Disable 3Mbps packets for AVDT ACL links
Sathya Kumar [Thu, 7 Jan 2016 16:04:56 +0000 (10:04 -0600)]
DO NOT MERGE ANYWHERE Disable 3Mbps packets for AVDT ACL links

BUG=25909971 Xtreme music playback stuttering

Change-Id: I49a2daeb169e7e346d6eb1ede38e6aeb72ed7639

8 years agoMerge "Per Motorola, we're going to revert this change and submit Moto-specific code...
Sharvil Nanavati [Thu, 14 Jan 2016 18:23:08 +0000 (18:23 +0000)]
Merge "Per Motorola, we're going to revert this change and submit Moto-specific code for this." into cw-e-dev

8 years agoPer Motorola, we're going to revert this change and submit Moto-specific code for...
Sharvil Nanavati [Wed, 13 Jan 2016 18:13:39 +0000 (18:13 +0000)]
Per Motorola, we're going to revert this change and submit Moto-specific code for this.

Revert "Disable 3Mbps packets for AVDT ACL links"

This reverts commit 26bb30842b6c64821c2a6c4a515f290140017105.

Change-Id: Iced6b38189b3ef27a6b520bd0af6dd0960e2eb16

8 years agoFix crashes with lots of discovered LE devices am: 05419c8b96
Marie Janssen [Tue, 12 Jan 2016 18:53:06 +0000 (18:53 +0000)]
Fix crashes with lots of discovered LE devices am: 05419c8b96
am: 7a5fa57019

* commit '7a5fa57019c1a0b175adeaa76f7548f6c4a9df6f':
  Fix crashes with lots of discovered LE devices

8 years agoFix crashes with lots of discovered LE devices
Marie Janssen [Tue, 12 Jan 2016 18:47:46 +0000 (18:47 +0000)]
Fix crashes with lots of discovered LE devices
am: 05419c8b96

* commit '05419c8b96ff9cf61c257aec6ae0aeabcfcc2636':
  Fix crashes with lots of discovered LE devices

8 years agoDisable 3Mbps packets for AVDT ACL links
Sathya Kumar [Thu, 7 Jan 2016 23:26:05 +0000 (17:26 -0600)]
Disable 3Mbps packets for AVDT ACL links

Change-Id: I4b1b52ec8aeaf5eab0672231889e0ea6f23aa852

8 years agoFix bug where a bonded device could enter BONDING and BONDED states again.
Sharvil Nanavati [Wed, 6 Jan 2016 00:23:02 +0000 (16:23 -0800)]
Fix bug where a bonded device could enter BONDING and BONDED states again.

The following sequence of events was observed:
- start bonding with device A
- bond state for A goes from 10 -> 11 -> 12
- everyone's happy
- start bonding with device B
- bond state for B goes from 10 -> 11
- bond state for A goes from 12 -> 11 -> 12

The bond state for A should not have been changed in the last step
since it was not participating in any bonding procedure at the time.

The above sequence can be reproduced if a device D bonds with
A and takes on the slave role and then D bonds with B and switches
to a master role. When D performs the role switch, it receives an
updated link key from A.

Since the link key update procedure is tied in with the pairing flow,
we see spurious bond state changes. This CL checks the pairing control
block to see if D is, in fact, pairing with A and if not, it skips the
bond state updates.

Bug: 25870383
Change-Id: Ic6ff548dbe4e960c965bdc9ef5c50a263b9b3b22

8 years agoMerge "Fix crash in HFP client's +COPS parsing code." into cw-e-dev
Sharvil Nanavati [Tue, 5 Jan 2016 01:36:43 +0000 (01:36 +0000)]
Merge "Fix crash in HFP client's +COPS parsing code." into cw-e-dev

8 years agoFix crash in HFP client's +COPS parsing code.
Sharvil Nanavati [Tue, 5 Jan 2016 01:21:05 +0000 (17:21 -0800)]
Fix crash in HFP client's +COPS parsing code.

If the Audio Gateway sends a malformed +COPS message (an operator
name > 16 characters) then the %n in sscanf format specifier is
ignored and sscanf will not assign a value to the appropriate
argument.

In such a case, the existing code will perform pointer arithmetic
using an uninitialized stack variable as an offset which may result
in pointing to an invalid memory address. When that memory is
subsequently dereferenced, we observe a crash.

This change ensures that the stack does not crash even if an invalid
+COPS message is sent from the Audio Gateway.

Bug: 24871011
Change-Id: I9bb42c75bcd90487831fc6950c571c87098559e7

8 years agoOnly send first 16 characters of operator name in +COPS.
Sharvil Nanavati [Tue, 5 Jan 2016 01:15:18 +0000 (17:15 -0800)]
Only send first 16 characters of operator name in +COPS.

According to the HFP spec, the operator name is required to be at
most 16 characters long.

Bug: 24871011
Change-Id: I9987de57a327348fc2203b9502e9df446a87793f

8 years agoFix crashes with lots of discovered LE devices
Marie Janssen [Wed, 9 Dec 2015 18:08:25 +0000 (10:08 -0800)]
Fix crashes with lots of discovered LE devices

When loads of devices are discovered a config file which is too large
can be written out, which causes the BT daemon to crash on startup.

This limits the number of config entries for unpaired devices which
are initialized, and prevents a large number from being saved to the
filesystem.

Bug: 26071376
Change-Id: I4a74094f57a82b17f94e99a819974b8bc8082184
(cherry picked from commit d77f1999ecece56c1cbb333f4ddc26f0b5bac2c5)

8 years agoMerge "Fix absolute volume reporting if AVRC_ADV_CTRL_INCLUDED is false" into cw...
Sharvil Nanavati [Fri, 18 Dec 2015 01:58:36 +0000 (01:58 +0000)]
Merge "Fix absolute volume reporting if AVRC_ADV_CTRL_INCLUDED is false" into cw-e-dev

8 years agoDO NOT MERGE ANYWHERE net_test_bluetooth: replace with gtest variant
Scott James Remnant [Wed, 11 Nov 2015 19:51:20 +0000 (11:51 -0800)]
DO NOT MERGE ANYWHERE net_test_bluetooth: replace with gtest variant

Bug: 25385380
Change-Id: Ia719363823d8d538caa6b42f076d5d6d737ae036

8 years agoMerge "DO NOT MERGE ANYWHERE Rename gtest_net_test_bluedroid to gtest_net_test_blueto...
Joshua Schwarz [Thu, 17 Dec 2015 22:47:38 +0000 (22:47 +0000)]
Merge "DO NOT MERGE ANYWHERE Rename gtest_net_test_bluedroid to gtest_net_test_bluetooth." into cw-e-dev

8 years agoFix absolute volume reporting if AVRC_ADV_CTRL_INCLUDED is false
Sharvil Nanavati [Thu, 17 Dec 2015 14:23:19 +0000 (06:23 -0800)]
Fix absolute volume reporting if AVRC_ADV_CTRL_INCLUDED is false

Without this change, setting AVRC_ADV_CTRL_INCLUDED to false would
result in the native code reporting the remote device supports
absolute volume even though we don't.

Bug: 26070064
Change-Id: I5b88fa0adb89983de28a216898a1d8957fa454a1

8 years agoFix BT connection failures
Devin Kim [Thu, 3 Dec 2015 21:19:20 +0000 (13:19 -0800)]
Fix BT connection failures

When HFP connection failed establishing between phone and watch, it can't
recover RFCOMM status which causes that HFP connection will not be made
unless BT radio goes off and comes back on. RFCOMM and HFP both trying to
open RFCOMM control channel at nearly same time, at some point, there's
a possibility that SABM packet didn't reach out to BT controller to connect
to phone from watch with HFP while phone tries to connect to watch with
AW RFCOMM.

This will take care of pending SABM packet to reach out to controller
properly so that RFCOMM status will not be messed.

Bug: 24285000
Bug: 25579482
Bug: 25579423
Bug: 25578997
Change-Id: Icc26b86c644ebd8d1c12a2fb4e94d04ba16cc2dd

8 years agoDO NOT MERGE ANYWHERE: osi: Remove error_fclose goto and redundant fflush.
Alain Vongsouvanh [Wed, 9 Dec 2015 16:57:38 +0000 (08:57 -0800)]
DO NOT MERGE ANYWHERE: osi: Remove error_fclose goto and redundant fflush.

Change-Id: I327f9ce696bb68eb3b89b4a8b15dba189e027970

8 years agoDO NOT MERGE ANYWHERE: Add file write error checks to config_save
Amadeusz Slawinski [Tue, 3 Nov 2015 15:09:57 +0000 (16:09 +0100)]
DO NOT MERGE ANYWHERE: Add file write error checks to config_save

It's better to leave old config file instead of
overwriting with broken one.

Fixes problem when disk is full and we can't write
more data to it.

(Change amended to use "old" style LOG_ERROR macro)

Issue: KIONE-3099
Change-Id: Ifdb641ba7f3140655f9ec371e53b11a17484f27a

8 years agoDO NOT MERGE ANYWHERE Rename gtest_net_test_bluedroid to gtest_net_test_bluetooth.
Joshua Schwarz [Mon, 30 Nov 2015 16:44:26 +0000 (08:44 -0800)]
DO NOT MERGE ANYWHERE Rename gtest_net_test_bluedroid to gtest_net_test_bluetooth.

Change-Id: I73105164c04701aade27638ffdc5c3281a2585a2

8 years agoMerge "Mark secure link as authenticated for LE" into cw-e-dev
Zach Johnson [Wed, 2 Dec 2015 18:20:03 +0000 (18:20 +0000)]
Merge "Mark secure link as authenticated for LE" into cw-e-dev

8 years agoMark secure link as authenticated for LE
Andre Eisenbach [Sat, 14 Nov 2015 00:48:53 +0000 (16:48 -0800)]
Mark secure link as authenticated for LE

Without this change, reading an authenticated GATT characteristic using
BR/EDR  would fail with an insufficient authentication error.

Change-Id: I02f44cdf90635b470b21e8aad8240993cb0e8e42

8 years agoAlways send a SUSPEND_CFM event when suspended due to A2DP RECONFIGURE.
Sridhar Vashist [Fri, 7 Aug 2015 00:40:24 +0000 (19:40 -0500)]
Always send a SUSPEND_CFM event when suspended due to A2DP RECONFIGURE.

There appear to be race cases where the peer sends a START before
we reconfigure the stream. Avoid btif_av state from getting
mismatched by always sending out the SUSPEND_CFM during RECONFIGURE.

Change-Id: I2034cd111466f792233cedb60a3a0df11d055962
Signed-off-by: Sridhar Vashist <svashist@motorola.com>
8 years agoMake default SBC bitrate configurable by device.
Sridhar Vashist [Wed, 14 Oct 2015 22:47:02 +0000 (17:47 -0500)]
Make default SBC bitrate configurable by device.

Configurable default SBC bitrate so that audio quality can be maintained
for sampling rates other than 44.1kHz

Change-Id: Ia4197c0a500088cfa48a8ba821e9738a16c3fc6e
Signed-off-by: Sridhar Vashist <svashist@motorola.com>
8 years agoMerge "A2DP SRC offload support" into cw-e-dev
Chris Elliott [Tue, 1 Dec 2015 21:09:52 +0000 (21:09 +0000)]
Merge "A2DP SRC offload support" into cw-e-dev

8 years agoA2DP SRC offload support
Abhijit Adsule [Tue, 19 May 2015 07:44:26 +0000 (02:44 -0500)]
A2DP SRC offload support

bluedroid changes to support A2DP SRC offload to BT FW.
add functionality to relay a2dp offload requests and responses
between AudioHAL & the BT vendor library.

Change-Id: Ie4e5992c48e95b0efb372a405e8537e4fd3ea071
Signed-off-by: Sridhar Vashist <svashist@motorola.com>
Conflicts:
audio_a2dp_hw/audio_a2dp_hw.h
bta/Android.mk
bta/av/bta_av_aact.c
btif/include/btif_media.h
btif/src/btif_av.c
btif/src/btif_media_task.c
hci/Android.mk
hci/src/vendor.c
include/bt_target.h
stack/include/l2c_api.h

8 years agoOnly initiate codec negotiation if feature is supported
Chenjie Luo [Fri, 20 Nov 2015 19:18:42 +0000 (11:18 -0800)]
Only initiate codec negotiation if feature is supported

Bug: 25634250
Change-Id: I97330c853f6cf90673b4ff28c72645f9d1c8ff9d

8 years agoMerge "Fix broken test caused by misordered callback arguments." into cw-e-dev
Sharvil Nanavati [Mon, 9 Nov 2015 17:11:12 +0000 (17:11 +0000)]
Merge "Fix broken test caused by misordered callback arguments." into cw-e-dev

8 years agoFix broken test caused by misordered callback arguments.
Sharvil Nanavati [Sat, 7 Nov 2015 10:12:16 +0000 (02:12 -0800)]
Fix broken test caused by misordered callback arguments.

Change-Id: I16976a2a680eab76af31090548c2efc53bebaa60

8 years agoAlways update remote address type during LE scan
Andre Eisenbach [Fri, 6 Nov 2015 00:59:44 +0000 (00:59 +0000)]
Always update remote address type during LE scan
am: 03d171170c

* commit '03d171170c7ad4e40454a9575cfd4919d2e1ef2f':
  Always update remote address type during LE scan

8 years agoAlways update remote address type during LE scan
Andre Eisenbach [Thu, 5 Nov 2015 23:38:36 +0000 (15:38 -0800)]
Always update remote address type during LE scan

This will ensure that devices which do not contain a device name in the
advertising record are stored with the correct address type to ensure
re-connection to the device succeeds.

Bug: 25499163
Change-Id: I85f18ce2de267844c5d5ed49beeb448b9b074d74

8 years agoMerge "Do not mask out secure connections (SC) bit for BT <4.2" into mnc-dr-dev
Andre Eisenbach [Thu, 5 Nov 2015 01:27:19 +0000 (01:27 +0000)]
Merge "Do not mask out secure connections (SC) bit for BT <4.2" into mnc-dr-dev
am: 15c1f685db

* commit '15c1f685db0453a3e20f81de94fca7040a52a39a':
  Do not mask out secure connections (SC) bit for BT <4.2

8 years agoFix bug in SDP 128-bit UUID lookup
Andre Eisenbach [Thu, 5 Nov 2015 01:27:14 +0000 (01:27 +0000)]
Fix bug in SDP 128-bit UUID lookup
am: 7312c6d913

* commit '7312c6d91376e533914eb2a108b65699ca54353a':
  Fix bug in SDP 128-bit UUID lookup

8 years agoMerge "Do not mask out secure connections (SC) bit for BT <4.2" into mnc-dr-dev
Andre Eisenbach [Wed, 4 Nov 2015 17:32:48 +0000 (17:32 +0000)]
Merge "Do not mask out secure connections (SC) bit for BT <4.2" into mnc-dr-dev

8 years agoFix bug in SDP 128-bit UUID lookup
Andre Eisenbach [Wed, 4 Nov 2015 16:28:30 +0000 (08:28 -0800)]
Fix bug in SDP 128-bit UUID lookup

Bug: 24344122
Change-Id: I7b7ed4459c4f377d97b608bfe2e0c13aac31680e

8 years agoDo not mask out secure connections (SC) bit for BT <4.2
Andre Eisenbach [Wed, 4 Nov 2015 16:20:22 +0000 (08:20 -0800)]
Do not mask out secure connections (SC) bit for BT <4.2

Bug: 25467621
Change-Id: Ifdb52295fa5b8c5a39524a722dc044227c735240

8 years agoSerialize remote version query over LE
Andre Eisenbach [Fri, 30 Oct 2015 02:18:32 +0000 (02:18 +0000)]
Serialize remote version query over LE
am: 864e7734f2

* commit '864e7734f21d7ebe3f3a6840d187a2696498e9f4':
  Serialize remote version query over LE

8 years agoSerialize remote version query over LE
Andre Eisenbach [Thu, 29 Oct 2015 22:48:06 +0000 (15:48 -0700)]
Serialize remote version query over LE

Some devices (ex. Nexus Player remote) do not take well to having the
remote version queried while a remote feature request is also sent and
subsequently fail encryption.

This patch serializes the query of the remote version and requires both
remote features and the remote version to be read before calling a
connection established.

Bug: 25357767
Change-Id: Ie70eea241b47b81778d8e0df47f3a8f376316932

8 years agoCheck remote LMP version before enabling secure connections
Andre Eisenbach [Tue, 27 Oct 2015 20:30:54 +0000 (20:30 +0000)]
Check remote LMP version before enabling secure connections
am: 4f7c4f6732

* commit '4f7c4f67320bbb35c85b478d2ac7aa29d732acca':
  Check remote LMP version before enabling secure connections

8 years agoCheck remote LMP version before enabling secure connections
Andre Eisenbach [Mon, 26 Oct 2015 20:49:17 +0000 (13:49 -0700)]
Check remote LMP version before enabling secure connections

Request remote version information for LE links when connecting and
ensure LMP version is >= 8 (Bluetooth 4.2) before setting the LinkKey
bits in the pairing request.

This is to ensure older remote devices do not get confused by the
additional bit(s) in the pairing request.

Bug: 25277879
Change-Id: I25424e541fa5244d8f522dffc62cdedc24f4f35b

8 years agoPrevent integer overflows during GATT signing
Ajay Panicker [Tue, 27 Oct 2015 19:07:55 +0000 (19:07 +0000)]
Prevent integer overflows during GATT signing
am: b335ee9496

* commit 'b335ee9496e671bf0ef0ab28a5990c9a024ac06b':
  Prevent integer overflows during GATT signing

8 years agoPrevent integer overflows during GATT signing
Ajay Panicker [Fri, 23 Oct 2015 23:49:11 +0000 (16:49 -0700)]
Prevent integer overflows during GATT signing

Bug: 17901099
Change-Id: Ib61113b19c9c9798b9ea992fad0ce997dcc2e2f8

8 years agoMerge "Raise alarm callback thread priority" into mnc-dr-dev
Andre Eisenbach [Fri, 23 Oct 2015 23:52:57 +0000 (23:52 +0000)]
Merge "Raise alarm callback thread priority" into mnc-dr-dev
am: 2c8802ab5f

* commit '2c8802ab5f4f73afe2a8b722d3b1bbd8e106fa24':
  Raise alarm callback thread priority

8 years agoReduce persistence on aquiring master role
Mattias Agren [Fri, 23 Oct 2015 23:52:49 +0000 (23:52 +0000)]
Reduce persistence on aquiring master role
am: 59d9673187

* commit '59d9673187a50c259b42e5a71482304ab850a809':
  Reduce persistence on aquiring master role

8 years agoMerge "Raise alarm callback thread priority" into mnc-dr-dev
Andre Eisenbach [Fri, 23 Oct 2015 23:51:19 +0000 (23:51 +0000)]
Merge "Raise alarm callback thread priority" into mnc-dr-dev

8 years agoReduce persistence on aquiring master role
Mattias Agren [Wed, 14 Oct 2015 15:05:58 +0000 (17:05 +0200)]
Reduce persistence on aquiring master role

Whenever a device has more than 1 ACL link active and transferring
data on one of its links via PAN, HH or JV (RFCOMM) the sys busy/idle
state toggles frequently. To avoid triggering role switches for each
of these events we filter this out and let the other SYS events handle
it in combination with other role policy management code. Ideally we
should revert the toggling to properly reflect the busy/idle state of
each profile but to limit risk of side effects at this stage we will
make this intermittent change.

This also affects audio streaming in certain cases.

Bug: 2457095925129209
Change-Id: I141e17ee069c82624e153fd8de5db90ae93724b9

8 years agoRaise alarm callback thread priority
Andre Eisenbach [Fri, 23 Oct 2015 17:40:36 +0000 (10:40 -0700)]
Raise alarm callback thread priority

Since alarms [/callbacks] are used in the critical audio path, raising
the thread priority is required to ensure timely encoding/transmission
of audio packets and avoiding thread pre-emption.

This patch indiscriminatly raises the (single) callback thread priority,
affecting all alarm callbacks. In the future, thread priotiry should be
adjusted based on the alarms pending in the queue.

Bug: 24570959
Change-Id: I64928fd7325f1d6f76815a185dbccf1e01ae30d2

8 years agoFix 128-bit UUID byte order for GATT-over-BR/EDR
Andre Eisenbach [Wed, 21 Oct 2015 02:00:07 +0000 (02:00 +0000)]
Fix 128-bit UUID byte order for GATT-over-BR/EDR
am: deb1c7c5cf

* commit 'deb1c7c5cfacba8ec2d896f6bb120bdc81314d9a':
  Fix 128-bit UUID byte order for GATT-over-BR/EDR

8 years agoFix 128-bit UUID byte order for GATT-over-BR/EDR
Andre Eisenbach [Wed, 21 Oct 2015 01:03:30 +0000 (18:03 -0700)]
Fix 128-bit UUID byte order for GATT-over-BR/EDR

128-bit UUIDs for GATT services discovered using SDP are byte-ordered
incorrectly. This patch fixes both the SDP discovery as well as the SDP
record creation code.

Bug: 24344122
Change-Id: Iee4bf33dcbbc5ee0f2380b48330107232bd0401b

8 years agoMerge "Workaround for H4 HCI stream corruption during LE scans" into mnc-dr-dev
Andre Eisenbach [Wed, 21 Oct 2015 01:37:00 +0000 (01:37 +0000)]
Merge "Workaround for H4 HCI stream corruption during LE scans" into mnc-dr-dev
am: 78870e0f38

* commit '78870e0f38658e389e22dfba5da3f239f01966d7':
  Workaround for H4 HCI stream corruption during LE scans

8 years agoMerge "Workaround for H4 HCI stream corruption during LE scans" into mnc-dr-dev
Andre Eisenbach [Wed, 21 Oct 2015 01:33:07 +0000 (01:33 +0000)]
Merge "Workaround for H4 HCI stream corruption during LE scans" into mnc-dr-dev

8 years agoRemove absolute volume control whitelist
Andre Eisenbach [Wed, 21 Oct 2015 01:17:19 +0000 (01:17 +0000)]
Remove absolute volume control whitelist
am: 8289925079

* commit '8289925079c40ec91fa99d0ea6817f796a66681a':
  Remove absolute volume control whitelist

8 years agoWorkaround for H4 HCI stream corruption during LE scans
Andre Eisenbach [Fri, 11 Sep 2015 04:41:39 +0000 (21:41 -0700)]
Workaround for H4 HCI stream corruption during LE scans

Sometimes, during result-heavy LE scans, the UART byte stream can become
corrupted, leading to assertions caused by mis-interpreting the bytes
following the corruption.

This workaround looks for tell-tale signs of a BLE event and attempts to
skip the correct amount of bytes in the stream to re-synchronize onto a
packet boundary.

Bug: 23934838
Change-Id: Ifadaecf8077cb1defc7134c59c97302fca660f81

8 years agoRemove absolute volume control whitelist
Andre Eisenbach [Mon, 19 Oct 2015 23:06:20 +0000 (16:06 -0700)]
Remove absolute volume control whitelist

Remove the absolute volume control whitelist to enable absolute volume
control for all compatible devices.

Bug: 25081918
Change-Id: Iab0e4b4c4fd3dac0fefdf62ec80419dd64b56c0c

8 years agoam 852bf498: Add Flic smart button to interop database
Andre Eisenbach [Sun, 11 Oct 2015 13:43:14 +0000 (13:43 +0000)]
am 852bf498: Add Flic smart button to interop database

* commit '852bf4980ea87a916e5f3037c9b897fd84c2417b':
  Add Flic smart button to interop database

8 years agoAdd Flic smart button to interop database
Andre Eisenbach [Mon, 5 Oct 2015 20:25:14 +0000 (13:25 -0700)]
Add Flic smart button to interop database

Bug: 24737963
Change-Id: If3b59437439305b490c5fc260a7080cee04f09c5

8 years agoam 6c25b3c0: Raise BTU and HCI thread priorities
Andre Eisenbach [Wed, 7 Oct 2015 20:25:36 +0000 (20:25 +0000)]
am 6c25b3c0: Raise BTU and HCI thread priorities

* commit '6c25b3c02c863cbb047e4cf8b4ec88d8335dac30':
  Raise BTU and HCI thread priorities

8 years agoRaise BTU and HCI thread priorities
Andre Eisenbach [Wed, 7 Oct 2015 18:16:37 +0000 (11:16 -0700)]
Raise BTU and HCI thread priorities

The audio sub-system and audio related tasks run at elevated thread
priorities in order to ensure timely handling of audio packets. This
patch raises the thread priority of lower layer Bluetooth tasks involved
in delivering audio packets to avoid thread pre-emption and subsequent
audio skipping.

Bug: 24570959
Change-Id: I5e19ee4590207df753f7b8bfc22174959722ec2d

8 years agoam 60563860: am 74dad515: Disable opening network debug ports for security reasons
Pavlin Radoslavov [Fri, 25 Sep 2015 22:22:04 +0000 (22:22 +0000)]
am 60563860: am 74dad515: Disable opening network debug ports for security reasons

* commit '60563860e791d31c93daa404247272b3a0cb4e14':
  Disable opening network debug ports for security reasons

8 years agoam 74dad515: Disable opening network debug ports for security reasons
Pavlin Radoslavov [Fri, 25 Sep 2015 22:13:37 +0000 (22:13 +0000)]
am 74dad515: Disable opening network debug ports for security reasons

* commit '74dad51510f7d7b05c6617ef88168bf0bbdf3fcd':
  Disable opening network debug ports for security reasons

8 years agoam 4cac544d: Disable opening network debug ports for security reasons
Pavlin Radoslavov [Fri, 25 Sep 2015 21:13:56 +0000 (21:13 +0000)]
am 4cac544d: Disable opening network debug ports for security reasons

* commit '4cac544da367d7458129631ddef6db4e3312cef7':
  Disable opening network debug ports for security reasons

8 years agoDisable opening network debug ports for security reasons
Pavlin Radoslavov [Thu, 24 Sep 2015 20:34:35 +0000 (13:34 -0700)]
Disable opening network debug ports for security reasons

By default, we open up to three TCP ports that are used
for debugging purpose:

 * TCP port 8872 - used for forwarding btsnoop logs at real time
   Note: the port is open only if "Bluetooth HCI snoop log" is enabled
   in the Developer options
 * TCP port 8873 - used for HCI debugging
 * TCP port 8879 - used for debugging the Bluetooth counters

Those ports are disabled by default.
To enable, the following #define should be added at the top of the
corresponding file(s): btcore/src/counter.c hci/src/btsnoop_net.c
hci/src/hci_inject.c

   #define BT_NET_DEBUG TRUE

Bug: 24371736

Change-Id: I5cb43af1a5d29c331eb5ef61a24dccbe95df6f40

8 years agoam bb2a4fad: Fix PAN crash due to fd mismatch
Nitin Shivpure [Fri, 25 Sep 2015 00:02:09 +0000 (00:02 +0000)]
am bb2a4fad: Fix PAN crash due to fd mismatch

* commit 'bb2a4faddd9a7f03d13d37a23eb0da1ef52f9088':
  Fix PAN crash due to fd mismatch

8 years agoDisable opening network debug ports for security reasons
Pavlin Radoslavov [Thu, 24 Sep 2015 20:34:35 +0000 (13:34 -0700)]
Disable opening network debug ports for security reasons

By default, we open up to three TCP ports that are used
for debugging purpose:

 * TCP port 8872 - used for forwarding btsnoop logs at real time
   Note: the port is open only if "Bluetooth HCI snoop log" is enabled
   in the Developer options
 * TCP port 8873 - used for HCI debugging
 * TCP port 8879 - used for debugging the Bluetooth counters

Those ports are disabled by default.
To enable, the following #define should be added at the top of the
corresponding file(s): btcore/src/counter.c hci/src/btsnoop_net.c
hci/src/hci_inject.c

   #define BT_NET_DEBUG TRUE

Bug: 24371736

Change-Id: I5cb43af1a5d29c331eb5ef61a24dccbe95df6f40

8 years agoFix PAN crash due to fd mismatch
Nitin Shivpure [Sun, 6 Sep 2015 09:34:01 +0000 (15:04 +0530)]
Fix PAN crash due to fd mismatch

A case, where tap read thread is always exist, Sometimes
data packets get recieved on older fd, which is not available.
which is causing assert due to fd mismatch in race condition.
when next pan connection is immediately available. If last pan
connection gets disconnected, then tap_read_thread should be
destroyed in btif context to fix this issue.

Bug: 24093456
Change-Id: Ic1053200a7be4c2091d6c394634831ca3fbd61df

8 years agoam 28209191: Merge "DO NOT MERGE - A2DP audio HAL: implement out_get_presentation_pos...
Andy Hung [Tue, 22 Sep 2015 18:31:20 +0000 (18:31 +0000)]
am 28209191: Merge "DO NOT MERGE - A2DP audio HAL: implement out_get_presentation_position()" into mnc-dr-dev

* commit '282091913b4ee3b26a2f79a630ecdca4e8ca89f6':
  DO NOT MERGE - A2DP audio HAL: implement out_get_presentation_position()

8 years agoMerge "DO NOT MERGE - A2DP audio HAL: implement out_get_presentation_position()"...
Andy Hung [Tue, 22 Sep 2015 18:26:32 +0000 (18:26 +0000)]
Merge "DO NOT MERGE - A2DP audio HAL: implement out_get_presentation_position()" into mnc-dr-dev

8 years agoam 81d4127c: Merge "Check BR device count before initiating role switch" into mnc...
Pankaj Kanwar [Tue, 22 Sep 2015 16:43:14 +0000 (16:43 +0000)]
am 81d4127c: Merge "Check BR device count before initiating role switch" into mnc-dr-dev

* commit '81d4127c5bd2c0bd2ac50a1a7a9f24ad8148434d':
  Check BR device count before initiating role switch

8 years agoMerge "Check BR device count before initiating role switch" into mnc-dr-dev
Pankaj Kanwar [Tue, 22 Sep 2015 16:37:36 +0000 (16:37 +0000)]
Merge "Check BR device count before initiating role switch" into mnc-dr-dev

8 years agoam e31d4171: Fix PAN and AV role switch war
tturney [Mon, 21 Sep 2015 21:51:19 +0000 (21:51 +0000)]
am e31d4171: Fix PAN and AV role switch war

* commit 'e31d417196a377d6718cbccd54794097e095d0b1':
  Fix PAN and AV role switch war

8 years agoFix PAN and AV role switch war
tturney [Mon, 21 Sep 2015 17:49:09 +0000 (10:49 -0700)]
Fix PAN and AV role switch war

Bug: 23740164
Change-Id: Ib26a64b624c711443201adc4fde6b041ecb0dde1

8 years agoam 1cf812f6: Ensure thread priority is raised for media task / UIPC
Andre Eisenbach [Sat, 19 Sep 2015 16:07:40 +0000 (16:07 +0000)]
am 1cf812f6: Ensure thread priority is raised for media task / UIPC

* commit '1cf812f61823c981406f18b2577f43b69e80253d':
  Ensure thread priority is raised for media task / UIPC

8 years agoam ef7d8cb8: Change UHID socket to be non-blocking
Andre Eisenbach [Sat, 19 Sep 2015 16:07:40 +0000 (16:07 +0000)]
am ef7d8cb8: Change UHID socket to be non-blocking

* commit 'ef7d8cb8b012e77c9b0c596c5ad4b0ffb7e5dde9':
  Change UHID socket to be non-blocking