OSDN Git Service

Bluetooth: hci_qca: only assign wakeup with serial port support
authorZhengping Jiang <jiangzp@google.com>
Thu, 13 Oct 2022 21:45:08 +0000 (14:45 -0700)
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
Mon, 12 Dec 2022 22:19:23 +0000 (14:19 -0800)
Only assign hdev->wakeup if the serial port supports wakeup. Otherwise
it will fall back to the hci_uart_wakeup or the behavior that can be
overridden before calling the hci_uart_register_device().

Signed-off-by: Zhengping Jiang <jiangzp@google.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
drivers/bluetooth/hci_qca.c

index 8df1101..dacb6f5 100644 (file)
@@ -1765,7 +1765,8 @@ retry:
                qca_debugfs_init(hdev);
                hu->hdev->hw_error = qca_hw_error;
                hu->hdev->cmd_timeout = qca_cmd_timeout;
-               hu->hdev->wakeup = qca_wakeup;
+               if (device_can_wakeup(hu->serdev->ctrl->dev.parent))
+                       hu->hdev->wakeup = qca_wakeup;
        } else if (ret == -ENOENT) {
                /* No patch/nvm-config found, run with original fw/config */
                set_bit(QCA_ROM_FW, &qca->flags);