1 #define _BULK_DATA_LEN 64
4 unsigned char data
[_BULK_DATA_LEN
];
7 }bulk_transfer_t
,*pbulk_transfer_t
;
9 #define DABUSB_MINOR 240 /* some unassigned USB minor */
10 #define DABUSB_VERSION 0x1000
11 #define IOCTL_DAB_BULK _IOWR('d', 0x30, bulk_transfer_t)
12 #define IOCTL_DAB_OVERRUNS _IOR('d', 0x15, int)
13 #define IOCTL_DAB_VERSION _IOR('d', 0x3f, int)
17 typedef enum { _stopped
=0, _started
} driver_state_t
;
21 struct semaphore mutex
;
22 struct usb_device
*usbdev
;
23 wait_queue_head_t wait
;
24 wait_queue_head_t remove_ok
;
30 int total_buffer_size
;
31 unsigned int overruns
;
34 struct list_head free_buff_list
;
35 struct list_head rec_buff_list
;
36 } dabusb_t
,*pdabusb_t
;
42 struct list_head buff_list
;
47 wait_queue_head_t wait
;
48 } bulk_completion_context_t
, *pbulk_completion_context_t
;
52 #define _DABUSB_ISOPIPE 0x09
53 #define _ISOPIPESIZE 16384
55 #define _BULK_DATA_LEN 64
56 // Vendor specific request code for Anchor Upload/Download
57 // This one is implemented in the core
58 #define ANCHOR_LOAD_INTERNAL 0xA0
60 // EZ-USB Control and Status Register. Bit 0 controls 8051 reset
61 #define CPUCS_REG 0x7F92
62 #define _TOTAL_BUFFERS 384
64 #define MAX_INTEL_HEX_RECORD_LENGTH 16
68 typedef unsigned char BYTE
;
69 #endif // !_BYTE_DEFINED
73 typedef unsigned short WORD
;
74 #endif // !_WORD_DEFINED
76 typedef struct _INTEL_HEX_RECORD
81 BYTE Data
[MAX_INTEL_HEX_RECORD_LENGTH
];
82 } INTEL_HEX_RECORD
, *PINTEL_HEX_RECORD
;