linux_dsm_epyc7002/drivers/usb/host
Sarah Sharp c7713e7365 xhci: Fix register save/restore order.
The xHCI 1.0 spec errata released on June 13, 2011, changes the ordering
that the xHCI registers are saved and restored in.  It moves the
interrupt pending (IMAN) and interrupt control (IMOD) registers to be
saved and restored last.  I believe that's because the host controller
may attempt to fetch the event ring table when interrupts are
re-enabled.  Therefore we need to restore the event ring registers
before we re-enable interrupts.

This should be backported to kernels as old as 2.6.37, that contain the
commit 5535b1d5f8 "USB: xHCI: PCI power
management implementation"

Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Tested-by: Elric Fu <elricfu1@gmail.com>
Cc: Andiry Xu <andiry.xu@amd.com>
Cc: stable@vger.kernel.org
2012-04-11 08:28:57 -07:00
..
whci Merge branch 'for-next/dwc3' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-next 2011-12-12 15:19:53 -08:00
alchemy-common.c MIPS: Alchemy: Au1300 SoC support 2011-12-07 22:02:05 +00:00
ehci-atmel.c USB: ehci-atmel: add needed of.h header file 2012-04-04 18:35:43 +02:00
ehci-au1xxx.c usb: Remove ehci_reset call from ehci_run 2011-12-08 09:38:53 -08:00
ehci-cns3xxx.c
ehci-dbg.c simple_open: automatically convert to simple_open() 2012-04-05 15:25:50 -07:00
ehci-fsl.c Merge 3.3-rc7 into usb-next 2012-03-12 09:13:31 -07:00
ehci-fsl.h Revert "powerpc/usb: fix issue of CPU halt when missing USB PHY clock" 2012-03-02 16:08:54 -08:00
ehci-grlib.c
ehci-hcd.c EHCI: keep track of ports being resumed and indicate in hub_status_data 2012-04-09 15:43:21 -07:00
ehci-hub.c EHCI: keep track of ports being resumed and indicate in hub_status_data 2012-04-09 15:43:21 -07:00
ehci-ixp4xx.c
ehci-lpm.c
ehci-ls1x.c USB: Add EHCI bus glue for Loongson1x SoCs (UPDATED) 2012-01-24 15:28:02 -08:00
ehci-mem.c
ehci-msm.c usb: otg: Convert all users to pass struct usb_otg for OTG functions 2012-02-27 15:41:52 +02:00
ehci-mv.c usb: otg: Convert all users to pass struct usb_otg for OTG functions 2012-02-27 15:41:52 +02:00
ehci-mxc.c usb: otg: Convert all users to pass struct usb_otg for OTG functions 2012-02-27 15:41:52 +02:00
ehci-octeon.c usb: Remove ehci_reset call from ehci_run 2011-12-08 09:38:53 -08:00
ehci-omap.c Driver specific changes 2012-01-09 14:39:22 -08:00
ehci-orion.c ARM: Orion: Get address map from plat-orion instead of via platform_data 2011-12-13 18:46:55 -05:00
ehci-pci.c usb: add support for STA2X11 host driver 2012-01-24 14:15:37 -08:00
ehci-platform.c USB: EHCI: Add a generic platform device driver 2012-03-15 12:42:07 -07:00
ehci-pmcmsp.c
ehci-ppc-of.c
ehci-ps3.c usb: PS3 EHCI HC reset work-around 2011-12-08 09:38:53 -08:00
ehci-q.c usb: fix number of mapped SG DMA entries 2011-12-09 16:18:19 -08:00
ehci-s5p.c USB: ehci-s5p: add DMA burst support 2012-03-08 13:05:47 -08:00
ehci-sched.c EHCI : Fix a regression in the ISO scheduler 2011-11-29 09:59:29 +09:00
ehci-sh.c
ehci-spear.c USB: ehci-spear: Add PM support 2012-02-24 13:40:04 -08:00
ehci-sysfs.c
ehci-tegra.c EHCI: keep track of ports being resumed and indicate in hub_status_data 2012-04-09 15:43:21 -07:00
ehci-vt8500.c usb: Remove ehci_reset call from ehci_run 2011-12-08 09:38:53 -08:00
ehci-w90x900.c usb: Remove ehci_reset call from ehci_run 2011-12-08 09:38:53 -08:00
ehci-xilinx-of.c USB: EHCI: Don't use NO_IRQ in xilinx ehci driver 2012-01-16 08:23:15 +01:00
ehci-xls.c Merge 3.2-rc3 into usb-linus 2011-11-26 19:46:48 -08:00
ehci.h EHCI: keep track of ports being resumed and indicate in hub_status_data 2012-04-09 15:43:21 -07:00
fhci-dbg.c
fhci-hcd.c usb: convert drivers/usb/* to use module_platform_driver() 2011-11-28 06:48:32 +09:00
fhci-hub.c
fhci-mem.c
fhci-q.c
fhci-sched.c
fhci-tds.c
fhci.h
fsl-mph-dr-of.c usb: Fix build error due to dma_mask is not at pdev_archdata at ARM 2012-02-24 13:37:44 -08:00
hwa-hc.c Merge branch 'usb-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb 2012-01-09 12:09:47 -08:00
imx21-dbg.c usb: Fix typo in imx21-dbg.c 2012-02-13 14:32:34 -08:00
imx21-hcd.c Merge branch 'usb-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb 2012-01-09 12:09:47 -08:00
imx21-hcd.h
isp116x-hcd.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
isp116x.h
isp1362-hcd.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
isp1362.h
isp1760-hcd.c usb/isp1760: Fix race condition memory leak 2011-11-26 20:02:47 -08:00
isp1760-hcd.h
isp1760-if.c Merge branch 'usb-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb 2012-01-09 12:09:47 -08:00
Kconfig USB: use generic platform driver on ath79 2012-03-15 12:45:43 -07:00
Makefile usb: host: xhci: add platform driver support 2012-03-13 10:30:59 -07:00
octeon2-common.c
ohci-at91.c USB: ohci-at91: trivial return code name change 2012-04-04 18:35:33 +02:00
ohci-au1xxx.c Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2012-01-14 13:05:21 -08:00
ohci-cns3xxx.c
ohci-da8xx.c
ohci-dbg.c USB: OHCI: fix new compiler warnings 2012-01-24 12:24:06 -08:00
ohci-ep93xx.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-exynos.c USB: ohci-exynos: replace hcd->state with ohci->rh_state 2012-02-24 13:40:04 -08:00
ohci-hcd.c Disintegrate and delete asm/system.h 2012-03-28 15:58:21 -07:00
ohci-hub.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-jz4740.c
ohci-mem.c
ohci-nxp.c USB: ohci-nxp: Remove i2c_write(), use smbus 2012-03-13 14:27:28 -07:00
ohci-octeon.c
ohci-omap3.c ARM: OMAP: USBHOST: Replace usbhs core driver APIs by Runtime pm APIs 2011-12-16 04:29:57 -07:00
ohci-omap.c usb: otg: Convert all users to pass struct usb_otg for OTG functions 2012-02-27 15:41:52 +02:00
ohci-pci.c usb: add support for STA2X11 host driver 2012-01-24 14:15:37 -08:00
ohci-platform.c USB: OHCI: Add a generic platform device driver 2012-03-15 12:41:58 -07:00
ohci-pnx8550.c
ohci-ppc-of.c
ohci-ppc-soc.c
ohci-ps3.c
ohci-pxa27x.c USB: ohci-pxa27x: add clk_prepare/clk_unprepare calls 2012-03-15 13:46:54 -07:00
ohci-q.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-s3c2410.c USB: ohci-s3c2410: add PM support 2011-11-30 20:08:26 +09:00
ohci-sa1111.c USB: sa1111: add hcd .reset method 2012-03-24 11:30:14 +00:00
ohci-sh.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-sm501.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-spear.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-ssb.c
ohci-tmio.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-xls.c usb: OHCI/EHCI-XLS: Use resource_size v3 2011-11-15 10:21:56 -08:00
ohci.h usb: otg: Rename otg_transceiver to usb_phy 2012-02-13 13:34:36 +02:00
oxu210hp-hcd.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
oxu210hp.h
pci-quirks.c Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci 2012-03-23 14:02:12 -07:00
pci-quirks.h
r8a66597-hcd.c usb: r8a66597-hcd: Convert to module_platform_driver 2012-03-02 16:20:29 -08:00
r8a66597.h
sl811_cs.c
sl811-hcd.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
sl811.h
u132-hcd.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
uhci-debug.c
uhci-grlib.c
uhci-hcd.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
uhci-hcd.h
uhci-hub.c UHCI: hub_status_data should indicate if ports are resuming 2012-04-09 15:43:21 -07:00
uhci-pci.c
uhci-q.c usb: fix number of mapped SG DMA entries 2011-12-09 16:18:19 -08:00
xhci-dbg.c xHCI: correct to print the true HSEE of USBCMD 2012-04-10 15:21:52 -07:00
xhci-ext-caps.h
xhci-hub.c USB/xHCI: Enable USB 3.0 hub remote wakeup. 2012-02-14 12:12:24 -08:00
xhci-mem.c xhci: Don't write zeroed pointers to xHC registers. 2012-04-11 08:28:55 -07:00
xhci-pci.c usb: xhci: fix section mismatch in linux-next 2012-04-10 15:21:53 -07:00
xhci-plat.c usb: host: xhci: add platform driver support 2012-03-13 10:30:59 -07:00
xhci-ring.c xhci: don't re-enable IE constantly 2012-04-11 08:28:37 -07:00
xhci.c xhci: Fix register save/restore order. 2012-04-11 08:28:57 -07:00
xhci.h xhci: don't re-enable IE constantly 2012-04-11 08:28:37 -07:00