• Kai-Heng Feng's avatar
    Bluetooth: btusb: Disable runtime suspend on Realtek devices · 7ecacafc
    Kai-Heng Feng authored
    After commit 9e45524a ("Bluetooth: btusb: Fix suspend issue for
    Realtek devices") both WiFi and Bluetooth stop working after reboot:
    [   34.322617] usb 1-8: reset full-speed USB device number 3 using xhci_hcd
    [   34.450401] usb 1-8: device descriptor read/64, error -71
    [   34.694375] usb 1-8: device descriptor read/64, error -71
    ...
    [   44.599111] rtw_pci 0000:02:00.0: failed to poll offset=0x5 mask=0x3 value=0x0
    [   44.599113] rtw_pci 0000:02:00.0: mac power on failed
    [   44.599114] rtw_pci 0000:02:00.0: failed to power on mac
    [   44.599114] rtw_pci 0000:02:00.0: leave idle state failed
    [   44.599492] rtw_pci 0000:02:00.0: failed to leave ips state
    [   44.599493] rtw_pci 0000:02:00.0: failed to leave idle state
    
    That commit removed USB_QUIRK_RESET_RESUME, which not only resets the USB
    device after resume, it also prevents the device from being runtime
    suspended by USB core. My experiment shows if the Realtek btusb device
    ever runtime suspends once, the entire wireless module becomes useless
    after reboot.
    
    So let's explicitly disable runtime suspend on Realtek btusb device for
    now.
    
    Fixes: 9e45524a ("Bluetooth: btusb: Fix suspend issue for Realtek devices")
    Signed-off-by: default avatarKai-Heng Feng <kai.heng.feng@canonical.com>
    Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
    7ecacafc
btusb.c 106 KB