1 /* 2 * Copyright (c) 2003 by Siarzhuk Zharski <imker@gmx.li> 3 * Distributed under the terms of the MIT License. 4 * 5 */ 6 7 #ifndef _USBVISION_DRIVER_H_ 8 #define _USBVISION_DRIVER_H_ 9 10 #define DRIVER_NAME "usb_vision" 11 12 #define DEVICES_COUNT 0x1f 13 14 #include "nt100x.h" 15 #include "tracing.h" 16 17 #define SIZEOF(array) (sizeof(array)/sizeof(array[0])) 18 19 /* "forgotten" attributes etc ...*/ 20 #define USB_EP_ADDR_DIR_IN 0x80 21 #define USB_EP_ADDR_DIR_OUT 0x00 22 23 #define USB_EP_ATTR_CONTROL 0x00 24 #define USB_EP_ATTR_ISOCHRONOUS 0x01 25 #define USB_EP_ATTR_BULK 0x02 26 #define USB_EP_ATTR_INTERRUPT 0x03 27 28 29 typedef struct{ 30 uint32 open_count; 31 const usb_device *dev; 32 usb_pipe *control_pipe; 33 usb_pipe *data_pipe; 34 } usb_vision_device; 35 36 #endif//_USB_SERIAL_DRIVER_H_ 37