diff options
Diffstat (limited to 'include/net/bluetooth/mgmt.h')
-rw-r--r-- | include/net/bluetooth/mgmt.h | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/include/net/bluetooth/mgmt.h b/include/net/bluetooth/mgmt.h index bcffc9ae0c89..623d5203c592 100644 --- a/include/net/bluetooth/mgmt.h +++ b/include/net/bluetooth/mgmt.h | |||
@@ -97,6 +97,7 @@ struct mgmt_rp_read_index_list { | |||
97 | #define MGMT_SETTING_SECURE_CONN 0x00000800 | 97 | #define MGMT_SETTING_SECURE_CONN 0x00000800 |
98 | #define MGMT_SETTING_DEBUG_KEYS 0x00001000 | 98 | #define MGMT_SETTING_DEBUG_KEYS 0x00001000 |
99 | #define MGMT_SETTING_PRIVACY 0x00002000 | 99 | #define MGMT_SETTING_PRIVACY 0x00002000 |
100 | #define MGMT_SETTING_CONFIGURATION 0x00004000 | ||
100 | 101 | ||
101 | #define MGMT_OP_READ_INFO 0x0004 | 102 | #define MGMT_OP_READ_INFO 0x0004 |
102 | #define MGMT_READ_INFO_SIZE 0 | 103 | #define MGMT_READ_INFO_SIZE 0 |
@@ -424,6 +425,76 @@ struct mgmt_rp_get_conn_info { | |||
424 | __s8 max_tx_power; | 425 | __s8 max_tx_power; |
425 | } __packed; | 426 | } __packed; |
426 | 427 | ||
428 | #define MGMT_OP_GET_CLOCK_INFO 0x0032 | ||
429 | struct mgmt_cp_get_clock_info { | ||
430 | struct mgmt_addr_info addr; | ||
431 | } __packed; | ||
432 | #define MGMT_GET_CLOCK_INFO_SIZE MGMT_ADDR_INFO_SIZE | ||
433 | struct mgmt_rp_get_clock_info { | ||
434 | struct mgmt_addr_info addr; | ||
435 | __le32 local_clock; | ||
436 | __le32 piconet_clock; | ||
437 | __le16 accuracy; | ||
438 | } __packed; | ||
439 | |||
440 | #define MGMT_OP_ADD_DEVICE 0x0033 | ||
441 | struct mgmt_cp_add_device { | ||
442 | struct mgmt_addr_info addr; | ||
443 | __u8 action; | ||
444 | } __packed; | ||
445 | #define MGMT_ADD_DEVICE_SIZE (MGMT_ADDR_INFO_SIZE + 1) | ||
446 | |||
447 | #define MGMT_OP_REMOVE_DEVICE 0x0034 | ||
448 | struct mgmt_cp_remove_device { | ||
449 | struct mgmt_addr_info addr; | ||
450 | } __packed; | ||
451 | #define MGMT_REMOVE_DEVICE_SIZE MGMT_ADDR_INFO_SIZE | ||
452 | |||
453 | struct mgmt_conn_param { | ||
454 | struct mgmt_addr_info addr; | ||
455 | __le16 min_interval; | ||
456 | __le16 max_interval; | ||
457 | __le16 latency; | ||
458 | __le16 timeout; | ||
459 | } __packed; | ||
460 | |||
461 | #define MGMT_OP_LOAD_CONN_PARAM 0x0035 | ||
462 | struct mgmt_cp_load_conn_param { | ||
463 | __le16 param_count; | ||
464 | struct mgmt_conn_param params[0]; | ||
465 | } __packed; | ||
466 | #define MGMT_LOAD_CONN_PARAM_SIZE 2 | ||
467 | |||
468 | #define MGMT_OP_READ_UNCONF_INDEX_LIST 0x0036 | ||
469 | #define MGMT_READ_UNCONF_INDEX_LIST_SIZE 0 | ||
470 | struct mgmt_rp_read_unconf_index_list { | ||
471 | __le16 num_controllers; | ||
472 | __le16 index[0]; | ||
473 | } __packed; | ||
474 | |||
475 | #define MGMT_OPTION_EXTERNAL_CONFIG 0x00000001 | ||
476 | #define MGMT_OPTION_PUBLIC_ADDRESS 0x00000002 | ||
477 | |||
478 | #define MGMT_OP_READ_CONFIG_INFO 0x0037 | ||
479 | #define MGMT_READ_CONFIG_INFO_SIZE 0 | ||
480 | struct mgmt_rp_read_config_info { | ||
481 | __le16 manufacturer; | ||
482 | __le32 supported_options; | ||
483 | __le32 missing_options; | ||
484 | } __packed; | ||
485 | |||
486 | #define MGMT_OP_SET_EXTERNAL_CONFIG 0x0038 | ||
487 | struct mgmt_cp_set_external_config { | ||
488 | __u8 config; | ||
489 | } __packed; | ||
490 | #define MGMT_SET_EXTERNAL_CONFIG_SIZE 1 | ||
491 | |||
492 | #define MGMT_OP_SET_PUBLIC_ADDRESS 0x0039 | ||
493 | struct mgmt_cp_set_public_address { | ||
494 | bdaddr_t bdaddr; | ||
495 | } __packed; | ||
496 | #define MGMT_SET_PUBLIC_ADDRESS_SIZE 6 | ||
497 | |||
427 | #define MGMT_EV_CMD_COMPLETE 0x0001 | 498 | #define MGMT_EV_CMD_COMPLETE 0x0001 |
428 | struct mgmt_ev_cmd_complete { | 499 | struct mgmt_ev_cmd_complete { |
429 | __le16 opcode; | 500 | __le16 opcode; |
@@ -522,6 +593,7 @@ struct mgmt_ev_auth_failed { | |||
522 | 593 | ||
523 | #define MGMT_DEV_FOUND_CONFIRM_NAME 0x01 | 594 | #define MGMT_DEV_FOUND_CONFIRM_NAME 0x01 |
524 | #define MGMT_DEV_FOUND_LEGACY_PAIRING 0x02 | 595 | #define MGMT_DEV_FOUND_LEGACY_PAIRING 0x02 |
596 | #define MGMT_DEV_FOUND_NOT_CONNECTABLE 0x04 | ||
525 | 597 | ||
526 | #define MGMT_EV_DEVICE_FOUND 0x0012 | 598 | #define MGMT_EV_DEVICE_FOUND 0x0012 |
527 | struct mgmt_ev_device_found { | 599 | struct mgmt_ev_device_found { |
@@ -578,3 +650,30 @@ struct mgmt_ev_new_csrk { | |||
578 | __u8 store_hint; | 650 | __u8 store_hint; |
579 | struct mgmt_csrk_info key; | 651 | struct mgmt_csrk_info key; |
580 | } __packed; | 652 | } __packed; |
653 | |||
654 | #define MGMT_EV_DEVICE_ADDED 0x001a | ||
655 | struct mgmt_ev_device_added { | ||
656 | struct mgmt_addr_info addr; | ||
657 | __u8 action; | ||
658 | } __packed; | ||
659 | |||
660 | #define MGMT_EV_DEVICE_REMOVED 0x001b | ||
661 | struct mgmt_ev_device_removed { | ||
662 | struct mgmt_addr_info addr; | ||
663 | } __packed; | ||
664 | |||
665 | #define MGMT_EV_NEW_CONN_PARAM 0x001c | ||
666 | struct mgmt_ev_new_conn_param { | ||
667 | struct mgmt_addr_info addr; | ||
668 | __u8 store_hint; | ||
669 | __le16 min_interval; | ||
670 | __le16 max_interval; | ||
671 | __le16 latency; | ||
672 | __le16 timeout; | ||
673 | } __packed; | ||
674 | |||
675 | #define MGMT_EV_UNCONF_INDEX_ADDED 0x001d | ||
676 | |||
677 | #define MGMT_EV_UNCONF_INDEX_REMOVED 0x001e | ||
678 | |||
679 | #define MGMT_EV_NEW_CONFIG_OPTIONS 0x001f | ||