At least some real-world XHCI controllers expect a 64bit write to the
ERDP register.

Signed-off-by: Kevin O'Connor <[email protected]>
---
 src/hw/usb-xhci.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/hw/usb-xhci.c b/src/hw/usb-xhci.c
index dc98e5d..d0df6ee 100644
--- a/src/hw/usb-xhci.c
+++ b/src/hw/usb-xhci.c
@@ -379,6 +379,7 @@ static void xhci_process_events(struct usb_xhci_s *xhci)
         u32 addr = (u32)(&ir->erdp_low);
         u32 erdp = (u32)(evts->ring + nidx);
         pci_writel(addr, erdp);
+        pci_writel((u32)(&ir->erdp_high), 0);
     }
 }
 
-- 
1.8.3.1


_______________________________________________
SeaBIOS mailing list
[email protected]
http://www.seabios.org/mailman/listinfo/seabios

Reply via email to