Changeset 4192d3d6 in mainline


Ignore:
Timestamp:
2011-02-07T11:20:22Z (13 years ago)
Author:
Jan Vesely <jano.vesely@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
da17cf0
Parents:
4d73d71
Message:

Add new tracking mechanism for complex transfers

Location:
uspace/drv/uhci-hcd
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • uspace/drv/uhci-hcd/Makefile

    r4d73d71 r4192d3d6  
    4040        uhci.c \
    4141        uhci_struct/transfer_descriptor.c \
    42         pci.c
     42        pci.c \
     43        tracker.c
    4344
    4445include $(USPACE_PREFIX)/Makefile.common
  • uspace/drv/uhci-hcd/uhci_struct/transfer_descriptor.c

    r4d73d71 r4192d3d6  
    3232 * @brief UHCI driver
    3333 */
     34#include <errno.h>
    3435#include <usb/debug.h>
    3536
     
    4445        instance->next =
    4546          0 | LINK_POINTER_TERMINATE_FLAG;
    46 
    4747
    4848        assert(size < 1024);
     
    110110        return USB_OUTCOME_OK;
    111111}
    112 
     112/*----------------------------------------------------------------------------*/
     113int transfer_descriptor_status(transfer_descriptor_t *instance)
     114{
     115        assert(instance);
     116        if (convert_outcome(instance->status))
     117                return EINVAL; //TODO: use sane error value here
     118        return EOK;
     119}
     120/*----------------------------------------------------------------------------*/
    113121void transfer_descriptor_fini(transfer_descriptor_t *instance)
    114122{
  • uspace/drv/uhci-hcd/uhci_struct/transfer_descriptor.h

    r4d73d71 r4192d3d6  
    122122}
    123123
     124int transfer_descriptor_status(transfer_descriptor_t *instance);
     125
    124126static inline void transfer_descriptor_append(
    125127  transfer_descriptor_t *instance, transfer_descriptor_t *item)
     
    127129        assert(instance);
    128130        instance->next_va = item;
    129         instance->next = (uintptr_t)addr_to_phys( item ) & LINK_POINTER_ADDRESS_MASK;
     131        instance->next = (uintptr_t)addr_to_phys(item) & LINK_POINTER_ADDRESS_MASK;
    130132}
    131133#endif
Note: See TracChangeset for help on using the changeset viewer.