Sync with trunk r63786.
[reactos.git] / drivers / usb / usbehci / usbehci.cpp
1 /*
2 * PROJECT: ReactOS Universal Serial Bus Bulk Enhanced Host Controller Interface
3 * LICENSE: GPL - See COPYING in the top level directory
4 * FILE: drivers/usb/usbehci/usbehci.cpp
5 * PURPOSE: USB EHCI device driver.
6 * PROGRAMMERS:
7 * Michael Martin (michael.martin@reactos.org)
8 * Johannes Anderwald (johannes.anderwald@reactos.org)
9 */
10
11 #include "usbehci.h"
12
13 #define NDEBUG
14 #include <debug.h>
15
16 extern
17 "C"
18 NTSTATUS
19 NTAPI
20 DriverEntry(
21 PDRIVER_OBJECT DriverObject,
22 PUNICODE_STRING RegistryPath)
23 {
24
25 /* initialize driver object */
26 DriverObject->DriverExtension->AddDevice = USBLIB_AddDevice;
27
28 DriverObject->MajorFunction[IRP_MJ_CREATE] = USBLIB_Dispatch;
29 DriverObject->MajorFunction[IRP_MJ_CLOSE] = USBLIB_Dispatch;
30 DriverObject->MajorFunction[IRP_MJ_CLEANUP] = USBLIB_Dispatch;
31 DriverObject->MajorFunction[IRP_MJ_DEVICE_CONTROL] = USBLIB_Dispatch;
32 DriverObject->MajorFunction[IRP_MJ_INTERNAL_DEVICE_CONTROL] = USBLIB_Dispatch;
33 DriverObject->MajorFunction[IRP_MJ_SYSTEM_CONTROL] = USBLIB_Dispatch;
34 DriverObject->MajorFunction[IRP_MJ_POWER] = USBLIB_Dispatch;
35 DriverObject->MajorFunction[IRP_MJ_PNP] = USBLIB_Dispatch;
36 return STATUS_SUCCESS;
37 }
38
39 extern "C" {
40 void
41 __cxa_pure_virtual()
42 {
43 // put error handling here
44
45 DbgBreakPoint();
46
47 }
48 }
49
50 extern "C" {
51 void free(void * ptr)
52 {
53 ExFreePool(ptr);
54 }
55 }
56
57