mbox series

[SRU,Artful/linux-oem,0/2] Fix QCA Rome bluetooth failed to work after applying reset-resume quirk

Message ID 20180104081632.314-1-kai.heng.feng@canonical.com
Headers show
Series Fix QCA Rome bluetooth failed to work after applying reset-resume quirk | expand

Message

Kai-Heng Feng Jan. 4, 2018, 8:16 a.m. UTC
BugLink: http://bugs.launchpad.net/bugs/1741206

== SRU Justification ==
[Impact]
Some QCA ROME bluetooth devices does not work after runtime
suspend/resume after SRU LP: #1734020.

[Fix]
The commit let btusb reset at second time it resume, i.e. btusb_open().
The btusb stops working because the reset happens *after* btusb_open().
The reset should be done at hub port initialization, before
btusb_probe().

Revert the bad commit and use the reset-resume quirk in USB core stack.

[Test]
Cherry-picked the commit into Artful/OEM kernel and the issue is fixed.

[Regression Potential]
Low. This is limited to QCA Rome, also verified by the original quirk
author.

Kai-Heng Feng (2):
  Revert "Bluetooth: btusb: fix QCA Rome suspend/resume"
  usb: quirks: Add reset-resume quirk for Dell DW1820 QCA Rome Bluetooth

 drivers/bluetooth/btusb.c | 6 ------
 drivers/usb/core/quirks.c | 3 +++
 2 files changed, 3 insertions(+), 6 deletions(-)

Comments

Hui Wang Jan. 4, 2018, 12:33 p.m. UTC | #1
On 2018年01月04日 16:16, Kai-Heng Feng wrote:
> BugLink: http://bugs.launchpad.net/bugs/1741206
>
> == SRU Justification ==
> [Impact]
> Some QCA ROME bluetooth devices does not work after runtime
> suspend/resume after SRU LP: #1734020.
>
> [Fix]
> The commit let btusb reset at second time it resume, i.e. btusb_open().
> The btusb stops working because the reset happens *after* btusb_open().
> The reset should be done at hub port initialization, before
> btusb_probe().
>
> Revert the bad commit and use the reset-resume quirk in USB core stack.
>
> [Test]
> Cherry-picked the commit into Artful/OEM kernel and the issue is fixed.
>
> [Regression Potential]
> Low. This is limited to QCA Rome, also verified by the original quirk
> author.
>
> Kai-Heng Feng (2):
>    Revert "Bluetooth: btusb: fix QCA Rome suspend/resume"
>    usb: quirks: Add reset-resume quirk for Dell DW1820 QCA Rome Bluetooth
>
>   drivers/bluetooth/btusb.c | 6 ------
>   drivers/usb/core/quirks.c | 3 +++
>   2 files changed, 3 insertions(+), 6 deletions(-)
>
Acked-by: Hui Wang<hui.wang@canonical.com>
Kleber Sacilotto de Souza Jan. 24, 2018, 10:41 a.m. UTC | #2
On 01/04/18 09:16, Kai-Heng Feng wrote:
> BugLink: http://bugs.launchpad.net/bugs/1741206
> 
> == SRU Justification ==
> [Impact]
> Some QCA ROME bluetooth devices does not work after runtime
> suspend/resume after SRU LP: #1734020.
> 
> [Fix]
> The commit let btusb reset at second time it resume, i.e. btusb_open().
> The btusb stops working because the reset happens *after* btusb_open().
> The reset should be done at hub port initialization, before
> btusb_probe().
> 
> Revert the bad commit and use the reset-resume quirk in USB core stack.
> 
> [Test]
> Cherry-picked the commit into Artful/OEM kernel and the issue is fixed.
> 
> [Regression Potential]
> Low. This is limited to QCA Rome, also verified by the original quirk
> author.
> 
> Kai-Heng Feng (2):
>   Revert "Bluetooth: btusb: fix QCA Rome suspend/resume"
>   usb: quirks: Add reset-resume quirk for Dell DW1820 QCA Rome Bluetooth
> 
>  drivers/bluetooth/btusb.c | 6 ------
>  drivers/usb/core/quirks.c | 3 +++
>  2 files changed, 3 insertions(+), 6 deletions(-)
> 

Clean cherry-picks, confined to a single device and well tested:
Acked-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com>
Po-Hsu Lin Jan. 25, 2018, 7:28 a.m. UTC | #3
I think we need this in Bionic as well.
Acked-by: Po-Hsu Lin <po-hsu.lin@canonical.com>
Po-Hsu Lin Feb. 1, 2018, 7:12 a.m. UTC | #4
As stated in Kai-Heng's latest patch[1] for this device, which states that:

  "Patches previouly sent for Artful/Linux OEM is not needed."

Therefore I'm NAKing this.

[1] https://lists.ubuntu.com/archives/kernel-team/2018-February/089786.html