linux-bluetooth.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Oleksandr Natalenko <oleksandr@natalenko.name>
To: Greg KH <gregkh@linuxfoundation.org>,
	"Kris Karas (Bug Reporting)" <bugs-a21@moonlit-rail.com>,
	Basavaraj Natikar <bnatikar@amd.com>
Cc: Paul Menzel <pmenzel@molgen.mpg.de>,
	Basavaraj Natikar <Basavaraj.Natikar@amd.com>,
	stable@vger.kernel.org,
	Thorsten Leemhuis <regressions@leemhuis.info>,
	regressions@lists.linux.dev, linux-bluetooth@vger.kernel.org,
	Mario Limonciello <mario.limonciello@amd.com>,
	Mathias Nyman <mathias.nyman@intel.com>,
	linux-usb@vger.kernel.org
Subject: Re: Regression: Inoperative bluetooth, Intel chipset, mainline kernel 6.6.2+
Date: Sun, 03 Dec 2023 20:52:26 +0100	[thread overview]
Message-ID: <12335218.O9o76ZdvQC@natalenko.name> (raw)
In-Reply-To: <4c8072b9-637b-a871-4dc1-3031aa3712bd@amd.com>

[-- Attachment #1: Type: text/plain, Size: 5236 bytes --]

Hello.

On neděle 3. prosince 2023 17:24:28 CET Basavaraj Natikar wrote:
> 
> On 12/3/2023 9:46 PM, Basavaraj Natikar wrote:
> > On 12/3/2023 2:08 PM, Greg KH wrote:
> >> On Sun, Dec 03, 2023 at 03:32:52AM -0500, Kris Karas (Bug Reporting) wrote:
> >>> Greg KH wrote:
> >>>> Thanks for testing, any chance you can try 6.6.4-rc1?  Or wait a few
> >>>> hours for me to release 6.6.4 if you don't want to mess with a -rc
> >>>> release.
> >>> As I mentioned to Greg off-list (to save wasting other peoples' bandwidth),
> >>> I couldn't find 6.6.4-rc1.  Looking in wrong git tree?  But 6.6.4 is now
> >>> out, which I have tested and am running at the moment, albeit with the
> >>> problem commit from 6.6.2 backed out.
> >>>
> >>> There is no change with respect to this bug.  The problematic patch
> >>> introduced in 6.6.2 was neither reverted nor amended.  The "opcode 0x0c03
> >>> failed" lines to the kernel log continue to be present.
> >>>
> >>>> Also, is this showing up in 6.7-rc3?  If so, that would be a big help in
> >>>> tracking this down.
> >>> The bug shows up in 6.7-rc3 as well, exactly as it does here in 6.6.2+ and
> >>> in 6.1.63+.  The problematic patch bisected earlier appears identically (and
> >>> seems to have been introduced simultaneously) in these recent releases.
> >> Ok, in a way, this is good as that means I haven't missed a fix, but bad
> >> in that this does affect everyone more.
> >>
> >> So let's start over, you found the offending commit, and nothing has
> >> fixed it, so what do we do?  xhci/amd developers, any ideas?
> > Can we enable RPM on specific controllers for AMD xHC 1.1
> > instead to cover all AMD xHC 1.1? 
> >
> > Please find below the proposed changes and let me know if it is OK?
> >  
> > Author: Basavaraj Natikar <Basavaraj.Natikar@amd.com>
> > Date:   Sun Dec 3 18:28:27 2023 +0530
> >
> >     xhci: Remove RPM as default policy to cover AMD xHC 1.1
> >
> >     xHC 1.1 runtime PM as default policy causes issues on few AMD controllers.
> >     Hence remove RPM as default policy to cover AMD xHC 1.1 and add only
> >     AMD USB host controller (1022:43f7) which has RPM support. 
> >
> >     Fixes: 4baf12181509 ("xhci: Loosen RPM as default policy to cover for AMD xHC 1.1")
> >     Link: https://lore.kernel.org/all/2023120329-length-strum-9ee1@gregkh
> >     Signed-off-by: Basavaraj Natikar <Basavaraj.Natikar@amd.com>
> >
> > diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
> > index 95ed9404f6f8..7ffd6b8227cc 100644
> > --- a/drivers/usb/host/xhci-pci.c
> > +++ b/drivers/usb/host/xhci-pci.c
> > @@ -535,7 +535,7 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
> >         /* xHC spec requires PCI devices to support D3hot and D3cold */
> >         if (xhci->hci_version >= 0x120)
> >                 xhci->quirks |= XHCI_DEFAULT_PM_RUNTIME_ALLOW;
> > -       else if (pdev->vendor == PCI_VENDOR_ID_AMD && xhci->hci_version >= 0x110)
> > +       else if (pdev->vendor == PCI_VENDOR_ID_AMD && pdev->vendor == 0x43f7)
> 
> sorry its 
> pdev->device == 0x43f7
> 
> Incorrect ---> else if (pdev->vendor == PCI_VENDOR_ID_AMD && pdev->vendor == 0x43f7)
> correct line --> else if (pdev->vendor == PCI_VENDOR_ID_AMD && pdev->device == 0x43f7)
> 
> >                 xhci->quirks |= XHCI_DEFAULT_PM_RUNTIME_ALLOW;
> >
> >         if (xhci->quirks & XHCI_RESET_ON_RESUME)

Given the following hardware:

[~]> lspci -nn | grep -i usb
06:00.4 USB controller [0c03]: Realtek Semiconductor Co., Ltd. RTL811x EHCI host controller [10ec:816d] (rev 1a)
07:00.1 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller [1022:149c]
07:00.3 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller [1022:149c]
0f:00.3 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller [1022:149c]

and v6.6.4 kernel, without this patch:

[~]> LC_TIME=C jctl -kb -1 --grep 'hci version'
Dec 03 13:22:03 archlinux kernel: xhci_hcd 0000:07:00.1: hcc params 0x0278ffe5 hci version 0x110 quirks 0x0000000200000410
Dec 03 13:22:03 archlinux kernel: xhci_hcd 0000:07:00.3: hcc params 0x0278ffe5 hci version 0x110 quirks 0x0000000200000410
Dec 03 13:22:03 archlinux kernel: xhci_hcd 0000:0f:00.3: hcc params 0x0278ffe5 hci version 0x110 quirks 0x0000000200000410

With the patch applied:

[~]> LC_TIME=C jctl -kb --grep 'hci version'
Dec 03 20:46:59 archlinux kernel: xhci_hcd 0000:07:00.1: hcc params 0x0278ffe5 hci version 0x110 quirks 0x0000000000000410
Dec 03 20:46:59 archlinux kernel: xhci_hcd 0000:07:00.3: hcc params 0x0278ffe5 hci version 0x110 quirks 0x0000000000000410
Dec 03 20:46:59 archlinux kernel: xhci_hcd 0000:0f:00.3: hcc params 0x0278ffe5 hci version 0x110 quirks 0x0000000000000410

(note the difference in `quirks` as expected)

Hence, feel free to add:

Tested-by: Oleksandr Natalenko <oleksandr@natalenko.name>
Link: https://lore.kernel.org/lkml/5993222.lOV4Wx5bFT@natalenko.name/

Thank you.

> >
> > Thanks,
> > --
> > Basavaraj
> >
> >> thanks,
> >>
> >> greg k-h
> 
> 
> 


-- 
Oleksandr Natalenko (post-factum)

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

  reply	other threads:[~2023-12-03 19:52 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-01  1:54 Regression: Inoperative bluetooth, Intel chipset, mainline kernel 6.6.2+ Kris Karas (Bug Reporting)
2023-12-01  6:27 ` Bagas Sanjaya
2023-12-01  8:19   ` Kris Karas (Bug Reporting)
2023-12-01  8:27     ` Paul Menzel
2023-12-03 12:17     ` Oleksandr Natalenko
2023-12-03 18:46       ` Kris Karas (Bug Reporting)
2023-12-01  6:33 ` Thorsten Leemhuis
2023-12-01  8:15   ` Greg KH
2023-12-02  6:43     ` Kris Karas (Bug Reporting)
2023-12-02  7:23       ` Paul Menzel
2023-12-02  7:50         ` Greg KH
2023-12-02  7:58           ` Kris Karas (Bug Reporting)
2023-12-02  8:15             ` Greg KH
2023-12-03  8:32               ` Kris Karas (Bug Reporting)
2023-12-03  8:38                 ` Greg KH
2023-12-03 16:16                   ` Basavaraj Natikar
2023-12-03 16:24                     ` Basavaraj Natikar
2023-12-03 19:52                       ` Oleksandr Natalenko [this message]
2023-12-04  9:12                   ` Mathias Nyman
2023-12-04 10:08                     ` [PATCH 1/2] Revert "xhci: Enable RPM on controllers that support low-power states" Mathias Nyman
2023-12-04 10:08                       ` [PATCH 2/2] Revert "xhci: Loosen RPM as default policy to cover for AMD xHC 1.1" Mathias Nyman
2023-12-04 10:14                       ` [1/2] Revert "xhci: Enable RPM on controllers that support low-power states" bluez.test.bot
2023-12-04 10:49                       ` [PATCH 1/2] " Basavaraj Natikar
2023-12-04 14:22                         ` Mathias Nyman
2023-12-04 14:49                           ` Basavaraj Natikar
2023-12-04 15:06                             ` Mathias Nyman
2023-12-04 15:29                               ` Basavaraj Natikar
2023-12-04 23:55                                 ` Greg KH
2023-12-05  9:05                                   ` [PATCH v2] Revert "xhci: Loosen RPM as default policy to cover for AMD xHC 1.1" Mathias Nyman
2023-12-05  9:13                                     ` [v2] " bluez.test.bot
2023-12-05 18:36                                     ` [PATCH v2] " Mario Limonciello
2023-12-15 16:53                                     ` patchwork-bot+bluetooth
2023-12-15 16:53                       ` [PATCH 1/2] Revert "xhci: Enable RPM on controllers that support low-power states" patchwork-bot+bluetooth

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=12335218.O9o76ZdvQC@natalenko.name \
    --to=oleksandr@natalenko.name \
    --cc=Basavaraj.Natikar@amd.com \
    --cc=bnatikar@amd.com \
    --cc=bugs-a21@moonlit-rail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-bluetooth@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=mario.limonciello@amd.com \
    --cc=mathias.nyman@intel.com \
    --cc=pmenzel@molgen.mpg.de \
    --cc=regressions@leemhuis.info \
    --cc=regressions@lists.linux.dev \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).