These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / include / net / bluetooth / hci.h
index d95da83..0205b80 100644 (file)
@@ -44,6 +44,9 @@
 #define HCI_DEV_DOWN                   4
 #define HCI_DEV_SUSPEND                        5
 #define HCI_DEV_RESUME                 6
+#define HCI_DEV_OPEN                   7
+#define HCI_DEV_CLOSE                  8
+#define HCI_DEV_SETUP                  9
 
 /* HCI notify events */
 #define HCI_NOTIFY_CONN_ADD            1
@@ -168,6 +171,15 @@ enum {
         * during the hdev->setup vendor callback.
         */
        HCI_QUIRK_SIMULTANEOUS_DISCOVERY,
+
+       /* When this quirk is set, the enabling of diagnostic mode is
+        * not persistent over HCI Reset. Every time the controller
+        * is brought up it needs to be reprogrammed.
+        *
+        * This quirk can be set before hci_register_dev is called or
+        * during the hdev->setup vendor callback.
+        */
+       HCI_QUIRK_NON_PERSISTENT_DIAG,
 };
 
 /* HCI device flags */
@@ -238,6 +250,7 @@ enum {
        HCI_LE_SCAN_INTERRUPTED,
 
        HCI_DUT_MODE,
+       HCI_VENDOR_DIAG,
        HCI_FORCE_BREDR_SMP,
        HCI_FORCE_STATIC_ADDR,
 
@@ -260,6 +273,7 @@ enum {
 #define HCI_ACLDATA_PKT                0x02
 #define HCI_SCODATA_PKT                0x03
 #define HCI_EVENT_PKT          0x04
+#define HCI_DIAG_PKT           0xf0
 #define HCI_VENDOR_PKT         0xff
 
 /* HCI packet types */
@@ -1202,6 +1216,16 @@ struct hci_rp_read_clock {
        __le16   accuracy;
 } __packed;
 
+#define HCI_OP_READ_ENC_KEY_SIZE       0x1408
+struct hci_cp_read_enc_key_size {
+       __le16   handle;
+} __packed;
+struct hci_rp_read_enc_key_size {
+       __u8     status;
+       __le16   handle;
+       __u8     key_size;
+} __packed;
+
 #define HCI_OP_READ_LOCAL_AMP_INFO     0x1409
 struct hci_rp_read_local_amp_info {
        __u8     status;