Ignore:
File:
1 edited

Legend:

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

    r9d58539 r58563585  
    3333 * @brief Virtual USB host controller common definitions.
    3434 */
     35
    3536#ifndef VHCD_VHCD_H_
    3637#define VHCD_VHCD_H_
    3738
    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>
    4240#include <usbhc_iface.h>
    4341#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         usb_endpoint_manager_t ep_manager;
    62         usb_device_manager_t dev_manager;
    63         usbvirt_device_t *hub;
    64         ddf_fun_t *hc_fun;
     61        usbvirt_device_t hub;
    6562} vhc_data_t;
    6663
    6764typedef struct {
    6865        link_t link;
    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;
     66        usb_transfer_batch_t *batch;
    8167} vhc_transfer_t;
    8268
    83 vhc_transfer_t *vhc_transfer_create(usb_address_t, usb_endpoint_t,
    84     usb_direction_t, usb_transfer_type_t, ddf_fun_t *, void *);
     69void on_client_close(ddf_fun_t *fun);
     70void default_connection_handler(ddf_fun_t *fun, ipc_callid_t icallid,
     71    ipc_call_t *icall);
     72
    8573int vhc_virtdev_plug(vhc_data_t *, async_sess_t *, uintptr_t *);
    8674int vhc_virtdev_plug_local(vhc_data_t *, usbvirt_device_t *, uintptr_t *);
    87 int vhc_virtdev_plug_hub(vhc_data_t *, usbvirt_device_t *, uintptr_t *);
     75int vhc_virtdev_plug_hub(vhc_data_t *, usbvirt_device_t *, uintptr_t *, usb_address_t address);
    8876void vhc_virtdev_unplug(vhc_data_t *, uintptr_t);
    89 int vhc_virtdev_add_transfer(vhc_data_t *, vhc_transfer_t *);
    9077
     78int vhc_init(vhc_data_t *instance);
     79int vhc_schedule(hcd_t *hcd, usb_transfer_batch_t *batch);
    9180int vhc_transfer_queue_processor(void *arg);
    9281
     82#endif
    9383
    94 #endif
    9584/**
    9685 * @}
Note: See TracChangeset for help on using the changeset viewer.