Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 86a631d6 authored by Henri Chataing's avatar Henri Chataing
Browse files

gd: Define the VendorCapabilities struct in gd/hci/controller.h

The struct used to be generated from a hci_packets.pdl declaration,
but the parser and serializer were never used

Test: m libbluetooth_gd
Change-Id: I85feb18f400b601fc4470711e26f0ee77472fafe
parent acf9371f
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1235,7 +1235,7 @@ uint8_t Controller::GetLeNumberOfSupportedAdverisingSets() const {
  return impl_->le_number_supported_advertising_sets_;
}

VendorCapabilities Controller::GetVendorCapabilities() const {
Controller::VendorCapabilities Controller::GetVendorCapabilities() const {
  return impl_->vendor_capabilities_;
}

+18 −0
Original line number Diff line number Diff line
@@ -198,6 +198,24 @@ class Controller : public Module {

  virtual uint8_t GetLePeriodicAdvertiserListSize() const;

  struct VendorCapabilities {
    uint8_t is_supported_;
    uint8_t max_advt_instances_;
    uint8_t offloaded_resolution_of_private_address_;
    uint16_t total_scan_results_storage_;
    uint8_t max_irk_list_sz_;
    uint8_t filtering_support_;
    uint8_t max_filter_;
    uint8_t activity_energy_info_support_;
    uint16_t version_supported_;
    uint16_t total_num_of_advt_tracked_;
    uint8_t extended_scan_support_;
    uint8_t debug_logging_supported_;
    uint8_t le_address_generation_offloading_support_;
    uint32_t a2dp_source_offload_capability_mask_;
    uint8_t bluetooth_quality_report_support_;
  };

  virtual VendorCapabilities GetVendorCapabilities() const;

  virtual bool IsSupported(OpCode op_code) const;
+0 −18
Original line number Diff line number Diff line
@@ -4697,24 +4697,6 @@ test LeGetVendorCapabilities {
  "\x53\xfd\x00",
}

struct VendorCapabilities {
  is_supported : 8,
  max_advt_instances: 8,
  offloaded_resolution_of_private_address : 8,
  total_scan_results_storage: 16,
  max_irk_list_sz: 8,
  filtering_support: 8,
  max_filter: 8,
  activity_energy_info_support: 8,
  version_supported: 16,
  total_num_of_advt_tracked: 16,
  extended_scan_support: 8,
  debug_logging_supported: 8,
  le_address_generation_offloading_support: 8,
  a2dp_source_offload_capability_mask: 32,
  bluetooth_quality_report_support: 8
}

struct BaseVendorCapabilities {
  max_advt_instances: 8,
  offloaded_resolution_of_private_address : 8,
+1 −1
Original line number Diff line number Diff line
@@ -93,7 +93,7 @@ struct VendorSpecificEventManager::impl {
  os::Handler* module_handler_;
  hci::HciLayer* hci_layer_;
  hci::Controller* controller_;
  VendorCapabilities vendor_capabilities_;
  Controller::VendorCapabilities vendor_capabilities_;
  std::map<VseSubeventCode, common::ContextualCallback<void(VendorSpecificEventView)>> subevent_handlers_;
};