OSDN Git Service

android-x86/system-bt.git
6 years agoMerge "Remove unreachable code"
Yi Kong [Fri, 23 Feb 2018 18:50:15 +0000 (18:50 +0000)]
Merge "Remove unreachable code"
am: c92e4a58de

Change-Id: Id9ab73026b0cf09ee78aa07832414846b4d48856

6 years agoMerge "Remove unreachable code"
Treehugger Robot [Fri, 23 Feb 2018 18:32:54 +0000 (18:32 +0000)]
Merge "Remove unreachable code"

6 years agoFree the A2DP Source media alarm on the A2DP Source worker thread
Pavlin Radoslavov [Fri, 23 Feb 2018 17:32:42 +0000 (17:32 +0000)]
Free the A2DP Source media alarm on the A2DP Source worker thread
am: cc38c7fb41

Change-Id: I03ca80ed2cdeae946b0f6862268e90491a8fbe8c

6 years agoFree the A2DP Source media alarm on the A2DP Source worker thread
Pavlin Radoslavov [Fri, 23 Feb 2018 11:35:37 +0000 (03:35 -0800)]
Free the A2DP Source media alarm on the A2DP Source worker thread

Move the alarm_free() for the A2DP Source media alarm from
btif_a2dp_source_shutdown() to btif_a2dp_source_shutdown_delayed().
The latter is executed on the btif_a2dp_source_thread.
This avoids a race condition with btif_a2dp_source_audio_tx_stop_event()
that also might attempt to free the same alarm.

Test: Manual - unpair A2DP device while A2DP streaming.
Bug: 73741079
Change-Id: Ia871fcbeaae7c351878228e7605e65307a3d1583

6 years agoCorrect the value for BT_RC_NUM_APP for Multi-A2DP / Multi-AVRCP
Pavlin Radoslavov [Thu, 22 Feb 2018 03:42:07 +0000 (03:42 +0000)]
Correct the value for BT_RC_NUM_APP for Multi-A2DP / Multi-AVRCP
am: bd74060ea5

Change-Id: I2d92951f1f628194a0405f9f9fe8585d79d131b3

6 years agoReplace AVRC callback function pointers with base::Callback
Ajay Panicker [Thu, 22 Feb 2018 00:14:26 +0000 (00:14 +0000)]
Replace AVRC callback function pointers with base::Callback
am: 0d6d447a1e

Change-Id: I7675b68af5d6b2b67b746140ef9e827c8b2e24fc

6 years agoCorrect the value for BT_RC_NUM_APP for Multi-A2DP / Multi-AVRCP
Pavlin Radoslavov [Sat, 10 Feb 2018 23:23:49 +0000 (15:23 -0800)]
Correct the value for BT_RC_NUM_APP for Multi-A2DP / Multi-AVRCP

The original value of BT_RC_NUM_APP was incorrectly increased from
1 to 12 for the purpose of supporting up to 6 AVRCP connected devices.

The new BT_RC_NUM_APP value is corrected to 6:
  BT_RC_NUM_APP -> 1 -> 12 -> 6 (AVRCP-related - MaxDevices)

Test: Manual - connected to multiple headsets and selected each
      headset to play audio.
Bug: 70350399
Change-Id: I53e350c2bf1717b1f031a7a265adf3417cf3c513

6 years agoReplace AVRC callback function pointers with base::Callback
Ajay Panicker [Sun, 26 Nov 2017 00:27:33 +0000 (16:27 -0800)]
Replace AVRC callback function pointers with base::Callback

Replace function pointers with base::Callback for AVRCP to make
interfacing with the new AVRCP service easier.

Bug: 68812037
Test: Connect headset and see that Absolute volume and passthrough
commands still work.

Change-Id: I2ab20b7b59186aea413a736f43e926e17915a139

6 years agoRevert "Remove A2DP Source/Sink startup calls during A2DP initialization"
Andre Eisenbach [Wed, 21 Feb 2018 19:50:27 +0000 (19:50 +0000)]
Revert "Remove A2DP Source/Sink startup calls during A2DP initialization"
am: 57bb0b4934

Change-Id: I105fdb37da2c4e6b68bb54a0cdd765ac90bf6d2d

6 years agoRevert "Remove A2DP Source/Sink startup calls during A2DP initialization"
Andre Eisenbach [Wed, 21 Feb 2018 02:38:52 +0000 (02:38 +0000)]
Revert "Remove A2DP Source/Sink startup calls during A2DP initialization"

This reverts commit 83255478b0457f291d6a78795444ff3b895d4a90.

Reason for revert:
Prevents audio routing due to stale active device record if
Bluetooth is toggled without the process stopping completely
(ex. LE-only mode).

Bug: 72701090
Change-Id: Ifa798e63df14855b5bf0bd45e1557315cd51034d
Fixes: 73601288

6 years agoAdd packet classes needed for AVRCP Absolute Volume
Ajay Panicker [Wed, 21 Feb 2018 05:09:33 +0000 (05:09 +0000)]
Add packet classes needed for AVRCP Absolute Volume
am: 0c348413fb

Change-Id: If186451077737dc05095c34f27795c329776a94e

6 years agoAdd packet classes needed for AVRCP Absolute Volume
Ajay Panicker [Sat, 17 Feb 2018 19:22:48 +0000 (11:22 -0800)]
Add packet classes needed for AVRCP Absolute Volume

Add the Register Notification Request packet as well as the
packets Set Absolute Volume packet.

Bug: 68854188
Test: run host native test net_test_packets
Change-Id: Ie0d1f1fb23254c1353b6a73529ca93e92f231ed5

6 years agoRemove unreachable code
Yi Kong [Tue, 20 Feb 2018 17:48:09 +0000 (12:48 -0500)]
Remove unreachable code

The conditionals can never be true, as they are outside of the bounds of
their data types. Fixes tautological-constant-compare warning.

Bug: 72331526
Test: m
Change-Id: I74063fe19b319ee32e4c1c8b3a5fc7ed612586e3

6 years agoOSI: Protect cutils/properties.h from direct calls
Myles Watson [Sat, 17 Feb 2018 01:19:40 +0000 (01:19 +0000)]
OSI: Protect cutils/properties.h from direct calls
am: 158fe8e028

Change-Id: I8c163caf14182b5103c27a6c5e03bebbbdbdb59c

6 years agoOSI: Protect cutils/properties.h from direct calls
Myles Watson [Fri, 16 Feb 2018 21:11:04 +0000 (13:11 -0800)]
OSI: Protect cutils/properties.h from direct calls

Bug: None
Test: compile, no calls to property_get outside of libosi
      change PROPERTY_VALUE_MAX in osi/include/properties.h
      -> doesn't compile
Change-Id: I18c7b861782b1df4878da032ae3f0340dffdecab

6 years agoGet rid of BTA_HOST_INTERLEAVE_SEARCH
Jakub Pawlowski [Sat, 17 Feb 2018 00:05:44 +0000 (00:05 +0000)]
Get rid of BTA_HOST_INTERLEAVE_SEARCH
am: 56363e828c

Change-Id: I4aaae9428d15db914c046b99bffc502b00bba2e5

6 years agoGet rid of BTA_HOST_INTERLEAVE_SEARCH
Jakub Pawlowski [Fri, 16 Feb 2018 21:21:58 +0000 (13:21 -0800)]
Get rid of BTA_HOST_INTERLEAVE_SEARCH

Test: compilation
Change-Id: I6f91cd783fc1dd46cda55d3456a67eb78ba4c7ae

6 years agoMerge "Make STREAM_TO_UINT64 globally available"
Jakub Pawlowski [Fri, 16 Feb 2018 06:03:03 +0000 (06:03 +0000)]
Merge "Make STREAM_TO_UINT64 globally available"
am: 4a31432f8b

Change-Id: Ib1d680b37168d12283fbd5106fd22e9875692805

6 years agoMerge "Make STREAM_TO_UINT64 globally available"
Treehugger Robot [Fri, 16 Feb 2018 05:49:15 +0000 (05:49 +0000)]
Merge "Make STREAM_TO_UINT64 globally available"

6 years agoMerge "Add btif_config_(get/set)_uint64"
Jakub Pawlowski [Fri, 16 Feb 2018 05:37:54 +0000 (05:37 +0000)]
Merge "Add btif_config_(get/set)_uint64"
am: 22e48923d4

Change-Id: Ieb06347f92ab27708bfa0c96532af337773c59f2

6 years agoReduce spammy error log in gatt_attr.cc, plus minor logging improvements
Jakub Pawlowski [Fri, 16 Feb 2018 05:36:28 +0000 (05:36 +0000)]
Reduce spammy error log in gatt_attr.cc, plus minor logging improvements
am: ae2104f6ac

Change-Id: I169e0ae61b33d6062adb8c045779e9d53a9a2549

6 years agoMerge "Add btif_config_(get/set)_uint64"
Treehugger Robot [Fri, 16 Feb 2018 04:49:38 +0000 (04:49 +0000)]
Merge "Add btif_config_(get/set)_uint64"

6 years agoAdd btif_config_(get/set)_uint64
Jakub Pawlowski [Thu, 15 Feb 2018 18:09:03 +0000 (10:09 -0800)]
Add btif_config_(get/set)_uint64

Bug: 69623109
Test: added ConfigTest.config_get_uint64
Change-Id: Id2285a6f961f72d28912defad66663ddd05fb741

6 years agoReduce spammy error log in gatt_attr.cc, plus minor logging improvements
Jakub Pawlowski [Thu, 15 Feb 2018 23:38:39 +0000 (15:38 -0800)]
Reduce spammy error log in gatt_attr.cc, plus minor logging improvements

Test: compilation, observe colored log output on startup
Change-Id: I6671f5a900f15a57cc9b38b01aaec296002ad233

6 years agoMake STREAM_TO_UINT64 globally available
Jakub Pawlowski [Thu, 15 Feb 2018 18:18:29 +0000 (10:18 -0800)]
Make STREAM_TO_UINT64 globally available

Bug: 69623109
Change-Id: I38958dc16d42ab2396d3acd7605b63ec6a6c2dd8

6 years agoMerge "Final IBluetoothHearingAid.aidl improvements"
Jakub Pawlowski [Thu, 15 Feb 2018 05:34:25 +0000 (05:34 +0000)]
Merge "Final IBluetoothHearingAid.aidl improvements"
am: b053bd0bf6

Change-Id: I340b14e68ccc28eca81527d8985cc4411c6c93ea

6 years agoMerge "Final IBluetoothHearingAid.aidl improvements"
Treehugger Robot [Thu, 15 Feb 2018 04:14:43 +0000 (04:14 +0000)]
Merge "Final IBluetoothHearingAid.aidl improvements"

6 years agoFinal IBluetoothHearingAid.aidl improvements
Jakub Pawlowski [Wed, 14 Feb 2018 22:04:56 +0000 (14:04 -0800)]
Final IBluetoothHearingAid.aidl improvements

Use HiSyncId instead of CustomerId for unique hearing aid id, use proper
data type for it (64bit).
Make setVolume, adjustVolume return void, like for AVRCP.

Bug: 69623109
Test: compliance with the spec
Change-Id: I5fd51514793052d4ee2c3f9029eb75491145cc25

6 years agoRemove A2DP Source/Sink startup calls during A2DP initialization
Pavlin Radoslavov [Wed, 14 Feb 2018 21:16:25 +0000 (21:16 +0000)]
Remove A2DP Source/Sink startup calls during A2DP initialization
am: 83255478b0

Change-Id: Ifa26a3efcbca74cdfe187e27871dc2123adfaa31

6 years agoRemove A2DP Source/Sink startup calls during A2DP initialization
Pavlin Radoslavov [Wed, 14 Feb 2018 18:26:13 +0000 (10:26 -0800)]
Remove A2DP Source/Sink startup calls during A2DP initialization

Don't call btif_a2dp_source_startup() / btif_a2dp_sink_startup()
inside BtifAvSource::Init() / BtifAvSink::Init() .
Those calls are already happening at the right time later during
BtifAvSource::SetActivePeer() / BtifAvSink::SetActivePeer()

Bug: 72701090
Test: Manual with multiple headsets
Change-Id: I634a2c90a7758891565c97e86b83335608ffab69

6 years agoUse correct call btif_a2dp_sink_startup() for Sink peers
Pavlin Radoslavov [Wed, 14 Feb 2018 14:24:55 +0000 (14:24 +0000)]
Use correct call btif_a2dp_sink_startup() for Sink peers
am: b600f6b6fc

Change-Id: Ifaa3f3cb8c519999cf08273205dccc579f825157

6 years agoUse correct call btif_a2dp_sink_startup() for Sink peers
Pavlin Radoslavov [Wed, 14 Feb 2018 12:12:54 +0000 (04:12 -0800)]
Use correct call btif_a2dp_sink_startup() for Sink peers

Replaced an incorrect call to btif_a2dp_source_startup() with
btif_a2dp_sink_startup() inside BtifAvSink::SetActivePeer()

Also, minor cleanup: fix log messages, add missing description for
some of the methods.

Bug: 72701090
Test: Manual with Headet
Change-Id: I0620833b02bd9012fea63ce2ce5e3c4c74d27bf7

6 years agoA2DP: Cleanup UIPC when no active device
Hansong Zhang [Wed, 14 Feb 2018 07:15:46 +0000 (07:15 +0000)]
A2DP: Cleanup UIPC when no active device
am: f88552cdd8

Change-Id: If29bd610e0d1d9c63e1337363b33e8f1160b2ccb

6 years agoA2DP: Cleanup UIPC when no active device
Hansong Zhang [Fri, 2 Feb 2018 02:02:53 +0000 (18:02 -0800)]
A2DP: Cleanup UIPC when no active device

* Modified UIPC to support multiple users
* A2DP now calls UIPC_Close() when it has no active device, and calls
  UIPC_Init() when it has an active device

Bug: 72701090
Test: Carkits with A2DP
Change-Id: Ic1b4b1be2aa01c9896883e3cb2a668d7a43316f9

6 years agoMerge "Add AVRCP Browse packets to the completed packets."
Ajay Panicker [Wed, 14 Feb 2018 04:00:26 +0000 (04:00 +0000)]
Merge "Add AVRCP Browse packets to the completed packets."
am: 37a143f49a

Change-Id: Idcfb9df419b035f7f4a7fe335b4a97bab00db29a

6 years agoMerge "Add AVRCP Browse packets to the completed packets."
Treehugger Robot [Wed, 14 Feb 2018 03:48:51 +0000 (03:48 +0000)]
Merge "Add AVRCP Browse packets to the completed packets."

6 years agoMerge "btif: Remove unused synchronization in event_cleanup_stack"
Manu Viswanadhan [Wed, 14 Feb 2018 03:13:52 +0000 (03:13 +0000)]
Merge "btif: Remove unused synchronization in event_cleanup_stack"
am: 001f5a00b2

Change-Id: I05c6256acc7d5da4cede7bd20fcc0b8e4ff11837

6 years agoMerge "btif: Remove unused synchronization in event_cleanup_stack"
Treehugger Robot [Wed, 14 Feb 2018 03:06:38 +0000 (03:06 +0000)]
Merge "btif: Remove unused synchronization in event_cleanup_stack"

6 years agoMerge "IBluetoothHearingAid.aidl"
Jakub Pawlowski [Wed, 14 Feb 2018 02:27:25 +0000 (02:27 +0000)]
Merge "IBluetoothHearingAid.aidl"
am: 03fa65fc71

Change-Id: Id8bacf4d75ba1b27f1f496bda7095bb75bcb5192

6 years agoMerge "IBluetoothHearingAid.aidl"
Treehugger Robot [Wed, 14 Feb 2018 02:13:41 +0000 (02:13 +0000)]
Merge "IBluetoothHearingAid.aidl"

6 years agoMerge "Adjust buffer length to fit in sdp_copy_raw_data()"
Venkata Jagadeesh Garaga [Wed, 14 Feb 2018 01:33:58 +0000 (01:33 +0000)]
Merge "Adjust buffer length to fit in sdp_copy_raw_data()"
am: 29cb0b048b

Change-Id: Ia41425df56765dd9562f7ba65720751fd705dfc8

6 years agoAdd AVRCP Browse packets to the completed packets.
Ajay Panicker [Tue, 30 Jan 2018 18:36:45 +0000 (10:36 -0800)]
Add AVRCP Browse packets to the completed packets.

Also add class representations for the following packet types:
  AVRCP Browse Packet
    AVRCP Change Path
    AVRCP Get Folder Items
    AVRCP Get Item Attributes
    AVRCP Set Browsed Player
    AVRCP Get Total Number of Items
    AVRCP Play Item

Bug: 68854188
Test: run host native test net_test_packets
Change-Id: I0bc682b11ec9181cfe1ed92678bb869ff3ef5740

6 years agoMerge "Adjust buffer length to fit in sdp_copy_raw_data()"
Treehugger Robot [Wed, 14 Feb 2018 01:20:48 +0000 (01:20 +0000)]
Merge "Adjust buffer length to fit in sdp_copy_raw_data()"

6 years agoFactor out libchrome_support_defaults
Myles Watson [Wed, 14 Feb 2018 01:10:32 +0000 (01:10 +0000)]
Factor out libchrome_support_defaults
am: 65d24fb451

Change-Id: I392d30ac3ee7fb85e4121600b351971da6888508

6 years agobtif: Remove unused synchronization in event_cleanup_stack
Manu Viswanadhan [Fri, 14 Oct 2016 11:35:35 +0000 (17:05 +0530)]
btif: Remove unused synchronization in event_cleanup_stack

Use Case: Repeated BT ON/OFF

Failure: FD leak is observed with ON/OFF stress test
which eventually leads to crash due to unavailability
of FDs.

Steps:
BT ON/OFF

Root Cause: During stack cleanup an unused future
structure is created which is not freed, leading to FD
leak.

Fix: Remove the creation of the future structure

Test: BT ON/OFF
Fixes: 36019324
Change-Id: Id5945da87f00eb7ab77a5f217c95cc43f0136e06

6 years agoIBluetoothHearingAid.aidl
Jakub Pawlowski [Tue, 13 Feb 2018 18:12:00 +0000 (10:12 -0800)]
IBluetoothHearingAid.aidl

Bug: 69623109
Test: Spec was reviewed, tests will be included with client/server implementation
Change-Id: I8c972ac0e4aa908a14893c957ae07dd2244abbfe

6 years agoAdjust buffer length to fit in sdp_copy_raw_data()
Venkata Jagadeesh Garaga [Thu, 15 Sep 2016 10:21:40 +0000 (15:51 +0530)]
Adjust buffer length to fit in sdp_copy_raw_data()

Align copy length with source buffer offset so that copy length will be
in boundary of the allocated buffer size

Test: Manual tested with DECK speaker.
Fixes: 35864526
Change-Id: If1a49e46e2948346226fbc96d7c2b56244cd60cc

6 years agoFactor out libchrome_support_defaults
Myles Watson [Tue, 13 Feb 2018 18:33:54 +0000 (10:33 -0800)]
Factor out libchrome_support_defaults

Disable Mac support for host binaries in one place, since
the dependency is based on libchrome support.

Test: build
Change-Id: I6641e18deffdff5205da181ad97e8b2892073a8f

6 years agoMerge "Remove libbluetooth-system requirement."
Steven Moreland [Tue, 13 Feb 2018 17:49:49 +0000 (17:49 +0000)]
Merge "Remove libbluetooth-system requirement."
am: a45d385323

Change-Id: I7e93d58e493338a6bbd01d68ad5c9aedd05107c9

6 years agoMerge "Remove libbluetooth-system requirement."
Treehugger Robot [Tue, 13 Feb 2018 17:34:05 +0000 (17:34 +0000)]
Merge "Remove libbluetooth-system requirement."

6 years agoAdd more details in native Bluetooth debug logs
Stanley Tng [Tue, 13 Feb 2018 16:54:26 +0000 (16:54 +0000)]
Add more details in native Bluetooth debug logs
am: 273ffd858e

Change-Id: I3a1ab4082b78e319ed71468ce655afffc9123e0e

6 years agoMake loghex properly count numer length
Jakub Pawlowski [Tue, 13 Feb 2018 16:54:20 +0000 (16:54 +0000)]
Make loghex properly count numer length
am: 78b3e7b303

Change-Id: I303112998d7629c8a26a698c548b80bad58157fd

6 years agoAdd more details in native Bluetooth debug logs
Stanley Tng [Thu, 8 Feb 2018 20:26:51 +0000 (12:26 -0800)]
Add more details in native Bluetooth debug logs

As part of debugging a security/pairing issue, these logs are modified
to give better debug information.

Test: compiled
Bug: 71364658
Change-Id: I742cc7dda0afc6350e881c22d03bdc1c69d37d88

6 years agoMake loghex properly count numer length
Jakub Pawlowski [Mon, 12 Feb 2018 21:18:33 +0000 (13:18 -0800)]
Make loghex properly count numer length

Test: manual logs observation
Change-Id: I7ea8d4afa5ea980f11067a8dd920a1735cf28993

6 years agoRemove libbluetooth-system requirement.
Steven Moreland [Mon, 12 Feb 2018 22:40:07 +0000 (14:40 -0800)]
Remove libbluetooth-system requirement.

This module doesn't exist and it being missing was
silently ignored.

Bug: 7456955
Test: no longer receive an error for this.
Change-Id: Ib84b592d25e19b2c6b0d20466015553fe57f5bf8

6 years agoAVRCP: Don't fail in set_volume on disconnected devices
Ajay Panicker [Mon, 12 Feb 2018 20:21:05 +0000 (20:21 +0000)]
AVRCP: Don't fail in set_volume on disconnected devices
am: a7b668b6bc

Change-Id: I4083a6d60f506e1bc7bf882ad97cc39af7796ea1

6 years agoAVRCP: Don't fail in set_volume on disconnected devices
Ajay Panicker [Sat, 10 Feb 2018 02:42:56 +0000 (18:42 -0800)]
AVRCP: Don't fail in set_volume on disconnected devices

Test: Change the volume on a headset with absolute volume
Bug: 72987704
Change-Id: Ia1acd28c51707e7b71e47140aaded0298ba4e8aa

6 years agoMerge "Build: Remove DCHECK_ALWAYS_ON flag"
Jack He [Sat, 10 Feb 2018 02:03:05 +0000 (02:03 +0000)]
Merge "Build: Remove DCHECK_ALWAYS_ON flag"
am: 51c084e434

Change-Id: Ia3fe3df2c4344d46844df275353668699dc029de

6 years agoMerge "Build: Remove DCHECK_ALWAYS_ON flag"
Treehugger Robot [Sat, 10 Feb 2018 00:28:54 +0000 (00:28 +0000)]
Merge "Build: Remove DCHECK_ALWAYS_ON flag"

6 years agoMerge "A2DP: Construct BtWorkerThread's message loop on designated thread"
Jack He [Sat, 10 Feb 2018 00:03:21 +0000 (00:03 +0000)]
Merge "A2DP: Construct BtWorkerThread's message loop on designated thread"
am: 199bf77055

Change-Id: Iada4a606411d0811bc60b3fc2cd63ef54e2bcb16

6 years agoMerge "A2DP: Construct BtWorkerThread's message loop on designated thread"
Treehugger Robot [Fri, 9 Feb 2018 22:14:27 +0000 (22:14 +0000)]
Merge "A2DP: Construct BtWorkerThread's message loop on designated thread"

6 years agoBuild: Remove DCHECK_ALWAYS_ON flag
Jack He [Fri, 9 Feb 2018 11:02:46 +0000 (03:02 -0800)]
Build: Remove DCHECK_ALWAYS_ON flag

* According to libchrome documentation, DCHECK_ALWAYS_ON must be set or
  unset on both our library and libchrome. Flag mis-match may cause
  hard-to-debug segfaults which we experience when using base::Thread

Change-Id: If3740196340b02d2d0bb41e08f0b551d47f49864
Fixes: 73147157
Test: make

6 years agoA2DP: Construct BtWorkerThread's message loop on designated thread
Jack He [Thu, 8 Feb 2018 01:33:16 +0000 (17:33 -0800)]
A2DP: Construct BtWorkerThread's message loop on designated thread

* Moves BtWorkerThread's message_loop_'s construction to the
  Run() method run by the designated message_loop_thread_ so that
  message_loop_'s construction and execution are on the same thread
* Makes BtWorkerThread::StartUp() blocking until message_loop_
  starts running using std:condition_variable
* Modify BtWorkerThread::DoInThread() to return boolean

Detail:

Before this CL, BtWorkerThread.message_loop_ is created on Java main
thread and run on message_loop_thread_. During clean-up, A2DP shutdown
message_loop_thread_, rendering the posted_from field in current_pending_task_
invalid. However, although the runner thread is killed, the owner
thread, the Java main thread, is still active. Therefore, we we try to
PostTask() from Java main thread after message_loop_thread_ is killed,
we will try to access an invalid Location object. This results in a
SEGV_MAPPER SEGFAULT. Thus, the fix would be creating and running the
message loop on the same thread so that Java main thread won't have an
invalid message loop after the worker thread is killed.

This can be detected earlier through adding "-DDCHECK_ALWAYS_ON" in both
libchrome and libbluetooth and libchrome will validate the thread for
us.

Fixes: 72831931
Test: Test with DCHECK_ALWAYS_ON in both libbluetooth and libchrome
      ProfileServiceTest stress tests

Change-Id: I7b196b8c1113c2758c2b82ddf4d13c46352bb620

6 years agoMerge "Prevent spurious connect failures callback"
Stanley Tng [Fri, 9 Feb 2018 04:35:55 +0000 (04:35 +0000)]
Merge "Prevent spurious connect failures callback"
am: 29ff71470e

Change-Id: If8b053eaf419f3f44fcb8877f1e0a49f028d43cf

6 years agoMerge "Prevent spurious connect failures callback"
Treehugger Robot [Fri, 9 Feb 2018 04:19:31 +0000 (04:19 +0000)]
Merge "Prevent spurious connect failures callback"

6 years agobtif_rc - make set_volume easier to comprehend
Jakub Pawlowski [Thu, 8 Feb 2018 20:44:14 +0000 (20:44 +0000)]
btif_rc - make set_volume easier to comprehend
am: 884314c1d9

Change-Id: I71e44ac5ba5bd2762228a87bb6c61c5fb5f824d9

6 years agobtif_rc - make set_volume easier to comprehend
Jakub Pawlowski [Thu, 8 Feb 2018 18:26:35 +0000 (10:26 -0800)]
btif_rc - make set_volume easier to comprehend

Test: compilation
Change-Id: I73c01cb5e3a2da1cdb9acc3b7fe3114f4af7373e

6 years agoPrevent spurious connect failures callback
Stanley Tng [Thu, 8 Feb 2018 01:59:04 +0000 (17:59 -0800)]
Prevent spurious connect failures callback

Send connection failures only if the event's mac address matches the
currently bonding device.

Test: Run SL4A "BleCocTest:test_coc_secured_connection_throughput"
Bug: 71364658
Change-Id: I64243996ae37dd376ed36363a7d749b4b5ab36b2

6 years agoMerge "Make sure task_runner is valid when we call PostTask on it"
Jakub Pawlowski [Thu, 8 Feb 2018 05:11:33 +0000 (05:11 +0000)]
Merge "Make sure task_runner is valid when we call PostTask on it"
am: c0df1edbf1

Change-Id: Ic38745138958a7e9c5d58a6e81742deb101c5d43

6 years agoMerge "Make sure task_runner is valid when we call PostTask on it"
Treehugger Robot [Thu, 8 Feb 2018 05:02:48 +0000 (05:02 +0000)]
Merge "Make sure task_runner is valid when we call PostTask on it"

6 years agoCall BTA_GATTS_AddService on correct thread
Jakub Pawlowski [Thu, 8 Feb 2018 02:29:01 +0000 (02:29 +0000)]
Call BTA_GATTS_AddService on correct thread
am: 541862ce72

Change-Id: I40487af3885e01b95fddb9f8260992e5995c11b2

6 years agoCall BTA_GATTS_AddService on correct thread
Jakub Pawlowski [Wed, 7 Feb 2018 19:37:18 +0000 (11:37 -0800)]
Call BTA_GATTS_AddService on correct thread

Right now BTA_GATTS_AddService is incorrectly called on btif thread.
This might lead to situations where it is executed while bta thread is
already cleaning up, and deleted the control blocks, resulting in crashes.
From now on, execute it on bta thread. This ensures that it is executed
before control blocks are freed.

Test: sl4a GattClientTest
Bug: 73054849
Change-Id: Ie2bf80414bceba2590c21d3825c78fbb58449520

6 years agoMake sure task_runner is valid when we call PostTask on it
Jakub Pawlowski [Wed, 7 Feb 2018 02:50:10 +0000 (18:50 -0800)]
Make sure task_runner is valid when we call PostTask on it

Test: runtest -j32 bluetooth -c com.android.bluetooth.btservice.ProfileServiceTest
Change-Id: I89426f7eb1204af9def0fa927dfeef1d5aec689f

6 years agoHBS1098 Paring failure after connection with Car-Audio
Srinu Jella [Wed, 7 Feb 2018 01:26:13 +0000 (01:26 +0000)]
HBS1098 Paring failure after connection with Car-Audio
am: 0c0d2975d7

Change-Id: Iee1c51c7581f2236788eab88f74912ba47ebc3ab

6 years agoHBS1098 Paring failure after connection with Car-Audio
Srinu Jella [Fri, 24 Feb 2017 04:31:32 +0000 (10:01 +0530)]
HBS1098 Paring failure after connection with Car-Audio

Use Case: HBS1100 Paring failure after connection with Car-Audio

Steps:
1. Establish connection with Volkswagen CK, and then playback music
2. Try to pair with HBS-1100

Failure: DUT going for temporary pairing with HBS1100 when request received
while remote name is not present

Root Cause: As auth_req is not handled properly in bta_dm_pinname_cback during
RNR, auth_req variable got reset and DUT is going for temporary pairing.

Fix: local and remote auth_req and local and remote IO capabilities stored and
retained in call backs properly.

Test: Manually tested

Fixes: 35735338

Change-Id: I83382aac9fc1197d7fb31feedbd0fe3b35de87e8

6 years agoMerge changes from topic "coc-test-increase-data-len"
Stanley Tng [Tue, 6 Feb 2018 03:07:54 +0000 (03:07 +0000)]
Merge changes from topic "coc-test-increase-data-len"
am: b46c3bf557

Change-Id: Ic9340baf7dde702a26e954395acf5e64314d1b5d

6 years agoLE Read Maximum Data Length during startup
Jakub Pawlowski [Tue, 6 Feb 2018 03:07:20 +0000 (03:07 +0000)]
LE Read Maximum Data Length during startup
am: 4f0c5b5838

Change-Id: If6d467f483132101f649e4ebdb1d26434b74ca12

6 years agoMerge changes from topic "coc-test-increase-data-len"
Stanley Tng [Tue, 6 Feb 2018 01:02:33 +0000 (01:02 +0000)]
Merge changes from topic "coc-test-increase-data-len"

* changes:
  Add function to change LE Tx Data Length
  LE Read Maximum Data Length during startup

6 years agoUnify logging in btif_sock_l2cap.cc
Jakub Pawlowski [Mon, 5 Feb 2018 18:37:50 +0000 (18:37 +0000)]
Unify logging in btif_sock_l2cap.cc
am: 35ee023655

Change-Id: If90184c2211b7b3ce1bd405611bb83f929b6274a

6 years agoAdd function to change LE Tx Data Length
Stanley Tng [Tue, 23 Jan 2018 01:08:03 +0000 (17:08 -0800)]
Add function to change LE Tx Data Length

As part of new SL4A tests for LE CoC to measure data throughput, this
commit adds a function to modify the LE Tx Data Length parameter to its
maximum.

Test: Ran the new ACTS Tests for LE CoC; BtCocTest and BtCoc2ConnTest
Bug: 70683224
Change-Id: I06d3f95a339dcdc310a18bcf17fbca8623f849d6

6 years agoLE Read Maximum Data Length during startup
Jakub Pawlowski [Sat, 3 Feb 2018 06:05:11 +0000 (22:05 -0800)]
LE Read Maximum Data Length during startup

Test: verified in sl4a test for LE CoC throughput
Bug: 68359837
Change-Id: Ie424fef50f6f355d2919d9304bd062e4604c3341

6 years agoUnify logging in btif_sock_l2cap.cc
Jakub Pawlowski [Fri, 2 Feb 2018 19:47:09 +0000 (11:47 -0800)]
Unify logging in btif_sock_l2cap.cc

Test: compilation
Bug: 68359837
Change-Id: I71edd3d04734471b6cd586c323aa6b335f903fae

6 years agoRemove Mac host libraries build depending on libchrome.
Hidehiko Abe [Mon, 5 Feb 2018 10:36:11 +0000 (10:36 +0000)]
Remove Mac host libraries build depending on libchrome.
am: 30aa9c9447

Change-Id: I6b5463133e13ff3ac05141cdd0a70227ce3bd8de

6 years agoRemove Mac host libraries build depending on libchrome.
Hidehiko Abe [Wed, 31 Jan 2018 07:59:18 +0000 (16:59 +0900)]
Remove Mac host libraries build depending on libchrome.

Libchrome will drop the support for Mac host.
This is the preparation.

Bug: 72618679
Test: Built on Mac.
Change-Id: I37982210a1da74d56c1da3227c5887685cd8b6cb

6 years agoMerge "Add function to update LE connection parameters"
Stanley Tng [Sat, 3 Feb 2018 04:10:54 +0000 (04:10 +0000)]
Merge "Add function to update LE connection parameters"
am: 2fc4777ff1

Change-Id: I323c50150dc691d12ffd80233238490d2d1346c9

6 years agoMerge "Add function to update LE connection parameters"
Stanley Tng [Sat, 3 Feb 2018 01:36:03 +0000 (01:36 +0000)]
Merge "Add function to update LE connection parameters"

6 years agoMaximize L2CAP socket MTU
Jakub Pawlowski [Sat, 3 Feb 2018 01:21:04 +0000 (01:21 +0000)]
Maximize L2CAP socket MTU
am: 622bd222e4

Change-Id: Ia1a74b45b0fdea696c17ff23b39503627aac262a

6 years agoBTA_JvL2capConnect simplification
Jakub Pawlowski [Fri, 2 Feb 2018 22:04:26 +0000 (22:04 +0000)]
BTA_JvL2capConnect simplification
am: 3538b64d97

Change-Id: I0ac5d16c8bab410f2fb6d2ca99811ae2d2768e31

6 years agoSimplify btSock_start_l2cap_server_l
Jakub Pawlowski [Fri, 2 Feb 2018 22:04:18 +0000 (22:04 +0000)]
Simplify btSock_start_l2cap_server_l
am: e5e2dd556b

Change-Id: I0e6757ebdfb4b85cfaa60285960c70b82f669044

6 years agoAdd function to update LE connection parameters
Stanley Tng [Thu, 4 Jan 2018 23:49:35 +0000 (15:49 -0800)]
Add function to update LE connection parameters

As part of new SL4A tests for LE CoC to measure data throughput
performance, this commit will add a function to enable the CoC Facade
to modify the LE Connection Parameters especially the Connection
Intervals. Also, add some debug logs.

Test: Ran the new ACTS Tests for LE CoC
Bug: 70683224
Change-Id: If7665cf70a18756a58556c60cb9ce2a587ae691f

6 years agoMaximize L2CAP socket MTU
Jakub Pawlowski [Tue, 30 Jan 2018 23:40:03 +0000 (15:40 -0800)]
Maximize L2CAP socket MTU

Introduce L2CAP_SDU_LENGTH_LE_MAX constant, and use it for LE CoC
sockets, while still keeping the old value for Classic sockets.

This also require change in how we send the rx_mtu up the stack - it
must be read from the socket property.

Additionally in this patch, l2cap_socket.mtu is renamed to tx_mtu to
distinguish it from rx_mtu. Assignment of this variable is also added
when we receive it from the remote.

Bug: 68359837
Test: tranfer file using OPP, do obex, run LE CoC tests. Run tests
between device with this patch, and older android phones.
Change-Id: Iffa20a6c6a93d5787bada7bf28655e9880d8c1a0

6 years agoBTA_JvL2capConnect simplification
Jakub Pawlowski [Wed, 31 Jan 2018 06:35:11 +0000 (22:35 -0800)]
BTA_JvL2capConnect simplification

Test: manual
Change-Id: I18ac5ac451490e0d3c0c9fc5daa9f8d64ff19bd5

6 years agoSimplify btSock_start_l2cap_server_l
Jakub Pawlowski [Wed, 31 Jan 2018 05:46:08 +0000 (21:46 -0800)]
Simplify btSock_start_l2cap_server_l

Test: run OPP, chekc LE CoC
Change-Id: I4091ea8065ba913966fcd14495b90b2c565fdba3

6 years agoMerge changes I00560443,I2e39bd31
Jakub Pawlowski [Fri, 2 Feb 2018 06:54:26 +0000 (06:54 +0000)]
Merge changes I00560443,I2e39bd31
am: 70a0c9e436

Change-Id: Ib9a6ab8b75066a0b73dc3d1f39312ca0ed3905b9

6 years agoMerge changes I00560443,I2e39bd31
Treehugger Robot [Fri, 2 Feb 2018 05:00:19 +0000 (05:00 +0000)]
Merge changes I00560443,I2e39bd31

* changes:
  Stricter check of the MTU size in the BTIF L2CAP socket
  Fix naming error in btif l2cap MPS -> MTU

6 years agoMerge "Add more checks to LE Connection Parameters"
Stanley Tng [Fri, 2 Feb 2018 04:00:16 +0000 (04:00 +0000)]
Merge "Add more checks to LE Connection Parameters"
am: 85807ed9b6

Change-Id: I4ac8135b166abc3d49c0ed4f224b6da79021bba0

6 years agoMerge "Metrics: Dump native metrics to Java as std:string"
Jack He [Fri, 2 Feb 2018 03:51:47 +0000 (03:51 +0000)]
Merge "Metrics: Dump native metrics to Java as std:string"
am: a53c929550

Change-Id: Iafc3fc2b7aa484539961210e6bbf094594cf5367

6 years agoMerge "Minimize amount of Flow Control packets for L2CAP CoC"
Jakub Pawlowski [Fri, 2 Feb 2018 03:51:07 +0000 (03:51 +0000)]
Merge "Minimize amount of Flow Control packets for L2CAP CoC"
am: f262cb9f93

Change-Id: I4a0d546d06a53e98977982a179e4687ab0a5e9aa

6 years agoMerge "PDU data lengty computation fix"
Jakub Pawlowski [Fri, 2 Feb 2018 03:50:51 +0000 (03:50 +0000)]
Merge "PDU data lengty computation fix"
am: edde455514

Change-Id: I620a686465baca6f0ef65ff211a459076bca1b3d

6 years agoMerge "Add more checks to LE Connection Parameters"
Treehugger Robot [Fri, 2 Feb 2018 01:41:53 +0000 (01:41 +0000)]
Merge "Add more checks to LE Connection Parameters"