Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified uspace/drv/bus/usb/vhc/vhcd.h

    r58563585 r9d58539  
    3333 * @brief Virtual USB host controller common definitions.
    3434 */
    35 
    3635#ifndef VHCD_VHCD_H_
    3736#define VHCD_VHCD_H_
    3837
     38#include <usb/debug.h>
    3939#include <usbvirt/device.h>
     40#include <usb/host/usb_endpoint_manager.h>
     41#include <usb/host/usb_device_manager.h>
    4042#include <usbhc_iface.h>
    4143#include <async.h>
    42 
    43 #include <usb/host/hcd.h>
    4444
    4545#define NAME "vhc"
     
    5959        list_t devices;
    6060        fibril_mutex_t guard;
    61         usbvirt_device_t hub;
     61        usb_endpoint_manager_t ep_manager;
     62        usb_device_manager_t dev_manager;
     63        usbvirt_device_t *hub;
     64        ddf_fun_t *hc_fun;
    6265} vhc_data_t;
    6366
    6467typedef struct {
    6568        link_t link;
    66         usb_transfer_batch_t *batch;
     69        usb_address_t address;
     70        usb_endpoint_t endpoint;
     71        usb_direction_t direction;
     72        usb_transfer_type_t transfer_type;
     73        void *setup_buffer;
     74        size_t setup_buffer_size;
     75        void *data_buffer;
     76        size_t data_buffer_size;
     77        ddf_fun_t *ddf_fun;
     78        void *callback_arg;
     79        usbhc_iface_transfer_in_callback_t callback_in;
     80        usbhc_iface_transfer_out_callback_t callback_out;
    6781} vhc_transfer_t;
    6882
    69 void on_client_close(ddf_fun_t *fun);
    70 void default_connection_handler(ddf_fun_t *fun, ipc_callid_t icallid,
    71     ipc_call_t *icall);
    72 
     83vhc_transfer_t *vhc_transfer_create(usb_address_t, usb_endpoint_t,
     84    usb_direction_t, usb_transfer_type_t, ddf_fun_t *, void *);
    7385int vhc_virtdev_plug(vhc_data_t *, async_sess_t *, uintptr_t *);
    7486int vhc_virtdev_plug_local(vhc_data_t *, usbvirt_device_t *, uintptr_t *);
    75 int vhc_virtdev_plug_hub(vhc_data_t *, usbvirt_device_t *, uintptr_t *, usb_address_t address);
     87int vhc_virtdev_plug_hub(vhc_data_t *, usbvirt_device_t *, uintptr_t *);
    7688void vhc_virtdev_unplug(vhc_data_t *, uintptr_t);
     89int vhc_virtdev_add_transfer(vhc_data_t *, vhc_transfer_t *);
    7790
    78 int vhc_init(vhc_data_t *instance);
    79 int vhc_schedule(hcd_t *hcd, usb_transfer_batch_t *batch);
    8091int vhc_transfer_queue_processor(void *arg);
    8192
     93
    8294#endif
    83 
    8495/**
    8596 * @}
Note: See TracChangeset for help on using the changeset viewer.