aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorNikunj A Dadhania <nikunj@linux.vnet.ibm.com>2014-04-25 14:32:24 +0530
committerNikunj A Dadhania <nikunj@linux.vnet.ibm.com>2014-04-25 15:40:13 +0530
commit49976ab5e7610dbb5e1be84610b971b62d7e90e1 (patch)
tree9e4f1f7f3f321c79b837d0eefcc70e2000da2083 /lib
parent37826933b20b0eddb8462552d106593a6f790a90 (diff)
downloadSLOF-49976ab5e7610dbb5e1be84610b971b62d7e90e1.zip
SLOF-49976ab5e7610dbb5e1be84610b971b62d7e90e1.tar.gz
SLOF-49976ab5e7610dbb5e1be84610b971b62d7e90e1.tar.bz2
xhci: fix controller stop
A bit operation bug left the controller in the running state causing PCI EEH in the host when using pci-passthru for USB3 device. Signed-off-by: Nikunj A Dadhania <nikunj@linux.vnet.ibm.com>
Diffstat (limited to 'lib')
-rw-r--r--lib/libusb/usb-xhci.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/libusb/usb-xhci.c b/lib/libusb/usb-xhci.c
index d731eb1..9ff3bd1 100644
--- a/lib/libusb/usb-xhci.c
+++ b/lib/libusb/usb-xhci.c
@@ -180,7 +180,7 @@ static bool xhci_hcd_set_runstop(struct xhci_op_regs *op, bool run_req)
if (run_req)
reg |= run_req;
else
- reg &= ~run_req;
+ reg &= (uint32_t)~1;
dprintf("writing %08X\n", reg);
write_reg32(&op->usbcmd, reg);
mb();