Bluetooth: Track discovery type
This patch adds to struct discovery_state the field 'type' so that we can track the discovery type the device is performing. 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:
committed by
Johan Hedberg
parent
f39799f504
commit
4aab14e550
@@ -57,6 +57,7 @@ struct inquiry_entry {
|
|||||||
};
|
};
|
||||||
|
|
||||||
struct discovery_state {
|
struct discovery_state {
|
||||||
|
int type;
|
||||||
enum {
|
enum {
|
||||||
DISCOVERY_STOPPED,
|
DISCOVERY_STOPPED,
|
||||||
DISCOVERY_STARTING,
|
DISCOVERY_STARTING,
|
||||||
|
@@ -380,6 +380,8 @@ void hci_discovery_set_state(struct hci_dev *hdev, int state)
|
|||||||
|
|
||||||
switch (state) {
|
switch (state) {
|
||||||
case DISCOVERY_STOPPED:
|
case DISCOVERY_STOPPED:
|
||||||
|
hdev->discovery.type = 0;
|
||||||
|
|
||||||
if (hdev->discovery.state != DISCOVERY_STARTING)
|
if (hdev->discovery.state != DISCOVERY_STARTING)
|
||||||
mgmt_discovering(hdev, 0);
|
mgmt_discovering(hdev, 0);
|
||||||
break;
|
break;
|
||||||
|
@@ -2192,7 +2192,9 @@ static int start_discovery(struct sock *sk, u16 index,
|
|||||||
goto failed;
|
goto failed;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (cp->type) {
|
hdev->discovery.type = cp->type;
|
||||||
|
|
||||||
|
switch (hdev->discovery.type) {
|
||||||
case DISCOV_TYPE_BREDR:
|
case DISCOV_TYPE_BREDR:
|
||||||
case DISCOV_TYPE_INTERLEAVED:
|
case DISCOV_TYPE_INTERLEAVED:
|
||||||
err = hci_do_inquiry(hdev, INQUIRY_LEN_BREDR);
|
err = hci_do_inquiry(hdev, INQUIRY_LEN_BREDR);
|
||||||
|
Reference in New Issue
Block a user