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

Commit c609d917 authored by Chienyuan Huang's avatar Chienyuan Huang
Browse files

CS: Update opcode and subevent code

Bug: 303011921
Bug: 324185011
Test: m com.android.btservices
Change-Id: Iddfd04160071f280356f17dc5f8942b8a4039b17
parent f81b9877
Loading
Loading
Loading
Loading
+46 −36
Original line number Diff line number Diff line
@@ -429,20 +429,20 @@ enum OpCode : 16 {
  LE_SET_DATA_RELATED_ADDRESS_CHANGES = 0x207C,
  LE_SET_DEFAULT_SUBRATE = 0x207D,
  LE_SUBRATE_REQUEST = 0x207E,
  LE_CS_WRITE_CACHED_REMOTE_SUPPORTED_CAPABILITIES = 0xFBE9,
  LE_CS_SET_PROCEDURE_PARAMETERS = 0xFBEA,
  LE_CS_TEST_END = 0xFBEB,
  LE_CS_TEST = 0xFBEC,
  LE_CS_PROCEDURE_ENABLE = 0xFBF1,
  LE_CS_SET_CHANNEL_CLASSIFICATION = 0xFBF2,
  LE_CS_REMOVE_CONFIG = 0xFBF3,
  LE_CS_CREATE_CONFIG = 0xFBF4,
  LE_CS_READ_REMOTE_FAE_TABLE = 0xFBF6,
  LE_CS_WRITE_CACHED_REMOTE_FAE_TABLE = 0xFBF7,
  LE_CS_SET_DEFAULT_SETTINGS = 0xFBF8,
  LE_CS_SECURITY_ENABLE = 0xFBF9,
  LE_CS_READ_REMOTE_SUPPORTED_CAPABILITIES = 0xFBFA,
  LE_CS_READ_LOCAL_SUPPORTED_CAPABILITIES = 0xFBFB,
  LE_CS_READ_LOCAL_SUPPORTED_CAPABILITIES = 0x2089,
  LE_CS_READ_REMOTE_SUPPORTED_CAPABILITIES = 0x208A,
  LE_CS_WRITE_CACHED_REMOTE_SUPPORTED_CAPABILITIES = 0x208B,
  LE_CS_SECURITY_ENABLE = 0x208C,
  LE_CS_SET_DEFAULT_SETTINGS = 0x208D,
  LE_CS_READ_REMOTE_FAE_TABLE = 0x208E,
  LE_CS_WRITE_CACHED_REMOTE_FAE_TABLE = 0x208F,
  LE_CS_CREATE_CONFIG = 0x2090,
  LE_CS_REMOVE_CONFIG = 0x0291,
  LE_CS_SET_CHANNEL_CLASSIFICATION = 0x2092,
  LE_CS_SET_PROCEDURE_PARAMETERS = 0x2093,
  LE_CS_PROCEDURE_ENABLE = 0x2094,
  LE_CS_TEST = 0x2095,
  LE_CS_TEST_END = 0x2096,

  // VENDOR_SPECIFIC
  // MSFT_OPCODE_xxxx below is needed for the tests.
@@ -549,6 +549,8 @@ enum OpCodeIndex : 16 {
  READ_CURRENT_IAC_LAP = 113,
  WRITE_CURRENT_IAC_LAP = 114,
  SET_AFH_HOST_CHANNEL_CLASSIFICATION = 121,
  LE_CS_READ_REMOTE_FAE_TABLE = 122,
  LE_CS_WRITE_CACHED_REMOTE_FAE_TABLE = 123,
  READ_INQUIRY_SCAN_TYPE = 124,
  WRITE_INQUIRY_SCAN_TYPE = 125,
  READ_INQUIRY_MODE = 126,
@@ -574,6 +576,8 @@ enum OpCodeIndex : 16 {
  SETUP_SYNCHRONOUS_CONNECTION = 163,
  ACCEPT_SYNCHRONOUS_CONNECTION = 164,
  REJECT_SYNCHRONOUS_CONNECTION = 165,
  LE_CS_CREATE_CONFIG = 166,
  LE_CS_REMOVE_CONFIG = 167,
  READ_EXTENDED_INQUIRY_RESPONSE = 170,
  WRITE_EXTENDED_INQUIRY_RESPONSE = 171,
  REFRESH_ENCRYPTION_KEY = 172,
@@ -597,13 +601,20 @@ enum OpCodeIndex : 16 {
  SEND_KEYPRESS_NOTIFICATION = 202,
  IO_CAPABILITY_REQUEST_NEGATIVE_REPLY = 203,
  READ_ENCRYPTION_KEY_SIZE = 204,
  LE_CS_READ_LOCAL_SUPPORTED_CAPABILITIES = 205,
  LE_CS_READ_REMOTE_SUPPORTED_CAPABILITIES = 206,
  LE_CS_WRITE_CACHED_REMOTE_SUPPORTED_CAPABILITIES = 207,
  SET_EVENT_MASK_PAGE_2 = 222,
  READ_FLOW_CONTROL_MODE = 230,
  WRITE_FLOW_CONTROL_MODE = 231,
  READ_DATA_BLOCK_SIZE = 232,
  LE_CS_TEST = 233,
  LE_CS_TEST_END = 234,
  READ_ENHANCED_TRANSMIT_POWER_LEVEL = 240,
  LE_CS_SECURITY_ENABLE = 241,
  READ_LE_HOST_SUPPORT = 245,
  WRITE_LE_HOST_SUPPORT = 246,
  LE_CS_SET_DEFAULT_SETTINGS = 247,
  LE_SET_EVENT_MASK = 250,
  LE_READ_BUFFER_SIZE_V1 = 251,
  LE_READ_LOCAL_SUPPORTED_FEATURES = 252,
@@ -634,6 +645,9 @@ enum OpCodeIndex : 16 {
  LE_RECEIVER_TEST_V1 = 284,
  LE_TRANSMITTER_TEST_V1 = 285,
  LE_TEST_END = 286,
  LE_CS_SET_CHANNEL_CLASSIFICATION = 290,
  LE_CS_SET_PROCEDURE_PARAMETERS = 291,
  LE_CS_PROCEDURE_ENABLE = 292,
  ENHANCED_SETUP_SYNCHRONOUS_CONNECTION = 293,
  ENHANCED_ACCEPT_SYNCHRONOUS_CONNECTION = 294,
  READ_LOCAL_SUPPORTED_CODECS_V1 = 295,
@@ -895,14 +909,14 @@ enum SubeventCode : 8 {
  TRANSMIT_POWER_REPORTING = 0x21,
  BIG_INFO_ADVERTISING_REPORT = 0x22,
  LE_SUBRATE_CHANGE = 0x23,
  LE_CS_TEST_END_COMPLETE = 0xF5,
  LE_CS_SUBEVENT_RESULT_CONTINUE = 0xF6,
  LE_CS_SUBEVENT_RESULT = 0xF7,
  LE_CS_PROCEDURE_ENABLE_COMPLETE = 0xF8,
  LE_CS_CONFIG_COMPLETE = 0xF9,
  LE_CS_SECURITY_ENABLE_COMPLETE = 0xFA,
  LE_CS_READ_REMOTE_FAE_TABLE_COMPLETE = 0xFB,
  LE_CS_READ_REMOTE_SUPPORTED_CAPABILITIES_COMPLETE = 0xFC,
  LE_CS_READ_REMOTE_SUPPORTED_CAPABILITIES_COMPLETE = 0x2C,
  LE_CS_READ_REMOTE_FAE_TABLE_COMPLETE = 0x2D,
  LE_CS_SECURITY_ENABLE_COMPLETE = 0x2E,
  LE_CS_CONFIG_COMPLETE = 0x2F,
  LE_CS_PROCEDURE_ENABLE_COMPLETE = 0x30,
  LE_CS_SUBEVENT_RESULT = 0x31,
  LE_CS_SUBEVENT_RESULT_CONTINUE = 0x32,
  LE_CS_TEST_END_COMPLETE = 0x33,
}

// Vendor specific events
@@ -4744,6 +4758,7 @@ packet LeRemoveIsoDataPathComplete : CommandComplete (command_op_code = LE_REMOV
enum LeHostFeatureBits : 8 {
  CONNECTED_ISO_STREAM_HOST_SUPPORT = 32,
  CONNECTION_SUBRATING_HOST_SUPPORT = 38,
  CHANNEL_SOUNDING_HOST_SUPPORT = 47,
}

packet LeSetHostFeature : Command (op_code = LE_SET_HOST_FEATURE) {
@@ -5232,17 +5247,12 @@ packet LeCsProcedureEnableStatus : CommandStatus (command_op_code = LE_CS_PROCED
packet LeCsTest : DistanceMeasurementCommand (op_code = LE_CS_TEST) {
  main_mode_type : 8,
  sub_mode_type : 8,
  main_mode_steps : 8,
  main_mode_repetition : 8,
  mode_0_steps : 8,
  role : 8,
  rtt_type : 8,
  cs_sync_phy : 8,
  cs_sync_antenna_selection : 8,
  cs_sync_aa_initiator : 32,
  cs_sync_aa_reflector : 32,
  cs_sync_random : 8[16],
  cs_sync_user_payload_pattern : 8,
  cs_subevent_length : 24,
  cs_subevent_interval : 16,
  transmit_power_level : 8,
@@ -5251,16 +5261,12 @@ packet LeCsTest : DistanceMeasurementCommand (op_code = LE_CS_TEST) {
  t_fcs_time : 8,
  t_pm_time : 8,
  t_sw_time : 8,
  t_pm_tone_ext : 8,
  ss_marker1_position: 8,
  ss_marker2_position: 8,
  ss_marker_value : 8,
  companion_signal_enable : 8,
  tone_antenna_config : 8,
  tone_antenna_permutation : 8,
  channel_map_repetition: 8,
  _size_(channel) : 8,
  channel : 8[],
  companion_signal_enable : 8,
  drbg_nonce : 16,
  override_config : 8,
  override_parameters_length : 8,
  override_parameters_data : 8[],
}

packet LeCsTestComplete : CommandComplete (command_op_code = LE_CS_TEST) {
@@ -6945,6 +6951,10 @@ packet LeCsSubeventResultContinue : LeMetaEvent (subevent_code = LE_CS_SUBEVENT_
  result_data_structures : LeCsResultDataStructure[],
}

packet LeCsTestEndComplete : LeMetaEvent (subevent_code = LE_CS_TEST_END_COMPLETE) {
  status : ErrorCode,
}

// Vendor specific events

packet VendorSpecificEvent : Event (event_code = VENDOR_SPECIFIC) {