Changeset e9d600c2 in mainline for uspace/lib/drv/generic/remote_usbdiag.c
- Timestamp:
- 2017-12-21T09:03:55Z (6 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- ad2a8b1
- Parents:
- cec130b
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/drv/generic/remote_usbdiag.c
rcec130b re9d600c2 43 43 44 44 typedef enum { 45 IPC_M_USBDIAG_STRESS_BULK_OUT, 46 IPC_M_USBDIAG_STRESS_BULK_IN 45 IPC_M_USBDIAG_STRESS_INTR_IN, 46 IPC_M_USBDIAG_STRESS_INTR_OUT, 47 IPC_M_USBDIAG_STRESS_BULK_IN, 48 IPC_M_USBDIAG_STRESS_BULK_OUT 47 49 } usb_iface_funcs_t; 48 50 … … 58 60 } 59 61 60 int usbdiag_stress_ bulk_out(async_exch_t *exch, int cycles, size_t size)62 int usbdiag_stress_intr_in(async_exch_t *exch, int cycles, size_t size) 61 63 { 62 64 if (!exch) 63 65 return EBADMEM; 64 66 65 return async_req_3_0(exch, DEV_IFACE_ID(USBDIAG_DEV_IFACE), IPC_M_USBDIAG_STRESS_BULK_OUT, cycles, size); 67 return async_req_3_0(exch, DEV_IFACE_ID(USBDIAG_DEV_IFACE), IPC_M_USBDIAG_STRESS_INTR_IN, cycles, size); 68 } 69 70 int usbdiag_stress_intr_out(async_exch_t *exch, int cycles, size_t size) 71 { 72 if (!exch) 73 return EBADMEM; 74 75 return async_req_3_0(exch, DEV_IFACE_ID(USBDIAG_DEV_IFACE), IPC_M_USBDIAG_STRESS_INTR_OUT, cycles, size); 66 76 } 67 77 … … 74 84 } 75 85 86 int usbdiag_stress_bulk_out(async_exch_t *exch, int cycles, size_t size) 87 { 88 if (!exch) 89 return EBADMEM; 90 91 return async_req_3_0(exch, DEV_IFACE_ID(USBDIAG_DEV_IFACE), IPC_M_USBDIAG_STRESS_BULK_OUT, cycles, size); 92 } 93 94 static void remote_usbdiag_stress_intr_in(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *); 95 static void remote_usbdiag_stress_intr_out(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *); 96 static void remote_usbdiag_stress_bulk_in(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *); 76 97 static void remote_usbdiag_stress_bulk_out(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *); 77 static void remote_usbdiag_stress_bulk_in(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);78 98 79 99 /** Remote USB diagnostic interface operations. */ 80 100 static const remote_iface_func_ptr_t remote_usbdiag_iface_ops [] = { 81 [IPC_M_USBDIAG_STRESS_BULK_OUT] = remote_usbdiag_stress_bulk_out, 82 [IPC_M_USBDIAG_STRESS_BULK_IN] = remote_usbdiag_stress_bulk_in, 101 [ IPC_M_USBDIAG_STRESS_INTR_IN] = remote_usbdiag_stress_intr_in, 102 [IPC_M_USBDIAG_STRESS_INTR_OUT] = remote_usbdiag_stress_intr_out, 103 [ IPC_M_USBDIAG_STRESS_BULK_IN] = remote_usbdiag_stress_bulk_in, 104 [IPC_M_USBDIAG_STRESS_BULK_OUT] = remote_usbdiag_stress_bulk_out 83 105 }; 84 106 … … 89 111 }; 90 112 91 void remote_usbdiag_stress_bulk_out(ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call) 113 void remote_usbdiag_stress_intr_in(ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call) 114 { 115 const usbdiag_iface_t *diag_iface = (usbdiag_iface_t *) iface; 116 117 if (diag_iface->stress_bulk_in == NULL) { 118 async_answer_0(callid, ENOTSUP); 119 return; 120 } 121 122 int cycles = DEV_IPC_GET_ARG1(*call); 123 size_t size = DEV_IPC_GET_ARG2(*call); 124 const int ret = diag_iface->stress_intr_in(fun, cycles, size); 125 async_answer_0(callid, ret); 126 } 127 128 void remote_usbdiag_stress_intr_out(ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call) 92 129 { 93 130 const usbdiag_iface_t *diag_iface = (usbdiag_iface_t *) iface; … … 100 137 int cycles = DEV_IPC_GET_ARG1(*call); 101 138 size_t size = DEV_IPC_GET_ARG2(*call); 102 const int ret = diag_iface->stress_ bulk_out(fun, cycles, size);139 const int ret = diag_iface->stress_intr_out(fun, cycles, size); 103 140 async_answer_0(callid, ret); 104 141 } … … 119 156 } 120 157 158 void remote_usbdiag_stress_bulk_out(ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call) 159 { 160 const usbdiag_iface_t *diag_iface = (usbdiag_iface_t *) iface; 161 162 if (diag_iface->stress_bulk_out == NULL) { 163 async_answer_0(callid, ENOTSUP); 164 return; 165 } 166 167 int cycles = DEV_IPC_GET_ARG1(*call); 168 size_t size = DEV_IPC_GET_ARG2(*call); 169 const int ret = diag_iface->stress_bulk_out(fun, cycles, size); 170 async_answer_0(callid, ret); 171 } 172 121 173 /** 122 174 * @}
Note:
See TracChangeset
for help on using the changeset viewer.