Changes in uspace/drv/ohci/hc.h [7013b14:344925c] in mainline


Ignore:
File:
1 edited

Legend:

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

    r7013b14 r344925c  
    4848#include "ohci_regs.h"
    4949#include "root_hub.h"
    50 #include "endpoint_list.h"
     50#include "transfer_list.h"
    5151#include "hw_struct/hcca.h"
    5252
    5353typedef struct hc {
    5454        ohci_regs_t *registers;
    55         hcca_t *hcca;
    56 
    5755        usb_address_t rh_address;
    5856        rh_t rh;
    5957
    60         endpoint_list_t lists[4];
    61         link_t pending_batches;
     58        hcca_t *hcca;
    6259
     60        transfer_list_t transfers_isochronous;
     61        transfer_list_t transfers_interrupt;
     62        transfer_list_t transfers_control;
     63        transfer_list_t transfers_bulk;
     64
     65        transfer_list_t *transfers[4];
     66
     67        ddf_fun_t *ddf_instance;
    6368        usb_device_keeper_t manager;
    6469        usb_endpoint_manager_t ep_manager;
    6570        fid_t interrupt_emulator;
    66         fibril_mutex_t guard;
    6771} hc_t;
    6872
     
    7276     uintptr_t regs, size_t reg_size, bool interrupts);
    7377
     78int hc_schedule(hc_t *instance, usb_transfer_batch_t *batch);
     79
     80void hc_interrupt(hc_t *instance, uint32_t status);
     81
    7482/** Safely dispose host controller internal structures
    7583 *
     
    7785 */
    7886static inline void hc_fini(hc_t *instance) { /* TODO: implement*/ };
    79 
    80 int hc_add_endpoint(hc_t *instance, usb_address_t address, usb_endpoint_t ep,
    81     usb_speed_t speed, usb_transfer_type_t type, usb_direction_t direction,
    82     size_t max_packet_size, size_t size, unsigned interval);
    83 
    84 int hc_remove_endpoint(hc_t *instance, usb_address_t address,
    85     usb_endpoint_t endpoint, usb_direction_t direction);
    86 
    87 endpoint_t * hc_get_endpoint(hc_t *instance, usb_address_t address,
    88     usb_endpoint_t endpoint, usb_direction_t direction, size_t *bw);
    89 
    90 int hc_schedule(hc_t *instance, usb_transfer_batch_t *batch);
    91 
    92 void hc_interrupt(hc_t *instance, uint32_t status);
    9387
    9488/** Get and cast pointer to the driver data
Note: See TracChangeset for help on using the changeset viewer.