1 #define _BULK_DATA_LEN 64
3 unsigned char data[_BULK_DATA_LEN];
6 } bulk_transfer_t, *pbulk_transfer_t;
8 #define DABUSB_MINOR 240 /* some unassigned USB minor */
9 #define DABUSB_VERSION 0x1000
10 #define IOCTL_DAB_BULK _IOWR('d', 0x30, bulk_transfer_t)
11 #define IOCTL_DAB_OVERRUNS _IOR('d', 0x15, int)
12 #define IOCTL_DAB_VERSION _IOR('d', 0x3f, int)
16 typedef enum { _stopped = 0, _started } driver_state_t;
20 struct usb_device *usbdev;
21 wait_queue_head_t wait;
22 wait_queue_head_t remove_ok;
28 int total_buffer_size;
29 unsigned int overruns;
33 struct list_head free_buff_list;
34 struct list_head rec_buff_list;
35 } dabusb_t, *pdabusb_t;
40 struct list_head buff_list;
44 wait_queue_head_t wait;
45 } bulk_completion_context_t, *pbulk_completion_context_t;
49 #define _DABUSB_ISOPIPE 0x09
50 #define _ISOPIPESIZE 16384
52 #define _BULK_DATA_LEN 64
53 /* Vendor specific request code for Anchor Upload/Download
54 *This one is implemented in the core */
55 #define ANCHOR_LOAD_INTERNAL 0xA0
57 /* EZ-USB Control and Status Register. Bit 0 controls 8051 reset */
58 #define CPUCS_REG 0x7F92
59 #define _TOTAL_BUFFERS 384
61 #define MAX_INTEL_HEX_RECORD_LENGTH 16
65 typedef unsigned char BYTE;
66 #endif /* !_BYTE_DEFINED */
70 typedef unsigned short WORD;
71 #endif /* !_WORD_DEFINED */
73 typedef struct _INTEL_HEX_RECORD {
77 BYTE Data[MAX_INTEL_HEX_RECORD_LENGTH];
78 } INTEL_HEX_RECORD, *PINTEL_HEX_RECORD;