2022-07-12 12:30:37

by Kao, Ben

[permalink] [raw]
Subject: [PATCH] xhci-pci: Enable runtime PM on Alder Lake-N PCH xHCI controller

There are two Alder Lake-N xHCI host controllers with PCI IDs
0x464e and 0x54ed, now we add the quirk to default enable runtime
PM for 0x54ed.

Signed-off-by: Ben Kao <[email protected]>
---
drivers/usb/host/xhci-pci.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
index dce6c0ec8d34..44486156bd5d 100644
--- a/drivers/usb/host/xhci-pci.c
+++ b/drivers/usb/host/xhci-pci.c
@@ -61,6 +61,7 @@
#define PCI_DEVICE_ID_INTEL_ALDER_LAKE_XHCI 0x461e
#define PCI_DEVICE_ID_INTEL_ALDER_LAKE_N_XHCI 0x464e
#define PCI_DEVICE_ID_INTEL_ALDER_LAKE_PCH_XHCI 0x51ed
+#define PCI_DEVICE_ID_INTEL_ALDER_LAKE_N_PCH_XHCI 0x54ed
#define PCI_DEVICE_ID_INTEL_RAPTOR_LAKE_XHCI 0xa71e
#define PCI_DEVICE_ID_INTEL_METEOR_LAKE_XHCI 0x7ec0

@@ -272,6 +273,7 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
pdev->device == PCI_DEVICE_ID_INTEL_ALDER_LAKE_XHCI ||
pdev->device == PCI_DEVICE_ID_INTEL_ALDER_LAKE_N_XHCI ||
pdev->device == PCI_DEVICE_ID_INTEL_ALDER_LAKE_PCH_XHCI ||
+ pdev->device == PCI_DEVICE_ID_INTEL_ALDER_LAKE_N_PCH_XHCI ||
pdev->device == PCI_DEVICE_ID_INTEL_RAPTOR_LAKE_XHCI ||
pdev->device == PCI_DEVICE_ID_INTEL_METEOR_LAKE_XHCI))
xhci->quirks |= XHCI_DEFAULT_PM_RUNTIME_ALLOW;
--
2.17.1


2022-07-12 12:48:07

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH] xhci-pci: Enable runtime PM on Alder Lake-N PCH xHCI controller

On Tue, Jul 12, 2022 at 08:24:42PM +0800, Ben Kao wrote:
> There are two Alder Lake-N xHCI host controllers with PCI IDs
> 0x464e and 0x54ed, now we add the quirk to default enable runtime
> PM for 0x54ed.
>
> Signed-off-by: Ben Kao <[email protected]>
> ---
> drivers/usb/host/xhci-pci.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
> index dce6c0ec8d34..44486156bd5d 100644
> --- a/drivers/usb/host/xhci-pci.c
> +++ b/drivers/usb/host/xhci-pci.c
> @@ -61,6 +61,7 @@
> #define PCI_DEVICE_ID_INTEL_ALDER_LAKE_XHCI 0x461e
> #define PCI_DEVICE_ID_INTEL_ALDER_LAKE_N_XHCI 0x464e
> #define PCI_DEVICE_ID_INTEL_ALDER_LAKE_PCH_XHCI 0x51ed
> +#define PCI_DEVICE_ID_INTEL_ALDER_LAKE_N_PCH_XHCI 0x54ed

I think we ask this every time, but why don't we enable this for all
devices and then only disable it for the tiny number that don't need it?

Why do you all force us to add this for every new device created?

thanks,

greg k-h

2022-07-14 09:47:47

by Kao, Ben

[permalink] [raw]
Subject: RE: [PATCH] xhci-pci: Enable runtime PM on Alder Lake-N PCH xHCI controller

> From: Greg KH <[email protected]>
> Sent: Tuesday, July 12, 2022 8:45 PM
> To: Kao, Ben <[email protected]>
> Cc: Nyman, Mathias <[email protected]>;
> [email protected]; [email protected]; linux-
> [email protected]
> Subject: Re: [PATCH] xhci-pci: Enable runtime PM on Alder Lake-N PCH xHCI
> controller
>
> On Tue, Jul 12, 2022 at 08:24:42PM +0800, Ben Kao wrote:
> > There are two Alder Lake-N xHCI host controllers with PCI IDs 0x464e
> > and 0x54ed, now we add the quirk to default enable runtime PM for
> > 0x54ed.
> >
> > Signed-off-by: Ben Kao <[email protected]>
> > ---
> > drivers/usb/host/xhci-pci.c | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> > diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
> > index dce6c0ec8d34..44486156bd5d 100644
> > --- a/drivers/usb/host/xhci-pci.c
> > +++ b/drivers/usb/host/xhci-pci.c
> > @@ -61,6 +61,7 @@
> > #define PCI_DEVICE_ID_INTEL_ALDER_LAKE_XHCI 0x461e
> > #define PCI_DEVICE_ID_INTEL_ALDER_LAKE_N_XHCI
> 0x464e
> > #define PCI_DEVICE_ID_INTEL_ALDER_LAKE_PCH_XHCI 0x51ed
> > +#define PCI_DEVICE_ID_INTEL_ALDER_LAKE_N_PCH_XHCI 0x54ed
>
> I think we ask this every time, but why don't we enable this for all devices
> and then only disable it for the tiny number that don't need it?
Got it, I will provide another patch to enable runtime PM by default for all
Intel devices if no one has concerns.

>
> Why do you all force us to add this for every new device created?
>
> thanks,
>
> greg k-h

2022-07-14 14:31:04

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH] xhci-pci: Enable runtime PM on Alder Lake-N PCH xHCI controller

On Thu, Jul 14, 2022 at 09:06:44AM +0000, Kao, Ben wrote:
> > From: Greg KH <[email protected]>
> > Sent: Tuesday, July 12, 2022 8:45 PM
> > To: Kao, Ben <[email protected]>
> > Cc: Nyman, Mathias <[email protected]>;
> > [email protected]; [email protected]; linux-
> > [email protected]
> > Subject: Re: [PATCH] xhci-pci: Enable runtime PM on Alder Lake-N PCH xHCI
> > controller
> >
> > On Tue, Jul 12, 2022 at 08:24:42PM +0800, Ben Kao wrote:
> > > There are two Alder Lake-N xHCI host controllers with PCI IDs 0x464e
> > > and 0x54ed, now we add the quirk to default enable runtime PM for
> > > 0x54ed.
> > >
> > > Signed-off-by: Ben Kao <[email protected]>
> > > ---
> > > drivers/usb/host/xhci-pci.c | 2 ++
> > > 1 file changed, 2 insertions(+)
> > >
> > > diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
> > > index dce6c0ec8d34..44486156bd5d 100644
> > > --- a/drivers/usb/host/xhci-pci.c
> > > +++ b/drivers/usb/host/xhci-pci.c
> > > @@ -61,6 +61,7 @@
> > > #define PCI_DEVICE_ID_INTEL_ALDER_LAKE_XHCI 0x461e
> > > #define PCI_DEVICE_ID_INTEL_ALDER_LAKE_N_XHCI
> > 0x464e
> > > #define PCI_DEVICE_ID_INTEL_ALDER_LAKE_PCH_XHCI 0x51ed
> > > +#define PCI_DEVICE_ID_INTEL_ALDER_LAKE_N_PCH_XHCI 0x54ed
> >
> > I think we ask this every time, but why don't we enable this for all devices
> > and then only disable it for the tiny number that don't need it?
> Got it, I will provide another patch to enable runtime PM by default for all
> Intel devices if no one has concerns.

Please test to verify that it works on the systems you enable it for and
verify that future devices will also work properly.

thanks,

greg k-h