[CLASSPNP]

- fix a whole bunch of function prototype. (how does t even work in trunk?)
[CMAKE]
  - add classpnp.sys to build

svn path=/branches/cmake-bringup/; revision=49345
This commit is contained in:
Jérôme Gardou 2010-10-30 00:03:28 +00:00
parent e617cbf750
commit 5e9036e712
10 changed files with 391 additions and 235 deletions

View file

@ -1,5 +1,6 @@
add_subdirectory(class)
add_subdirectory(classpnp)
add_subdirectory(floppy)
add_subdirectory(ide)
add_subdirectory(port)

View file

@ -0,0 +1,42 @@
include_directories(../inc)
add_definitions(
-DCLASS_GLOBAL_BREAK_ON_LOST_IRPS=0
-DCLASS_GLOBAL_SECONDS_TO_WAIT_FOR_SYNCHRONOUS_SRB=100
-DCLASS_GLOBAL_USE_DELAYED_RETRY=1
-DCLASS_GLOBAL_BUFFERED_DEBUG_PRINT=0
-DCLASS_GLOBAL_BUFFERED_DEBUG_PRINT_BUFFER_SIZE=512
-DCLASS_GLOBAL_BUFFERED_DEBUG_PRINT_BUFFERS=512
)
list(APPEND SOURCE
autorun.c
class.c
classwmi.c
clntirp.c
create.c
data.c
debug.c
dictlib.c
lock.c
obsolete.c
power.c
retry.c
utils.c
xferpkt.c
class.rc
)
spec2def(classpnp ${CMAKE_CURRENT_SOURCE_DIR}/class.spec ${CMAKE_CURRENT_BINARY_DIR}/class.def)
add_library(classpnp SHARED ${SOURCE})
target_link_libraries(classpnp ${CMAKE_CURRENT_BINARY_DIR}/class.def pseh libcntpr)
add_dependencies(classpnp classpnp_def)
set_module_type(classpnp kernelmodedriver)
add_importlibs(classpnp hal ntoskrnl)
add_minicd_target(classpnp reactos classpnp.sys)
add_livecd_target(classpnp reactos/system32/drivers)

View file

@ -769,7 +769,10 @@ ClasspSetMediaChangeStateEx(
return;
} // end ClassSetMediaChangeStateEx()
SCSIPORTAPI
VOID
NTAPI
ClassSetMediaChangeState(
IN PFUNCTIONAL_DEVICE_EXTENSION FdoExtension,
IN MEDIA_CHANGE_DETECTION_STATE NewState,
@ -1388,7 +1391,9 @@ Return Value:
none
--*/
SCSIPORTAPI
VOID
NTAPI
ClassCheckMediaState(
IN PFUNCTIONAL_DEVICE_EXTENSION FdoExtension
)
@ -1439,7 +1444,9 @@ Return Value:
None
--*/
SCSIPORTAPI
VOID
NTAPI
ClassResetMediaChangeTimer(
IN PFUNCTIONAL_DEVICE_EXTENSION FdoExtension
)
@ -2003,7 +2010,9 @@ Arguments:
Return Value:
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassInitializeTestUnitPolling(
IN PFUNCTIONAL_DEVICE_EXTENSION FdoExtension,
IN BOOLEAN AllowDriveToSleep
@ -2037,7 +2046,9 @@ Arguments:
Return Value:
--*/
SCSIPORTAPI
VOID
NTAPI
ClassInitializeMediaChangeDetection(
IN PFUNCTIONAL_DEVICE_EXTENSION FdoExtension,
IN PUCHAR EventPrefix
@ -2693,7 +2704,9 @@ Arguments:
Return Value:
--*/
SCSIPORTAPI
VOID
NTAPI
ClassEnableMediaChangeDetection(
IN PFUNCTIONAL_DEVICE_EXTENSION FdoExtension
)
@ -2777,7 +2790,9 @@ Return Value:
--*/
ULONG BreakOnMcnDisable = FALSE;
SCSIPORTAPI
VOID
NTAPI
ClassDisableMediaChangeDetection(
IN PFUNCTIONAL_DEVICE_EXTENSION FdoExtension
)
@ -2822,7 +2837,9 @@ Arguments:
Return Value:
--*/
SCSIPORTAPI
VOID
NTAPI
ClassCleanupMediaChangeDetection(
IN PFUNCTIONAL_DEVICE_EXTENSION FdoExtension
)
@ -3433,7 +3450,9 @@ Arguments:
Return Value:
--*/
SCSIPORTAPI
VOID
NTAPI
ClassNotifyFailurePredicted(
PFUNCTIONAL_DEVICE_EXTENSION FdoExtension,
PUCHAR Buffer,
@ -3516,7 +3535,9 @@ Return Value:
NT Status
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassSetFailurePredictionPoll(
PFUNCTIONAL_DEVICE_EXTENSION FdoExtension,
FAILURE_PREDICTION_METHOD FailurePredictionMethod,

View file

@ -115,7 +115,9 @@ Return Value:
A valid return code for a DriverEntry routine.
--*/
SCSIPORTAPI
ULONG
NTAPI
ClassInitialize(
IN PVOID Argument1,
IN PVOID Argument2,
@ -361,7 +363,9 @@ Return Value:
Status Code
--*/
SCSIPORTAPI
ULONG
NTAPI
ClassInitializeEx(
IN PDRIVER_OBJECT DriverObject,
IN LPGUID Guid,
@ -1725,7 +1729,10 @@ Return Value:
Status is returned.
--*/
NTSTATUS ClassReadDriveCapacity(IN PDEVICE_OBJECT Fdo)
SCSIPORTAPI
NTSTATUS
NTAPI
ClassReadDriveCapacity(IN PDEVICE_OBJECT Fdo)
{
READ_CAPACITY_DATA readCapacityBuffer = {0};
NTSTATUS status;
@ -2008,7 +2015,9 @@ Return Value:
None.
--*/
SCSIPORTAPI
VOID
NTAPI
ClassSendStartUnit(
IN PDEVICE_OBJECT Fdo
)
@ -2161,7 +2170,9 @@ Return Value:
None.
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassAsynchronousCompletion(
PDEVICE_OBJECT DeviceObject,
PIRP Irp,
@ -2427,7 +2438,9 @@ Return Value:
NT status
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassIoComplete(
IN PDEVICE_OBJECT Fdo,
IN PIRP Irp,
@ -2643,7 +2656,9 @@ Return Value:
Srb->DataTransferLength
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassSendSrbSynchronous(
PDEVICE_OBJECT Fdo,
PSCSI_REQUEST_BLOCK Srb,
@ -2989,7 +3004,9 @@ Return Value:
FALSE: Drivers should not retry this request.
--*/
SCSIPORTAPI
BOOLEAN
NTAPI
ClassInterpretSenseInfo(
IN PDEVICE_OBJECT Fdo,
IN PSCSI_REQUEST_BLOCK Srb,
@ -4120,7 +4137,10 @@ Return Value:
Length of the transferred data is returned.
--*/
ULONG ClassModeSense( IN PDEVICE_OBJECT Fdo,
SCSIPORTAPI
ULONG
NTAPI
ClassModeSense( IN PDEVICE_OBJECT Fdo,
IN PCHAR ModeSenseBuffer,
IN ULONG Length,
IN UCHAR PageMode)
@ -4206,7 +4226,9 @@ Return Value:
then NULL is return.
--*/
SCSIPORTAPI
PVOID
NTAPI
ClassFindModePage(
IN PCHAR ModeSenseBuffer,
IN ULONG Length,
@ -4317,7 +4339,9 @@ Return Value:
or returns a status value to indicate why it failed.
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassSendSrbAsynchronous(
PDEVICE_OBJECT Fdo,
PSCSI_REQUEST_BLOCK Srb,
@ -4585,7 +4609,9 @@ Return Value:
Returns back a STATUS_PENDING or a completion status.
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassDeviceControl(
PDEVICE_OBJECT DeviceObject,
PIRP Irp
@ -5608,6 +5634,7 @@ Return Value:
--*/
NTSTATUS
NTAPI
ClassShutdownFlush(
IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp
@ -5680,7 +5707,9 @@ Return Value:
NTSTATUS
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassCreateDeviceObject(
IN PDRIVER_OBJECT DriverObject,
IN PCCHAR ObjectNameBuffer,
@ -5977,7 +6006,9 @@ Return Value:
Returns a status indicating success or failure of the operation.
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassClaimDevice(
IN PDEVICE_OBJECT LowerDeviceObject,
IN BOOLEAN Release
@ -6108,7 +6139,9 @@ Return Value:
Returns back a STATUS_PENDING or a completion status.
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassInternalIoControl(
IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp
@ -6180,7 +6213,9 @@ Return Value:
None, but it sets a new default timeout for a class of devices.
--*/
SCSIPORTAPI
ULONG
NTAPI
ClassQueryTimeOutRegistryValue(
IN PDEVICE_OBJECT DeviceObject
)
@ -6287,7 +6322,9 @@ Return Value:
NT status
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassCheckVerifyComplete(
IN PDEVICE_OBJECT Fdo,
IN PIRP Irp,
@ -6352,7 +6389,9 @@ Return Value:
buffer allocated on behalf of the caller.
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassGetDescriptor(
IN PDEVICE_OBJECT DeviceObject,
IN PSTORAGE_PROPERTY_ID PropertyId,
@ -6501,7 +6540,9 @@ Return Value:
STATUS_MORE_PROCESSING_REQUIRED
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassSignalCompletion(
IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp,
@ -6588,7 +6629,9 @@ Return Value:
None
--*/
SCSIPORTAPI
VOID
NTAPI
ClassMarkChildrenMissing(
IN PFUNCTIONAL_DEVICE_EXTENSION Fdo
)
@ -6640,7 +6683,9 @@ Return Value:
to PNP.
--*/
SCSIPORTAPI
BOOLEAN
NTAPI
ClassMarkChildMissing(
IN PPHYSICAL_DEVICE_EXTENSION Child,
IN BOOLEAN AcquireChildLock
@ -6894,7 +6939,9 @@ Return Value:
none
--*/
SCSIPORTAPI
VOID
NTAPI
ClassInvalidateBusRelations(
IN PDEVICE_OBJECT Fdo
)
@ -6949,7 +6996,9 @@ Return Value:
status
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassRemoveDevice(
IN PDEVICE_OBJECT DeviceObject,
IN UCHAR RemoveType
@ -7213,7 +7262,9 @@ Return Value:
Either NULL if none, or a pointer to the driver extension
--*/
SCSIPORTAPI
PCLASS_DRIVER_EXTENSION
NTAPI
ClassGetDriverExtension(
IN PDRIVER_OBJECT DriverObject
)
@ -7297,7 +7348,9 @@ Return Value:
None
--*/
SCSIPORTAPI
VOID
NTAPI
ClassUpdateInformationInRegistry(
IN PDEVICE_OBJECT Fdo,
IN PCHAR DeviceName,
@ -7634,7 +7687,9 @@ Arguments:
Return Value:
--*/
SCSIPORTAPI
VOID
NTAPI
ClassSendDeviceIoControlSynchronous(
IN ULONG IoControlCode,
IN PDEVICE_OBJECT TargetDeviceObject,
@ -7891,7 +7946,9 @@ Arguments:
Return Value:
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassForwardIrpSynchronous(
IN PCOMMON_DEVICE_EXTENSION CommonExtension,
IN PIRP Irp
@ -7920,7 +7977,9 @@ Arguments:
Return Value:
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassSendIrpSynchronous(
IN PDEVICE_OBJECT TargetDeviceObject,
IN PIRP Irp
@ -8019,7 +8078,9 @@ Return Value:
the VPB, or NULL if none.
--*/
SCSIPORTAPI
PVPB
NTAPI
ClassGetVpb(
IN PDEVICE_OBJECT DeviceObject
)
@ -8128,7 +8189,9 @@ Return Value:
None.
--*/
SCSIPORTAPI
VOID
NTAPI
ClassReleaseQueue(
IN PDEVICE_OBJECT Fdo
)
@ -8448,7 +8511,9 @@ Return Value:
None
--*/
SCSIPORTAPI
VOID
NTAPI
ClassAcquireChildLock(
IN PFUNCTIONAL_DEVICE_EXTENSION FdoExtension
)
@ -8490,7 +8555,9 @@ Return Value:
None.
--*/
SCSIPORTAPI
VOID
NTAPI
ClassReleaseChildLock(
IN PFUNCTIONAL_DEVICE_EXTENSION FdoExtension
)

View file

@ -508,6 +508,7 @@ static inline BOOLEAN SimpleIsSlistEmpty(SINGLE_LIST_ENTRY *SListHdr)
}
NTSTATUS
NTAPI
DriverEntry(
IN PDRIVER_OBJECT DriverObject,
IN PUNICODE_STRING RegistryPath
@ -555,12 +556,6 @@ ClassDeviceControlDispatch(
PIRP Irp
);
NTSTATUS
ClassDeviceControl(
PDEVICE_OBJECT DeviceObject,
PIRP Irp
);
NTSTATUS
ClassDispatchPnp(
PDEVICE_OBJECT DeviceObject,
@ -573,12 +568,7 @@ ClassPnpStartDevice(
);
NTSTATUS
ClassInternalIoControl (
IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp
);
NTSTATUS
NTAPI
ClassShutdownFlush(
IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp

View file

@ -561,6 +561,7 @@ Return Value:
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassWmiCompleteRequest(
IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp,
@ -724,7 +725,9 @@ Return Value:
status
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassWmiFireEvent(
IN PDEVICE_OBJECT DeviceObject,
IN LPGUID Guid,

View file

@ -78,7 +78,9 @@ Return Value:
lock.
--*/
SCSIPORTAPI
ULONG
NTAPI
ClassAcquireRemoveLockEx(
IN PDEVICE_OBJECT DeviceObject,
IN OPTIONAL PVOID Tag,
@ -208,7 +210,9 @@ Return Value:
none
--*/
SCSIPORTAPI
VOID
NTAPI
ClassReleaseRemoveLock(
IN PDEVICE_OBJECT DeviceObject,
IN OPTIONAL PIRP Tag
@ -371,7 +375,9 @@ Return Value:
none
--*/
SCSIPORTAPI
VOID
NTAPI
ClassCompleteRequest(
IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp,

View file

@ -51,7 +51,10 @@ typedef struct _CSCAN_LIST_ENTRY {
* StartIo routine when the transfer size is too large for the hardware.
* We map it to our new read/write handler.
*/
VOID ClassSplitRequest(IN PDEVICE_OBJECT Fdo, IN PIRP Irp, IN ULONG MaximumBytes)
SCSIPORTAPI
VOID
NTAPI
ClassSplitRequest(IN PDEVICE_OBJECT Fdo, IN PIRP Irp, IN ULONG MaximumBytes)
{
PFUNCTIONAL_DEVICE_EXTENSION fdoExt = Fdo->DeviceExtension;
PCLASS_PRIVATE_FDO_DATA fdoData = fdoExt->PrivateFdoData;
@ -99,7 +102,9 @@ Return Value:
NT status
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassIoCompleteAssociated(
IN PDEVICE_OBJECT Fdo,
IN PIRP Irp,
@ -476,7 +481,9 @@ Return Value:
NT Status
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassBuildRequest(
PDEVICE_OBJECT Fdo,
PIRP Irp
@ -909,7 +916,10 @@ Return Value:
None
--*/
VOID ClassDeleteSrbLookasideList(IN PCOMMON_DEVICE_EXTENSION CommonExtension)
SCSIPORTAPI
VOID
NTAPI
ClassDeleteSrbLookasideList(IN PCOMMON_DEVICE_EXTENSION CommonExtension)
{
PAGED_CODE();
@ -952,7 +962,10 @@ Note:
--*/
VOID ClassInitializeSrbLookasideList( IN PCOMMON_DEVICE_EXTENSION CommonExtension,
SCSIPORTAPI
VOID
NTAPI
ClassInitializeSrbLookasideList( IN PCOMMON_DEVICE_EXTENSION CommonExtension,
IN ULONG NumberElements)
{
PAGED_CODE();

View file

@ -1387,7 +1387,9 @@ Return Value:
None
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassSpinDownPowerHandler(
IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp
@ -1454,7 +1456,9 @@ Routine Description:
CLASS_SPECIAL_NO_QUEUE_LOCK
--*/
SCSIPORTAPI
NTSTATUS
NTAPI
ClassStopUnitPowerHandler(
IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp

View file

@ -55,7 +55,10 @@ BOOLEAN ClasspMyStringMatches(IN PCHAR StringToMatch OPTIONAL, IN PCHAR TargetSt
}
VOID ClassGetDeviceParameter(
SCSIPORTAPI
VOID
NTAPI
ClassGetDeviceParameter(
IN PFUNCTIONAL_DEVICE_EXTENSION FdoExtension,
IN PWSTR SubkeyName OPTIONAL,
IN PWSTR ParameterName,
@ -140,7 +143,10 @@ VOID ClassGetDeviceParameter(
} // end ClassGetDeviceParameter()
NTSTATUS ClassSetDeviceParameter(
SCSIPORTAPI
NTSTATUS
NTAPI
ClassSetDeviceParameter(
IN PFUNCTIONAL_DEVICE_EXTENSION FdoExtension,
IN PWSTR SubkeyName OPTIONAL,
IN PWSTR ParameterName,
@ -218,7 +224,10 @@ NTSTATUS ClassSetDeviceParameter(
* hardware based upon id strings. it does not check the registry.
*/
VOID ClassScanForSpecial(
SCSIPORTAPI
VOID
NTAPI
ClassScanForSpecial(
IN PFUNCTIONAL_DEVICE_EXTENSION FdoExtension,
IN CLASSPNP_SCAN_FOR_SPECIAL_INFO DeviceList[],
IN PCLASS_SCAN_FOR_SPECIAL_HANDLER Function)