[Bug 193571] Atheros bluetooth controller not working after suspend/resume. Have to powercycle usb ports

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



https://bugzilla.kernel.org/show_bug.cgi?id=193571

--- Comment #16 from Leif Liddy (leif.liddy@xxxxxxxxx) ---
This patch does not work for me. Apparently my bluetooth controller needs the
firmware loaded at boot time. 

In my case, neither btusb_setup_qca_load_rampatch or btusb_setup_qca_load_nvm
is run upon resume from suspend. 

I guess the solution for my issue would be to force a firmware reload upon
resume, or to reset the device upon resume from suspend. 

This mechanism already exists for realtek devices:

#ifdef CONFIG_BT_HCIBTUSB_RTL
        if (id->driver_info & BTUSB_REALTEK) {
                hdev->setup = btrtl_setup_realtek;

                /* Realtek devices lose their updated firmware over suspend,
                 * but the USB hub doesn't notice any status change.
                 * Explicitly request a device reset on resume.
                 */
                set_bit(BTUSB_RESET_RESUME, &data->flags);
        }
#endif

Would anyone know how to create an equilivent patch for BTUSB_QCA_ROME devices?
I'm guessing it would look something like this:

#ifdef CONFIG_BT_HCIBTUSB_BCM
        if (id->driver_info & BTUSB_QCA_ROME) {
                hdev->setup = btusb_setup_qca;

                /* QCA Rome devices lose their updated firmware over suspend,
                 * but the USB hub doesn't notice any status change.
                 * Explicitly request a device reset on resume.
                 */
                set_bit(BTUSB_RESET_RESUME, &data->flags);
        }
#endif

-- 
You are receiving this mail because:
You are the assignee for the bug.--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux