Bluetooth: btmrvl_sdio: Implement prevent_wake
Use the parent device's power/wakeup to control whether we support remote wake. If remote wakeup is disabled, Bluetooth will not enable scanning for incoming connections. Signed-off-by: Abhishek Pandit-Subedi <abhishekpandit@chromium.org> Reviewed-by: Douglas Anderson <dianders@chromium.org> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
parent
70a7808b50
commit
76d4c130ea
@ -587,6 +587,14 @@ static int btmrvl_set_bdaddr(struct hci_dev *hdev, const bdaddr_t *bdaddr)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static bool btmrvl_prevent_wake(struct hci_dev *hdev)
|
||||||
|
{
|
||||||
|
struct btmrvl_private *priv = hci_get_drvdata(hdev);
|
||||||
|
struct btmrvl_sdio_card *card = priv->btmrvl_dev.card;
|
||||||
|
|
||||||
|
return !device_may_wakeup(&card->func->dev);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This function handles the event generated by firmware, rx data
|
* This function handles the event generated by firmware, rx data
|
||||||
* received from firmware, and tx data sent from kernel.
|
* received from firmware, and tx data sent from kernel.
|
||||||
@ -688,6 +696,7 @@ int btmrvl_register_hdev(struct btmrvl_private *priv)
|
|||||||
hdev->send = btmrvl_send_frame;
|
hdev->send = btmrvl_send_frame;
|
||||||
hdev->setup = btmrvl_setup;
|
hdev->setup = btmrvl_setup;
|
||||||
hdev->set_bdaddr = btmrvl_set_bdaddr;
|
hdev->set_bdaddr = btmrvl_set_bdaddr;
|
||||||
|
hdev->prevent_wake = btmrvl_prevent_wake;
|
||||||
SET_HCIDEV_DEV(hdev, &card->func->dev);
|
SET_HCIDEV_DEV(hdev, &card->func->dev);
|
||||||
|
|
||||||
hdev->dev_type = priv->btmrvl_dev.dev_type;
|
hdev->dev_type = priv->btmrvl_dev.dev_type;
|
||||||
|
Loading…
Reference in New Issue
Block a user