Fork us on GitHub Follow us on Facebook Follow us on Twitter

Changeset 309d9865 in mainline


Ignore:
Timestamp:
2018-01-15T20:44:29Z (4 years ago)
Author:
Ondřej Hlavatý <aearsis@…>
Branches:
lfn, master
Children:
d2c3dcd
Parents:
957ea3a
Message:

xhci: update dequeue ptr also for cmd ring

Location:
uspace/drv/bus/usb/xhci
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • uspace/drv/bus/usb/xhci/transfers.c

    r957ea3a r309d9865  
    267267        xhci_endpoint_t *ep = xhci_endpoint_get(ep_base);
    268268
    269         /* FIXME: This is racy. Do we care? */
    270         ep->ring.dequeue = addr;
     269        xhci_trb_ring_update_dequeue(&ep->ring, addr);
    271270
    272271        if (ep->base.transfer_type == USB_TRANSFER_ISOCHRONOUS) {
  • uspace/drv/bus/usb/xhci/trb_ring.h

    r957ea3a r309d9865  
    9191 * pointer inside the ring. Otherwise, the ring will soon show up as full.
    9292 */
    93 static inline void xhci_trb_ring_update_dequeue(xhci_trb_ring_t *ring, uintptr_t phys) {}
     93static inline void xhci_trb_ring_update_dequeue(xhci_trb_ring_t *ring, uintptr_t phys) {
     94        ring->dequeue = phys;
     95}
     96
    9497uintptr_t xhci_trb_ring_get_dequeue_ptr(xhci_trb_ring_t *);
    9598
Note: See TracChangeset for help on using the changeset viewer.