[NTFS]
[reactos.git] / drivers / usb / usbohci / usbohci.h
1 #ifndef USBOHCI_H__
2 #define USBOHCI_H__
3
4 #include <libusb.h>
5
6 #include "hardware.h"
7 #include "interfaces.h"
8
9 //
10 // flags for handling USB_REQUEST_SET_FEATURE / USB_REQUEST_GET_FEATURE
11 //
12 #define PORT_ENABLE 1
13 #define PORT_SUSPEND 2
14 #define PORT_OVER_CURRENT 3
15 #define PORT_RESET 4
16 #define PORT_POWER 8
17 #define C_PORT_CONNECTION 16
18 #define C_PORT_ENABLE 17
19 #define C_PORT_SUSPEND 18
20 #define C_PORT_OVER_CURRENT 19
21 #define C_PORT_RESET 20
22
23 //
24 // tag for allocations
25 //
26 #define TAG_USBOHCI 'ICHO'
27
28 //
29 // assert for c++ - taken from portcls
30 //
31 #define PC_ASSERT(exp) \
32 (VOID)((!(exp)) ? \
33 RtlAssert((PVOID) #exp, (PVOID)__FILE__, __LINE__, NULL ), FALSE : TRUE)
34
35 extern "C"
36 {
37
38 //
39 // hardware.cpp
40 //
41 NTSTATUS NTAPI CreateUSBHardware(PUSBHARDWAREDEVICE *OutHardware);
42
43 //
44 // usb_queue.cpp
45 //
46 NTSTATUS NTAPI CreateUSBQueue(PUSBQUEUE *OutUsbQueue);
47
48 //
49 // usb_request.cpp
50 //
51 NTSTATUS NTAPI InternalCreateUSBRequest(PUSBREQUEST *OutRequest);
52 }
53
54 #endif /* USBOHCI_H__ */