On Thu, Aug 29, 2024 at 03:30:05PM +0800, WangYuli wrote: > The resume operation of Phytium Px210 xHCI host would failed > to restore state. Use the XHCI_RESET_ON_RESUME quirk to skip > it and reset the controller after resume. > > Co-developed-by: Chen Baozi <chenbaozi@xxxxxxxxxxxxxx> > Signed-off-by: Chen Baozi <chenbaozi@xxxxxxxxxxxxxx> > Co-developed-by: Wang Zhimin <wangzhimin1179@xxxxxxxxxxxxxx> > Signed-off-by: Wang Zhimin <wangzhimin1179@xxxxxxxxxxxxxx> > Co-developed-by: Chen Zhenhua <chenzhenhua@xxxxxxxxxxxxxx> > Signed-off-by: Chen Zhenhua <chenzhenhua@xxxxxxxxxxxxxx> > Co-developed-by: Wang Yinfeng <wangyinfeng@xxxxxxxxxxxxxx> > Signed-off-by: Wang Yinfeng <wangyinfeng@xxxxxxxxxxxxxx> > Co-developed-by: Jiakun Shuai <shuaijiakun1288@xxxxxxxxxxxxxx> > Signed-off-by: Jiakun Shuai <shuaijiakun1288@xxxxxxxxxxxxxx> > Signed-off-by: WangYuli <wangyuli@xxxxxxxxxxxxx> > --- > drivers/usb/host/xhci-pci.c | 6 ++++++ > include/linux/pci_ids.h | 2 ++ > 2 files changed, 8 insertions(+) > > diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c > index b5705ed01d83..af967644489c 100644 > --- a/drivers/usb/host/xhci-pci.c > +++ b/drivers/usb/host/xhci-pci.c > @@ -55,6 +55,8 @@ > #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_PHYTIUM_XHCI 0xdc27 > + > /* Thunderbolt */ > #define PCI_DEVICE_ID_INTEL_MAPLE_RIDGE_XHCI 0x1138 > #define PCI_DEVICE_ID_INTEL_ALPINE_RIDGE_2C_XHCI 0x15b5 > @@ -407,6 +409,10 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci) > if (pdev->vendor == PCI_VENDOR_ID_VIA) > xhci->quirks |= XHCI_RESET_ON_RESUME; > > + if (pdev->vendor == PCI_VENDOR_ID_PHYTIUM || > + pdev->device == PCI_DEVICE_ID_PHYTIUM_XHCI) > + xhci->quirks |= XHCI_RESET_ON_RESUME; > + > /* See https://bugzilla.kernel.org/show_bug.cgi?id=79511 */ > if (pdev->vendor == PCI_VENDOR_ID_VIA && > pdev->device == 0x3432) > diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h > index e388c8b1cbc2..25fff4130503 100644 > --- a/include/linux/pci_ids.h > +++ b/include/linux/pci_ids.h > @@ -2605,6 +2605,8 @@ > > #define PCI_VENDOR_ID_FUNGIBLE 0x1dad > > +#define PCI_VENDOR_ID_PHYTIUM 0x1db7 Please read the top of this file, there's no need to add this id to this file as you are only using it in one .c file. thanks, greg k-h