Be sure to set the interval parameter when creating an interrupt based
pipe.

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

diff --git a/src/hw/usb-xhci.c b/src/hw/usb-xhci.c
index 0833cb9..b10fceb 100644
--- a/src/hw/usb-xhci.c
+++ b/src/hw/usb-xhci.c
@@ -895,6 +895,8 @@ xhci_alloc_pipe(struct usbdevice_s *usbdev
         in->slot.ctx[0]    |= (31 << 27); // context entries
 
         int e = pipe->epid-1;
+        if (eptype == USB_ENDPOINT_XFER_INT)
+            in->ep[e].ctx[0] = (usb_getFrameExp(usbdev, epdesc) + 3) << 16;
         in->ep[e].ctx[1]   |= (eptype << 3);
         if (epdesc->bEndpointAddress & USB_DIR_IN)
             in->ep[e].ctx[1] |= (1 << 5);
-- 
1.8.3.1


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

Reply via email to