2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: Serial driver
4 * FILE: drivers/dd/serial/serial.c
5 * PURPOSE: Serial driver loading/unloading
7 * PROGRAMMERS: Hervé Poussineau (hpoussin@reactos.com)
14 DriverUnload(IN PDRIVER_OBJECT DriverObject
)
16 // nothing to do here yet
20 * Standard DriverEntry method.
24 IN PDRIVER_OBJECT DriverObject
,
25 IN PUNICODE_STRING RegPath
)
29 DriverObject
->DriverUnload
= DriverUnload
;
30 DriverObject
->DriverExtension
->AddDevice
= SerialAddDevice
;
32 for (i
= 0; i
< IRP_MJ_MAXIMUM_FUNCTION
; i
++)
33 DriverObject
->MajorFunction
[i
] = ForwardIrpAndForget
;
34 DriverObject
->MajorFunction
[IRP_MJ_CREATE
] = SerialCreate
;
35 DriverObject
->MajorFunction
[IRP_MJ_CLOSE
] = SerialClose
;
36 DriverObject
->MajorFunction
[IRP_MJ_CLEANUP
] = SerialCleanup
;
37 DriverObject
->MajorFunction
[IRP_MJ_READ
] = SerialRead
;
38 DriverObject
->MajorFunction
[IRP_MJ_WRITE
] = SerialWrite
;
39 DriverObject
->MajorFunction
[IRP_MJ_DEVICE_CONTROL
] = SerialDeviceControl
;
40 DriverObject
->MajorFunction
[IRP_MJ_QUERY_INFORMATION
] = SerialQueryInformation
;
41 DriverObject
->MajorFunction
[IRP_MJ_PNP
] = SerialPnp
;
42 DriverObject
->MajorFunction
[IRP_MJ_POWER
] = SerialPower
;
44 return STATUS_SUCCESS
;