xref: /reactos/drivers/usb/usbuhci/usbuhci.h (revision 50cf16b3)
1 #ifndef USBUHCI_H__
2 #define USBUHCI_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_USBUHCI 'ICHU'
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 //
36 // hardware.cpp
37 //
38 NTSTATUS NTAPI CreateUSBHardware(PUSBHARDWAREDEVICE *OutHardware);
39 
40 //
41 // usb_queue.cpp
42 //
43 NTSTATUS NTAPI CreateUSBQueue(PUSBQUEUE *OutUsbQueue);
44 
45 //
46 // usb_request.cpp
47 //
48 NTSTATUS NTAPI InternalCreateUSBRequest(PUSBREQUEST *OutRequest);
49 
50 #endif /* USBUHCI_H__ */
51