Bluetooth: Filter device found events based on RSSI threshold
Using Start Service Discovery allows to provide a RSSI threshold. This patch implements support for filtering out device found events based on the provided value. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
This commit is contained in:
Родитель
37eab042be
Коммит
bda157a400
|
@ -6821,6 +6821,15 @@ void mgmt_device_found(struct hci_dev *hdev, bdaddr_t *bdaddr, u8 link_type,
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* When using service discovery with a RSSI threshold, then check
|
||||||
|
* if such a RSSI threshold is specified. If a RSSI threshold has
|
||||||
|
* been specified, then all results with a RSSI smaller than the
|
||||||
|
* RSSI threshold will be dropped.
|
||||||
|
*/
|
||||||
|
if (hdev->discovery.rssi != HCI_RSSI_INVALID &&
|
||||||
|
rssi < hdev->discovery.rssi)
|
||||||
|
return;
|
||||||
|
|
||||||
/* Make sure that the buffer is big enough. The 5 extra bytes
|
/* Make sure that the buffer is big enough. The 5 extra bytes
|
||||||
* are for the potential CoD field.
|
* are for the potential CoD field.
|
||||||
*/
|
*/
|
||||||
|
|
Загрузка…
Ссылка в новой задаче