case OpCode::CONTROLLER_BQR:
return vendor_capabilities_.bluetooth_quality_report_support_ == 0x01;
// undefined in local_supported_commands_
- case OpCode::CREATE_NEW_UNIT_KEY:
case OpCode::READ_LOCAL_SUPPORTED_COMMANDS:
return true;
case OpCode::NONE:
FLUSH = 0x0C08,
READ_PIN_TYPE = 0x0C09,
WRITE_PIN_TYPE = 0x0C0A,
- CREATE_NEW_UNIT_KEY = 0x0C0B,
READ_STORED_LINK_KEY = 0x0C0D,
WRITE_STORED_LINK_KEY = 0x0C11,
DELETE_STORED_LINK_KEY = 0x0C12,
status : ErrorCode,
}
-packet CreateNewUnitKey : Command (op_code = CREATE_NEW_UNIT_KEY) {
- _payload_, // placeholder (unimplemented)
-}
-
enum ReadStoredLinkKeyReadAllFlag : 8 {
SPECIFIED_BD_ADDR = 0x00,
ALL = 0x01,
/// Check whether a given opcode is supported by the controller
pub fn is_supported(&self, opcode: OpCode) -> bool {
match opcode {
- OpCode::ReadLocalSupportedCommands | OpCode::CreateNewUnitKey => true,
+ OpCode::ReadLocalSupportedCommands => true,
_ => {
let converted = OpCodeIndex::try_from(opcode);
if converted.is_err() {
#define HCI_FLUSH (0x0008 | HCI_GRP_HOST_CONT_BASEBAND_CMDS)
#define HCI_READ_PIN_TYPE (0x0009 | HCI_GRP_HOST_CONT_BASEBAND_CMDS)
#define HCI_WRITE_PIN_TYPE (0x000A | HCI_GRP_HOST_CONT_BASEBAND_CMDS)
-#define HCI_CREATE_NEW_UNIT_KEY (0x000B | HCI_GRP_HOST_CONT_BASEBAND_CMDS)
#define HCI_GET_MWS_TRANS_LAYER_CFG (0x000C | HCI_GRP_HOST_CONT_BASEBAND_CMDS)
#define HCI_READ_STORED_LINK_KEY (0x000D | HCI_GRP_HOST_CONT_BASEBAND_CMDS)
#define HCI_WRITE_STORED_LINK_KEY (0x0011 | HCI_GRP_HOST_CONT_BASEBAND_CMDS)
#define HCI_FLUSH_SUPPORTED(x) ((x)[6] & 0x02)
#define HCI_READ_PIN_TYPE_SUPPORTED(x) ((x)[6] & 0x04)
#define HCI_WRITE_PIN_TYPE_SUPPORTED(x) ((x)[6] & 0x08)
-#define HCI_CREATE_NEW_UNIT_KEY_SUPPORTED(x) ((x)[6] & 0x10)
#define HCI_READ_STORED_LINK_KEY_SUPPORTED(x) ((x)[6] & 0x20)
#define HCI_WRITE_STORED_LINK_KEY_SUPPORTED(x) ((x)[6] & 0x40)
#define HCI_DELETE_STORED_LINK_KEY_SUPPORTED(x) ((x)[6] & 0x80)