Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dd2ef8e2 authored by Andre Guedes's avatar Andre Guedes Committed by Marcel Holtmann
Browse files

Bluetooth: Update background scan parameters



If new scanning parameters are set while background scan is running,
we should restart background scanning so these parameters are updated.

Signed-off-by: default avatarAndre Guedes <andre.guedes@openbossa.org>
Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
parent 8ef30fd3
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
@@ -3924,6 +3924,21 @@ static int set_scan_params(struct sock *sk, struct hci_dev *hdev,

	err = cmd_complete(sk, hdev->id, MGMT_OP_SET_SCAN_PARAMS, 0, NULL, 0);

	/* If background scan is running, restart it so new parameters are
	 * loaded.
	 */
	if (test_bit(HCI_LE_SCAN, &hdev->dev_flags) &&
	    hdev->discovery.state == DISCOVERY_STOPPED) {
		struct hci_request req;

		hci_req_init(&req, hdev);

		hci_req_add_le_scan_disable(&req);
		hci_req_add_le_passive_scan(&req);

		hci_req_run(&req, NULL);
	}

	hci_dev_unlock(hdev);

	return err;