Loading...
Note: File does not exist in v6.2.
1#ifndef _INTERFACE_ADAPTER_H
2#define _INTERFACE_ADAPTER_H
3
4typedef struct _BULK_ENDP_IN
5{
6 PCHAR bulk_in_buffer;
7 size_t bulk_in_size;
8 UCHAR bulk_in_endpointAddr;
9 UINT bulk_in_pipe;
10}BULK_ENDP_IN, *PBULK_ENDP_IN;
11
12
13typedef struct _BULK_ENDP_OUT
14{
15 UCHAR bulk_out_buffer;
16 size_t bulk_out_size;
17 UCHAR bulk_out_endpointAddr;
18 UINT bulk_out_pipe;
19 //this is used when int out endpoint is used as bulk out end point
20 UCHAR int_out_interval;
21}BULK_ENDP_OUT, *PBULK_ENDP_OUT;
22
23typedef struct _INTR_ENDP_IN
24{
25 PCHAR int_in_buffer;
26 size_t int_in_size;
27 UCHAR int_in_endpointAddr;
28 UCHAR int_in_interval;
29 UINT int_in_pipe;
30}INTR_ENDP_IN, *PINTR_ENDP_IN;
31
32typedef struct _INTR_ENDP_OUT
33{
34 PCHAR int_out_buffer;
35 size_t int_out_size;
36 UCHAR int_out_endpointAddr;
37 UCHAR int_out_interval;
38 UINT int_out_pipe;
39}INTR_ENDP_OUT, *PINTR_ENDP_OUT;
40
41
42typedef struct _USB_TCB
43{
44 struct urb *urb;
45 PVOID psIntfAdapter;
46 BOOLEAN bUsed;
47}USB_TCB, *PUSB_TCB;
48
49
50typedef struct _USB_RCB
51{
52 struct urb *urb;
53 PVOID psIntfAdapter;
54 BOOLEAN bUsed;
55}USB_RCB, *PUSB_RCB;
56
57/*
58//This is the interface specific Sub-Adapter
59//Structure.
60*/
61typedef struct _S_INTERFACE_ADAPTER
62{
63 struct usb_device * udev;
64 struct usb_interface * interface;
65
66 /* Bulk endpoint in info */
67 BULK_ENDP_IN sBulkIn;
68 /* Bulk endpoint out info */
69 BULK_ENDP_OUT sBulkOut;
70 /* Interrupt endpoint in info */
71 INTR_ENDP_IN sIntrIn;
72 /* Interrupt endpoint out info */
73 INTR_ENDP_OUT sIntrOut;
74
75
76
77 ULONG ulInterruptData[2];
78
79 struct urb *psInterruptUrb;
80
81 USB_TCB asUsbTcb[MAXIMUM_USB_TCB];
82 USB_RCB asUsbRcb[MAXIMUM_USB_RCB];
83 atomic_t uNumTcbUsed;
84 atomic_t uCurrTcb;
85 atomic_t uNumRcbUsed;
86 atomic_t uCurrRcb;
87
88 PMINI_ADAPTER psAdapter;
89 BOOLEAN bFlashBoot;
90 BOOLEAN bHighSpeedDevice ;
91
92 BOOLEAN bSuspended;
93 BOOLEAN bPreparingForBusSuspend;
94 struct work_struct usbSuspendWork;
95}S_INTERFACE_ADAPTER,*PS_INTERFACE_ADAPTER;
96
97#endif