• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2020-2021 Huawei Device Co., Ltd.
3  *
4  * HDF is dual licensed: you can use it either under the terms of
5  * the GPL, or the BSD license, at your option.
6  * See the LICENSE file in the root of this repository for complete details.
7  */
8 
9 #ifndef USB_RAW_TEST_H
10 #define USB_RAW_TEST_H
11 
12 #include "data_fifo.h"
13 #include "hdf_device_desc.h"
14 #include "platform_if.h"
15 #include "implementation/global_implementation.h"
16 #include "usb_ddk_interface.h"
17 #include "usb_raw_api.h"
18 
19 enum UsbRawTestCmd {
20     USB_RAW_SDK_IF_START_IO,
21     USB_RAW_SDK_IF_INIT_001_TEST,
22     USB_RAW_SDK_IF_EXIT_001_TEST,
23     USB_RAW_SDK_IF_INIT_002_TEST,
24     USB_RAW_SDK_IF_EXIT_002_TEST,
25     USB_RAW_SDK_IF_INIT_003_TEST,
26     USB_RAW_SDK_IF_INIT_004_TEST,
27     USB_RAW_SDK_IF_INIT_005_TEST,
28     USB_RAW_SDK_IF_OPEN_DEVICE_001_TEST,
29     USB_RAW_SDK_IF_OPEN_DEVICE_002_TEST,
30     USB_RAW_SDK_IF_OPEN_DEVICE_003_TEST,
31     USB_RAW_SDK_IF_OPEN_DEVICE_004_TEST,
32     USB_RAW_SDK_IF_OPEN_DEVICE_005_TEST,
33     USB_RAW_SDK_IF_OPEN_DEVICE_006_TEST,
34     USB_RAW_SDK_IF_RESET_DEVICE_001_TEST,
35     USB_RAW_SDK_IF_RESET_DEVICE_002_TEST,
36     USB_RAW_SDK_IF_CLOSE_DEVICE_001_TEST,
37     USB_RAW_SDK_IF_CLOSE_DEVICE_002_TEST,
38     USB_RAW_SDK_IF_OPEN_DEVICE_007_TEST,
39     USB_RAW_SDK_IF_GET_CONFIGURATION_001_TEST,
40     USB_RAW_SDK_IF_GET_CONFIGURATION_002_TEST,
41     USB_RAW_SDK_IF_GET_CONFIGURATION_003_TEST,
42     USB_RAW_SDK_IF_GET_CONFIGURATION_004_TEST,
43     USB_RAW_SDK_IF_GET_DEVICE_001_TEST,
44     USB_RAW_SDK_IF_GET_DEVICE_002_TEST,
45     USB_RAW_SDK_IF_GET_CONFIG_DESC_001_TEST,
46     USB_RAW_SDK_IF_GET_CONFIG_DESC_002_TEST,
47     USB_RAW_SDK_IF_GET_CONFIG_DESC_003_TEST,
48     USB_RAW_SDK_IF_GET_CONFIG_DESC_004_TEST,
49     USB_RAW_SDK_IF_SET_CONFIGURATION_001_TEST,
50     USB_RAW_SDK_IF_SET_CONFIGURATION_002_TEST,
51     USB_RAW_SDK_IF_SET_CONFIGURATION_003_TEST,
52     USB_RAW_SDK_IF_SET_CONFIGURATION_004_TEST,
53     USB_RAW_SDK_IF_SET_CONFIGURATION_005_TEST,
54     USB_RAW_SDK_IF_SET_CONFIGURATION_006_TEST,
55     USB_RAW_SDK_IF_SET_CONFIGURATION_007_TEST,
56     USB_RAW_SDK_IF_SET_CONFIGURATION_008_TEST,
57     USB_RAW_SDK_IF_GET_DEVICE_DESC_001_TEST,
58     USB_RAW_SDK_IF_GET_DEVICE_DESC_002_TEST,
59     USB_RAW_SDK_IF_GET_DEVICE_DESC_003_TEST,
60     USB_RAW_SDK_IF_GET_DEVICE_DESC_004_TEST,
61     USB_RAW_SDK_IF_GET_CONFIG_DESC_005_TEST,
62     USB_RAW_SDK_IF_GET_DEVICE_DESC_005_TEST,
63     USB_RAW_SDK_IF_CLAMIN_INTERFACE_001_TEST,
64     USB_RAW_SDK_IF_CLAMIN_INTERFACE_002_TEST,
65     USB_RAW_SDK_IF_CLAMIN_INTERFACE_003_TEST,
66     USB_RAW_SDK_IF_CLAMIN_INTERFACE_004_TEST,
67     USB_RAW_SDK_IF_CLAMIN_INTERFACE_005_TEST,
68     USB_RAW_SDK_IF_RELEASE_INTERFACE_001_TEST,
69     USB_RAW_SDK_IF_RELEASE_INTERFACE_002_TEST,
70     USB_RAW_SDK_IF_RELEASE_INTERFACE_003_TEST,
71     USB_RAW_SDK_IF_RELEASE_INTERFACE_004_TEST,
72     USB_RAW_SDK_IF_CLAMIN_INTERFACE_006_TEST,
73     USB_RAW_SDK_IF_ALLOC_REQUEST_001_TEST,
74     USB_RAW_SDK_IF_ALLOC_REQUEST_002_TEST,
75     USB_RAW_SDK_IF_ALLOC_REQUEST_003_TEST,
76     USB_RAW_SDK_IF_ALLOC_REQUEST_004_TEST,
77     USB_RAW_SDK_IF_ALLOC_REQUEST_005_TEST,
78     USB_RAW_SDK_IF_ALLOC_REQUEST_006_TEST,
79     USB_RAW_SDK_IF_ALLOC_REQUEST_007_TEST,
80     USB_RAW_SDK_IF_ALLOC_REQUEST_008_TEST,
81     USB_RAW_SDK_IF_ALLOC_REQUEST_010_TEST,
82     USB_RAW_SDK_IF_ALLOC_REQUEST_011_TEST,
83     USB_RAW_SDK_IF_FREE_REQUEST_006_TEST,
84     USB_RAW_SDK_IF_FILL_ISO_REQUEST_001_TEST,
85     USB_RAW_SDK_IF_FILL_ISO_REQUEST_002_TEST,
86     USB_RAW_SDK_IF_FILL_ISO_REQUEST_003_TEST,
87     USB_RAW_SDK_IF_FILL_ISO_REQUEST_004_TEST,
88     USB_RAW_SDK_IF_FILL_ISO_REQUEST_005_TEST,
89     USB_RAW_SDK_IF_FILL_ISO_REQUEST_006_TEST,
90     USB_RAW_SDK_IF_FREE_REQUEST_001_TEST,
91     USB_RAW_SDK_IF_FREE_REQUEST_002_TEST,
92     USB_RAW_SDK_IF_FREE_REQUEST_003_TEST,
93     USB_RAW_SDK_IF_FREE_REQUEST_004_TEST,
94     USB_RAW_SDK_IF_FREE_REQUEST_005_TEST,
95     USB_RAW_SDK_IF_ALLOC_REQUEST_009_TEST,
96     USB_RAW_SDK_IF_GET_DESCRIPTION_001_TEST,
97     USB_RAW_SDK_IF_GET_DESCRIPTION_002_TEST,
98     USB_RAW_SDK_IF_GET_DESCRIPTION_003_TEST,
99     USB_RAW_SDK_IF_GET_DESCRIPTION_004_TEST,
100     USB_RAW_SDK_IF_GET_DESCRIPTION_005_TEST,
101     USB_RAW_SDK_IF_GET_DESCRIPTION_006_TEST,
102     USB_RAW_SDK_IF_GET_DESCRIPTION_007_TEST,
103     USB_RAW_SDK_IF_GET_DESCRIPTION_008_TEST,
104     USB_RAW_SDK_IF_GET_DESCRIPTION_009_TEST,
105     USB_RAW_SDK_IF_GET_DESCRIPTION_010_TEST,
106     USB_RAW_SDK_IF_GET_DESCRIPTION_011_TEST,
107     USB_RAW_SDK_IF_GET_DESCRIPTION_012_TEST,
108     USB_RAW_SDK_IF_GET_DESCRIPTION_013_TEST,
109     USB_RAW_SDK_IF_GET_DESCRIPTION_014_TEST,
110     USB_RAW_SDK_IF_GET_DESCRIPTION_015_TEST,
111     USB_RAW_SDK_IF_GET_DESCRIPTION_016_TEST,
112     USB_RAW_SDK_IF_FILL_BULK_REQUEST_001_TEST,
113     USB_RAW_SDK_IF_FILL_BULK_REQUEST_002_TEST,
114     USB_RAW_SDK_IF_FILL_INT_REQUEST_001_TEST,
115     USB_RAW_SDK_IF_FILL_INT_REQUEST_002_TEST,
116     USB_RAW_SDK_IF_FILL_INT_REQUEST_003_TEST,
117     USB_RAW_SDK_IF_FILL_INT_REQUEST_004_TEST,
118     USB_RAW_SDK_IF_FILL_CONTROL_REQUEST_001_TEST,
119     USB_RAW_SDK_IF_FILL_CONTROL_REQUEST_002_TEST,
120     USB_RAW_SDK_IF_FILL_CONTROL_REQUEST_003_TEST,
121     USB_RAW_SDK_IF_FILL_CONTROL_REQUEST_004_TEST,
122     USB_RAW_SDK_IF_FILL_CONTROL_REQUEST_005_TEST,
123     USB_RAW_SDK_IF_FILL_CONTROL_REQUEST_006_TEST,
124     USB_RAW_SDK_IF_FILL_CONTROL_REQUEST_007_TEST,
125     USB_RAW_SDK_IF_FILL_CONTROL_REQUEST_008_TEST,
126     USB_RAW_SDK_IF_FILL_CONTROL_SETUP_001_TEST,
127     USB_RAW_SDK_IF_FILL_CONTROL_SETUP_002_TEST,
128     USB_RAW_SDK_IF_FILL_CONTROL_SETUP_003_TEST,
129     USB_RAW_SDK_IF_FILL_CONTROL_SETUP_004_TEST,
130     USB_RAW_SDK_IF_SEND_CONTROL_REQUEST_001_TEST,
131     USB_RAW_SDK_IF_SEND_CONTROL_REQUEST_002_TEST,
132     USB_RAW_SDK_IF_SEND_CONTROL_REQUEST_003_TEST,
133     USB_RAW_SDK_IF_SEND_CONTROL_REQUEST_004_TEST,
134     USB_RAW_SDK_IF_SEND_CONTROL_REQUEST_005_TEST,
135     USB_RAW_SDK_IF_SEND_CONTROL_REQUEST_006_TEST,
136     USB_RAW_SDK_IF_SEND_CONTROL_REQUEST_007_TEST,
137     USB_RAW_SDK_IF_SEND_BULK_REQUEST_001_TEST,
138     USB_RAW_SDK_IF_SEND_BULK_REQUEST_002_TEST,
139     USB_RAW_SDK_IF_SEND_BULK_REQUEST_003_TEST,
140     USB_RAW_SDK_IF_SEND_BULK_REQUEST_004_TEST,
141     USB_RAW_SDK_IF_SEND_BULK_REQUEST_005_TEST,
142     USB_RAW_SDK_IF_SEND_INT_REQUEST_001_TEST,
143     USB_RAW_SDK_IF_SEND_INT_REQUEST_002_TEST,
144     USB_RAW_SDK_IF_SEND_INT_REQUEST_003_TEST,
145     USB_RAW_SDK_IF_SEND_INT_REQUEST_004_TEST,
146     USB_RAW_SDK_IF_FILL_BULK_REQUEST_003_TEST,
147     USB_RAW_SDK_IF_FILL_BULK_REQUEST_004_TEST,
148     USB_RAW_SDK_IF_FILL_INT_REQUEST_005_TEST,
149     USB_RAW_SDK_IF_SUBMIT_REQUEST_001_TEST,
150     USB_RAW_SDK_IF_SUBMIT_REQUEST_002_TEST,
151     USB_RAW_SDK_IF_SUBMIT_REQUEST_003_TEST,
152     USB_RAW_SDK_IF_SUBMIT_REQUEST_004_TEST,
153     USB_RAW_SDK_IF_CANCEL_REQUEST_001_TEST,
154     USB_RAW_SDK_IF_CANCEL_REQUEST_002_TEST,
155     USB_RAW_SDK_IF_CANCEL_REQUEST_003_TEST,
156     USB_RAW_SDK_IF_CANCEL_REQUEST_004_TEST,
157     USB_RAW_SDK_IF_STOP_IO,
158 };
159 
160 #define USB_MAX_INTERFACES      32
161 #define USB_CTRL_REQ_SIZE       256
162 
163 #define DATARATE                9600
164 #define DATA_BITS_LENGTH        8
165 #define ACM_NW                  16
166 #define ACM_NR                  16
167 #define READ_BUF_SIZE           8192
168 #define USB_CTRL_SET_TIMEOUT    5000
169 #define USB_PIPE_DIR_OFFSET     7
170 #define USB_DEVICE_VENDOR_ID    0x12D1
171 #define USB_DEVICE_PRODUCT_ID   0x5000
172 #define USB_MAX_BYTE            255
173 #define BITS_PER_WORD   10
174 #define MAX_SPEED_HZ    10000000
175 #define TEST_SLEEP_TIME 500
176 #define USB_LOOP_NUM    100
177 #define USB_DESC_TYPE   2
178 #define USB_ISO_PACKAT_CNT 16
179 
180 #define USB_RAW_REQUEST_TIME_ZERO_MS    0
181 #define USB_RAW_IO_SLEEP_MS_TIME        500
182 #define USB_IO_THREAD_STACK_SIZE        8192
183 
184 #define USB_BUFFER_MAX_SIZE     256
185 
186 struct AcmRawDevice;
187 struct RawWb {
188     struct UsbRawRequest *request;
189     struct AcmRawDevice *instance;
190     uint8_t *buf;
191     uint32_t len;
192     int32_t use;
193 };
194 
195 struct RawRb {
196     uint8_t *base;
197     int32_t size;
198     int32_t index;
199     int32_t use;
200     struct AcmRawDevice *instance;
201 };
202 
203 struct SerialRawDevice {
204     struct AcmRawDevice *acm;
205     struct UsbCdcLineCoding lineCoding;
206     struct OsalMutex lock;
207     struct DataFifo readFifo;
208 };
209 
210 struct UsbEndpoint {
211     uint8_t addr;
212     uint8_t interval;
213     uint16_t maxPacketSize;
214 };
215 
216 struct AcmRawDevice {
217     struct IDeviceIoService service;
218     struct HdfDeviceObject *device;
219     uint8_t ctrlIface;
220     uint8_t dataIface;
221     struct UsbEndpoint notifyEp;
222     struct UsbEndpoint dataInEp;
223     struct UsbEndpoint dataOutEp;
224     struct UsbEndpoint isoEp;
225     struct UsbRawConfigDescriptor *config;
226     struct RawWb wb[ACM_NW];
227     struct RawRb rb[ACM_NR];
228     struct OsalMutex writeLock;
229     struct OsalMutex readLock;
230     struct UsbRawRequest *notifyReq;
231     struct UsbRawRequest *readReq[ACM_NR];
232     struct UsbRawRequest *writeReq;
233     struct UsbRawRequest *ctrlReq;
234     struct UsbRawRequest *isoReq;
235     struct OsalMutex lock;
236     UsbRawHandle *devHandle;
237     struct UsbSession *session;
238     struct SerialRawDevice *port;
239     uint32_t nbIndex;
240     uint32_t nbSize;
241     int32_t transmitting;
242     uint8_t busNum;
243     uint8_t devAddr;
244     uint8_t interfaceCnt;
245     uint8_t *notificationBuffer;
246     uint8_t interfaceIndex[USB_MAX_INTERFACES];
247     struct UsbCdcLineCoding lineCoding;
248     struct OsalThread ioThread;
249 };
250 
251 typedef void (*UsbRequestCallback)(struct UsbRequest *request);
252 
253 typedef enum {
254     /* select a configuration for the device */
255     USB_REQUEST_SELECT_CONFIGURATION,
256     /* select an alternate setting for an interface */
257     USB_REQUEST_SELECT_INTERFACE,
258     /* get the device descriptor from a specific USB device/interface/endpoint  */
259     USB_REQUEST_GET_DESCRIPTOR,
260     /* set descriptor on a device/interface/endpoint  */
261     USB_REQUEST_SET_DESCRIPTOR,
262     /* set a feature on a device/interface/endpoint/other */
263     USB_REQUEST_SET_FEATURE,
264     /* clear a USB-defined feature on a device/interface/endpoint/other */
265     USB_REQUEST_CLEAR_FEATURE,
266     /* get status form a USB device/interface/endpoint/other */
267     USB_REQUEST_GET_STATUS,
268     /* get the current configuration on a USB device */
269     USB_REQUEST_GET_CONFIGURATION = 0x08,
270     /* get the current setting for an interface */
271     USB_REQUEST_GET_INTERFACE,
272 } UsbStandardRequest;
273 
274 typedef enum {
275     USB_REQUEST_TYPE_CONTROL = 0U,
276     USB_REQUEST_TYPE_ISOCHRONOUS = 1U,
277     USB_REQUEST_TYPE_BULK = 2U,
278     USB_REQUEST_TYPE_INTERRUPT = 3U,
279 } UsbRequestType;
280 
281 struct UsbIsoPacketDesc {
282     unsigned int length;
283     unsigned int actualLength;
284     unsigned int status;
285 };
286 
287 struct UsbAdapterUrb {
288     unsigned char type;
289     unsigned char endPoint;
290     int32_t status;
291     unsigned int flags;
292     void *buffer;
293     int32_t bufferLength;
294     int32_t actualLength;
295     int32_t startFrame;
296     int32_t numberOfPackets;
297     int32_t errorCount;
298     unsigned int signr;
299     void *userContext;
300     struct UsbIsoPacketDesc isoFrameDesc[0];
301 };
302 
303 /* Note:The first five fields of the definition must be consistent with the UsbRawRequest structure definition. */
304 struct UsbHostRequest {
305     /* the address of data buffer */
306     unsigned char *buffer;
307     /* the length of data buffer */
308     uint32_t length;
309     /* the actual length of the requested data */
310     int32_t actualLength;
311     /* the status of the request */
312     UsbRequestStatus status;
313     /* private user data */
314     void *userData;
315 
316     /* the following fields are not visible to user */
317     struct UsbDeviceHandle *devHandle;
318     UsbRawRequestCallback callback;
319     UsbRequestCallback userCallback;
320     /* the length of data buffer */
321     int32_t bufLen;
322     struct OsalSem sem;
323     unsigned char endPoint;
324     unsigned int timeout;
325     unsigned char requestType;
326     union {
327         void *urbs;
328         void **isoUrbs;
329     };
330     int32_t numUrbs;
331     int32_t numRetired;
332     UsbRequestStatus reqStatus;
333     int32_t isoPacketOffset;
334     struct OsalMutex lock;
335     void *privateObj;
336     int32_t numIsoPackets;
337     /* isopacketdesc ptr */
338     struct UsbIsoPacketDesc isoPacketDesc[0];
339 }__attribute__((aligned(4)));
340 
341 /* Note:The first seven fields of this definition must be consistent with the UsbRawFillRequestData
342   * structure definition.
343   */
344 struct UsbFillRequestData {
345     unsigned char endPoint;
346     unsigned char *buffer;
347     uint32_t length;
348     int32_t numIsoPackets;
349     UsbRawRequestCallback callback;
350     void *userData;
351     unsigned int timeout;
352     UsbRequestCallback userCallback;
353 };
354 
355 struct UsbRawTestFunc {
356     enum UsbRawTestCmd type;
357     int32_t (*Func)(void);
358 };
359 
360 struct AcmRawDevice *UsbGetIoAcm(void);
361 int32_t UsbParseConfigDescriptor(struct AcmRawDevice *acm, struct UsbRawConfigDescriptor *config);
362 int32_t AcmWriteBufAlloc(struct AcmRawDevice *acm);
363 void AcmNotifyReqCallback(const void *requestArg);
364 void AcmReadBulkCallback(const void *requestArg);
365 void AcmWriteIsoCallback(const void *requestArg);
366 void AcmWriteBulkCallback(const void *requestArg);
367 int32_t UsbStopIo(void);
368 int32_t UsbStartIo(void);
369 int32_t UsbIoThread(void *data);
370 void AcmWriteBufFree(struct AcmRawDevice *acm);
371 void AcmCtrlReqCallback(const void *requestArg);
372 int32_t CheckRawSdkIfInit001(void);
373 int32_t CheckRawSdkIfExit001(void);
374 int32_t CheckRawSdkIfInit002(void);
375 int32_t CheckRawSdkIfExit002(void);
376 int32_t CheckRawSdkIfInit003(void);
377 int32_t CheckRawSdkIfInit004(void);
378 int32_t CheckRawSdkIfInit005(void);
379 int32_t CheckRawSdkIfOpenDevice001(void);
380 int32_t CheckRawSdkIfOpenDevice002(void);
381 int32_t CheckRawSdkIfOpenDevice003(void);
382 int32_t CheckRawSdkIfOpenDevice004(void);
383 int32_t CheckRawSdkIfOpenDevice005(void);
384 int32_t CheckRawSdkIfOpenDevice006(void);
385 int32_t CheckRawSdkIfResetDevice001(void);
386 int32_t CheckRawSdkIfResetDevice002(void);
387 int32_t CheckRawSdkIfCloseDevice001(void);
388 int32_t CheckRawSdkIfCloseDevice002(void);
389 int32_t CheckRawSdkIfOpenDevice007(void);
390 int32_t CheckRawSdkIfGetConfiguration001(void);
391 int32_t CheckRawSdkIfGetConfiguration002(void);
392 int32_t CheckRawSdkIfGetConfiguration003(void);
393 int32_t CheckRawSdkIfGetConfiguration004(void);
394 int32_t CheckRawSdkIfGetDevice001(void);
395 int32_t CheckRawSdkIfGetDevice002(void);
396 int32_t CheckRawSdkIfGetConfigDescriptor001(void);
397 int32_t CheckRawSdkIfGetConfigDescriptor002(void);
398 int32_t CheckRawSdkIfGetConfigDescriptor003(void);
399 int32_t CheckRawSdkIfGetConfigDescriptor004(void);
400 int32_t CheckRawSdkIfSetConfiguration001(void);
401 int32_t CheckRawSdkIfSetConfiguration002(void);
402 int32_t CheckRawSdkIfSetConfiguration003(void);
403 int32_t CheckRawSdkIfSetConfiguration004(void);
404 int32_t CheckRawSdkIfSetConfiguration005(void);
405 int32_t CheckRawSdkIfSetConfiguration006(void);
406 int32_t CheckRawSdkIfSetConfiguration007(void);
407 int32_t CheckRawSdkIfSetConfiguration008(void);
408 int32_t CheckRawSdkIfGetDeviceDescriptor001(void);
409 int32_t CheckRawSdkIfGetDeviceDescriptor002(void);
410 int32_t CheckRawSdkIfGetDeviceDescriptor003(void);
411 int32_t CheckRawSdkIfGetDeviceDescriptor004(void);
412 int32_t CheckRawSdkIfGetConfigDescriptor005(void);
413 int32_t CheckRawSdkIfGetDeviceDescriptor005(void);
414 int32_t CheckRawSdkIfClaimInterface001(void);
415 int32_t CheckRawSdkIfClaimInterface002(void);
416 int32_t CheckRawSdkIfClaimInterface003(void);
417 int32_t CheckRawSdkIfClaimInterface004(void);
418 int32_t CheckRawSdkIfClaimInterface005(void);
419 int32_t CheckRawSdkIfReleaseInterface001(void);
420 int32_t CheckRawSdkIfReleaseInterface002(void);
421 int32_t CheckRawSdkIfReleaseInterface003(void);
422 int32_t CheckRawSdkIfReleaseInterface004(void);
423 int32_t CheckRawSdkIfClaimInterface006(void);
424 int32_t CheckRawSdkIfAllocRequest001(void);
425 int32_t CheckRawSdkIfAllocRequest002(void);
426 int32_t CheckRawSdkIfAllocRequest003(void);
427 int32_t CheckRawSdkIfAllocRequest004(void);
428 int32_t CheckRawSdkIfAllocRequest005(void);
429 int32_t CheckRawSdkIfAllocRequest006(void);
430 int32_t CheckRawSdkIfAllocRequest007(void);
431 int32_t CheckRawSdkIfAllocRequest008(void);
432 int32_t CheckRawSdkIfAllocRequest010(void);
433 int32_t CheckRawSdkIfAllocRequest011(void);
434 int32_t CheckRawSdkIfFreeRequest006(void);
435 int32_t CheckRawSdkIfFillIsoRequest001(void);
436 int32_t CheckRawSdkIfFillIsoRequest002(void);
437 int32_t CheckRawSdkIfFillIsoRequest003(void);
438 int32_t CheckRawSdkIfFillIsoRequest004(void);
439 int32_t CheckRawSdkIfFillIsoRequest005(void);
440 int32_t CheckRawSdkIfFillIsoRequest006(void);
441 int32_t CheckRawSdkIfFreeRequest001(void);
442 int32_t CheckRawSdkIfFreeRequest002(void);
443 int32_t CheckRawSdkIfFreeRequest003(void);
444 int32_t CheckRawSdkIfFreeRequest004(void);
445 int32_t CheckRawSdkIfFreeRequest005(void);
446 int32_t CheckRawSdkIfAllocRequest009(void);
447 int32_t CheckRawSdkIfGetDescriptor001(void);
448 int32_t CheckRawSdkIfGetDescriptor002(void);
449 int32_t CheckRawSdkIfGetDescriptor003(void);
450 int32_t CheckRawSdkIfGetDescriptor004(void);
451 int32_t CheckRawSdkIfGetDescriptor005(void);
452 int32_t CheckRawSdkIfGetDescriptor006(void);
453 int32_t CheckRawSdkIfGetDescriptor007(void);
454 int32_t CheckRawSdkIfGetDescriptor008(void);
455 int32_t CheckRawSdkIfGetDescriptor009(void);
456 int32_t CheckRawSdkIfGetDescriptor010(void);
457 int32_t CheckRawSdkIfGetDescriptor011(void);
458 int32_t CheckRawSdkIfGetDescriptor012(void);
459 int32_t CheckRawSdkIfGetDescriptor013(void);
460 int32_t CheckRawSdkIfGetDescriptor014(void);
461 int32_t CheckRawSdkIfGetDescriptor015(void);
462 int32_t CheckRawSdkIfGetDescriptor016(void);
463 int32_t CheckRawSdkIfFillBulkRequest001(void);
464 int32_t CheckRawSdkIfFillBulkRequest002(void);
465 int32_t CheckRawSdkIfFillInterruptRequest001(void);
466 int32_t CheckRawSdkIfFillInterruptRequest002(void);
467 int32_t CheckRawSdkIfFillInterruptRequest003(void);
468 int32_t CheckRawSdkIfFillInterruptRequest004(void);
469 int32_t CheckRawSdkIfFillControlRequest001(void);
470 int32_t CheckRawSdkIfFillControlRequest002(void);
471 int32_t CheckRawSdkIfFillControlRequest003(void);
472 int32_t CheckRawSdkIfFillControlRequest004(void);
473 int32_t CheckRawSdkIfFillControlRequest005(void);
474 int32_t CheckRawSdkIfFillControlRequest006(void);
475 int32_t CheckRawSdkIfFillControlRequest007(void);
476 int32_t CheckRawSdkIfFillControlRequest008(void);
477 int32_t CheckRawSdkIfFillControlSetup001(void);
478 int32_t CheckRawSdkIfFillControlSetup002(void);
479 int32_t CheckRawSdkIfFillControlSetup003(void);
480 int32_t CheckRawSdkIfFillControlSetup004(void);
481 int32_t CheckRawSdkIfSendControlRequest001(void);
482 int32_t CheckRawSdkIfSendControlRequest002(void);
483 int32_t CheckRawSdkIfSendControlRequest003(void);
484 int32_t CheckRawSdkIfSendControlRequest004(void);
485 int32_t CheckRawSdkIfSendControlRequest005(void);
486 int32_t CheckRawSdkIfSendControlRequest006(void);
487 int32_t CheckRawSdkIfSendControlRequest007(void);
488 int32_t CheckRawSdkIfSendBulkRequest001(void);
489 int32_t CheckRawSdkIfSendBulkRequest002(void);
490 int32_t CheckRawSdkIfSendBulkRequest003(void);
491 int32_t CheckRawSdkIfSendBulkRequest004(void);
492 int32_t CheckRawSdkIfSendBulkRequest005(void);
493 int32_t CheckRawSdkIfSendInterruptRequest001(void);
494 int32_t CheckRawSdkIfSendInterruptRequest002(void);
495 int32_t CheckRawSdkIfSendInterruptRequest003(void);
496 int32_t CheckRawSdkIfSendInterruptRequest004(void);
497 int32_t CheckRawSdkIfFillBulkRequest003(void);
498 int32_t CheckRawSdkIfFillBulkRequest004(void);
499 int32_t CheckRawSdkIfFillInterruptRequest005(void);
500 int32_t CheckRawSdkIfSubmitRequest001(void);
501 int32_t CheckRawSdkIfSubmitRequest002(void);
502 int32_t CheckRawSdkIfSubmitRequest003(void);
503 int32_t CheckRawSdkIfSubmitRequest004(void);
504 int32_t CheckRawSdkIfCancelRequest001(void);
505 int32_t CheckRawSdkIfCancelRequest002(void);
506 int32_t CheckRawSdkIfCancelRequest003(void);
507 int32_t CheckRawSdkIfCancelRequest004(void);
508 
509 int32_t UsbRawTestEntry(int32_t cmd);
510 
511 #endif /* USB_TEST_H */
512