From 41bab614f1b4fd83fd88b36caefd24c810095e8e Mon Sep 17 00:00:00 2001 From: Myles Watson Date: Mon, 11 Nov 2019 08:34:49 -0800 Subject: [PATCH] HCI: Add two-bit filter policy, rename MultiAdvt Bug: 139080884 Test: bluetooth_test_gd Change-Id: Ia8e4889d1efcdf10e546c7bcd92f55cfd871e9ba --- gd/hci/hci_packets.pdl | 43 ++++++++++++++++++++++++++++++------------- 1 file changed, 30 insertions(+), 13 deletions(-) diff --git a/gd/hci/hci_packets.pdl b/gd/hci/hci_packets.pdl index 711f2ed50..255306cd2 100644 --- a/gd/hci/hci_packets.pdl +++ b/gd/hci/hci_packets.pdl @@ -2203,9 +2203,11 @@ packet LeSetRandomAddressComplete : CommandComplete (command_op_code = LE_SET_RA status : ErrorCode, } -enum AdvertisingFilterPolicy : 1 { +enum AdvertisingFilterPolicy : 2 { ALL_DEVICES = 0, // Default - ONLY_WHITE_LISTED_DEVICES = 1, + WHITELISTED_SCAN = 1, + WHITELISTED_CONNECT = 2, + WHITELISTED_SCAN_AND_CONNECT = 3, } enum PeerAddressType : 8 { @@ -2749,11 +2751,11 @@ packet LeGetVendorCapabilitiesComplete098 : LeGetVendorCapabilitiesComplete096 { } enum SubOcf : 8 { - SET_ADVT_PARAM = 0x01, - SET_ADVT_DATA = 0x02, - SET_ADVT_SCAN_RESP = 0x03, - SET_ADVT_RANDOM_ADDR = 0x04, - SET_ADVT_ENABLE = 0x05, + SET_PARAM = 0x01, + SET_DATA = 0x02, + SET_SCAN_RESP = 0x03, + SET_RANDOM_ADDR = 0x04, + SET_ENABLE = 0x05, } packet LeMultiAdvt : LeAdvertisingCommand (op_code = LE_MULTI_ADVT) { @@ -2761,12 +2763,12 @@ packet LeMultiAdvt : LeAdvertisingCommand (op_code = LE_MULTI_ADVT) { _body_, } -packet LeMultiAdvtParamComplete : CommandComplete (command_op_code = LE_MULTI_ADVT) { +packet LeMultiAdvtComplete : CommandComplete (command_op_code = LE_MULTI_ADVT) { status : ErrorCode, sub_cmd : SubOcf, } -packet LeMultiAdvtParam : LeMultiAdvt (sub_cmd = SET_ADVT_PARAM) { +packet LeMultiAdvtParam : LeMultiAdvt (sub_cmd = SET_PARAM) { interval_min : 16, interval_max : 16, type : AdvertisingEventType, @@ -2780,30 +2782,45 @@ packet LeMultiAdvtParam : LeMultiAdvt (sub_cmd = SET_ADVT_PARAM) { tx_power : 8, } -packet LeMultiAdvtParamSetData : LeMultiAdvt (sub_cmd = SET_ADVT_DATA) { +packet LeMultiAdvtParamComplete : LeMultiAdvtComplete (sub_cmd = SET_PARAM) { +} + +packet LeMultiAdvtSetData : LeMultiAdvt (sub_cmd = SET_DATA) { _size_(advertising_data) : 8, advertising_data : GapData[], _padding_[31], // Zero padding to 31 bytes of advertising_data advertising_instance : 8, } -packet LeMultiAdvtParamSetScanResp : LeMultiAdvt (sub_cmd = SET_ADVT_SCAN_RESP) { +packet LeMultiAdvtSetDataComplete : LeMultiAdvtComplete (sub_cmd = SET_DATA) { +} + +packet LeMultiAdvtSetScanResp : LeMultiAdvt (sub_cmd = SET_SCAN_RESP) { _size_(advertising_data) : 8, advertising_data : GapData[], _padding_[31], // Zero padding to 31 bytes of advertising_data advertising_instance : 8, } -packet LeMultiAdvtParamSetRandomAddr : LeMultiAdvt (sub_cmd = SET_ADVT_RANDOM_ADDR) { +packet LeMultiAdvtSetScanRespComplete : LeMultiAdvtComplete (sub_cmd = SET_SCAN_RESP) { +} + +packet LeMultiAdvtSetRandomAddr : LeMultiAdvt (sub_cmd = SET_RANDOM_ADDR) { random_address : Address, advertising_instance : 8, } -packet LeMultiAdvtParamSetEnable : LeMultiAdvt (sub_cmd = SET_ADVT_ENABLE) { +packet LeMultiAdvtSetRandomAddrComplete : LeMultiAdvtComplete (sub_cmd = SET_RANDOM_ADDR) { +} + +packet LeMultiAdvtSetEnable : LeMultiAdvt (sub_cmd = SET_ENABLE) { advertising_enable : Enable, // Default DISABLED advertising_instance : 8, } +packet LeMultiAdvtSetEnableComplete : LeMultiAdvtComplete (sub_cmd = SET_ENABLE) { +} + packet LeBatchScan : VendorCommand (op_code = LE_BATCH_SCAN) { _payload_, // placeholder (unimplemented) } -- 2.11.0