summaryrefslogtreecommitdiffstats
path: root/samples
diff options
context:
space:
mode:
authorSarah Sharp2012-03-16 21:19:35 +0100
committerSarah Sharp2012-04-11 17:28:57 +0200
commitc7713e736526d8c9f6f87716fb90562a8ffaff2c (patch)
treecb5e246bc2f1d68a7cef8f0aa40aa43c65f34f7c /samples
parentxhci: Restore event ring dequeue pointer on resume. (diff)
downloadkernel-qcow2-linux-c7713e736526d8c9f6f87716fb90562a8ffaff2c.tar.gz
kernel-qcow2-linux-c7713e736526d8c9f6f87716fb90562a8ffaff2c.tar.xz
kernel-qcow2-linux-c7713e736526d8c9f6f87716fb90562a8ffaff2c.zip
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 5535b1d5f8885695c6ded783c692e3c0d0eda8ca "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
Diffstat (limited to 'samples')
0 files changed, 0 insertions, 0 deletions