Changeset c2be0e5 in mainline for uspace/drv/ohci/hc.c


Ignore:
Timestamp:
2011-04-02T18:56:57Z (14 years ago)
Author:
Jan Vesely <jano.vesely@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
a8fa88d, ccbcd895
Parents:
2c617b0
Message:

OHCI bandwidth

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/drv/ohci/hc.c

    r2c617b0 rc2be0e5  
    7979        assert(instance);
    8080        int ret = EOK;
     81#define CHECK_RET_RETURN(ret, message...) \
     82if (ret != EOK) { \
     83        usb_log_error(message); \
     84        return ret; \
     85} else (void)0
    8186
    8287        ret = pio_enable((void*)regs, reg_size, (void**)&instance->registers);
    83         if (ret != EOK) {
    84                 usb_log_error("Failed to gain access to device registers.\n");
    85                 return ret;
    86         }
     88        CHECK_RET_RETURN(ret,
     89            "Failed(%d) to gain access to device registers: %s.\n",
     90            ret, str_error(ret));
     91
    8792        instance->ddf_instance = fun;
    8893        usb_device_keeper_init(&instance->manager);
     94        ret = bandwidth_init(&instance->bandwidth, BANDWIDTH_AVAILABLE_USB11,
     95            bandwidth_count_usb11);
     96        CHECK_RET_RETURN(ret, "Failed to initialize bandwidth allocator: %s.\n",
     97            ret, str_error(ret));
    8998
    9099        if (!interrupts) {
     
    185194        assert((instance->registers->command_status & CS_HCR) == 0);
    186195        /* hc is now in suspend state */
     196        /* TODO: init HCCA block */
     197        /* TODO: init queues */
     198        /* TODO: enable queues */
     199        /* TODO: enable interrupts */
     200        /* TODO: set periodic start to 90% */
    187201
    188202        instance->registers->control &= (C_HCFS_OPERATIONAL << C_HCFS_SHIFT);
Note: See TracChangeset for help on using the changeset viewer.