[Bluetooth] Use ACL config stage to retrieve remote features
[pandora-kernel.git] / include / net / bluetooth / hci.h
index a8a9eb6..55576e8 100644 (file)
@@ -137,6 +137,8 @@ enum {
 #define ESCO_EV4       0x0010
 #define ESCO_EV5       0x0020
 
+#define SCO_ESCO_MASK  (ESCO_HV1 | ESCO_HV2 | ESCO_HV3)
+
 /* ACL flags */
 #define ACL_CONT               0x01
 #define ACL_START              0x02
@@ -178,6 +180,8 @@ enum {
 
 #define LMP_SNIFF_SUBR 0x02
 
+#define LMP_SIMPLE_PAIR        0x08
+
 /* Connection modes */
 #define HCI_CM_ACTIVE  0x0000
 #define HCI_CM_HOLD    0x0001
@@ -402,6 +406,17 @@ struct hci_rp_write_link_policy {
        __le16   handle;
 } __attribute__ ((packed));
 
+#define HCI_OP_READ_DEF_LINK_POLICY    0x080e
+struct hci_rp_read_def_link_policy {
+       __u8     status;
+       __le16   policy;
+} __attribute__ ((packed));
+
+#define HCI_OP_WRITE_DEF_LINK_POLICY   0x080f
+struct hci_cp_write_def_link_policy {
+       __le16   policy;
+} __attribute__ ((packed));
+
 #define HCI_OP_SNIFF_SUBRATE           0x0811
 struct hci_cp_sniff_subrate {
        __le16   handle;
@@ -501,6 +516,17 @@ struct hci_cp_host_buffer_size {
        __le16   sco_max_pkt;
 } __attribute__ ((packed));
 
+#define HCI_OP_READ_SSP_MODE           0x0c55
+struct hci_rp_read_ssp_mode {
+       __u8     status;
+       __u8     mode;
+} __attribute__ ((packed));
+
+#define HCI_OP_WRITE_SSP_MODE          0x0c56
+struct hci_cp_write_ssp_mode {
+       __u8     mode;
+} __attribute__ ((packed));
+
 #define HCI_OP_READ_LOCAL_VERSION      0x1001
 struct hci_rp_read_local_version {
        __u8     status;
@@ -696,6 +722,13 @@ struct hci_ev_clock_offset {
        __le16   clock_offset;
 } __attribute__ ((packed));
 
+#define HCI_EV_PKT_TYPE_CHANGE         0x1d
+struct hci_ev_pkt_type_change {
+       __u8     status;
+       __le16   handle;
+       __le16   pkt_type;
+} __attribute__ ((packed));
+
 #define HCI_EV_PSCAN_REP_MODE          0x20
 struct hci_ev_pscan_rep_mode {
        bdaddr_t bdaddr;
@@ -774,6 +807,23 @@ struct extended_inquiry_info {
        __u8     data[240];
 } __attribute__ ((packed));
 
+#define HCI_EV_IO_CAPA_REQUEST         0x31
+struct hci_ev_io_capa_request {
+       bdaddr_t bdaddr;
+} __attribute__ ((packed));
+
+#define HCI_EV_SIMPLE_PAIR_COMPLETE    0x36
+struct hci_ev_simple_pair_complete {
+       __u8     status;
+       bdaddr_t bdaddr;
+} __attribute__ ((packed));
+
+#define HCI_EV_REMOTE_HOST_FEATURES    0x3d
+struct hci_ev_remote_host_features {
+       bdaddr_t bdaddr;
+       __u8     features[8];
+} __attribute__ ((packed));
+
 /* Internal events generated by Bluetooth stack */
 #define HCI_EV_STACK_INTERNAL  0xfd
 struct hci_ev_stack_internal {