|
@@ -531,10 +531,6 @@ static void hci_setup_event_mask(struct hci_request *req)
|
|
|
|
|
|
if (lmp_bredr_capable(hdev)) {
|
|
|
events[4] |= 0x01; /* Flow Specification Complete */
|
|
|
- events[4] |= 0x02; /* Inquiry Result with RSSI */
|
|
|
- events[4] |= 0x04; /* Read Remote Extended Features Complete */
|
|
|
- events[5] |= 0x08; /* Synchronous Connection Complete */
|
|
|
- events[5] |= 0x10; /* Synchronous Connection Changed */
|
|
|
} else {
|
|
|
/* Use a different default for LE-only devices */
|
|
|
memset(events, 0, sizeof(events));
|
|
@@ -555,6 +551,14 @@ static void hci_setup_event_mask(struct hci_request *req)
|
|
|
if (lmp_inq_rssi_capable(hdev))
|
|
|
events[4] |= 0x02; /* Inquiry Result with RSSI */
|
|
|
|
|
|
+ if (lmp_ext_feat_capable(hdev))
|
|
|
+ events[4] |= 0x04; /* Read Remote Extended Features Complete */
|
|
|
+
|
|
|
+ if (lmp_esco_capable(hdev)) {
|
|
|
+ events[5] |= 0x08; /* Synchronous Connection Complete */
|
|
|
+ events[5] |= 0x10; /* Synchronous Connection Changed */
|
|
|
+ }
|
|
|
+
|
|
|
if (lmp_sniffsubr_capable(hdev))
|
|
|
events[5] |= 0x20; /* Sniff Subrating */
|
|
|
|