Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/drv/include/usbdiag_iface.h

    r24c8bf8 r8393c73b  
    3939
    4040#include <async.h>
     41#include <usbhc_iface.h>
    4142#include "ddf/driver.h"
    4243
     
    4647typedef unsigned long usbdiag_dur_t;
    4748
     49/** Test parameters. */
     50typedef struct usbdiag_test_params {
     51        usb_transfer_type_t transfer_type;
     52        size_t transfer_size;
     53        usbdiag_dur_t min_duration;
     54        bool validate_data;
     55} usbdiag_test_params_t;
     56
     57/** Test results. */
     58typedef struct usbdiag_test_results {
     59        usbdiag_dur_t act_duration;
     60        uint32_t transfer_count;
     61        size_t transfer_size;
     62} usbdiag_test_results_t;
     63
    4864async_sess_t *usbdiag_connect(devman_handle_t);
    4965void usbdiag_disconnect(async_sess_t*);
    5066
    51 int usbdiag_burst_intr_in(async_exch_t*, int, size_t, usbdiag_dur_t*);
    52 int usbdiag_burst_intr_out(async_exch_t*, int, size_t, usbdiag_dur_t*);
    53 int usbdiag_burst_bulk_in(async_exch_t*, int, size_t, usbdiag_dur_t*);
    54 int usbdiag_burst_bulk_out(async_exch_t*, int, size_t, usbdiag_dur_t*);
    55 int usbdiag_burst_isoch_in(async_exch_t*, int, size_t, usbdiag_dur_t*);
    56 int usbdiag_burst_isoch_out(async_exch_t*, int, size_t, usbdiag_dur_t*);
    57 
    58 int usbdiag_data_intr_in(async_exch_t*, int, size_t, usbdiag_dur_t*);
    59 int usbdiag_data_intr_out(async_exch_t*, int, size_t, usbdiag_dur_t*);
    60 int usbdiag_data_bulk_in(async_exch_t*, int, size_t, usbdiag_dur_t*);
    61 int usbdiag_data_bulk_out(async_exch_t*, int, size_t, usbdiag_dur_t*);
    62 int usbdiag_data_isoch_in(async_exch_t*, int, size_t, usbdiag_dur_t*);
    63 int usbdiag_data_isoch_out(async_exch_t*, int, size_t, usbdiag_dur_t*);
     67int usbdiag_test_in(async_exch_t*, const usbdiag_test_params_t *, usbdiag_test_results_t *);
     68int usbdiag_test_out(async_exch_t*, const usbdiag_test_params_t *, usbdiag_test_results_t *);
    6469
    6570/** USB diagnostic device communication interface. */
    6671typedef struct {
    67         int (*burst_intr_in)(ddf_fun_t*, int, size_t, usbdiag_dur_t*);
    68         int (*burst_intr_out)(ddf_fun_t*, int, size_t, usbdiag_dur_t*);
    69         int (*burst_bulk_in)(ddf_fun_t*, int, size_t, usbdiag_dur_t*);
    70         int (*burst_bulk_out)(ddf_fun_t*, int, size_t, usbdiag_dur_t*);
    71         int (*burst_isoch_in)(ddf_fun_t*, int, size_t, usbdiag_dur_t*);
    72         int (*burst_isoch_out)(ddf_fun_t*, int, size_t, usbdiag_dur_t*);
    73         int (*data_intr_in)(ddf_fun_t*, int, size_t, usbdiag_dur_t*);
    74         int (*data_intr_out)(ddf_fun_t*, int, size_t, usbdiag_dur_t*);
    75         int (*data_bulk_in)(ddf_fun_t*, int, size_t, usbdiag_dur_t*);
    76         int (*data_bulk_out)(ddf_fun_t*, int, size_t, usbdiag_dur_t*);
    77         int (*data_isoch_in)(ddf_fun_t*, int, size_t, usbdiag_dur_t*);
    78         int (*data_isoch_out)(ddf_fun_t*, int, size_t, usbdiag_dur_t*);
     72        int (*test_in)(ddf_fun_t*, const usbdiag_test_params_t *, usbdiag_test_results_t *);
     73        int (*test_out)(ddf_fun_t*, const usbdiag_test_params_t *, usbdiag_test_results_t *);
    7974} usbdiag_iface_t;
    8075
Note: See TracChangeset for help on using the changeset viewer.