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

Changeset 5c830587 in mainline


Ignore:
Timestamp:
2014-01-26T07:16:47Z (8 years ago)
Author:
Jan Vesely <jano.vesely@…>
Branches:
lfn, master
Children:
329c0ee
Parents:
40687f2
Message:

ehci: QHs with one active td are still considered active.

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

Legend:

Unmodified
Added
Removed
  • uspace/drv/bus/usb/ehci/ehci_batch.c

    r40687f2 r5c830587  
    189189            ehci_batch->qh->next, ehci_batch->qh->alternate);
    190190
    191         if (!qh_halted(ehci_batch->qh) && qh_transfer_pending(ehci_batch->qh))
     191        if (!qh_halted(ehci_batch->qh) && (qh_transfer_pending(ehci_batch->qh)
     192            || qh_transfer_active(ehci_batch->qh)))
    192193                return false;
    193194
  • uspace/drv/bus/usb/ehci/hw_struct/queue_head.h

    r40687f2 r5c830587  
    198198}
    199199
     200static inline bool qh_transfer_active(const qh_t *qh)
     201{
     202        assert(qh);
     203        return (EHCI_MEM32_RD(qh->status) & QH_STATUS_ACTIVE_FLAG);
     204}
     205
    200206static inline bool qh_transfer_pending(const qh_t *qh)
    201207{
Note: See TracChangeset for help on using the changeset viewer.