Procházet zdrojové kódy

Bluetooth: Filter duplicated reports in LE scan

This patch enables filtering duplicated advertising reports during
LE scan.

Some LE devices advertise using very small intervals generating lots
of equal advertising report events to the host. Each event generates
a mgmt_device_found event which is copied to userspace.

Enabling this feature, duplicated advertising reports are filtered
at controller's link layer. This way, the controller doesn't wake up
the host to report duplicated advertising reports and, consequently,
less data is copied to userspace.

Signed-off-by: Andre Guedes <andre.guedes@openbossa.org>
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Andre Guedes před 13 roky
rodič
revize
0431a43ca5
1 změnil soubory, kde provedl 1 přidání a 0 odebrání
  1. 1 0
      net/bluetooth/hci_core.c

+ 1 - 0
net/bluetooth/hci_core.c

@@ -1526,6 +1526,7 @@ static void le_scan_enable_req(struct hci_dev *hdev, unsigned long opt)
 
 
 	memset(&cp, 0, sizeof(cp));
 	memset(&cp, 0, sizeof(cp));
 	cp.enable = 1;
 	cp.enable = 1;
+	cp.filter_dup = 1;
 
 
 	hci_send_cmd(hdev, HCI_OP_LE_SET_SCAN_ENABLE, sizeof(cp), &cp);
 	hci_send_cmd(hdev, HCI_OP_LE_SET_SCAN_ENABLE, sizeof(cp), &cp);
 }
 }