OSDN Git Service

android-x86/system-bt.git
3 years agoMerge "[GD Controller] Return version info to legacy stack"
Treehugger Robot [Thu, 1 Apr 2021 08:44:08 +0000 (08:44 +0000)]
Merge "[GD Controller] Return version info to legacy stack"

3 years agoMerge "BluetoothAudioHAL: Don't fetch the provider without HAL version"
Cheney Ni [Thu, 1 Apr 2021 08:24:34 +0000 (08:24 +0000)]
Merge "BluetoothAudioHAL: Don't fetch the provider without HAL version"

3 years agoBluetoothAudioHAL: Don't fetch the provider without HAL version
Cheney Ni [Wed, 31 Mar 2021 17:33:08 +0000 (01:33 +0800)]
BluetoothAudioHAL: Don't fetch the provider without HAL version

This fixes a native crash while enabling BT with no bluetooth.audio HAL.

Fixes: 184147199
Bug: 184147199
Tag: #stability
Test: start Bluetooth on device without bluetooth.audio HAL
Change-Id: I96974b33316a73e1c0c291b9de05400d2e842e92

3 years agoMerge "gd hci: Handle overflow of acl credits"
Myles Watson [Wed, 31 Mar 2021 20:23:51 +0000 (20:23 +0000)]
Merge "gd hci: Handle overflow of acl credits"

3 years agoMerge "A2DP: don't apply codec preference if service disabled"
Treehugger Robot [Wed, 31 Mar 2021 19:27:35 +0000 (19:27 +0000)]
Merge "A2DP: don't apply codec preference if service disabled"

3 years agogd hci: Handle overflow of acl credits
Chienyuan [Wed, 24 Mar 2021 11:59:28 +0000 (19:59 +0800)]
gd hci: Handle overflow of acl credits

Tag: #gd-refactor
Bug: 178668450
Test: gd/cert/run
Change-Id: I3efc7a73cfbc90b876fa055b29250587c689df0c

3 years ago[GD Controller] Return version info to legacy stack
Jack He [Wed, 31 Mar 2021 09:30:13 +0000 (02:30 -0700)]
[GD Controller] Return version info to legacy stack

* Copy and return version info to legacy stack
* Support parsing BT 5.2 version info

Tag: #gd-refactor
Bug: 183349385
Test: make, A2DP streaming
Change-Id: Ic8921570000599175b9b219052f95f6c7b4035a8

3 years agoMerge "Use hci_root_inflamed_abort if received root inflamed packet"
Treehugger Robot [Wed, 31 Mar 2021 01:49:18 +0000 (01:49 +0000)]
Merge "Use hci_root_inflamed_abort if received root inflamed packet"

3 years agoMerge "audio: Introduce client interface support for HAL 2.1"
Jakub Pawlowski [Tue, 30 Mar 2021 15:14:53 +0000 (15:14 +0000)]
Merge "audio: Introduce client interface support for HAL 2.1"

3 years agoMerge "eatt: Adjust to new L2CAP API behaviour"
Jakub Pawlowski [Tue, 30 Mar 2021 14:55:19 +0000 (14:55 +0000)]
Merge "eatt: Adjust to new L2CAP API behaviour"

3 years agoeatt: Adjust to new L2CAP API behaviour
Łukasz Rymanowski [Tue, 30 Mar 2021 10:30:29 +0000 (10:30 +0000)]
eatt: Adjust to new L2CAP API behaviour

There were a changes in the L2CAP layer which needs to be taken into
account by EATT.

L2CAP calls L2CA_DisconnectInd_Cb only when channel
has been disconnected by peer and there is also no confirmation on
L2CA_DisconnectReq.

Having above in mind, EATT needs to clear its channels list just
after calling L2CA_DisconnectReq() othwerwise state of EATT will
be incorrect.

Tag: #feature
Bug: 159786353
Sponsor: jpawlowski@
Test: atest --host net_test_eatt

Change-Id: I49949ca071f40abb9ca38dcd337b4de63f493f09

3 years agoaudio: Introduce client interface support for HAL 2.1
Grzegorz Kołodziejczyk [Fri, 12 Feb 2021 17:05:03 +0000 (17:05 +0000)]
audio: Introduce client interface support for HAL 2.1

Patch introduces HAL 2.1 client interface support with backward compatibility.

Tag: #feature
Test: atest bluetooth-test-audio-hal-interface
Bug: 150670922
Sponsor: jpawlowski@
Change-Id: I4c277c48e4794d8ae615742de0d27084d23fd266

3 years agoMerge "Use proper UUID for PBAP-PCE profile descriptor list"
Sal Savage [Mon, 29 Mar 2021 18:32:36 +0000 (18:32 +0000)]
Merge "Use proper UUID for PBAP-PCE profile descriptor list"

3 years agoA2DP: don't apply codec preference if service disabled
Cheney Ni [Mon, 29 Mar 2021 07:38:59 +0000 (15:38 +0800)]
A2DP: don't apply codec preference if service disabled

Because the codec preference is saved at upper-layer, it was timing that
JNI callbacks were reset by BT turning off while querying the
preference. In order to prevent NPE, this CL checks whether A2DP is
still enabled, and uses a JNI variable to store those callbacks.

Tag: #stability
Fixes: 182756107
Test: atest net_test_btif
Change-Id: Iacfb9fee0e69a47ca7c7ed7c5fc8b4782b647f84

3 years agoMerge changes I60b334ef,I390a385c,I0a562e1b
Jakub Pawlowski [Mon, 29 Mar 2021 06:54:56 +0000 (06:54 +0000)]
Merge changes I60b334ef,I390a385c,I0a562e1b

* changes:
  Revert "Remove unused API BTM_IsPhy2mSupported"
  Revert "Remove unused API BTM_RequestPeerSCA"
  Revert "Remove unused API BTM_GetPeerSCA"

3 years agoUse hci_root_inflamed_abort if received root inflamed packet
weichinweng [Tue, 23 Mar 2021 09:21:42 +0000 (17:21 +0800)]
Use hci_root_inflamed_abort if received root inflamed packet

Sometimes, Since the hci_timeout_abort abort_timer triggered is faster
then the bluetooth HIDL service died, the bt_stack doesn't call
hci_root_inflamed_abort even if received root inflamed packet. Use
hci_root_inflamed_abort when HCI command timeout if it received the root
inflamed packet.

Bug: 182940721
Test: atest BluetoothInstrumentationTests
Tag: #feature
Change-Id: I877ac13e46ac12ef42fc149a7d4a16d932f014d2

3 years agoRevert "Remove unused API BTM_IsPhy2mSupported"
Łukasz Rymanowski [Fri, 26 Mar 2021 17:28:59 +0000 (17:28 +0000)]
Revert "Remove unused API BTM_IsPhy2mSupported"

Reason for revert: This is needed for LE Audio

This reverts commit 5f3ca2bb910c5f18927a15be017879a8387c78fe.

Change-Id: I60b334ef9d3f376eb1b2c68c2a40f748861a5368

3 years agoRevert "Remove unused API BTM_RequestPeerSCA"
Łukasz Rymanowski [Fri, 26 Mar 2021 17:28:22 +0000 (17:28 +0000)]
Revert "Remove unused API BTM_RequestPeerSCA"

Reason for revert: This is needed for LE Audio

This reverts commit ddc067a95ef95fcdc888bfdefc07f784ecac2f1e.

Change-Id: I390a385ce8b5c2b0e76c7775ba3cae8db707b331

3 years agoRevert "Remove unused API BTM_GetPeerSCA"
Łukasz Rymanowski [Fri, 26 Mar 2021 17:27:33 +0000 (17:27 +0000)]
Revert "Remove unused API BTM_GetPeerSCA"

Reason for revert: This is needed for LE Audio

This reverts commit ab4932be3bad052d5a0f7b05cd59b21a88fe26e6.

Change-Id: I0a562e1bee8d3c4f3f7170e34ea92fe657123b96

3 years agoAdd btif/include/btif_hh::btif_hh_status_text
Chris Manton [Sun, 14 Mar 2021 16:52:19 +0000 (09:52 -0700)]
Add btif/include/btif_hh::btif_hh_status_text

Toward loggable code

Bug: 163134718
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: Iab6a4f33a3e498c33f4870abc5abd59e073d03f2

3 years agoUse proper type tHCI_REASON btm_get_acl_disc_reason_code
Chris Manton [Sat, 13 Mar 2021 03:24:11 +0000 (19:24 -0800)]
Use proper type tHCI_REASON btm_get_acl_disc_reason_code

Toward readable code

Bug: 163134718
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: I7b2adfaa55feb96c620adfa5a6cb997055f1ce10

3 years agoMerge "Use whole_static_library for cxx library deps."
Ivan Lozano [Fri, 26 Mar 2021 13:01:14 +0000 (13:01 +0000)]
Merge "Use whole_static_library for cxx library deps."

3 years agoMerge "Fix for HID disconnect bug"
Chris Manton [Fri, 26 Mar 2021 06:31:34 +0000 (06:31 +0000)]
Merge "Fix for HID disconnect bug"

3 years agoMerge changes I6b35e11d,Iacec1d37
Jack He [Fri, 26 Mar 2021 05:56:01 +0000 (05:56 +0000)]
Merge changes I6b35e11d,Iacec1d37

* changes:
  HCI: Send Debug packet when HCI timeout
  HCI: Add support for Debug packet

3 years agoFix for HID disconnect bug
Chris Manton [Mon, 15 Mar 2021 17:46:12 +0000 (10:46 -0700)]
Fix for HID disconnect bug

Callback to btif layer to clear state and inform about
HID host profile disconnecting a peripheral.

Bug: 170187650
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: I17cefb6e0c641ccb4517479e6b358c80e83f1ee7

3 years agoUse proper UUID for PBAP-PCE profile descriptor list
Sal Savage [Thu, 25 Mar 2021 23:16:22 +0000 (16:16 -0700)]
Use proper UUID for PBAP-PCE profile descriptor list

According to the PBAP specification, the PCE SDP record should use the
UUID 0x1130 (PBAP) in the profile descriptor list. We mistakenly use the
PBAP-PCE UUID of 0x112e instead, coming from the JNI. This changes
updates our record to use the correct UUID.

Tag: #stability
Bug: 160443921
Test: sdptool browse and check for the proper UUID 0x1130
Change-Id: I5256da3a5bba1f7ced04aa58e9784409e8ae4fc5

3 years agoHCI: Send Debug packet when HCI timeout
Myles Watson [Thu, 25 Mar 2021 20:10:33 +0000 (13:10 -0700)]
HCI: Send Debug packet when HCI timeout

Bug: 183061492
Test: cert/run
      atest bluetooth_test_gd
Tag: #gd-refactor
Change-Id: I6b35e11dd802138469b0024611113eb822b08637

3 years agoHCI: Add support for Debug packet
Myles Watson [Thu, 25 Mar 2021 20:10:12 +0000 (13:10 -0700)]
HCI: Add support for Debug packet

Bug: 183061492
Test: cert/run
      atest bluetooth_test_gd
Tag: #gd-refactor
Change-Id: Iacec1d37a95514d23f90a26f42808d627d2c6b0f

3 years agoAdd tBTA_HH_DEV_DSCP_INFO::ToString
Chris Manton [Wed, 17 Mar 2021 16:47:24 +0000 (09:47 -0700)]
Add tBTA_HH_DEV_DSCP_INFO::ToString

Toward loggable code

Bug: 163134718
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: Ic3cdd525b544f593634b9b233722a40f6c10b840

3 years agoMerge "Re-log btm_sec_l2cap_access_req_by_requirement"
Chris Manton [Thu, 25 Mar 2021 22:16:10 +0000 (22:16 +0000)]
Merge "Re-log btm_sec_l2cap_access_req_by_requirement"

3 years agoMerge "RootCanal shouldn't depend on common"
Treehugger Robot [Thu, 25 Mar 2021 21:27:52 +0000 (21:27 +0000)]
Merge "RootCanal shouldn't depend on common"

3 years agoRe-log btm_sec_l2cap_access_req_by_requirement
Chris Manton [Thu, 18 Mar 2021 21:16:45 +0000 (14:16 -0700)]
Re-log btm_sec_l2cap_access_req_by_requirement

Toward loggable code

Bug: 163134718
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: I39b877969a38622ec8dffed39ea8c531afab88af

3 years agoUse whole_static_library for cxx library deps.
Ivan Lozano [Thu, 25 Mar 2021 15:56:49 +0000 (11:56 -0400)]
Use whole_static_library for cxx library deps.

static_library has reverted to the old behavior of not being bundled
into rlibs, however whole_static_library has been added to support that
behavior.

Bug: 183182230
Test: mma
Change-Id: If0166b1347b005c03e9e1e1c2805513c0ec245d3

3 years agogd_acl: Ensure acl is running prior to shutdown
Chris Manton [Mon, 22 Mar 2021 22:04:05 +0000 (15:04 -0700)]
gd_acl: Ensure acl is running prior to shutdown

Synchronize stack shutdown

Bug: 176960731
Test: bluetooth_test_gd --gtest_filter=AclManagerLifeCycleTest.*
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: I8a2a321f9605e26da8ce340badc87e2f7208209d

3 years agoRootCanal shouldn't depend on common
Myles Watson [Wed, 24 Mar 2021 23:04:57 +0000 (16:04 -0700)]
RootCanal shouldn't depend on common

Bug: 180413087
Test: cert/run
      atest bluetooth_test_gd
Tag: #gd-refactor
Change-Id: I743af9de1b816a485d4fb8e4c242d7beebd2eb49

3 years agoGD HCI: Pipe VSEs up in shim layer
Jack He [Thu, 25 Mar 2021 07:29:29 +0000 (00:29 -0700)]
GD HCI: Pipe VSEs up in shim layer

* Register known Android VSEs in shim layer
* Pipeline them through data callbacks so that they will
  be handled by btu_hcif_process_event() after beging posted
  to main thread by post_to_main_message_loop()

Tag: #gd-refactor
Bug: 183057550
Test: make, manual test BQR events
Change-Id: I849f02eec35f739f27d16803cea639c5e1ee1147

3 years agoGD Metrics: Check if RawAddress is null before converting
Jack He [Thu, 25 Mar 2021 06:25:59 +0000 (23:25 -0700)]
GD Metrics: Check if RawAddress is null before converting

Tag: #gd-refactor
Fixes: 183670698
Bug: 183670698
Test: make
Change-Id: Ibc46813a34db08ec899145e9d196d6bf0c96d897

3 years agoMerge "GD HCI: Support vendor specific event in GD"
Treehugger Robot [Thu, 25 Mar 2021 05:51:31 +0000 (05:51 +0000)]
Merge "GD HCI: Support vendor specific event in GD"

3 years agoGD HCI: Support vendor specific event in GD
Jack He [Thu, 25 Mar 2021 00:53:18 +0000 (17:53 -0700)]
GD HCI: Support vendor specific event in GD

* Add a handler for vendor specific command
* Add registration and unregistration APIs
* LOG_ERROR when an unknown vendor specific event is received
* Add unit tests to validate the above functions

Tag: #gd-refactor
Bug: 183057550
Test: bluetooth_test_gd
Change-Id: I00d6d892f3d60a8909352061dcae45f92d47b91d

3 years agoMerge "metrics: don't crash if `address` is NULL"
Treehugger Robot [Wed, 24 Mar 2021 18:30:30 +0000 (18:30 +0000)]
Merge "metrics: don't crash if `address` is NULL"

3 years agoMerge "btaa: Add the method of onActivityLogsReady into btif interface"
Mingguang Xu [Wed, 24 Mar 2021 17:53:36 +0000 (17:53 +0000)]
Merge "btaa: Add the method of onActivityLogsReady into btif interface"

3 years agoRe-log btm_sec_check_upgrade
Chris Manton [Thu, 18 Mar 2021 21:16:37 +0000 (14:16 -0700)]
Re-log btm_sec_check_upgrade

Toward loggable code

Bug: 163134718
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: Ib26183b2b63fcd9f877d876bb1d5d6954d82768c

3 years agoRemove dependency of the hci hal on activity attribution if the flag
Rahul Sabnis [Wed, 24 Mar 2021 00:30:38 +0000 (17:30 -0700)]
Remove dependency of the hci hal on activity attribution if the flag
value indicates it is not enabled. Adds activity attribution to gd
dumpsys.

Tag: #feature
Bug: 182283555
Test: Manual
Change-Id: I4c01dcda9d5a9b6e1273285fa32c95386329cf80

3 years agobtaa: Add the method of onActivityLogsReady into btif interface
Mingguang Xu [Fri, 19 Mar 2021 18:43:14 +0000 (11:43 -0700)]
btaa: Add the method of onActivityLogsReady into btif interface

The method of onActivityLogsReady will be used to pass BT activity logs
to BTAA core module to JNI.

Tag: #feature

Bug: 183215497
Bug: 170315554

Test: m

Signed-off-by: Mingguang Xu <mingguangxu@google.com>
Change-Id: I4dfeece15cb04a1b01fd5ad59da3bbceccecbf91

3 years agoMerge "Keystore 2.0: Remove references to Keystore 1"
Treehugger Robot [Tue, 23 Mar 2021 22:30:39 +0000 (22:30 +0000)]
Merge "Keystore 2.0: Remove references to Keystore 1"

3 years agoKeystore 2.0: Remove references to Keystore 1
Janis Danisevskis [Tue, 23 Mar 2021 20:30:32 +0000 (13:30 -0700)]
Keystore 2.0: Remove references to Keystore 1

Test: N/A
Bug: 171305684
Change-Id: I4a09c24e18bef4361dc4b75e6df665a9d38689f9

3 years agoRemove unnecessary transport param
Chris Manton [Thu, 11 Mar 2021 21:52:23 +0000 (13:52 -0800)]
Remove unnecessary transport param

Can only set packets on classic/BR_EDR

Bug: 163134718
Test: gd/cert/run
Tag: #refactor
Change-Id: Icf38654478a36671775d34c716bb86f6636bbffe

3 years agoAdd API stacl/acl/acl to set default packet type bitmask
Chris Manton [Thu, 11 Mar 2021 21:42:51 +0000 (13:42 -0800)]
Add API stacl/acl/acl to set default packet type bitmask

Bug: 182370398
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: Idc91e1dba6784d4989adcf10c4f94b468bd535c6

3 years agoHandle dual mode device with same address in bta_dm_remove_device
Chienyuan [Tue, 23 Mar 2021 15:09:16 +0000 (23:09 +0800)]
Handle dual mode device with same address in bta_dm_remove_device

Tag: #refactor
Bug: 183065766
Test: manual
Change-Id: Iff1b1c640b96606fa2dcdf49d30d2fa9a50ff891

3 years agoMerge "[LSC] Add LOCAL_LICENSE_KINDS to system/bt"
Treehugger Robot [Tue, 23 Mar 2021 13:23:49 +0000 (13:23 +0000)]
Merge "[LSC] Add LOCAL_LICENSE_KINDS to system/bt"

3 years agoInclude new hci_role file
Chris Manton [Wed, 10 Mar 2021 16:01:37 +0000 (08:01 -0800)]
Include new hci_role file

Bug: 179120287
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: I22043f815a33ee0459a4a609080651ede5a60bbe

3 years ago[LSC] Add LOCAL_LICENSE_KINDS to system/bt
Bob Badour [Tue, 23 Mar 2021 02:02:24 +0000 (19:02 -0700)]
[LSC] Add LOCAL_LICENSE_KINDS to system/bt

Added SPDX-license-identifier-Apache-2.0 to:
  vendor_libs/test_vendor_lib/data/Android.bp

Bug: 68860345
Bug: 151177513
Bug: 151953481

Test: m all

Exempt-From-Owner-Approval: janitorial work
Change-Id: I71d5736f416cfcc807029047f6358a6558c81ad3

3 years agogd: Add Unregister::acl_manager classic/le
Chris Manton [Thu, 11 Mar 2021 00:30:47 +0000 (16:30 -0800)]
gd: Add Unregister::acl_manager classic/le

Synchronize stack shutdown

Bug: 176960731
Test: bluetooth_test_gd --gtest_filter=AclManagerLifeCycleTest.*
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: Iad2b6ce5f93f3aa3c9676179d9353cfa9f679fcd

3 years agometrics: don't crash if `address` is NULL
George Burgess IV [Mon, 22 Mar 2021 22:13:18 +0000 (15:13 -0700)]
metrics: don't crash if `address` is NULL

We check earlier if `address != nullptr` in this function; it stands to
reason that we should have the same check here, as well.

Potential use of null was caught by the static analyzer:
> system/bt/gd/common/metrics.cc:74:9: warning: Called C++ object
pointer is null [clang-analyzer-core.CallAndMessage]

Tag: #security
Bug: 181819141
Test: TreeHugger
Change-Id: I4baf5fe648c8fd841875515b024e1658b7ea20cd

3 years agoBTMLogHistory: Add HID device open/close
Chris Manton [Wed, 17 Mar 2021 16:46:55 +0000 (09:46 -0700)]
BTMLogHistory: Add HID device open/close

Toward loggable code

Bug: 163134718
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: I2201febbce720a2534800e7e9c69d31b0f8b0ced

3 years agoMerge "GD metrics: Add shim layers for metrics in GD 1) Add shim layer for MetricIdMa...
Treehugger Robot [Mon, 22 Mar 2021 20:25:21 +0000 (20:25 +0000)]
Merge "GD metrics: Add shim layers for metrics in GD 1) Add shim layer for MetricIdManager 2) Add shim layer for metric logging functions who take metric id 3) reference the 2 shim layers at btif/, main/shim and stack/"

3 years agoRevert "gd: Add Unregister::acl_manager classic/le"
Chris Manton [Mon, 22 Mar 2021 18:12:27 +0000 (18:12 +0000)]
Revert "gd: Add Unregister::acl_manager classic/le"

This reverts commit f0436493c05fe8d70375f461bc7e158b94f74e9b.
Bug:183349791
Tag: #refactor
Test: Builds
Reason for revert: broke

Change-Id: Idb2a6845b9740a6112eabf0e40985d0a972c2ea3

3 years agoMerge "rusty-gd: Add controller facade service."
Qasim Javed [Mon, 22 Mar 2021 19:49:25 +0000 (19:49 +0000)]
Merge "rusty-gd: Add controller facade service."

3 years agoMerge "Make controller prop and default commands configurable in rootcanal"
Treehugger Robot [Mon, 22 Mar 2021 17:59:19 +0000 (17:59 +0000)]
Merge "Make controller prop and default commands configurable in rootcanal"

3 years agogd: Add Unregister::acl_manager classic/le
Chris Manton [Thu, 11 Mar 2021 00:30:47 +0000 (16:30 -0800)]
gd: Add Unregister::acl_manager classic/le

Synchronize stack shutdown

Bug: 176960731
Test: bluetooth_test_gd --gtest_filter=AclManagerLifeCycleTest.*
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: Ic7a41bbcb01dd61c5db7f4326daa8dd6585cbe86

3 years agoSpecial case -INT_MAX for hex conversion
Chris Manton [Fri, 19 Mar 2021 06:20:21 +0000 (23:20 -0700)]
Special case -INT_MAX for hex conversion

Bug: 183171310
Test: bluetooth_test_gd --gtest_filter=StringsTest*
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: I4150f4f6dc3445e4853bea51c68eee26e891e45a

3 years agoMerge changes Ic1f5b589,I34e05959
Treehugger Robot [Sat, 20 Mar 2021 01:56:00 +0000 (01:56 +0000)]
Merge changes Ic1f5b589,I34e05959

* changes:
  PDL: Add more tests for C++
  GD: Include init_flags where used

3 years agoCert: OOB Test, verify different data.
Martin Brabham [Wed, 24 Feb 2021 01:48:32 +0000 (17:48 -0800)]
Cert: OOB Test, verify different data.

This test ensures that the data fetched is always different.

Bug: 178007935
Test: cert/run SecurityTest:test_make_sure_oob_data_different
Tag: #gd-refactor
Change-Id: I1847eebdcead9e13cb4bc2d8eb86cdb63bcaf978

3 years agorusty-gd: Add controller facade service.
Qasim Javed [Tue, 16 Mar 2021 19:55:53 +0000 (12:55 -0700)]
rusty-gd: Add controller facade service.

The ControllerTest pass with this change.

ControllerExports is currently not being updated as a result of
set_local_name. That will be handled as a follow up.

Bug: 171749953
Tag: #gd-refactor
Test: gd/cert/run --rhost ControllerTest

Change-Id: I1ceca00bac74451e915518288108ba149750dc6f

3 years agoPDL: Add more tests for C++
Myles Watson [Fri, 19 Mar 2021 20:50:53 +0000 (13:50 -0700)]
PDL: Add more tests for C++

Bug: 182216573
Test: atest bluetooth_test_gd
Tag: #gd-refactor
Change-Id: Ic1f5b5897451fcf31eb5b1b0b64426eb5ad2b1f7

3 years agoMerge "IBluetoothManager: Update createBondOutOfBand interface"
Treehugger Robot [Fri, 19 Mar 2021 21:13:17 +0000 (21:13 +0000)]
Merge "IBluetoothManager: Update createBondOutOfBand interface"

3 years agoGD: Include init_flags where used
Myles Watson [Fri, 12 Mar 2021 17:13:09 +0000 (09:13 -0800)]
GD: Include init_flags where used

Bug: 182586624
Tag: #gd-refactor
Test: cert/run
Change-Id: I34e05959b0167740f4e6c426c5f36c54d8d65c6e

3 years agoGD metrics: Add shim layers for metrics in GD
Chen Chen [Wed, 10 Mar 2021 23:41:42 +0000 (15:41 -0800)]
GD metrics: Add shim layers for metrics in GD
1) Add shim layer for MetricIdManager
2) Add shim layer for metric logging functions who take metric id
3) reference the 2 shim layers at btif/, main/shim and stack/

Bug: 181819141
Test: atest bluetooth_test_gd
Manual test by printing log at legacy stack and gd stack to make sure
function calls, parameters and callbacks are fowarded correctly

Change-Id: Ic5ee1ef95a7e4d7683de328ac78894986ba5011e

3 years agoMerge "Marking bluetooth_test_gd as not unit tests"
Julien Desprez [Fri, 19 Mar 2021 16:20:13 +0000 (16:20 +0000)]
Merge "Marking bluetooth_test_gd as not unit tests"

3 years agoGD metrics: add logging definitions to GD
Chen Chen [Tue, 9 Mar 2021 21:20:13 +0000 (13:20 -0800)]
GD metrics: add logging definitions to GD

Test: atest bluetooth_test_gd
Bug: 181819141

Change-Id: I1a49859c6ca93e196e95f6e230c15af094fae57b

3 years agoIBluetoothManager: Update createBondOutOfBand interface
Martin Brabham [Thu, 21 Jan 2021 18:37:43 +0000 (10:37 -0800)]
IBluetoothManager: Update createBondOutOfBand interface

Add plumbing for both p192 and p256 data types.

Ignore-AOSP-First: Conflicts with CL previously merged internal
Bug: 178007935
Test: atest net_test_btif
Tag: #refactor
Change-Id: I6b1424c22495821bfbbf56830f3848e6c03b74d4
Merged-In: I6b1424c22495821bfbbf56830f3848e6c03b74d4

3 years agogd_acl: No need to read remote version twice
Chris Manton [Fri, 12 Mar 2021 06:30:22 +0000 (22:30 -0800)]
gd_acl: No need to read remote version twice

Bug: 166280067
Test: Manual verification via wireshark
Tag: #refactor

Change-Id: I2296b99a2bbcfb3adb9585e6541fc21d726fd9eb

3 years agoUse proper types tHCI_ROLE
Chris Manton [Wed, 10 Mar 2021 03:12:57 +0000 (19:12 -0800)]
Use proper types tHCI_ROLE

Bug: 179120287
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: I6fd932fa39b4d7ea8b88db0877806a636a90deed

3 years agogd_acl: On classic connect issue read supported features
Chris Manton [Fri, 12 Mar 2021 16:46:05 +0000 (08:46 -0800)]
gd_acl: On classic connect issue read supported features

Bug: 182568571
Test: Verified on 2.0 device
Tag: #refactor
Change-Id: Ib4d443d9cd0febfa7f82d84313eed280652fd0e9

3 years agoBreak out tHCI_ROLE type into separate file
Chris Manton [Wed, 10 Mar 2021 02:48:38 +0000 (18:48 -0800)]
Break out tHCI_ROLE type into separate file

Used throughout stack

Bug: 179120287
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: I6a4cb56561d8afbb6715e7598903b0fc6428a950

3 years agoConvert bluetooth::shim::BtmStatus from 16 to 8 bits
Chris Manton [Tue, 9 Mar 2021 21:07:17 +0000 (13:07 -0800)]
Convert bluetooth::shim::BtmStatus from 16 to 8 bits

Align with rest of stack.

Bug: 166280067
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: I151c0551e7ebc8e0ecd57695373247ad0bb83a73

3 years agoProperly log btm_read_failed_contact_counter_complete
Chris Manton [Wed, 10 Mar 2021 03:45:40 +0000 (19:45 -0800)]
Properly log btm_read_failed_contact_counter_complete

Bug: 179120287
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: I6501d6cfc3193d2e6ae9196b89321f0c857946f9

3 years agoProperly declare tACL_CONN::tPolicy::Role()
Chris Manton [Wed, 10 Mar 2021 03:08:36 +0000 (19:08 -0800)]
Properly declare tACL_CONN::tPolicy::Role()

Bug: 179120287
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: I6cf33ae3c9a28024c54b7d448c13426e9effe808

3 years agoAdd stack/include/hcidefs::hci_role helpers and aliases
Chris Manton [Wed, 10 Mar 2021 17:22:58 +0000 (09:22 -0800)]
Add stack/include/hcidefs::hci_role helpers and aliases

Bug: 179120287
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: I37ec49c8aaac76d49a0f96387129652975a6fa50

3 years agoConst-ify stack/acl/btm_acl::packet types defs
Chris Manton [Tue, 9 Mar 2021 23:29:58 +0000 (15:29 -0800)]
Const-ify stack/acl/btm_acl::packet types defs

Bug: 182370398
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines

Change-Id: I84063d5c4ada9156f5c9d200b2c0a534cb403eb9

3 years agotBTM_AUTH_COMPLETE_CALLBACK Specialize result to HCI_STATUS
Chris Manton [Thu, 11 Mar 2021 18:28:17 +0000 (10:28 -0800)]
tBTM_AUTH_COMPLETE_CALLBACK Specialize result to HCI_STATUS

Toward proper typechecked code

Bug: 163134718
Test: gd/cert/run
Tag: #refactor

Change-Id: Ia79398d099f9987b52ecd86decc66c810205bab2

3 years agoMove callback definitions to stack/include/security_client_callbacks
Chris Manton [Thu, 11 Mar 2021 18:26:44 +0000 (10:26 -0800)]
Move callback definitions to stack/include/security_client_callbacks

Toward readable code

Bug: 163134718
Test: gd/cert/run
Tag: #refactor

Change-Id: Ia1f70c108d89132a1d993d4add703828c088f60c

3 years agoProperly type tBTA_AV_STATUS
Chris Manton [Wed, 3 Mar 2021 01:56:01 +0000 (17:56 -0800)]
Properly type tBTA_AV_STATUS

Toward readable code

Bug: 163134718
Test: gd/cert/run
Tag: #refactor

Change-Id: I28786af205d5a3bd9595b33e00aed2b953f4dee2

3 years agoRemove useless bta_dm_authentication_complete_cback return value
Chris Manton [Thu, 11 Mar 2021 18:09:09 +0000 (10:09 -0800)]
Remove useless bta_dm_authentication_complete_cback return value

Toward meaningful code

Bug: 163134718
Test: gd/cert/run
Tag: #refactor

Change-Id: I55fea00a20a23ed917c00255cd992a0ad3eab86f

3 years agoMerge changes Ia06fbdda,I08306608,I8e43aee4
Treehugger Robot [Sat, 13 Mar 2021 04:21:44 +0000 (04:21 +0000)]
Merge changes Ia06fbdda,I08306608,I8e43aee4

* changes:
  HCI: Use 0x0123 for hex
  HCI: Add more PDL tests
  Only pad the previous field

3 years agoLog command status error conditions
Chris Manton [Fri, 12 Mar 2021 03:01:53 +0000 (19:01 -0800)]
Log command status error conditions

Bug: 182524282
Test: Manual verification on failing scenario
Tag: #refactor
Change-Id: Ia76e97648c8091e2bde5a26b307d2779c21e6640

3 years agoHCI: Use 0x0123 for hex
Myles Watson [Fri, 12 Mar 2021 05:44:08 +0000 (21:44 -0800)]
HCI: Use 0x0123 for hex

Bug: 182216573
Test: atest bluetooth_test_gd
      libbt_packets_test
Tag: #gd-refactor
Change-Id: Ia06fbdda9101b77204c6ee3ba1c8c1edc81aa3bf

3 years agoHCI: Add more PDL tests
Myles Watson [Thu, 11 Mar 2021 21:10:23 +0000 (13:10 -0800)]
HCI: Add more PDL tests

Bug: 182216573
Test: atest bluetooth_test_gd
      libbt_packets_test
Tag: #gd-refactor
Change-Id: I083066083a519c19a8d5c3a4928b306e2495c512

3 years agoOnly pad the previous field
Myles Watson [Thu, 11 Mar 2021 18:05:47 +0000 (10:05 -0800)]
Only pad the previous field

Bug: 182216573
Test: atest bluetooth_test_gd
      libbt_packets_test
      bluetooth_packet_parser_test
Tag: #gd-refactor
Change-Id: I8e43aee420be58af81cd9f47fcf53a566af1b3fa

3 years agoMerge changes I389b26d7,I0a668115,I75ef0b5c
Myles Watson [Fri, 12 Mar 2021 17:12:01 +0000 (17:12 +0000)]
Merge changes I389b26d7,I0a668115,I75ef0b5c

* changes:
  Alias iterator in packet-gen
  Use generic type for JsonParser
  Change dynamic_cast to static_cast

3 years agoAlias iterator in packet-gen
Erwin Jansen [Thu, 11 Mar 2021 22:53:15 +0000 (14:53 -0800)]
Alias iterator in packet-gen

The msvc compiler is unable to translate some of the generated code:

error: no viable conversion from 'std::array<uint8_t, 248>::iterator'
(aka '_Array_iterator<unsigned char, 248ULL>') to 'uint8_t *' (aka
'unsigned char *')

Instead of assigning the value to a ptr, we alias the iterator instead.

Test: atest bluetooth_test_gd
Tag: #gd-refactor
Bug: 182505215
Change-Id: I389b26d71ef5bd8f96ae819d34ce11590f14a5e6

3 years agoMake controller prop and default commands configurable in rootcanal
Jeongik Cha [Fri, 12 Mar 2021 08:02:13 +0000 (17:02 +0900)]
Make controller prop and default commands configurable in rootcanal

Test: set up default commands and then atest
  android.bluetooth.cts.BluetoothLeScanTest
Bug: 182508776
Bug: 182230648
Change-Id: I4958fee40b32f646fd162e495aac31eeab29a470

3 years agoMerge "PDL: For the Rust test, clone structs"
Treehugger Robot [Fri, 12 Mar 2021 02:51:43 +0000 (02:51 +0000)]
Merge "PDL: For the Rust test, clone structs"

3 years agoMerge changes I86da8ca8,Ibb58fae9,I9c6a9fa3,I4d1ab599,I818c0f4a, ...
Treehugger Robot [Fri, 12 Mar 2021 02:19:33 +0000 (02:19 +0000)]
Merge changes I86da8ca8,Ibb58fae9,I9c6a9fa3,I4d1ab599,I818c0f4a, ...

* changes:
  Change libbt-platform-protos dependency
  Update the readme to use build.py and explain Rust
  Add build.py to simplify building locally
  Build support for Rust via Cargo
  Add option to build libbluetooth as staticlib
  Prevent building some codecs when not supported
  Build support and abstractions for Linux build
  Add source_root parameter to bluetooth_packetgen
  Fix bison 3.7 incompatability
  Host tools support

3 years agoMerge "HCI PDL: Fix formatting with spaces"
Treehugger Robot [Thu, 11 Mar 2021 22:53:00 +0000 (22:53 +0000)]
Merge "HCI PDL: Fix formatting with spaces"

3 years agoMerge "Unbind cert_self_test from ACTS"
Jizheng Chu [Thu, 11 Mar 2021 21:42:47 +0000 (21:42 +0000)]
Merge "Unbind cert_self_test from ACTS"

3 years agoPDL: For the Rust test, clone structs
Myles Watson [Tue, 9 Mar 2021 23:44:43 +0000 (15:44 -0800)]
PDL: For the Rust test, clone structs

Bug: 182216573
Test: atest bluetooth_test_gd
      libbt_packets_test
Tag: #gd-refactor
Change-Id: Id3e8ddca497fb0014bfcac1c96b465dede4c6995

3 years agoHCI PDL: Fix formatting with spaces
Myles Watson [Tue, 9 Mar 2021 21:57:18 +0000 (13:57 -0800)]
HCI PDL: Fix formatting with spaces

Bug: 182216573
Test: atest bluetooth_test_gd
      libbt_packets_test
Tag: #gd-refactor
Change-Id: Ifd4d681fe95664cec639bab800bec73c26b1d3a4

3 years agoUse generic type for JsonParser
Erwin Jansen [Thu, 11 Mar 2021 17:42:20 +0000 (09:42 -0800)]
Use generic type for JsonParser

The android emulator team uses a newer libchrome library. The json read
method now returns an Optional type, vs. a unique_ptr.

We now let the compiler infer the type and rely on the operators to do
the right thing.

Change-Id: I0a668115659d6508344190783b7dc55d84374f15
Test: System compiles.
Bug: 182487647

3 years agoChange dynamic_cast to static_cast
Erwin Jansen [Sun, 7 Mar 2021 21:01:06 +0000 (13:01 -0800)]
Change dynamic_cast to static_cast

dynamic_cast requires type information at run time to throw exceptions.
This is not available in the emulator build system, where execeptions
are explicitly disabled.

Instead we use static_cast to downcast.

Change-Id: I75ef0b5c694320fc1e9fe648e8087e4def8cdf94
Test: Build succeeds.