Bluetooth: Add hci_do_le_scan()

This patch adds to hci_core the hci_do_le_scan function which
should be used to scan LE devices.

In order to enable LE scan, hci_do_le_scan() sends commands (Set
LE Scan Parameters and Set LE Scan Enable) to the controller and
waits for its results. If commands were executed successfully a
delayed work is scheduled to disable the ongoing scanning after
some amount of time. This function blocks.

Signed-off-by: Andre Guedes <andre.guedes@openbossa.org>
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
This commit is contained in:
Andre Guedes
2012-02-03 17:47:59 -03:00
committed by Johan Hedberg
parent 6fbe195dc4
commit 7ba8b4be38
3 changed files with 92 additions and 3 deletions

View File

@ -122,6 +122,12 @@ struct adv_entry {
u8 bdaddr_type;
};
struct le_scan_params {
u8 type;
u16 interval;
u16 window;
};
#define NUM_REASSEMBLY 4
struct hci_dev {
struct list_head list;
@ -261,6 +267,8 @@ struct hci_dev {
unsigned long dev_flags;
struct delayed_work le_scan_disable;
int (*open)(struct hci_dev *hdev);
int (*close)(struct hci_dev *hdev);
int (*flush)(struct hci_dev *hdev);