OSDN Git Service

hci: Remove SimultaneousLeHost bit
authorMyles Watson <mylesgw@google.com>
Wed, 25 Nov 2020 14:47:16 +0000 (06:47 -0800)
committerMyles Watson <mylesgw@google.com>
Mon, 30 Nov 2020 19:05:55 +0000 (11:05 -0800)
Bug: 162984360
Tag: #gd-refactor
Test: cert/run --host SecurityTest
Change-Id: Icba7c475e037cf850a3138a6f0c9a61e99bfd5be

gd/hci/controller.cc
gd/hci/hci_packets.pdl
gd/hci/hci_packets_test.cc

index 9c7424f..871f83a 100644 (file)
@@ -43,8 +43,7 @@ struct Controller::impl {
     le_set_event_mask(kDefaultLeEventMask);
     set_event_mask(kDefaultEventMask);
     write_simple_pairing_mode(Enable::ENABLED);
-    // TODO(b/159927452): Legacy stack set SimultaneousLeHost = 1. Revisit if this causes problem.
-    write_le_host_support(Enable::ENABLED, SimultaneousLeHost::DISABLED);
+    write_le_host_support(Enable::ENABLED);
     hci_->EnqueueCommand(ReadLocalNameBuilder::Create(),
                          handler->BindOnceOn(this, &Controller::impl::read_local_name_complete_handler));
     hci_->EnqueueCommand(ReadLocalVersionInformationBuilder::Create(),
@@ -450,8 +449,8 @@ struct Controller::impl {
         module_.GetHandler()->BindOnceOn(this, &Controller::impl::check_status<WriteSimplePairingModeCompleteView>));
   }
 
-  void write_le_host_support(Enable enable, SimultaneousLeHost simultaneous_le_host) {
-    std::unique_ptr<WriteLeHostSupportBuilder> packet = WriteLeHostSupportBuilder::Create(enable, simultaneous_le_host);
+  void write_le_host_support(Enable enable) {
+    std::unique_ptr<WriteLeHostSupportBuilder> packet = WriteLeHostSupportBuilder::Create(enable);
     hci_->EnqueueCommand(
         std::move(packet),
         module_.GetHandler()->BindOnceOn(this, &Controller::impl::check_status<WriteLeHostSupportCompleteView>));
index 56bc774..45067d2 100644 (file)
@@ -2023,22 +2023,18 @@ packet SendKeypressNotificationComplete : CommandComplete (command_op_code = SEN
   bd_addr : Address,
 }
 
-enum SimultaneousLeHost : 8 {
-  DISABLED = 0x00,
-}
-
 packet ReadLeHostSupport : CommandPacket (op_code = READ_LE_HOST_SUPPORT) {
 }
 
 packet ReadLeHostSupportComplete : CommandComplete (command_op_code = READ_LE_HOST_SUPPORT) {
   status : ErrorCode,
   le_supported_host : Enable,
-  simultaneous_le_host : SimultaneousLeHost,
+  _reserved_ : 8, // simultaneous_le_host (ignored and always 0)
 }
 
 packet WriteLeHostSupport : CommandPacket (op_code = WRITE_LE_HOST_SUPPORT) {
   le_supported_host : Enable,
-  simultaneous_le_host : SimultaneousLeHost,
+  _reserved_ : 8, // simultaneous_le_host (ignored and always 0)
 }
 
 packet WriteLeHostSupportComplete : CommandComplete (command_op_code = WRITE_LE_HOST_SUPPORT) {
index 589dca5..f1ea657 100644 (file)
@@ -86,7 +86,7 @@ DEFINE_AND_INSTANTIATE_WriteSimplePairingModeReflectionTest(write_simple_paring_
 std::vector<uint8_t> write_simple_paring_mode_complete = {0x0e, 0x04, 0x01, 0x56, 0x0c, 0x00};
 DEFINE_AND_INSTANTIATE_WriteSimplePairingModeCompleteReflectionTest(write_simple_paring_mode_complete);
 
-std::vector<uint8_t> write_le_host_supported = {0x6d, 0x0c, 0x02, 0x01, 0x01};
+std::vector<uint8_t> write_le_host_supported = {0x6d, 0x0c, 0x02, 0x01, 0x00};
 DEFINE_AND_INSTANTIATE_WriteLeHostSupportReflectionTest(write_le_host_supported);
 
 std::vector<uint8_t> write_le_host_supported_complete = {0x0e, 0x04, 0x01, 0x6d, 0x0c, 0x00};