hci.h (b231070a18d833f425179f2b51c5b22fb6374c7c) | hci.h (06f5b7785af6beebb7b2a452687b5a102c90ca6e) |
---|---|
1/* 2 BlueZ - Bluetooth protocol stack for Linux 3 Copyright (C) 2000-2001 Qualcomm Incorporated 4 5 Written 2000,2001 by Maxim Krasnyansky <maxk@qualcomm.com> 6 7 This program is free software; you can redistribute it and/or modify 8 it under the terms of the GNU General Public License version 2 as --- 111 unchanged lines hidden (view full) --- 120 121 HCI_LE_SCAN, 122 HCI_SSP_ENABLED, 123 HCI_HS_ENABLED, 124 HCI_LE_ENABLED, 125 HCI_ADVERTISING, 126 HCI_CONNECTABLE, 127 HCI_DISCOVERABLE, | 1/* 2 BlueZ - Bluetooth protocol stack for Linux 3 Copyright (C) 2000-2001 Qualcomm Incorporated 4 5 Written 2000,2001 by Maxim Krasnyansky <maxk@qualcomm.com> 6 7 This program is free software; you can redistribute it and/or modify 8 it under the terms of the GNU General Public License version 2 as --- 111 unchanged lines hidden (view full) --- 120 121 HCI_LE_SCAN, 122 HCI_SSP_ENABLED, 123 HCI_HS_ENABLED, 124 HCI_LE_ENABLED, 125 HCI_ADVERTISING, 126 HCI_CONNECTABLE, 127 HCI_DISCOVERABLE, |
128 HCI_LIMITED_DISCOVERABLE, |
|
128 HCI_LINK_SECURITY, 129 HCI_PERIODIC_INQ, 130 HCI_FAST_CONNECTABLE, 131 HCI_BREDR_ENABLED, 132}; 133 134/* A mask for the flags that are supposed to remain when a reset happens 135 * or the HCI device is closed. --- 682 unchanged lines hidden (view full) --- 818#define HCI_OP_READ_NUM_SUPPORTED_IAC 0x0c38 819struct hci_rp_read_num_supported_iac { 820 __u8 status; 821 __u8 num_iac; 822} __packed; 823 824#define HCI_OP_READ_CURRENT_IAC_LAP 0x0c39 825 | 129 HCI_LINK_SECURITY, 130 HCI_PERIODIC_INQ, 131 HCI_FAST_CONNECTABLE, 132 HCI_BREDR_ENABLED, 133}; 134 135/* A mask for the flags that are supposed to remain when a reset happens 136 * or the HCI device is closed. --- 682 unchanged lines hidden (view full) --- 819#define HCI_OP_READ_NUM_SUPPORTED_IAC 0x0c38 820struct hci_rp_read_num_supported_iac { 821 __u8 status; 822 __u8 num_iac; 823} __packed; 824 825#define HCI_OP_READ_CURRENT_IAC_LAP 0x0c39 826 |
827#define HCI_OP_WRITE_CURRENT_IAC_LAP 0x0c3a 828struct hci_cp_write_current_iac_lap { 829 __u8 num_iac; 830 __u8 iac_lap[6]; 831} __packed; 832 |
|
826#define HCI_OP_WRITE_INQUIRY_MODE 0x0c45 827 828#define HCI_MAX_EIR_LENGTH 240 829 830#define HCI_OP_WRITE_EIR 0x0c52 831struct hci_cp_write_eir { 832 __u8 fec; 833 __u8 data[HCI_MAX_EIR_LENGTH]; --- 197 unchanged lines hidden (view full) --- 1031 __le16 rem_len; 1032 __u8 frag[0]; 1033} __packed; 1034struct hci_rp_write_remote_amp_assoc { 1035 __u8 status; 1036 __u8 phy_handle; 1037} __packed; 1038 | 833#define HCI_OP_WRITE_INQUIRY_MODE 0x0c45 834 835#define HCI_MAX_EIR_LENGTH 240 836 837#define HCI_OP_WRITE_EIR 0x0c52 838struct hci_cp_write_eir { 839 __u8 fec; 840 __u8 data[HCI_MAX_EIR_LENGTH]; --- 197 unchanged lines hidden (view full) --- 1038 __le16 rem_len; 1039 __u8 frag[0]; 1040} __packed; 1041struct hci_rp_write_remote_amp_assoc { 1042 __u8 status; 1043 __u8 phy_handle; 1044} __packed; 1045 |
1046#define HCI_OP_WRITE_SSP_DEBUG_MODE 0x1804 1047 |
|
1039#define HCI_OP_LE_SET_EVENT_MASK 0x2001 1040struct hci_cp_le_set_event_mask { 1041 __u8 mask[8]; 1042} __packed; 1043 1044#define HCI_OP_LE_READ_BUFFER_SIZE 0x2002 1045struct hci_rp_le_read_buffer_size { 1046 __u8 status; --- 4 unchanged lines hidden (view full) --- 1051#define HCI_OP_LE_READ_LOCAL_FEATURES 0x2003 1052struct hci_rp_le_read_local_features { 1053 __u8 status; 1054 __u8 features[8]; 1055} __packed; 1056 1057#define HCI_OP_LE_SET_RANDOM_ADDR 0x2005 1058 | 1048#define HCI_OP_LE_SET_EVENT_MASK 0x2001 1049struct hci_cp_le_set_event_mask { 1050 __u8 mask[8]; 1051} __packed; 1052 1053#define HCI_OP_LE_READ_BUFFER_SIZE 0x2002 1054struct hci_rp_le_read_buffer_size { 1055 __u8 status; --- 4 unchanged lines hidden (view full) --- 1060#define HCI_OP_LE_READ_LOCAL_FEATURES 0x2003 1061struct hci_rp_le_read_local_features { 1062 __u8 status; 1063 __u8 features[8]; 1064} __packed; 1065 1066#define HCI_OP_LE_SET_RANDOM_ADDR 0x2005 1067 |
1059#define LE_ADV_IND 0x00 1060#define LE_ADV_DIRECT_IND 0x01 1061#define LE_ADV_SCAN_IND 0x02 1062#define LE_ADV_NONCONN_IND 0x03 1063 | |
1064#define HCI_OP_LE_SET_ADV_PARAM 0x2006 1065struct hci_cp_le_set_adv_param { 1066 __le16 min_interval; 1067 __le16 max_interval; 1068 __u8 type; 1069 __u8 own_address_type; 1070 __u8 direct_addr_type; 1071 bdaddr_t direct_addr; --- 10 unchanged lines hidden (view full) --- 1082#define HCI_MAX_AD_LENGTH 31 1083 1084#define HCI_OP_LE_SET_ADV_DATA 0x2008 1085struct hci_cp_le_set_adv_data { 1086 __u8 length; 1087 __u8 data[HCI_MAX_AD_LENGTH]; 1088} __packed; 1089 | 1068#define HCI_OP_LE_SET_ADV_PARAM 0x2006 1069struct hci_cp_le_set_adv_param { 1070 __le16 min_interval; 1071 __le16 max_interval; 1072 __u8 type; 1073 __u8 own_address_type; 1074 __u8 direct_addr_type; 1075 bdaddr_t direct_addr; --- 10 unchanged lines hidden (view full) --- 1086#define HCI_MAX_AD_LENGTH 31 1087 1088#define HCI_OP_LE_SET_ADV_DATA 0x2008 1089struct hci_cp_le_set_adv_data { 1090 __u8 length; 1091 __u8 data[HCI_MAX_AD_LENGTH]; 1092} __packed; 1093 |
1094#define HCI_OP_LE_SET_SCAN_RSP_DATA 0x2009 1095struct hci_cp_le_set_scan_rsp_data { 1096 __u8 length; 1097 __u8 data[HCI_MAX_AD_LENGTH]; 1098} __packed; 1099 |
|
1090#define HCI_OP_LE_SET_ADV_ENABLE 0x200a 1091 1092#define LE_SCAN_PASSIVE 0x00 1093#define LE_SCAN_ACTIVE 0x01 1094 1095#define HCI_OP_LE_SET_SCAN_PARAM 0x200b 1096struct hci_cp_le_set_scan_param { 1097 __u8 type; --- 464 unchanged lines hidden (view full) --- 1562#define HCI_EV_LE_LTK_REQ 0x05 1563struct hci_ev_le_ltk_req { 1564 __le16 handle; 1565 __u8 random[8]; 1566 __le16 ediv; 1567} __packed; 1568 1569/* Advertising report event types */ | 1100#define HCI_OP_LE_SET_ADV_ENABLE 0x200a 1101 1102#define LE_SCAN_PASSIVE 0x00 1103#define LE_SCAN_ACTIVE 0x01 1104 1105#define HCI_OP_LE_SET_SCAN_PARAM 0x200b 1106struct hci_cp_le_set_scan_param { 1107 __u8 type; --- 464 unchanged lines hidden (view full) --- 1572#define HCI_EV_LE_LTK_REQ 0x05 1573struct hci_ev_le_ltk_req { 1574 __le16 handle; 1575 __u8 random[8]; 1576 __le16 ediv; 1577} __packed; 1578 1579/* Advertising report event types */ |
1570#define ADV_IND 0x00 1571#define ADV_DIRECT_IND 0x01 1572#define ADV_SCAN_IND 0x02 1573#define ADV_NONCONN_IND 0x03 1574#define ADV_SCAN_RSP 0x04 | 1580#define LE_ADV_IND 0x00 1581#define LE_ADV_DIRECT_IND 0x01 1582#define LE_ADV_SCAN_IND 0x02 1583#define LE_ADV_NONCONN_IND 0x03 1584#define LE_ADV_SCAN_RSP 0x04 |
1575 1576#define ADDR_LE_DEV_PUBLIC 0x00 1577#define ADDR_LE_DEV_RANDOM 0x01 1578 1579#define HCI_EV_LE_ADVERTISING_REPORT 0x02 1580struct hci_ev_le_advertising_info { 1581 __u8 evt_type; 1582 __u8 bdaddr_type; --- 191 unchanged lines hidden (view full) --- 1774 __u16 dev_id; 1775 __u16 flags; 1776 __u8 lap[3]; 1777 __u8 length; 1778 __u8 num_rsp; 1779}; 1780#define IREQ_CACHE_FLUSH 0x0001 1781 | 1585 1586#define ADDR_LE_DEV_PUBLIC 0x00 1587#define ADDR_LE_DEV_RANDOM 0x01 1588 1589#define HCI_EV_LE_ADVERTISING_REPORT 0x02 1590struct hci_ev_le_advertising_info { 1591 __u8 evt_type; 1592 __u8 bdaddr_type; --- 191 unchanged lines hidden (view full) --- 1784 __u16 dev_id; 1785 __u16 flags; 1786 __u8 lap[3]; 1787 __u8 length; 1788 __u8 num_rsp; 1789}; 1790#define IREQ_CACHE_FLUSH 0x0001 1791 |
1782extern bool enable_hs; 1783 | |
1784#endif /* __HCI_H */ | 1792#endif /* __HCI_H */ |