]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commitdiff
Bluetooth: btmrvl_sdio: Set parent dev to hdev
authorAbhishek Pandit-Subedi <abhishekpandit@chromium.org>
Thu, 11 Jun 2020 01:53:53 +0000 (18:53 -0700)
committerMarcel Holtmann <marcel@holtmann.org>
Fri, 12 Jun 2020 06:38:52 +0000 (08:38 +0200)
Set the correct parent dev when registering hdev. This allows userspace
tools to find the parent device (for example, to set the power/wakeup
property).

Before this change, the path was /sys/devices/virtual/bluetooth/hci0
and after this change, it looks more like:
/sys/bus/mmc/devices/mmc1:0001/mmc1:0001:2/bluetooth/hci0

Signed-off-by: Abhishek Pandit-Subedi <abhishekpandit@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
drivers/bluetooth/btmrvl_main.c

index 708ad21683eb31945b3ef849feb0d84f18363472..47e450903af423d5a06b0c0eb2145b7f2348b6b6 100644 (file)
@@ -669,6 +669,7 @@ static int btmrvl_service_main_thread(void *data)
 int btmrvl_register_hdev(struct btmrvl_private *priv)
 {
        struct hci_dev *hdev = NULL;
+       struct btmrvl_sdio_card *card = priv->btmrvl_dev.card;
        int ret;
 
        hdev = hci_alloc_dev();
@@ -687,6 +688,7 @@ int btmrvl_register_hdev(struct btmrvl_private *priv)
        hdev->send  = btmrvl_send_frame;
        hdev->setup = btmrvl_setup;
        hdev->set_bdaddr = btmrvl_set_bdaddr;
+       SET_HCIDEV_DEV(hdev, &card->func->dev);
 
        hdev->dev_type = priv->btmrvl_dev.dev_type;