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

Commit 9c2f54ac authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "PAST: Port implementation to GD" into tm-dev

parents e201a900 939f5b82
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -41,6 +41,7 @@ filegroup {
        "class_of_device_unittest.cc",
        "class_of_device_unittest.cc",
        "hci_packets_test.cc",
        "hci_packets_test.cc",
        "uuid_unittest.cc",
        "uuid_unittest.cc",
        "le_periodic_sync_manager_test.cc"
    ],
    ],
}
}


+2 −0
Original line number Original line Diff line number Diff line
@@ -29,6 +29,7 @@
#include "hci/hci_layer.h"
#include "hci/hci_layer.h"
#include "hci/hci_packets.h"
#include "hci/hci_packets.h"
#include "hci/le_address_manager.h"
#include "hci/le_address_manager.h"
#include "hci/le_scanning_manager.h"
#include "module.h"
#include "module.h"
#include "os/handler.h"
#include "os/handler.h"


@@ -54,6 +55,7 @@ class AclManager : public Module {
 friend class bluetooth::shim::legacy::Acl;
 friend class bluetooth::shim::legacy::Acl;
 friend void bluetooth::shim::L2CA_UseLegacySecurityModule();
 friend void bluetooth::shim::L2CA_UseLegacySecurityModule();
 friend bool bluetooth::shim::L2CA_SetAclPriority(uint16_t, bool);
 friend bool bluetooth::shim::L2CA_SetAclPriority(uint16_t, bool);
 friend class bluetooth::hci::LeScanningManager;


public:
public:
 AclManager();
 AclManager();
+72 −20
Original line number Original line Diff line number Diff line
@@ -3995,23 +3995,43 @@ test LeExtendedCreateConnection {
packet LeExtendedCreateConnectionStatus : CommandStatus (command_op_code = LE_EXTENDED_CREATE_CONNECTION) {
packet LeExtendedCreateConnectionStatus : CommandStatus (command_op_code = LE_EXTENDED_CREATE_CONNECTION) {
}
}


packet LePeriodicAdvertisingCreateSync : LeAdvertisingCommand (op_code = LE_PERIODIC_ADVERTISING_CREATE_SYNC) {
enum PeriodicSyncCteType : 8 {
  _payload_,  // placeholder (unimplemented)
  AVOID_AOA_CONSTANT_TONE_EXTENSION = 0x01,
  AVOID_AOD_CONSTANT_TONE_EXTENSION_WITH_ONE_US_SLOTS = 0x02,
  AVOID_AOD_CONSTANT_TONE_EXTENSION_WITH_TWO_US_SLOTS = 0x04,
  AVOID_TYPE_THREE_CONSTANT_TONE_EXTENSION = 0x08,
  AVOID_NO_CONSTANT_TONE_EXTENSION = 0x10,
}

enum PeriodicAdvertisingOptions : 8 {
  USE_PERIODIC_ADVERTISER_LIST_SELECT_ADVERTISER = 0x01,
  ENABLE_REPORTING = 0x02,
  ENABLE_DUPLICATE_FILTERING = 0x04,
}

packet LePeriodicAdvertisingCreateSync : LeScanningCommand (op_code = LE_PERIODIC_ADVERTISING_CREATE_SYNC) {
  options : PeriodicAdvertisingOptions,
  advertising_sid : 8,
  advertiser_address_type : AddressType,
  advertiser_address : Address,
  skip : 16,
  sync_timeout : 16,
  sync_cte_type : PeriodicSyncCteType,
}
}


packet LePeriodicAdvertisingCreateSyncStatus : CommandStatus (command_op_code = LE_PERIODIC_ADVERTISING_CREATE_SYNC) {
packet LePeriodicAdvertisingCreateSyncStatus : CommandStatus (command_op_code = LE_PERIODIC_ADVERTISING_CREATE_SYNC) {
}
}


packet LePeriodicAdvertisingCreateSyncCancel : LeAdvertisingCommand (op_code = LE_PERIODIC_ADVERTISING_CREATE_SYNC_CANCEL) {
packet LePeriodicAdvertisingCreateSyncCancel : LeScanningCommand (op_code = LE_PERIODIC_ADVERTISING_CREATE_SYNC_CANCEL) {
  _payload_,  // placeholder (unimplemented)
}
}


packet LePeriodicAdvertisingCreateSyncCancelComplete : CommandComplete (command_op_code = LE_PERIODIC_ADVERTISING_CREATE_SYNC_CANCEL) {
packet LePeriodicAdvertisingCreateSyncCancelComplete : CommandComplete (command_op_code = LE_PERIODIC_ADVERTISING_CREATE_SYNC_CANCEL) {
  status : ErrorCode,
  status : ErrorCode,
}
}


packet LePeriodicAdvertisingTerminateSync : LeAdvertisingCommand (op_code = LE_PERIODIC_ADVERTISING_TERMINATE_SYNC) {
packet LePeriodicAdvertisingTerminateSync : LeScanningCommand (op_code = LE_PERIODIC_ADVERTISING_TERMINATE_SYNC) {
  _payload_,  // placeholder (unimplemented)
  sync_handle : 12,
  _reserved_ : 4,
}
}


packet LePeriodicAdvertisingTerminateSyncComplete : CommandComplete (command_op_code = LE_PERIODIC_ADVERTISING_TERMINATE_SYNC) {
packet LePeriodicAdvertisingTerminateSyncComplete : CommandComplete (command_op_code = LE_PERIODIC_ADVERTISING_TERMINATE_SYNC) {
@@ -4023,7 +4043,7 @@ enum AdvertisingAddressType : 8 {
  RANDOM_ADDRESS = 0x01,
  RANDOM_ADDRESS = 0x01,
}
}


packet LeAddDeviceToPeriodicAdvertisingList : LeAdvertisingCommand (op_code = LE_ADD_DEVICE_TO_PERIODIC_ADVERTISING_LIST) {
packet LeAddDeviceToPeriodicAdvertisingList : LeScanningCommand (op_code = LE_ADD_DEVICE_TO_PERIODIC_ADVERTISING_LIST) {
  advertising_address_type : AdvertisingAddressType,
  advertising_address_type : AdvertisingAddressType,
  advertiser_address : Address,
  advertiser_address : Address,
  advertising_sid : 4,
  advertising_sid : 4,
@@ -4034,15 +4054,17 @@ packet LeAddDeviceToPeriodicAdvertisingListComplete : CommandComplete (command_o
  status : ErrorCode,
  status : ErrorCode,
}
}


packet LeRemoveDeviceFromPeriodicAdvertisingList : LeAdvertisingCommand (op_code = LE_REMOVE_DEVICE_FROM_PERIODIC_ADVERTISING_LIST) {
packet LeRemoveDeviceFromPeriodicAdvertisingList : LeScanningCommand (op_code = LE_REMOVE_DEVICE_FROM_PERIODIC_ADVERTISING_LIST) {
  _payload_,  // placeholder (unimplemented)
  advertiser_address_type : AddressType,
  advertiser_address : Address,
  advertising_sid : 8,
}
}


packet LeRemoveDeviceFromPeriodicAdvertisingListComplete : CommandComplete (command_op_code = LE_REMOVE_DEVICE_FROM_PERIODIC_ADVERTISING_LIST) {
packet LeRemoveDeviceFromPeriodicAdvertisingListComplete : CommandComplete (command_op_code = LE_REMOVE_DEVICE_FROM_PERIODIC_ADVERTISING_LIST) {
  status : ErrorCode,
  status : ErrorCode,
}
}


packet LeClearPeriodicAdvertisingList : LeAdvertisingCommand (op_code = LE_CLEAR_PERIODIC_ADVERTISING_LIST) {
packet LeClearPeriodicAdvertisingList : LeScanningCommand (op_code = LE_CLEAR_PERIODIC_ADVERTISING_LIST) {
}
}


packet LeClearPeriodicAdvertisingListComplete : CommandComplete (command_op_code = LE_CLEAR_PERIODIC_ADVERTISING_LIST) {
packet LeClearPeriodicAdvertisingListComplete : CommandComplete (command_op_code = LE_CLEAR_PERIODIC_ADVERTISING_LIST) {
@@ -4099,7 +4121,7 @@ packet LeSetPrivacyModeComplete : CommandComplete (command_op_code = LE_SET_PRIV
  status : ErrorCode,
  status : ErrorCode,
}
}


packet LeSetPeriodicAdvertisingReceiveEnable : Command (op_code = LE_SET_PERIODIC_ADVERTISING_RECEIVE_ENABLE) {
packet LeSetPeriodicAdvertisingReceiveEnable : LeScanningCommand (op_code = LE_SET_PERIODIC_ADVERTISING_RECEIVE_ENABLE) {
  sync_handle : 12,
  sync_handle : 12,
  _reserved_ : 4,
  _reserved_ : 4,
  enable : 8,
  enable : 8,
@@ -4109,7 +4131,7 @@ packet LeSetPeriodicAdvertisingReceiveEnableComplete : CommandComplete (command_
  status : ErrorCode,
  status : ErrorCode,
}
}


packet LePeriodicAdvertisingSyncTransfer : Command (op_code = LE_PERIODIC_ADVERTISING_SYNC_TRANSFER) {
packet LePeriodicAdvertisingSyncTransfer : LeScanningCommand (op_code = LE_PERIODIC_ADVERTISING_SYNC_TRANSFER) {
  connection_handle : 12,
  connection_handle : 12,
  _reserved_ : 4,
  _reserved_ : 4,
  service_data : 16,
  service_data : 16,
@@ -4123,7 +4145,7 @@ packet LePeriodicAdvertisingSyncTransferComplete : CommandComplete (command_op_c
  _reserved_ : 4,
  _reserved_ : 4,
}
}


packet LePeriodicAdvertisingSetInfoTransfer : Command (op_code = LE_PERIODIC_ADVERTISING_SET_INFO_TRANSFER) {
packet LePeriodicAdvertisingSetInfoTransfer : LeScanningCommand (op_code = LE_PERIODIC_ADVERTISING_SET_INFO_TRANSFER) {
  connection_handle : 12,
  connection_handle : 12,
  _reserved_ : 4,
  _reserved_ : 4,
  service_data : 16,
  service_data : 16,
@@ -4142,13 +4164,20 @@ enum SyncTransferMode : 8 {
  SEND_SYNC_RECEIVED_SEND_REPORTS = 2,
  SEND_SYNC_RECEIVED_SEND_REPORTS = 2,
}
}


packet LeSetPeriodicAdvertisingSyncTransferParameters : Command (op_code = LE_SET_PERIODIC_ADVERTISING_SYNC_TRANSFER_PARAMETERS) {
enum CteType : 8 {
  AOA_CONSTANT_TONE_EXTENSION = 0x00,
  AOD_CONSTANT_TONE_EXTENSION_ONE_US_SLOTS = 0x01,
  AOD_CONSTANT_TONE_EXTENSION_TWO_US_SLOTS = 0x02,
  NO_CONSTANT_TONE_EXTENSION = 0xFF,
}

packet LeSetPeriodicAdvertisingSyncTransferParameters : LeScanningCommand (op_code = LE_SET_PERIODIC_ADVERTISING_SYNC_TRANSFER_PARAMETERS) {
  connection_handle : 12,
  connection_handle : 12,
  _reserved_ : 4,
  _reserved_ : 4,
  mode : SyncTransferMode,
  mode : SyncTransferMode,
  skip: 16,
  skip: 16,
  sync_timeout : 16,
  sync_timeout : 16,
  cte_type : 8,
  cte_type : CteType,
}
}


packet LeSetPeriodicAdvertisingSyncTransferParametersComplete : CommandComplete (command_op_code = LE_SET_PERIODIC_ADVERTISING_SYNC_TRANSFER_PARAMETERS) {
packet LeSetPeriodicAdvertisingSyncTransferParametersComplete : CommandComplete (command_op_code = LE_SET_PERIODIC_ADVERTISING_SYNC_TRANSFER_PARAMETERS) {
@@ -4157,14 +4186,15 @@ packet LeSetPeriodicAdvertisingSyncTransferParametersComplete : CommandComplete
  _reserved_ : 4,
  _reserved_ : 4,
}
}


packet LeSetDefaultPeriodicAdvertisingSyncTransferParameters : Command (op_code = LE_SET_DEFAULT_PERIODIC_ADVERTISING_SYNC_TRANSFER_PARAMETERS) {
packet LeSetDefaultPeriodicAdvertisingSyncTransferParameters : LeScanningCommand (op_code = LE_SET_DEFAULT_PERIODIC_ADVERTISING_SYNC_TRANSFER_PARAMETERS) {
  mode : SyncTransferMode,
  mode : SyncTransferMode,
  skip: 16,
  skip: 16,
  sync_timeout : 16,
  sync_timeout : 16,
  cte_type : 8,
  cte_type : CteType,
}
}


packet LeSetDefaultPeriodicAdvertisingSyncTransferParametersComplete : CommandComplete (command_op_code = LE_SET_DEFAULT_PERIODIC_ADVERTISING_SYNC_TRANSFER_PARAMETERS) {
packet LeSetDefaultPeriodicAdvertisingSyncTransferParametersComplete : CommandComplete (command_op_code = LE_SET_DEFAULT_PERIODIC_ADVERTISING_SYNC_TRANSFER_PARAMETERS) {
  status : ErrorCode,
}
}


enum UseDebugKey : 8 {
enum UseDebugKey : 8 {
@@ -5623,15 +5653,37 @@ packet LeExtendedAdvertisingReport : LeMetaEvent (subevent_code = EXTENDED_ADVER
}
}


packet LePeriodicAdvertisingSyncEstablished : LeMetaEvent (subevent_code = PERIODIC_ADVERTISING_SYNC_ESTABLISHED) {
packet LePeriodicAdvertisingSyncEstablished : LeMetaEvent (subevent_code = PERIODIC_ADVERTISING_SYNC_ESTABLISHED) {
  _payload_, // placeholder (unimplemented)
  status : ErrorCode,
  sync_handle : 12,
  _reserved_ : 4,
  advertising_sid : 8,
  advertiser_address_type : AddressType,
  advertiser_address : Address,
  advertiser_phy : SecondaryPhyType,
  periodic_advertising_interval : 16,
  advertiser_clock_accuracy : ClockAccuracy,
}

enum PeriodicAdvertisingDataStatus : 8 {
  DATA_COMPLETE = 0,
  DATA_INCOMPLETE_MORE_TO_COME = 1,
  DATA_INCOMPLETE_TRUNCATED_NO_MORE_DATA = 2,
}
}


packet LePeriodicAdvertisingReport : LeMetaEvent (subevent_code = PERIODIC_ADVERTISING_REPORT) {
packet LePeriodicAdvertisingReport : LeMetaEvent (subevent_code = PERIODIC_ADVERTISING_REPORT) {
  _payload_, // placeholder (unimplemented)
  sync_handle : 12,
  _reserved_ : 4,
  tx_power : 8,
  rssi : 8,
  cte_type : CteType,
  data_status : PeriodicAdvertisingDataStatus,
  _size_(data) : 8,
  data : 8[],
}
}


packet LePeriodicAdvertisingSyncLost : LeMetaEvent (subevent_code = PERIODIC_ADVERTISING_SYNC_LOST) {
packet LePeriodicAdvertisingSyncLost : LeMetaEvent (subevent_code = PERIODIC_ADVERTISING_SYNC_LOST) {
  _payload_, // placeholder (unimplemented)
  sync_handle : 12,
  _reserved_ : 4,
}
}


packet LeScanTimeout : LeMetaEvent (subevent_code = SCAN_TIMEOUT) {
packet LeScanTimeout : LeMetaEvent (subevent_code = SCAN_TIMEOUT) {
+514 −0

File added.

Preview size limit exceeded, changes collapsed.

+550 −0

File added.

Preview size limit exceeded, changes collapsed.

Loading