19bb1a5cdSimker/**
29bb1a5cdSimker *
39bb1a5cdSimker * TODO: description
406437987SMatt Madia *
506437987SMatt Madia * This file is a part of USB SCSI CAM for Haiku.
69bb1a5cdSimker * May be used under terms of the MIT License
79bb1a5cdSimker *
89bb1a5cdSimker * Author(s):
99bb1a5cdSimker * 	Siarzhuk Zharski <imker@gmx.li>
1006437987SMatt Madia *
1106437987SMatt Madia *
12b3d94504SStephan Aßmus */
13b3d94504SStephan Aßmus/** definitions that should be in system headers but ... */
14b3d94504SStephan Aßmus
1506437987SMatt Madia#ifndef _USB_DEFS_H_
169bb1a5cdSimker	#define _USB_DEFS_H_
17b3d94504SStephan Aßmus
189bb1a5cdSimker// TODO: Shouldn't it be declared in system USB headers?
199bb1a5cdSimker#define USB_EP_ATTR_CONTROL		0x00
209bb1a5cdSimker#define USB_EP_ATTR_ISOCHRONOUS	0x01
2106437987SMatt Madia#define USB_EP_ATTR_BULK		0x02
2206437987SMatt Madia#define USB_EP_ATTR_INTERRUPT	0x03
2306437987SMatt Madia#define USB_EP_ATTR_MASK		0x03
24b3d94504SStephan Aßmus
259bb1a5cdSimker#define USB_EP_ADDR_DIR_IN	 	0x80
269bb1a5cdSimker#define USB_EP_ADDR_DIR_OUT		0x00
27b3d94504SStephan Aßmus
28b3d94504SStephan Aßmus/*USB device class/subclass/protocl definitions*/
299bb1a5cdSimker#define USB_DEV_CLASS_MASS			0x08
30b3d94504SStephan Aßmus
319bb1a5cdSimker#define USB_DEV_SUBCLASS_RBC		0x01
329bb1a5cdSimker#define USB_DEV_SUBCLASS_SFF8020I	0x02
339bb1a5cdSimker#define USB_DEV_SUBCLASS_QIC157	 	0x03
349bb1a5cdSimker#define USB_DEV_SUBCLASS_UFI		0x04
359bb1a5cdSimker#define USB_DEV_SUBCLASS_SFF8070I 	0x05
369bb1a5cdSimker#define USB_DEV_SUBCLASS_SCSI		0x06
37b3d94504SStephan Aßmus
389bb1a5cdSimker#define USB_DEV_PROTOCOL_CBI		0x00
399bb1a5cdSimker#define USB_DEV_PROTOCOL_CB 		0x01
409bb1a5cdSimker#define USB_DEV_PROTOCOL_BULK		0x50
41b3d94504SStephan Aßmus
429bb1a5cdSimker//TODO: And this was in old v3 stack what now ???
43b3d94504SStephan Aßmus#define B_DEV_STALLED 0x8000a015 /* some "forgotten" error */
44b3d94504SStephan Aßmus
4506437987SMatt Madia#endif /*_USB_DEFS_H_*/
469bb1a5cdSimker
47