Bluetooth: Modify LE window and interval for suspend
authorAbhishek Pandit-Subedi <abhishekpandit@chromium.org>
Wed, 13 May 2020 02:09:33 +0000 (19:09 -0700)
committerMarcel Holtmann <marcel@holtmann.org>
Wed, 13 May 2020 06:50:56 +0000 (08:50 +0200)
When a device is suspended, it doesn't need to be as responsive to
connection events. Increase the interval to 640ms (creating a duty cycle
of roughly 1.75%) so that passive scanning uses much less power (vs
previous duty cycle of 18.75%). The new window + interval combination
has been tested to work with HID devices (which are currently the only
devices capable of wake up).

Signed-off-by: Abhishek Pandit-Subedi <abhishekpandit@chromium.org>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
net/bluetooth/hci_request.c

index f6870e98faab2cfbecb2698e956012140c464cf8..6b45e31432a7722026658e9d1680ee890d1540d7 100644 (file)
@@ -35,7 +35,7 @@
 #define HCI_REQ_CANCELED  2
 
 #define LE_SUSPEND_SCAN_WINDOW         0x0012
-#define LE_SUSPEND_SCAN_INTERVAL       0x0060
+#define LE_SUSPEND_SCAN_INTERVAL       0x0400
 
 void hci_req_init(struct hci_request *req, struct hci_dev *hdev)
 {