* Sync up to trunk head (r60691).
[reactos.git] / drivers / usb / usbuhci / usbuhci.h
1 #ifndef USBUHCI_H__
2 #define USBUHCI_H__
3
4 #include <ntddk.h>
5 #define NDEBUG
6 #include <debug.h>
7 #include <hubbusif.h>
8 #include <usbbusif.h>
9 #include <usbioctl.h>
10
11 extern
12 "C"
13 {
14 #include <usbdlib.h>
15 }
16
17 //
18 // FIXME:
19 // #include <usbprotocoldefs.h>
20 //
21 #include <usb.h>
22 #include <stdio.h>
23 #include <wdmguid.h>
24
25 //
26 // FIXME:
27 // the following includes are required to get kcom to compile
28 //
29 #include <portcls.h>
30 #include <dmusicks.h>
31 #include <kcom.h>
32
33 #include "interfaces.h"
34
35 //
36 // flags for handling USB_REQUEST_SET_FEATURE / USB_REQUEST_GET_FEATURE
37 //
38 #define PORT_ENABLE 1
39 #define PORT_SUSPEND 2
40 #define PORT_OVER_CURRENT 3
41 #define PORT_RESET 4
42 #define PORT_POWER 8
43 #define C_PORT_CONNECTION 16
44 #define C_PORT_ENABLE 17
45 #define C_PORT_SUSPEND 18
46 #define C_PORT_OVER_CURRENT 19
47 #define C_PORT_RESET 20
48
49 //
50 // tag for allocations
51 //
52 #define TAG_USBUHCI 'ICHU'
53
54 //
55 // assert for c++ - taken from portcls
56 //
57 #define PC_ASSERT(exp) \
58 (VOID)((!(exp)) ? \
59 RtlAssert((PVOID) #exp, (PVOID)__FILE__, __LINE__, NULL ), FALSE : TRUE)
60
61 //
62 // hardware.cpp
63 //
64 NTSTATUS NTAPI CreateUSBHardware(PUSBHARDWAREDEVICE *OutHardware);
65
66 //
67 // usb_queue.cpp
68 //
69 NTSTATUS NTAPI CreateUSBQueue(PUSBQUEUE *OutUsbQueue);
70
71 //
72 // usb_request.cpp
73 //
74 NTSTATUS NTAPI InternalCreateUSBRequest(PUSBREQUEST *OutRequest);
75
76 #endif