OSDN Git Service

android-x86/system-bt.git
5 years agoMerge "Disable AVRCP position change in silence mode"
Ugo Yu [Thu, 24 Jan 2019 18:28:38 +0000 (10:28 -0800)]
Merge "Disable AVRCP position change in silence mode"
am: 869ae99427

Change-Id: Ia0c8ae4a17a0153a620a9f9aca3042f737512f71

5 years agoMerge "Disable AVRCP position change in silence mode"
Treehugger Robot [Thu, 24 Jan 2019 18:08:05 +0000 (18:08 +0000)]
Merge "Disable AVRCP position change in silence mode"

5 years ago[automerger skipped] Merge "DO NOT MERGE: Revert "Add libprocessgroup dependency...
Suren Baghdasaryan [Thu, 24 Jan 2019 07:08:32 +0000 (23:08 -0800)]
[automerger skipped] Merge "DO NOT MERGE: Revert "Add libprocessgroup dependency and fix sched_policy include""
am: 69eb5b3551 -s ours
am skip reason: subject contains skip directive

Change-Id: I8680db89a05f5eaf4b605c66d85dcea7ed43acf3

5 years agoMerge "DO NOT MERGE: Revert "Add libprocessgroup dependency and fix sched_policy...
Suren Baghdasaryan [Thu, 24 Jan 2019 06:57:55 +0000 (06:57 +0000)]
Merge "DO NOT MERGE: Revert "Add libprocessgroup dependency and fix sched_policy include""

5 years agoMerge "GATT connection_manager: Fix logic to remove white list device"
Hansong Zhang [Thu, 24 Jan 2019 06:38:45 +0000 (22:38 -0800)]
Merge "GATT connection_manager: Fix logic to remove white list device"
am: 4d834e9d0e

Change-Id: Ib17d50227975b604eda1f6fa845ca0c9bda19e95

5 years agoMerge "GATT connection_manager: Fix logic to remove white list device"
Treehugger Robot [Thu, 24 Jan 2019 06:26:29 +0000 (06:26 +0000)]
Merge "GATT connection_manager: Fix logic to remove white list device"

5 years agoDO NOT MERGE: Revert "Add libprocessgroup dependency and fix sched_policy include"
Suren Baghdasaryan [Thu, 24 Jan 2019 04:54:50 +0000 (20:54 -0800)]
DO NOT MERGE: Revert "Add libprocessgroup dependency and fix sched_policy include"

This reverts commit 8ef9dc6f3f334b444bbfffae18185a36d6a1f5b5.

Reason for revert: Broke AOSP

Change-Id: If6b0121b5ce60915accf705dbbba268cc4a96203
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
5 years agoMerge "Add a new isAshaHearingAidSupported method to Bluetooth Manager"
Stanley Tng [Thu, 24 Jan 2019 02:03:59 +0000 (18:03 -0800)]
Merge "Add a new isAshaHearingAidSupported method to Bluetooth Manager"
am: aff79b9db4

Change-Id: I073b587aa6d41b551bdd6a3f6e8b17955cfd4130

5 years agoMerge "Add a new isAshaHearingAidSupported method to Bluetooth Manager"
Treehugger Robot [Thu, 24 Jan 2019 01:34:25 +0000 (01:34 +0000)]
Merge "Add a new isAshaHearingAidSupported method to Bluetooth Manager"

5 years agoDisable AVRCP position change in silence mode
Ugo Yu [Sat, 12 Jan 2019 19:12:30 +0000 (03:12 +0800)]
Disable AVRCP position change in silence mode

* Save the silence mode information in BtifAvPeer send from
  JAVA, which helps AVRCP devices to check whether device
  silence mode is enabled or not.
* Stop sending AVRCP position change event to remote when
  silence mode is enabled.

Bug: 112323989
Test: Manual
Change-Id: I99d88a31caea062790c4ff0dc9199ed82f058067

5 years agoGATT connection_manager: Fix logic to remove white list device
Hansong Zhang [Wed, 23 Jan 2019 22:03:24 +0000 (14:03 -0800)]
GATT connection_manager: Fix logic to remove white list device

Device in bgconn_dev will be removed when no app is using it. Fix the
logic to prevent from use after free.

Bug: 123297334
Test: Manual
Change-Id: I35a0191ba48fabbcf28525388dfa63b93b20c96d

5 years agoMerge "Add binder interfaces for metadata APIs"
Ugo Yu [Wed, 23 Jan 2019 07:50:47 +0000 (23:50 -0800)]
Merge "Add binder interfaces for metadata APIs"
am: 5ac84e7897

Change-Id: Ifaf958504f373f611788235d8b2aa470a99c9d4b

5 years agoMerge "Add binder interfaces for metadata APIs"
Treehugger Robot [Wed, 23 Jan 2019 07:38:06 +0000 (07:38 +0000)]
Merge "Add binder interfaces for metadata APIs"

5 years agoFix the LE CoC SL4A Test failure due to length check
Stanley Tng [Wed, 23 Jan 2019 01:07:35 +0000 (17:07 -0800)]
Fix the LE CoC SL4A Test failure due to length check
am: 07ff96727c

Change-Id: I06461df508cd8f0246b2673db2c1810aab3c9322

5 years agoAdd a new isAshaHearingAidSupported method to Bluetooth Manager
Stanley Tng [Mon, 14 Jan 2019 00:13:09 +0000 (16:13 -0800)]
Add a new isAshaHearingAidSupported method to Bluetooth Manager

As part of adding isHearingAidsProfileSupported method to
BluetoothAdapter, this new method is added to query the support state.

Test: Manual testing with configuration enabled and disabled.
Bug: 119617521
Change-Id: I97151443c6a5bd459a7c73c61f7fa7d5a386909a
(cherry picked from commit 7d51ff78280a9e03949ffed8f7f61d5226c3a27b)

5 years agoAdd binder interfaces for metadata APIs
Ugo Yu [Sat, 12 Jan 2019 00:13:16 +0000 (08:13 +0800)]
Add binder interfaces for metadata APIs

Bug: 121051445
Test: build pass

Change-Id: Icd51b7cc0a4dec5a2bffec4ded67caffeedb126b

5 years agoFix the LE CoC SL4A Test failure due to length check
Stanley Tng [Tue, 11 Dec 2018 22:45:13 +0000 (14:45 -0800)]
Fix the LE CoC SL4A Test failure due to length check

Fix a regression from the previous CL that checks the buffer length
before doing a memcpy. The previous check is too strict causing valid
sized buffers to be rejected. The length check is incorrect and off by the header size.

Bug: 117306992
Bug: 112321180
Test: Run the LE CoC SL4A Tests
Change-Id: I9bbcd58460a02394010f74a18e9ebdbcd546d43d
Merged-In: I9bbcd58460a02394010f74a18e9ebdbcd546d43d
(cherry picked from commit fcb1994de1f6ee34b8dc6804a2b32e20bf138073)

5 years agoAdd libprocessgroup dependency and fix sched_policy include
Suren Baghdasaryan [Tue, 22 Jan 2019 21:24:03 +0000 (13:24 -0800)]
Add libprocessgroup dependency and fix sched_policy include
am: 8ef9dc6f3f

Change-Id: If5ec34928a56d7d0f6daeb16b91a693ca0646a03

5 years agoAdd libprocessgroup dependency and fix sched_policy include
Suren Baghdasaryan [Thu, 20 Dec 2018 01:36:37 +0000 (17:36 -0800)]
Add libprocessgroup dependency and fix sched_policy include

libbt-utils uses set_sched_policy which is now implemented inside
libprocessgroup. Add required dependency and header file include.

Exempt-From-Owner-Approval: janitorial

Bug: 111307099
Test: builds, boots

Merged-In: I4d0dcfad22b30ac249a7874b42a7121e2ffedadb
Change-Id: I4d0dcfad22b30ac249a7874b42a7121e2ffedadb
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
5 years agoMerge "Metric: Add logging for link layer connection events"
Jack He [Thu, 17 Jan 2019 22:57:39 +0000 (14:57 -0800)]
Merge "Metric: Add logging for link layer connection events"
am: e6b80778a8

Change-Id: Icaf506c40c16b12b63cac0c5327f8c68f9033c9e

5 years ago[automerger skipped] Merge "DO NOT MERGE - Merge pie-platform-release (PPRL.190105...
Xin Li [Thu, 17 Jan 2019 22:44:52 +0000 (14:44 -0800)]
[automerger skipped] Merge "DO NOT MERGE - Merge pie-platform-release (PPRL.190105.001) into master"
am: f15c1197f5 -s ours
am skip reason: subject contains skip directive

Change-Id: Ib82454185f6d69fa695354c1ce488ad42ad990aa

5 years agoMerge "Metric: Add logging for link layer connection events"
Treehugger Robot [Thu, 17 Jan 2019 22:30:43 +0000 (22:30 +0000)]
Merge "Metric: Add logging for link layer connection events"

5 years ago[automerger skipped] DO NOT MERGE - Merge pie-platform-release (PPRL.190105.001)...
Xin Li [Thu, 17 Jan 2019 21:53:32 +0000 (13:53 -0800)]
[automerger skipped] DO NOT MERGE - Merge pie-platform-release (PPRL.190105.001) into master
am: dfdcf1f0e0 -s ours
am skip reason: subject contains skip directive

Change-Id: Ibf1cb4eab80383dba8f7a5bbfe2bb5bff95ca43f

5 years agoMerge "DO NOT MERGE - Merge pie-platform-release (PPRL.190105.001) into master"
Xin Li [Thu, 17 Jan 2019 21:19:42 +0000 (21:19 +0000)]
Merge "DO NOT MERGE - Merge pie-platform-release (PPRL.190105.001) into master"

5 years agoMerge "Add new Hearing Aids commands to improve L/R Sync"
Stanley Tng [Thu, 17 Jan 2019 18:45:08 +0000 (10:45 -0800)]
Merge "Add new Hearing Aids commands to improve L/R Sync"
am: 055a5f4056

Change-Id: I19b467c2f4a185c0ea6953b3697597997d33c871

5 years agoMerge "Add new Hearing Aids commands to improve L/R Sync"
Treehugger Robot [Thu, 17 Jan 2019 18:27:10 +0000 (18:27 +0000)]
Merge "Add new Hearing Aids commands to improve L/R Sync"

5 years agoMerge "Wait for Notifications before sending audio data"
Stanley Tng [Thu, 17 Jan 2019 16:55:25 +0000 (08:55 -0800)]
Merge "Wait for Notifications before sending audio data"
am: 2bd5ea5772

Change-Id: Ie9e4efb8efe0e287d7450b587aca0010459c648e

5 years agoMerge "Wait for Notifications before sending audio data"
Treehugger Robot [Thu, 17 Jan 2019 15:25:39 +0000 (15:25 +0000)]
Merge "Wait for Notifications before sending audio data"

5 years agoAdd new Hearing Aids commands to improve L/R Sync
Stanley Tng [Tue, 1 Jan 2019 22:52:07 +0000 (14:52 -0800)]
Add new Hearing Aids commands to improve L/R Sync

Prototyping new commands to the Hearing Aids devices to improve the
Left/Right Sync issues. The new commands are:
1. Add a new byte parameter to the START command that indicates the
other side device is actively streaming or disconnected,
2. Whenever there is an LE Connection Update event from the phone BT
controller, send a new Status Update command to all connected devices,
3. Whenever one side gets disconnected or starts streaming, send a new
Status Update command to the other side to inform about this change.

Bug: 117778955
Bug: 120921220
Test: Manual Testing with Hearing Aids
Change-Id: I5c94867d4574802025e3b433573e52d3c40c9828

5 years agoWait for Notifications before sending audio data
Stanley Tng [Wed, 26 Dec 2018 02:12:51 +0000 (18:12 -0800)]
Wait for Notifications before sending audio data

For the Hearing Aids Profile, wait for the notification status from the
devices after sending the Start command. The reason is that the devices
may be in low power mode and the phone should not start streaming audio
data to these devices until it is fully awake.

Test: Manual testing with Hearing Aids devices
Bug: 117778955
Bug: 120921220
Change-Id: I28b79e7e284d5e75864c0b12315fbb8bd47acf74

5 years agoMetric: Add logging for link layer connection events
Jack He [Thu, 20 Dec 2018 23:46:17 +0000 (15:46 -0800)]
Metric: Add logging for link layer connection events

* Logs when there is an event affecting Bluetooth device's link
  layer connection. Triggerred when there is a related HCI command
  or event
* Users of this metrics can deduce Bluetooth device's connection state
  from these events
* HCI commands are logged before the command is sent, after receiving,
  command status, and after receiving command complete
  event comes back
* HCI events are logged when they arrive
* Simplifies logic in btu_hcif_hdl_command_status() since p_cmd is never
  null and we always ignore parameter total length field
* Call btm_identity_addr_to_random_pseudo() when parsing command status
  packet for LE create connection, extended create connection,
  add/remove/clear whitelist commands

DETAILS:

* Bluetooth classic commands:
  - CMD_CREATE_CONNECTION
  - CMD_DISCONNECT
  - CMD_CREATE_CONNECTION_CANCEL
  - CMD_ACCEPT_CONNECTION_REQUEST
  - CMD_REJECT_CONNECTION_REQUEST
  - CMD_SETUP_ESCO_CONNECTION
  - CMD_ACCEPT_ESCO_CONNECTION
  - CMD_REJECT_ESCO_CONNECTION
  - CMD_ENH_SETUP_ESCO_CONNECTION
  - CMD_ENH_ACCEPT_ESCO_CONNECTION
* Bluetooth low energy commands:
  - CMD_BLE_CREATE_LL_CONN [Only logged when there is an error or initiator filter policy is 0x00]
  - CMD_BLE_CREATE_CONN_CANCEL [Only logged when there is an error]
  - CMD_BLE_EXTENDED_CREATE_CONNECTION [Only logged on error or when initiator filter policy is 0x00]
  - CMD_BLE_CLEAR_WHITE_LIST
  - CMD_BLE_ADD_WHITE_LIST
  - CMD_BLE_REMOVE_WHITE_LIST
* Bluetooth classic events:
  - EVT_CONNECTION_COMP
  - EVT_CONNECTION_REQUEST
  - EVT_DISCONNECTION_COMP
  - EVT_ESCO_CONNECTION_COMP
  - EVT_ESCO_CONNECTION_CHANGED
* Bluetooth low energy meta events:
  - BLE_EVT_CONN_COMPLETE_EVT
  - BLE_EVT_ENHANCED_CONN_COMPLETE_EVT

Bug: 112969790
Test: make and test drive statsd
Change-Id: Ib843dfa95bb6448c41dac261dabcf17947efda06

5 years agoAllow bond request from devices with BTM_IO_CAP_NONE
Tiansong Cui [Wed, 16 Jan 2019 16:40:30 +0000 (08:40 -0800)]
Allow bond request from devices with BTM_IO_CAP_NONE
am: c52062c078

Change-Id: I50aa6393eb74fb83ea5878c7236930dc81f35bc1

5 years agoAllow bond request from devices with BTM_IO_CAP_NONE
Tiansong Cui [Tue, 15 Jan 2019 21:22:46 +0000 (13:22 -0800)]
Allow bond request from devices with BTM_IO_CAP_NONE

Devices with BTM_IO_CAP_NONE should still be able to create
(although unauthenticated) bond with other devices.

Bug: internal 122119496
Test: manual
Change-Id: Iac008d0199ca11d06db8c91cda821f992ba3d4ee

5 years agoDO NOT MERGE - Merge pie-platform-release (PPRL.190105.001) into master
Xin Li [Tue, 15 Jan 2019 18:17:12 +0000 (10:17 -0800)]
DO NOT MERGE - Merge pie-platform-release (PPRL.190105.001) into master

Bug: 122685541
Change-Id: Iafca519871aab60f057bb7f6abc1bcf2f0394ba2

5 years agoDO NOT MERGE - Merge pie-platform-release (PPRL.190105.001) into stage-aosp-master
Xin Li [Tue, 15 Jan 2019 00:14:40 +0000 (16:14 -0800)]
DO NOT MERGE - Merge pie-platform-release (PPRL.190105.001) into stage-aosp-master

Bug: 122685541
Change-Id: I579759f87bab672ef5189f9d13e8417651a04d60

5 years agoMerge "Fix BT a bad/ out of bounds array read"
Sal Savage [Mon, 14 Jan 2019 22:12:00 +0000 (14:12 -0800)]
Merge "Fix BT a bad/ out of bounds array read"
am: 7da7696e07

Change-Id: Idca50acaa84f59f95800e94a846247824d0341ef

5 years agoSnap for 5230900 from aa9c1b4abdb2ca7beea467f7be82e83363a32b11 to pi-platform-release
android-build-team Robot [Mon, 14 Jan 2019 22:03:03 +0000 (22:03 +0000)]
Snap for 5230900 from aa9c1b4abdb2ca7beea467f7be82e83363a32b11 to pi-platform-release

Change-Id: I50623117c36dbe20a0c8d120a7115628a2f53566

5 years agoMerge "Fix BT a bad/ out of bounds array read"
Sal Savage [Mon, 14 Jan 2019 21:43:55 +0000 (21:43 +0000)]
Merge "Fix BT a bad/ out of bounds array read"

5 years agoMerge "SMP: Fix invalid auth_req in LE Security Request handler"
Manoj Babulal [Mon, 14 Jan 2019 14:29:36 +0000 (06:29 -0800)]
Merge "SMP: Fix invalid auth_req in LE Security Request handler"
am: 6ab305324d

Change-Id: I408779f11d8778ebd188239e6a5f21e30d0f8f51

5 years agoMerge "SMP: Fix invalid auth_req in LE Security Request handler"
Treehugger Robot [Mon, 14 Jan 2019 14:23:01 +0000 (14:23 +0000)]
Merge "SMP: Fix invalid auth_req in LE Security Request handler"

5 years agoDo not crash on LE Create Connection "Command Disallowed"
Jakub Pawlowski [Mon, 14 Jan 2019 09:32:03 +0000 (01:32 -0800)]
Do not crash on LE Create Connection "Command Disallowed"
am: 9d52abf4d4

Change-Id: Ie2db913998282a20ccf66406ada730347f240e5f

5 years agoDo not crash on LE Create Connection "Command Disallowed"
Jakub Pawlowski [Thu, 3 Jan 2019 14:13:11 +0000 (15:13 +0100)]
Do not crash on LE Create Connection "Command Disallowed"

Being in "Connecting" used to mean we are either doing direct
connection, or background connection procedure. Now we have just one
connection procedure. This means there is no ambiguity when the
controller responds with "Command Disallowed" - we know exactly which
state to go back to.

Bug: 110412113
Bug: 112827989
Test: there is no test, or reproduction scenarion to verify that
      Ran GattConnectTest for sanity

Change-Id: I9ed1cdc7ae4032cda4e8a166310eca0004c7f9dc

5 years agoSMP: Fix invalid auth_req in LE Security Request handler
Manoj Babulal [Thu, 27 Dec 2018 10:43:19 +0000 (02:43 -0800)]
SMP: Fix invalid auth_req in LE Security Request handler

Due to wrong pointer de-reference, auth_req value read
in smp_proc_sec_req (LE Security Request packet handler)
was invalid.

Logcat trace shows invalid auth_req value:
.. bt_smp  : smp_proc_sec_req: auth_req=0xf9
   ....
.. bt_smp  : smp_proc_sec_req: auth_req=0xe9

After the fix, auth_req value is correct:
.. bt_smp  : smp_proc_sec_req: auth_req=0x1
   ....
.. bt_smp  : smp_proc_sec_req: auth_req=0x5

This data flow can be traced in code on this path:
smp_data_received -> smp_sm_event -> smp_proc_sec_req

Issue seen after following change:
https://android-review.googlesource.com/c/platform/system/bt/+/492442

Issue was discovered during execution of PTS test
cases GAP/SEC/AUT/BV-13-C and GAP/SEC/AUT/BV-14-C.

Fixes: 122066779

Test: Verified logcat trace shows valid auth_req
value prints from smp_proc_sec_req() function

Change-Id: I072b4794fb56a05b7ac7f2f4ca606514d7524550

5 years agoJanuary Pi-platform-release merges
Adam Seaton [Fri, 11 Jan 2019 22:55:24 +0000 (22:55 +0000)]
January Pi-platform-release merges

Change-Id: Id66375f8b1f3329e82df3d0fdb06917c065209de

5 years agoFix BT a bad/ out of bounds array read
Sal Savage [Wed, 9 Jan 2019 20:50:07 +0000 (12:50 -0800)]
Fix BT a bad/ out of bounds array read

Bug: 121375525
Test: Used automotive hardware and verified that pairing and media
      streaming and control still work and crashes no longer happen.
Change-Id: I3476425131718aded980f57a8b9be92a8e9f9d3b

5 years agoFix potential NULL dereference in smp_proc_confirm
Jakub Pawlowski [Fri, 11 Jan 2019 16:55:05 +0000 (08:55 -0800)]
Fix potential NULL dereference in smp_proc_confirm
am: 3c3fbd869f

Change-Id: I1b3175cb9a393da80adc52c886993af89788e48c

5 years agoFix potential NULL dereference in smp_proc_confirm
Jakub Pawlowski [Fri, 11 Jan 2019 12:43:33 +0000 (13:43 +0100)]
Fix potential NULL dereference in smp_proc_confirm

Bug: 122102910
Test: compilation
Change-Id: Idd16e1c1924165924847f1aad64ddd44a8a1b8ab

5 years agoMerge "Fix bt_trace.h #define"
Jack He [Fri, 11 Jan 2019 00:38:51 +0000 (16:38 -0800)]
Merge "Fix bt_trace.h #define"
am: fa41623e98

Change-Id: I5bafe65f8e17b3daaae84d569878ba27a4ad2407

5 years agoMerge "Fix bt_trace.h #define"
Treehugger Robot [Fri, 11 Jan 2019 00:21:24 +0000 (00:21 +0000)]
Merge "Fix bt_trace.h #define"

5 years agoAdd host tests to TEST_MAPPING
Dan Shi [Thu, 10 Jan 2019 23:00:45 +0000 (15:00 -0800)]
Add host tests to TEST_MAPPING
am: 491407dbad

Change-Id: I09538ad40d6d5c02f83fe9c870711ebbd7004c1e

5 years agoAdd host tests to TEST_MAPPING
Dan Shi [Thu, 10 Jan 2019 18:55:23 +0000 (10:55 -0800)]
Add host tests to TEST_MAPPING

Also added some missing test_suites setting.

Following tests don't have host_supported set to true in Android.bp:
net_test_audio_a2dp_hw
net_test_btif
net_test_btif_profile_queue
net_test_device
net_test_hci
net_test_stack
net_test_stack_ad_parser
net_test_stack_smp

Following tests failed to run in host with error "did not report any run":
net_test_performance
net_test_stack_rfcomm

Bug: 111921389
Test: system/bt$ atest --host :postsubmit
Change-Id: I5f55cead7a2ad1cadea48220f45781f4f74949dd

5 years agoFix bt_trace.h #define
Jack He [Thu, 10 Jan 2019 04:47:57 +0000 (20:47 -0800)]
Fix bt_trace.h #define

Test: make
Change-Id: Ie1177f2311db0b7b5dfb440f3f982d4a79aa460d

5 years agoRemove code related to Health Device Profile and MCAP Protocol
Jack He [Thu, 10 Jan 2019 04:51:00 +0000 (20:51 -0800)]
Remove code related to Health Device Profile and MCAP Protocol
am: 238f8359a9

Change-Id: Ib10cda753d45163b4d799ca4c1275fb43284c336

5 years agoRemove code related to Health Device Profile and MCAP Protocol
Jack He [Fri, 4 Jan 2019 01:11:24 +0000 (17:11 -0800)]
Remove code related to Health Device Profile and MCAP Protocol

* Health Device Profile (HDP) and MCAP protocol has been largely
  replaced by BLE. New applications should use Bluetooth Low Energy
  instead of legacy Bluetooth Health Device Profile

Bug: 111562841
Test: make, unit test, use Bluetooth
Change-Id: I3da1173a8a928af4b26a29e71746241c22af2236
Merged-In: I3da1173a8a928af4b26a29e71746241c22af2236
(cherry picked from commit dc13609b58b2f6c6185951f650036f5098e19e92)

5 years agoMerge "HCI: Simplify btu_hcif_hdl_command_status()"
Jack He [Wed, 9 Jan 2019 22:16:44 +0000 (14:16 -0800)]
Merge "HCI: Simplify btu_hcif_hdl_command_status()"
am: e5e0a70209

Change-Id: Icc28b7e93f3f94b82bdbfc7ab923b12b985fdff3

5 years agoMerge "HCI: Simplify btu_hcif_hdl_command_status()"
Treehugger Robot [Wed, 9 Jan 2019 21:59:39 +0000 (21:59 +0000)]
Merge "HCI: Simplify btu_hcif_hdl_command_status()"

5 years agoMerge "Group all Hearing Aids device information together"
Stanley Tng [Wed, 9 Jan 2019 17:47:12 +0000 (09:47 -0800)]
Merge "Group all Hearing Aids device information together"
am: 89be950b16

Change-Id: I803e04fb6d5f7322eea16aa2f9d3637643a8f00f

5 years agoMerge "Group all Hearing Aids device information together"
Treehugger Robot [Wed, 9 Jan 2019 17:36:40 +0000 (17:36 +0000)]
Merge "Group all Hearing Aids device information together"

5 years agoHCI: Simplify btu_hcif_hdl_command_status()
Jack He [Wed, 9 Jan 2019 01:48:20 +0000 (17:48 -0800)]
HCI: Simplify btu_hcif_hdl_command_status()

* Move 2nd layer switch statements into top layer
* Check if p_cmd is nullptr at the beginning of the function so
  that each case does not need to check it individually. p_cmd
  is never null.
* Skip parameter total length at beginning of the function

Test: make, unit test, use Bluetooth for music and calls
Change-Id: I23cf983a1ade44bcea0b1009860efdfaf3b8bca8

5 years agoHCI: Fix command status handling of HCI_QOS_SETUP
Jack He [Wed, 9 Jan 2019 05:14:52 +0000 (21:14 -0800)]
HCI: Fix command status handling of HCI_QOS_SETUP
am: 256800be50

Change-Id: I13000c98920ea2b4e7816b47a41352f271af2943

5 years agoRemove BTM_SCO_WAKE_PARKED_LINK flag
Jack He [Wed, 9 Jan 2019 02:02:03 +0000 (18:02 -0800)]
Remove BTM_SCO_WAKE_PARKED_LINK flag
am: 5213da9b4a

Change-Id: Id7868b58ada9e819fb8cb2fbb93ca5c874d0089d

5 years agoHCI: Fix command status handling of HCI_QOS_SETUP
Jack He [Wed, 9 Jan 2019 01:53:31 +0000 (17:53 -0800)]
HCI: Fix command status handling of HCI_QOS_SETUP

* QOS setup complete event was handled instead of QOS setup command

Test: make
Change-Id: I894099f369675bd25397ee0005c6838f39220eed

5 years agoGroup all Hearing Aids device information together
Stanley Tng [Fri, 21 Dec 2018 00:44:15 +0000 (16:44 -0800)]
Group all Hearing Aids device information together

A small refactor where the various information about a Hearing Aids
device is gathered into a class. Instead of passing a long list
of function parameters, it is cleaner to group them inside a single
class. It also makes it easier to add new elements in the future.

Test: Manual pair and audio stream with Hearing Aids
Bug: 119617521
Change-Id: I193b5cc915a6c36e7e36d1f06a5adcda7c17ab1c

5 years agoRemove BTM_SCO_WAKE_PARKED_LINK flag
Jack He [Sat, 5 Jan 2019 00:18:12 +0000 (16:18 -0800)]
Remove BTM_SCO_WAKE_PARKED_LINK flag

* Under majority of configurations, SCO connection can only be created
  if in non-parked mode since SCO is a circuit switch link

Bug: 122375953
Test: make
Change-Id: I58569025b435953b964e5aded64b3ace27d4e73c

5 years agoClean up BLE connection state state machine
Jakub Pawlowski [Tue, 8 Jan 2019 02:39:29 +0000 (18:39 -0800)]
Clean up BLE connection state state machine
am: cf7b381ce8

Change-Id: Ic045afbd0b7aa44b471b4f8c63c4adc6fab96989

5 years agoClean up BLE connection state state machine
Jakub Pawlowski [Wed, 2 Jan 2019 23:41:53 +0000 (00:41 +0100)]
Clean up BLE connection state state machine

* get rid of BLE_DIR_CONN - we never go into this state any more
* BLE_BG_CONN -> BLE_CONNECTING
* use btm_ble_get_conn_st instead of directly accessing control block

Test: compilation
Bug: 112827989
Change-Id: I4aa09a8b558c6f2161806a6d27bee0560fd19fd8

5 years agoMove all HCI LE Create Connection management into single file
Jakub Pawlowski [Mon, 7 Jan 2019 10:59:10 +0000 (02:59 -0800)]
Move all HCI LE Create Connection management into single file
am: a3580922c4

Change-Id: I96f122540d82b5f564023f3f2ff3d7b1a64b7a47

5 years agoMove all HCI LE Create Connection management into single file
Jakub Pawlowski [Mon, 31 Dec 2018 11:54:04 +0000 (12:54 +0100)]
Move all HCI LE Create Connection management into single file

Currently handling of LE Create Connection, LE Create Connection
Cancel, LE Connection Complete and other HCI commands related to LE
connection establishment is in two separate files.
Move all this code into single file.

Bug: 112827989
Test: compilation
Change-Id: Ibc2f6ca2324f4df8a23c2722762d0e5297782b33

5 years agoRemove BTM_SCO_INCLUDED flag
Jack He [Thu, 3 Jan 2019 18:52:18 +0000 (10:52 -0800)]
Remove BTM_SCO_INCLUDED flag
am: 050ef35fde

Change-Id: Id88e1c8b8e75764ede1b4d869ebaf1af4fb8ff8a

5 years agoRemove BTM_SCO_INCLUDED flag
Jack He [Thu, 3 Jan 2019 01:38:53 +0000 (17:38 -0800)]
Remove BTM_SCO_INCLUDED flag

* Instead of removing SCO related code during compilation, platforms
  should chose not to call SCO related methods when SCO is not supported
* For example, platforms can choose to not initialize HFP to avoid using
  SCO commands
* This CL removes BTM_SCO_INCLUDED compile time flag to simplify code
  flow and improve readability

Bug: 122279647
Test: mm -j40; run Bluetooth stack and make phone call
Change-Id: I67d290839091f66c289a428496304c8b3e1dbe21

5 years agoRemove connection_manager from gatt namespace
Jakub Pawlowski [Mon, 31 Dec 2018 15:21:04 +0000 (07:21 -0800)]
Remove connection_manager from gatt namespace
am: f20d94aeb8

Change-Id: I04df3ae34e992e68297e3704000d7f30c176bcad

5 years agoRemove connection_manager from gatt namespace
Jakub Pawlowski [Fri, 28 Dec 2018 18:03:09 +0000 (19:03 +0100)]
Remove connection_manager from gatt namespace

connection_manager handles more than GATT. Celanup naming.

Bug: 112827989
Test: compilation
Change-Id: Id5fdfacb12921cff04204cf2589f73a7c6a0d01f

5 years agoGet rid of is_ble_connecting and ble_connecting_bda
Jakub Pawlowski [Fri, 28 Dec 2018 21:25:05 +0000 (13:25 -0800)]
Get rid of is_ble_connecting and ble_connecting_bda
am: 23572544ba

Change-Id: Ib22fc7e693d9fdf31273b19c0a102aaf8c98bb38

5 years agoUse conneciton_manager for all LE connection establishment
Jakub Pawlowski [Fri, 28 Dec 2018 21:24:53 +0000 (13:24 -0800)]
Use conneciton_manager for all LE connection establishment
am: ada2b3ee07

Change-Id: I3fd558723f18737fffb0fa7270c306cfd8aed5de

5 years agoGet rid of direct connect queueing logic
Jakub Pawlowski [Fri, 28 Dec 2018 21:24:41 +0000 (13:24 -0800)]
Get rid of direct connect queueing logic
am: 672d7b1f37

Change-Id: I43fd40bf6cf683843cbae944211b0a6b9430fb01

5 years agoGet rid of is_ble_connecting and ble_connecting_bda
Jakub Pawlowski [Thu, 27 Dec 2018 20:02:13 +0000 (21:02 +0100)]
Get rid of is_ble_connecting and ble_connecting_bda

These variables make no sense any more, as we might be attempting
multiple connections at the same time.

Test: sl4a GattConnectTest, manual bonding test
Bug: 112827989
Change-Id: I7e1d01e8d80383b49ff9c20fb3758cef03c52882

5 years agoUse conneciton_manager for all LE connection establishment
Jakub Pawlowski [Wed, 19 Dec 2018 21:23:47 +0000 (22:23 +0100)]
Use conneciton_manager for all LE connection establishment

Test: sl4a GattConnectTest, manual bonding test
Bug: 112827989
Change-Id: I55878e03d268c43002e22ce4ebfbf0e334523882

5 years agoGet rid of direct connect queueing logic
Jakub Pawlowski [Mon, 17 Dec 2018 12:59:54 +0000 (13:59 +0100)]
Get rid of direct connect queueing logic

Instead of queueing requests, we should use whitelist to process the
requests simulteanously.
This patch does remove the queueing logic, succeeding patch will add the
logic to schedule through whitelist.

Test: compilation
Bug: 112827989
Change-Id: Ia7132812f704658ecb6919e52c70b291e6874660

5 years agoCall btm_ble_set_conn_st before on_connection_complete
Jakub Pawlowski [Fri, 21 Dec 2018 22:23:16 +0000 (14:23 -0800)]
Call btm_ble_set_conn_st before on_connection_complete
am: a22a78f3b3

Change-Id: I97d4f45aa54e6798204e0227c69ac91621294501

5 years agoCall btm_ble_set_conn_st before on_connection_complete
Jakub Pawlowski [Fri, 21 Dec 2018 16:16:01 +0000 (17:16 +0100)]
Call btm_ble_set_conn_st before on_connection_complete

on_connection_complete can trigger BTM_WhiteListRemove, which sends
"LE Create Connection Cancel" if the connection is pending.

Make sure connection state is updated before calling on_connection_complete.
Otherwise we send an unnecessary "LE Create Connection Cancel" request.

Bug: 112827989
Test: establish Direct connection with at least one device in the
      background connection procedure. Verify HCI snoop log content

Change-Id: I1b8532f4e58d5ab62b471ce0bde6c48640c83ff7

5 years agoMerge code in scanner/advertiser connection complete handler
Jakub Pawlowski [Thu, 20 Dec 2018 21:12:05 +0000 (13:12 -0800)]
Merge code in scanner/advertiser connection complete handler
am: c8dfd0fb06

Change-Id: Ibaed9f65f68cedf670ac4f6d9c0f19c36ea45243

5 years agoUnify code in scanner/advertiser connection complete handler.
Jakub Pawlowski [Thu, 20 Dec 2018 21:11:52 +0000 (13:11 -0800)]
Unify code in scanner/advertiser connection complete handler.
am: b295c481dd

Change-Id: I000cfd81b6caace4b6046b9a6757c4fc589cb0a4

5 years agoSplit l2cu_create_conn into two separate, transport-specific functions
Jakub Pawlowski [Thu, 20 Dec 2018 18:34:22 +0000 (10:34 -0800)]
Split l2cu_create_conn into two separate, transport-specific functions
am: 50a0ec23d7

Change-Id: I01f507afca510252ee1c294e953506b3301a9637

5 years agoMerge code in scanner/advertiser connection complete handler
Jakub Pawlowski [Fri, 14 Dec 2018 18:53:59 +0000 (19:53 +0100)]
Merge code in scanner/advertiser connection complete handler

Test: sl4a GattConnectTest
Bug: 112827989
Change-Id: I860693c11c263643858cfa0b4e4deb6a9f231cdd

5 years agoUnify code in scanner/advertiser connection complete handler.
Jakub Pawlowski [Fri, 14 Dec 2018 18:38:44 +0000 (19:38 +0100)]
Unify code in scanner/advertiser connection complete handler.

btm_ble_set_conn_st is called in every possible scenario of
l2cble_scanner_conn_comp. Call it at start, instead of before each
return.

Test: sl4a GattConnectTest
Bug: 112827989
Change-Id: I969fc59b934dc1c7a52be00741fdf38402545b26

5 years agoSplit l2cu_create_conn into two separate, transport-specific functions
Jakub Pawlowski [Fri, 14 Dec 2018 14:15:54 +0000 (15:15 +0100)]
Split l2cu_create_conn into two separate, transport-specific functions

There is no common logic between LE and BR/EDR paths.

Test: compilation
Bug: 112827989
Change-Id: I507d3a0d8efa0e4936b22722a9c1cc846e0be3bd

5 years agoMerge "Fix mtu assignment with correct value"
Ted Wang [Thu, 20 Dec 2018 06:31:27 +0000 (22:31 -0800)]
Merge "Fix mtu assignment with correct value"
am: 55c0aa19be

Change-Id: I3cc2bed544165ee45dbf7646ab13ac4258ce2ab2

5 years agoMerge "Fix mtu assignment with correct value"
Ted Wang [Thu, 20 Dec 2018 06:16:47 +0000 (06:16 +0000)]
Merge "Fix mtu assignment with correct value"

5 years agoMerge "use epoll_create1"
Nick Kralevich [Thu, 20 Dec 2018 00:12:10 +0000 (16:12 -0800)]
Merge "use epoll_create1"
am: b0cbd21cb2

Change-Id: Ie4a8c3462707aedc9676340ae06487f615e32776

5 years agoMerge "use epoll_create1"
Treehugger Robot [Wed, 19 Dec 2018 23:51:28 +0000 (23:51 +0000)]
Merge "use epoll_create1"

5 years agoEnable BLE background connection when stack is started
Hansong Zhang [Wed, 19 Dec 2018 22:09:47 +0000 (14:09 -0800)]
Enable BLE background connection when stack is started
am: f91d55816c

Change-Id: Idc622903ea84149956bcbb13daa0903ab8396e78

5 years agoEnable BLE background connection when stack is started
Hansong Zhang [Tue, 17 Jul 2018 23:24:24 +0000 (16:24 -0700)]
Enable BLE background connection when stack is started

Remove variable btm_cb.ble_ctr_cb.bg_conn_type. We can enable the
background mode when the Bluetooth stack is started and don't have
to wait until the first background connection request from HID
Device/Hearing Aid/GATT. As soon as we add the first device to white
list, the stack will send HCI Create Connection (White List) command.

Test: manual. Bond to a BLE mouse and turn off/on Bluetooth. Also test
with initiating another direct/white list connection while another white
list connection is pending
Bug: 111562702
Bug: 112827989
Change-Id: I82a476489d181d17aa1c1da8202df1be76928d77

5 years agoRevert "Remove redundant GATT_StartIf"
Jakub Pawlowski [Wed, 19 Dec 2018 19:20:21 +0000 (11:20 -0800)]
Revert "Remove redundant GATT_StartIf"
am: b22ea41685

Change-Id: I4fba57ad6c2f856109afb74331bdf3e621794899

5 years agoRevert "Remove redundant GATT_StartIf"
Jakub Pawlowski [Wed, 19 Dec 2018 12:43:03 +0000 (13:43 +0100)]
Revert "Remove redundant GATT_StartIf"

This change broke initial HID connection.

This reverts commit cb45b1e380126f300d9f7d89a8382438c5d06cd3.

5 years agoMerge "Add stng@google.com to the OWNERS list"
Stanley Tng [Tue, 18 Dec 2018 21:17:20 +0000 (13:17 -0800)]
Merge "Add stng@google.com to the OWNERS list"
am: efc194ae59

Change-Id: I042d5406886c56f1e7fd2fc52ea46f9c7358a970

5 years agoMerge "Add stng@google.com to the OWNERS list"
Treehugger Robot [Tue, 18 Dec 2018 21:11:28 +0000 (21:11 +0000)]
Merge "Add stng@google.com to the OWNERS list"

5 years agoMerge "Add a host test for net_test_avrcp"
Dan Shi [Tue, 18 Dec 2018 19:21:54 +0000 (11:21 -0800)]
Merge "Add a host test for net_test_avrcp"
am: 9f3afe4957

Change-Id: Ia2cae467aabd10bd9b713bc8c108ca1c297ca8fa

5 years agoMerge "Add a host test for net_test_avrcp"
Treehugger Robot [Tue, 18 Dec 2018 19:05:15 +0000 (19:05 +0000)]
Merge "Add a host test for net_test_avrcp"

5 years agoMerge "Make sure Hearing Aids' Connection Intervals is unchanged"
Stanley Tng [Tue, 18 Dec 2018 18:05:38 +0000 (10:05 -0800)]
Merge "Make sure Hearing Aids' Connection Intervals is unchanged"
am: be5124ed3d

Change-Id: I8179c5990b1329874a2f5f3d9d5b926f4708e933

5 years agoMerge "Make sure Hearing Aids' Connection Intervals is unchanged"
Treehugger Robot [Tue, 18 Dec 2018 17:04:26 +0000 (17:04 +0000)]
Merge "Make sure Hearing Aids' Connection Intervals is unchanged"