Formatting only, no code changes.

svn path=/trunk/; revision=51410
This commit is contained in:
Rafal Harabien 2011-04-20 18:13:27 +00:00
parent 057f42a554
commit 1e27c057e4
10 changed files with 1936 additions and 1884 deletions

View file

@ -56,9 +56,9 @@ KSEMAPHORE QueueSemaphore;
* CSQ Callbacks * CSQ Callbacks
*/ */
VOID NTAPI CsqRemoveIrp(PIO_CSQ UnusedCsq, VOID NTAPI
PIRP Irp) CsqRemoveIrp(PIO_CSQ UnusedCsq, PIRP Irp)
/* /*
* FUNCTION: Remove an IRP from the queue * FUNCTION: Remove an IRP from the queue
* ARGUMENTS: * ARGUMENTS:
@ -73,10 +73,9 @@ VOID NTAPI CsqRemoveIrp(PIO_CSQ UnusedCsq,
RemoveEntryList(&Irp->Tail.Overlay.ListEntry); RemoveEntryList(&Irp->Tail.Overlay.ListEntry);
} }
PIRP NTAPI CsqPeekNextIrp(PIO_CSQ UnusedCsq, PIRP NTAPI
PIRP Irp, CsqPeekNextIrp(PIO_CSQ UnusedCsq, PIRP Irp, PVOID PeekContext)
PVOID PeekContext)
/* /*
* FUNCTION: Find the next matching IRP in the queue * FUNCTION: Find the next matching IRP in the queue
* ARGUMENTS: * ARGUMENTS:
@ -103,9 +102,9 @@ PIRP NTAPI CsqPeekNextIrp(PIO_CSQ UnusedCsq,
return CONTAINING_RECORD(IrpQueue.Flink, IRP, Tail.Overlay.ListEntry); return CONTAINING_RECORD(IrpQueue.Flink, IRP, Tail.Overlay.ListEntry);
} }
VOID NTAPI CsqAcquireLock(PIO_CSQ UnusedCsq, VOID NTAPI
PKIRQL Irql) CsqAcquireLock(PIO_CSQ UnusedCsq, PKIRQL Irql)
/* /*
* FUNCTION: Acquire the queue lock * FUNCTION: Acquire the queue lock
* ARGUMENTS: * ARGUMENTS:
@ -118,9 +117,9 @@ VOID NTAPI CsqAcquireLock(PIO_CSQ UnusedCsq,
KeAcquireSpinLock(&IrpQueueLock, Irql); KeAcquireSpinLock(&IrpQueueLock, Irql);
} }
VOID NTAPI CsqReleaseLock(PIO_CSQ UnusedCsq, VOID NTAPI
KIRQL Irql) CsqReleaseLock(PIO_CSQ UnusedCsq, KIRQL Irql)
/* /*
* FUNCTION: Release the queue lock * FUNCTION: Release the queue lock
* ARGUMENTS: * ARGUMENTS:
@ -133,9 +132,9 @@ VOID NTAPI CsqReleaseLock(PIO_CSQ UnusedCsq,
KeReleaseSpinLock(&IrpQueueLock, Irql); KeReleaseSpinLock(&IrpQueueLock, Irql);
} }
VOID NTAPI CsqCompleteCanceledIrp(PIO_CSQ UnusedCsq, VOID NTAPI
PIRP Irp) CsqCompleteCanceledIrp(PIO_CSQ UnusedCsq, PIRP Irp)
/* /*
* FUNCTION: Complete a canceled IRP * FUNCTION: Complete a canceled IRP
* ARGUMENTS: * ARGUMENTS:
@ -153,9 +152,9 @@ VOID NTAPI CsqCompleteCanceledIrp(PIO_CSQ UnusedCsq,
IoCompleteRequest(Irp, IO_NO_INCREMENT); IoCompleteRequest(Irp, IO_NO_INCREMENT);
} }
VOID NTAPI CsqInsertIrp(PIO_CSQ UnusedCsq, VOID NTAPI
PIRP Irp) CsqInsertIrp(PIO_CSQ UnusedCsq, PIRP Irp)
/* /*
* FUNCTION: Queue an IRP * FUNCTION: Queue an IRP
* ARGUMENTS: * ARGUMENTS:

View file

@ -38,22 +38,21 @@ extern LIST_ENTRY IrpQueue;
extern KSPIN_LOCK IrpQueueLock; extern KSPIN_LOCK IrpQueueLock;
extern KSEMAPHORE QueueSemaphore; extern KSEMAPHORE QueueSemaphore;
VOID NTAPI CsqInsertIrp(PIO_CSQ Csq, VOID NTAPI
PIRP Irp); CsqInsertIrp(PIO_CSQ Csq, PIRP Irp);
VOID NTAPI CsqRemoveIrp(PIO_CSQ Csq, VOID NTAPI
PIRP Irp); CsqRemoveIrp(PIO_CSQ Csq, PIRP Irp);
PIRP NTAPI CsqPeekNextIrp(PIO_CSQ Csq, PIRP NTAPI
PIRP Irp, CsqPeekNextIrp(PIO_CSQ Csq, PIRP Irp, PVOID PeekContext);
PVOID PeekContext);
VOID NTAPI CsqAcquireLock(PIO_CSQ Csq, VOID NTAPI
PKIRQL Irql); CsqAcquireLock(PIO_CSQ Csq, PKIRQL Irql);
VOID NTAPI CsqReleaseLock(PIO_CSQ Csq, VOID NTAPI
KIRQL Irql); CsqReleaseLock(PIO_CSQ Csq, KIRQL Irql);
VOID NTAPI CsqCompleteCanceledIrp(PIO_CSQ Csq, VOID NTAPI
PIRP Irp); CsqCompleteCanceledIrp(PIO_CSQ Csq, PIRP Irp);

View file

@ -61,11 +61,9 @@ static ULONG gNumberOfControllers = 0;
static KEVENT QueueThreadTerminate; static KEVENT QueueThreadTerminate;
static PVOID QueueThreadObject; static PVOID QueueThreadObject;
static VOID NTAPI MotorStopDpcFunc(PKDPC UnusedDpc, static VOID NTAPI
PVOID DeferredContext, MotorStopDpcFunc(PKDPC UnusedDpc, PVOID DeferredContext, PVOID SystemArgument1, PVOID SystemArgument2)
PVOID SystemArgument1,
PVOID SystemArgument2)
/* /*
* FUNCTION: Stop the floppy motor * FUNCTION: Stop the floppy motor
* ARGUMENTS: * ARGUMENTS:
@ -94,8 +92,9 @@ static VOID NTAPI MotorStopDpcFunc(PKDPC UnusedDpc,
KeSetEvent(&ControllerInfo->MotorStoppedEvent, EVENT_INCREMENT, FALSE); KeSetEvent(&ControllerInfo->MotorStoppedEvent, EVENT_INCREMENT, FALSE);
} }
VOID NTAPI StartMotor(PDRIVE_INFO DriveInfo) VOID NTAPI
StartMotor(PDRIVE_INFO DriveInfo)
/* /*
* FUNCTION: Start the motor, taking into account proper handling of the timer race * FUNCTION: Start the motor, taking into account proper handling of the timer race
* ARGUMENTS: * ARGUMENTS:
@ -132,8 +131,9 @@ VOID NTAPI StartMotor(PDRIVE_INFO DriveInfo)
} }
} }
VOID NTAPI StopMotor(PCONTROLLER_INFO ControllerInfo) VOID NTAPI
StopMotor(PCONTROLLER_INFO ControllerInfo)
/* /*
* FUNCTION: Stop all motors on the controller * FUNCTION: Stop all motors on the controller
* ARGUMENTS: * ARGUMENTS:
@ -159,8 +159,9 @@ VOID NTAPI StopMotor(PCONTROLLER_INFO ControllerInfo)
ControllerInfo->StopDpcQueued = TRUE; ControllerInfo->StopDpcQueued = TRUE;
} }
VOID NTAPI WaitForControllerInterrupt(PCONTROLLER_INFO ControllerInfo) VOID NTAPI
WaitForControllerInterrupt(PCONTROLLER_INFO ControllerInfo)
/* /*
* FUNCTION: Wait for the controller to interrupt, and then clear the event * FUNCTION: Wait for the controller to interrupt, and then clear the event
* ARGUMENTS: * ARGUMENTS:
@ -211,8 +212,9 @@ static NTSTATUS NTAPI CreateClose(PDEVICE_OBJECT DeviceObject,
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
static NTSTATUS NTAPI Recalibrate(PDRIVE_INFO DriveInfo) static NTSTATUS NTAPI
Recalibrate(PDRIVE_INFO DriveInfo)
/* /*
* FUNCTION: Start the recalibration process * FUNCTION: Start the recalibration process
* ARGUMENTS: * ARGUMENTS:
@ -280,8 +282,9 @@ static NTSTATUS NTAPI Recalibrate(PDRIVE_INFO DriveInfo)
return Status; return Status;
} }
NTSTATUS NTAPI ResetChangeFlag(PDRIVE_INFO DriveInfo) NTSTATUS NTAPI
ResetChangeFlag(PDRIVE_INFO DriveInfo)
/* /*
* FUNCTION: Reset the drive's change flag (as reflected in the DIR) * FUNCTION: Reset the drive's change flag (as reflected in the DIR)
* ARGUMENTS: * ARGUMENTS:
@ -365,8 +368,9 @@ NTSTATUS NTAPI ResetChangeFlag(PDRIVE_INFO DriveInfo)
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
static VOID NTAPI Unload(PDRIVER_OBJECT DriverObject) static VOID NTAPI
Unload(PDRIVER_OBJECT DriverObject)
/* /*
* FUNCTION: Unload the driver from memory * FUNCTION: Unload the driver from memory
* ARGUMENTS: * ARGUMENTS:
@ -418,8 +422,9 @@ static VOID NTAPI Unload(PDRIVER_OBJECT DriverObject)
} }
} }
static NTSTATUS NTAPI ConfigCallback(PVOID Context, static NTSTATUS NTAPI
ConfigCallback(PVOID Context,
PUNICODE_STRING PathName, PUNICODE_STRING PathName,
INTERFACE_TYPE BusType, INTERFACE_TYPE BusType,
ULONG BusNumber, ULONG BusNumber,
@ -570,9 +575,9 @@ static NTSTATUS NTAPI ConfigCallback(PVOID Context,
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
static BOOLEAN NTAPI Isr(PKINTERRUPT Interrupt, static BOOLEAN NTAPI
PVOID ServiceContext) Isr(PKINTERRUPT Interrupt, PVOID ServiceContext)
/* /*
* FUNCTION: Interrupt service routine for the controllers * FUNCTION: Interrupt service routine for the controllers
* ARGUMENTS: * ARGUMENTS:
@ -619,11 +624,9 @@ static BOOLEAN NTAPI Isr(PKINTERRUPT Interrupt,
return TRUE; return TRUE;
} }
VOID NTAPI DpcForIsr(PKDPC UnusedDpc, VOID NTAPI
PVOID Context, DpcForIsr(PKDPC UnusedDpc, PVOID Context, PVOID SystemArgument1, PVOID SystemArgument2)
PVOID SystemArgument1,
PVOID SystemArgument2)
/* /*
* FUNCTION: This DPC gets queued by every ISR. Does the real per-interrupt work. * FUNCTION: This DPC gets queued by every ISR. Does the real per-interrupt work.
* ARGUMENTS: * ARGUMENTS:
@ -654,8 +657,9 @@ VOID NTAPI DpcForIsr(PKDPC UnusedDpc,
KeSetEvent(&ControllerInfo->SynchEvent, EVENT_INCREMENT, FALSE); KeSetEvent(&ControllerInfo->SynchEvent, EVENT_INCREMENT, FALSE);
} }
static NTSTATUS NTAPI InitController(PCONTROLLER_INFO ControllerInfo) static NTSTATUS NTAPI
InitController(PCONTROLLER_INFO ControllerInfo)
/* /*
* FUNCTION: Initialize a newly-found controller * FUNCTION: Initialize a newly-found controller
* ARGUMENTS: * ARGUMENTS:
@ -810,8 +814,9 @@ static NTSTATUS NTAPI InitController(PCONTROLLER_INFO ControllerInfo)
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
static BOOLEAN NTAPI AddControllers(PDRIVER_OBJECT DriverObject) static BOOLEAN NTAPI
AddControllers(PDRIVER_OBJECT DriverObject)
/* /*
* FUNCTION: Called on initialization to find our controllers and build device and controller objects for them * FUNCTION: Called on initialization to find our controllers and build device and controller objects for them
* ARGUMENTS: * ARGUMENTS:
@ -999,9 +1004,9 @@ static BOOLEAN NTAPI AddControllers(PDRIVER_OBJECT DriverObject)
return TRUE; return TRUE;
} }
VOID NTAPI SignalMediaChanged(PDEVICE_OBJECT DeviceObject, VOID NTAPI
PIRP Irp) SignalMediaChanged(PDEVICE_OBJECT DeviceObject, PIRP Irp)
/* /*
* FUNCTION: Process an IRP when the media has changed, and possibly notify the user * FUNCTION: Process an IRP when the media has changed, and possibly notify the user
* ARGUMENTS: * ARGUMENTS:
@ -1043,8 +1048,9 @@ VOID NTAPI SignalMediaChanged(PDEVICE_OBJECT DeviceObject,
IoSetHardErrorOrVerifyDevice(Irp, DeviceObject); IoSetHardErrorOrVerifyDevice(Irp, DeviceObject);
} }
static VOID NTAPI QueueThread(PVOID Context) static VOID NTAPI
QueueThread(PVOID Context)
/* /*
* FUNCTION: Thread that manages the queue and dispatches any queued requests * FUNCTION: Thread that manages the queue and dispatches any queued requests
* ARGUMENTS: * ARGUMENTS:
@ -1110,9 +1116,9 @@ static VOID NTAPI QueueThread(PVOID Context)
} }
} }
NTSTATUS NTAPI DriverEntry(PDRIVER_OBJECT DriverObject, NTSTATUS NTAPI
PUNICODE_STRING RegistryPath) DriverEntry(PDRIVER_OBJECT DriverObject, PUNICODE_STRING RegistryPath)
/* /*
* FUNCTION: Entry-point for the driver * FUNCTION: Entry-point for the driver
* ARGUMENTS: * ARGUMENTS:

View file

@ -84,19 +84,23 @@ typedef struct _CONTROLLER_INFO
BOOLEAN StopDpcQueued; BOOLEAN StopDpcQueued;
} CONTROLLER_INFO, *PCONTROLLER_INFO; } CONTROLLER_INFO, *PCONTROLLER_INFO;
NTSTATUS NTAPI DriverEntry(PDRIVER_OBJECT DriverObject, NTSTATUS NTAPI
PUNICODE_STRING RegistryPath); DriverEntry(PDRIVER_OBJECT DriverObject, PUNICODE_STRING RegistryPath);
VOID NTAPI SignalMediaChanged(PDEVICE_OBJECT DeviceObject, VOID NTAPI
PIRP Irp); SignalMediaChanged(PDEVICE_OBJECT DeviceObject, PIRP Irp);
VOID NTAPI WaitForControllerInterrupt(PCONTROLLER_INFO ControllerInfo); VOID NTAPI
WaitForControllerInterrupt(PCONTROLLER_INFO ControllerInfo);
NTSTATUS NTAPI ResetChangeFlag(PDRIVE_INFO DriveInfo); NTSTATUS NTAPI
ResetChangeFlag(PDRIVE_INFO DriveInfo);
VOID NTAPI StartMotor(PDRIVE_INFO DriveInfo); VOID NTAPI
StartMotor(PDRIVE_INFO DriveInfo);
VOID NTAPI StopMotor(PCONTROLLER_INFO ControllerInfo); VOID NTAPI
StopMotor(PCONTROLLER_INFO ControllerInfo);
/* /*
* MEDIA TYPES * MEDIA TYPES

View file

@ -57,8 +57,9 @@
* Hardware Support Routines * Hardware Support Routines
*/ */
static BOOLEAN NTAPI ReadyForWrite(PCONTROLLER_INFO ControllerInfo) static BOOLEAN NTAPI
ReadyForWrite(PCONTROLLER_INFO ControllerInfo)
/* /*
* FUNCTION: Determine of the controller is ready to accept a byte on the FIFO * FUNCTION: Determine of the controller is ready to accept a byte on the FIFO
* ARGUMENTS: * ARGUMENTS:
@ -82,8 +83,9 @@ static BOOLEAN NTAPI ReadyForWrite(PCONTROLLER_INFO ControllerInfo)
return TRUE; return TRUE;
} }
static BOOLEAN NTAPI ReadyForRead(PCONTROLLER_INFO ControllerInfo) static BOOLEAN NTAPI
ReadyForRead(PCONTROLLER_INFO ControllerInfo)
/* /*
* FUNCTION: Determine of the controller is ready to read a byte on the FIFO * FUNCTION: Determine of the controller is ready to read a byte on the FIFO
* ARGUMENTS: * ARGUMENTS:
@ -107,9 +109,9 @@ static BOOLEAN NTAPI ReadyForRead(PCONTROLLER_INFO ControllerInfo)
return TRUE; return TRUE;
} }
static NTSTATUS NTAPI Send_Byte(PCONTROLLER_INFO ControllerInfo, static NTSTATUS NTAPI
UCHAR Byte) Send_Byte(PCONTROLLER_INFO ControllerInfo, UCHAR Byte)
/* /*
* FUNCTION: Send a byte from the host to the controller's FIFO * FUNCTION: Send a byte from the host to the controller's FIFO
* ARGUMENTS: * ARGUMENTS:
@ -154,9 +156,9 @@ static NTSTATUS NTAPI Send_Byte(PCONTROLLER_INFO ControllerInfo,
} }
} }
static NTSTATUS NTAPI Get_Byte(PCONTROLLER_INFO ControllerInfo, static NTSTATUS NTAPI
PUCHAR Byte) Get_Byte(PCONTROLLER_INFO ControllerInfo, PUCHAR Byte)
/* /*
* FUNCTION: Read a byte from the controller to the host * FUNCTION: Read a byte from the controller to the host
* ARGUMENTS: * ARGUMENTS:
@ -200,9 +202,9 @@ static NTSTATUS NTAPI Get_Byte(PCONTROLLER_INFO ControllerInfo,
} }
} }
NTSTATUS NTAPI HwSetDataRate(PCONTROLLER_INFO ControllerInfo, NTSTATUS NTAPI
UCHAR DataRate) HwSetDataRate(PCONTROLLER_INFO ControllerInfo, UCHAR DataRate)
/* /*
* FUNCTION: Set the data rte on a controller * FUNCTION: Set the data rte on a controller
* ARGUMENTS: * ARGUMENTS:
@ -219,8 +221,9 @@ NTSTATUS NTAPI HwSetDataRate(PCONTROLLER_INFO ControllerInfo,
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwTurnOffMotor(PCONTROLLER_INFO ControllerInfo) NTSTATUS NTAPI
HwTurnOffMotor(PCONTROLLER_INFO ControllerInfo)
/* /*
* FUNCTION: Turn off all motors * FUNCTION: Turn off all motors
* ARGUMENTS: * ARGUMENTS:
@ -240,8 +243,9 @@ NTSTATUS NTAPI HwTurnOffMotor(PCONTROLLER_INFO ControllerInfo)
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwTurnOnMotor(PDRIVE_INFO DriveInfo) NTSTATUS NTAPI
HwTurnOnMotor(PDRIVE_INFO DriveInfo)
/* /*
* FUNCTION: Turn on the motor on the selected drive * FUNCTION: Turn on the motor on the selected drive
* ARGUMENTS: * ARGUMENTS:
@ -281,8 +285,9 @@ NTSTATUS NTAPI HwTurnOnMotor(PDRIVE_INFO DriveInfo)
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwSenseDriveStatus(PDRIVE_INFO DriveInfo) NTSTATUS NTAPI
HwSenseDriveStatus(PDRIVE_INFO DriveInfo)
/* /*
* FUNCTION: Start a sense status command * FUNCTION: Start a sense status command
* ARGUMENTS: * ARGUMENTS:
@ -315,8 +320,9 @@ NTSTATUS NTAPI HwSenseDriveStatus(PDRIVE_INFO DriveInfo)
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwReadWriteData(PCONTROLLER_INFO ControllerInfo, NTSTATUS NTAPI
HwReadWriteData(PCONTROLLER_INFO ControllerInfo,
BOOLEAN Read, BOOLEAN Read,
UCHAR Unit, UCHAR Unit,
UCHAR Cylinder, UCHAR Cylinder,
@ -386,8 +392,9 @@ NTSTATUS NTAPI HwReadWriteData(PCONTROLLER_INFO ControllerInfo,
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwRecalibrateResult(PCONTROLLER_INFO ControllerInfo) NTSTATUS NTAPI
HwRecalibrateResult(PCONTROLLER_INFO ControllerInfo)
/* /*
* FUNCTION: Get the result of a recalibrate command * FUNCTION: Get the result of a recalibrate command
* ARGUMENTS: * ARGUMENTS:
@ -450,8 +457,9 @@ NTSTATUS NTAPI HwRecalibrateResult(PCONTROLLER_INFO ControllerInfo)
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwReadWriteResult(PCONTROLLER_INFO ControllerInfo) NTSTATUS NTAPI
HwReadWriteResult(PCONTROLLER_INFO ControllerInfo)
/* /*
* FUNCTION: Get the result of a read or write from the controller * FUNCTION: Get the result of a read or write from the controller
* ARGUMENTS: * ARGUMENTS:
@ -490,8 +498,9 @@ NTSTATUS NTAPI HwReadWriteResult(PCONTROLLER_INFO ControllerInfo)
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwRecalibrate(PDRIVE_INFO DriveInfo) NTSTATUS NTAPI
HwRecalibrate(PDRIVE_INFO DriveInfo)
/* /*
* FUNCTION: Start a recalibration of a drive * FUNCTION: Start a recalibration of a drive
* ARGUMENTS: * ARGUMENTS:
@ -525,8 +534,9 @@ NTSTATUS NTAPI HwRecalibrate(PDRIVE_INFO DriveInfo)
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwSenseInterruptStatus(PCONTROLLER_INFO ControllerInfo) NTSTATUS NTAPI
HwSenseInterruptStatus(PCONTROLLER_INFO ControllerInfo)
/* /*
* FUNCTION: Send a sense interrupt status command to a controller * FUNCTION: Send a sense interrupt status command to a controller
* ARGUMENTS: * ARGUMENTS:
@ -561,8 +571,9 @@ NTSTATUS NTAPI HwSenseInterruptStatus(PCONTROLLER_INFO ControllerInfo)
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwReadId(PDRIVE_INFO DriveInfo, UCHAR Head) NTSTATUS NTAPI
HwReadId(PDRIVE_INFO DriveInfo, UCHAR Head)
/* /*
* FUNCTION: Issue a read id command to the drive * FUNCTION: Issue a read id command to the drive
* ARGUMENTS: * ARGUMENTS:
@ -595,8 +606,9 @@ NTSTATUS NTAPI HwReadId(PDRIVE_INFO DriveInfo, UCHAR Head)
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwFormatTrack(PCONTROLLER_INFO ControllerInfo, NTSTATUS NTAPI
HwFormatTrack(PCONTROLLER_INFO ControllerInfo,
UCHAR Unit, UCHAR Unit,
UCHAR Head, UCHAR Head,
UCHAR BytesPerSector, UCHAR BytesPerSector,
@ -642,9 +654,9 @@ NTSTATUS NTAPI HwFormatTrack(PCONTROLLER_INFO ControllerInfo,
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwSeek(PDRIVE_INFO DriveInfo, NTSTATUS NTAPI
UCHAR Cylinder) HwSeek(PDRIVE_INFO DriveInfo, UCHAR Cylinder)
/* /*
* FUNCTION: Seek the heads to a particular cylinder * FUNCTION: Seek the heads to a particular cylinder
* ARGUMENTS: * ARGUMENTS:
@ -686,8 +698,9 @@ NTSTATUS NTAPI HwSeek(PDRIVE_INFO DriveInfo,
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwConfigure(PCONTROLLER_INFO ControllerInfo, NTSTATUS NTAPI
HwConfigure(PCONTROLLER_INFO ControllerInfo,
BOOLEAN EIS, BOOLEAN EIS,
BOOLEAN EFIFO, BOOLEAN EFIFO,
BOOLEAN POLL, BOOLEAN POLL,
@ -731,8 +744,9 @@ NTSTATUS NTAPI HwConfigure(PCONTROLLER_INFO ControllerInfo,
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwGetVersion(PCONTROLLER_INFO ControllerInfo) NTSTATUS NTAPI
HwGetVersion(PCONTROLLER_INFO ControllerInfo)
/* /*
* FUNCTION: Gets the version of the controller * FUNCTION: Gets the version of the controller
* ARGUMENTS: * ARGUMENTS:
@ -767,8 +781,8 @@ NTSTATUS NTAPI HwGetVersion(PCONTROLLER_INFO ControllerInfo)
return Buffer; return Buffer;
} }
NTSTATUS NTAPI HwDiskChanged(PDRIVE_INFO DriveInfo, NTSTATUS NTAPI
PBOOLEAN DiskChanged) HwDiskChanged(PDRIVE_INFO DriveInfo, PBOOLEAN DiskChanged)
/* /*
* FUNCTION: Detect whether the hardware has sensed a disk change * FUNCTION: Detect whether the hardware has sensed a disk change
* ARGUMENTS: * ARGUMENTS:
@ -818,8 +832,8 @@ NTSTATUS NTAPI HwDiskChanged(PDRIVE_INFO DriveInfo,
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwSenseDriveStatusResult(PCONTROLLER_INFO ControllerInfo, NTSTATUS NTAPI
PUCHAR Status) HwSenseDriveStatusResult(PCONTROLLER_INFO ControllerInfo, PUCHAR Status)
/* /*
* FUNCTION: Get the result of a sense drive status command * FUNCTION: Get the result of a sense drive status command
* ARGUMENTS: * ARGUMENTS:
@ -845,8 +859,9 @@ NTSTATUS NTAPI HwSenseDriveStatusResult(PCONTROLLER_INFO ControllerInfo,
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwReadIdResult(PCONTROLLER_INFO ControllerInfo, NTSTATUS NTAPI
HwReadIdResult(PCONTROLLER_INFO ControllerInfo,
PUCHAR CurCylinder, PUCHAR CurCylinder,
PUCHAR CurHead) PUCHAR CurHead)
/* /*
@ -905,8 +920,9 @@ NTSTATUS NTAPI HwReadIdResult(PCONTROLLER_INFO ControllerInfo,
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwSpecify(PCONTROLLER_INFO ControllerInfo, NTSTATUS NTAPI
HwSpecify(PCONTROLLER_INFO ControllerInfo,
UCHAR HeadLoadTime, UCHAR HeadLoadTime,
UCHAR HeadUnloadTime, UCHAR HeadUnloadTime,
UCHAR StepRateTime, UCHAR StepRateTime,
@ -952,8 +968,9 @@ NTSTATUS NTAPI HwSpecify(PCONTROLLER_INFO ControllerInfo,
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwReset(PCONTROLLER_INFO ControllerInfo) NTSTATUS NTAPI
HwReset(PCONTROLLER_INFO ControllerInfo)
/* /*
* FUNCTION: Reset the controller * FUNCTION: Reset the controller
* ARGUMENTS: * ARGUMENTS:
@ -988,8 +1005,9 @@ NTSTATUS NTAPI HwReset(PCONTROLLER_INFO ControllerInfo)
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
NTSTATUS NTAPI HwPowerOff(PCONTROLLER_INFO ControllerInfo) NTSTATUS NTAPI
HwPowerOff(PCONTROLLER_INFO ControllerInfo)
/* /*
* FUNCTION: Power down a controller * FUNCTION: Power down a controller
* ARGUMENTS: * ARGUMENTS:
@ -1007,7 +1025,8 @@ NTSTATUS NTAPI HwPowerOff(PCONTROLLER_INFO ControllerInfo)
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
VOID NTAPI HwDumpRegisters(PCONTROLLER_INFO ControllerInfo) VOID NTAPI
HwDumpRegisters(PCONTROLLER_INFO ControllerInfo)
/* /*
* FUNCTION: Dump all readable registers from the floppy controller * FUNCTION: Dump all readable registers from the floppy controller
* ARGUMENTS: * ARGUMENTS:

View file

@ -260,11 +260,14 @@
/* /*
* FUNCTIONS * FUNCTIONS
*/ */
NTSTATUS NTAPI HwTurnOnMotor(PDRIVE_INFO DriveInfo); NTSTATUS NTAPI
HwTurnOnMotor(PDRIVE_INFO DriveInfo);
NTSTATUS NTAPI HwSenseDriveStatus(PDRIVE_INFO DriveInfo); NTSTATUS NTAPI
HwSenseDriveStatus(PDRIVE_INFO DriveInfo);
NTSTATUS NTAPI HwReadWriteData(PCONTROLLER_INFO ControllerInfo, NTSTATUS NTAPI
HwReadWriteData(PCONTROLLER_INFO ControllerInfo,
BOOLEAN Read, BOOLEAN Read,
UCHAR Unit, UCHAR Unit,
UCHAR Cylinder, UCHAR Cylinder,
@ -275,14 +278,17 @@ NTSTATUS NTAPI HwReadWriteData(PCONTROLLER_INFO ControllerInfo,
UCHAR Gap3Length, UCHAR Gap3Length,
UCHAR DataLength); UCHAR DataLength);
NTSTATUS NTAPI HwRecalibrate(PDRIVE_INFO DriveInfo); NTSTATUS NTAPI
HwRecalibrate(PDRIVE_INFO DriveInfo);
NTSTATUS NTAPI HwSenseInterruptStatus(PCONTROLLER_INFO ControllerInfo); NTSTATUS NTAPI
HwSenseInterruptStatus(PCONTROLLER_INFO ControllerInfo);
NTSTATUS NTAPI HwReadId(PDRIVE_INFO DriveInfo, NTSTATUS NTAPI
UCHAR Head); HwReadId(PDRIVE_INFO DriveInfo, UCHAR Head);
NTSTATUS NTAPI HwFormatTrack(PCONTROLLER_INFO ControllerInfo, NTSTATUS NTAPI
HwFormatTrack(PCONTROLLER_INFO ControllerInfo,
UCHAR Unit, UCHAR Unit,
UCHAR Head, UCHAR Head,
UCHAR BytesPerSector, UCHAR BytesPerSector,
@ -290,46 +296,58 @@ NTSTATUS NTAPI HwFormatTrack(PCONTROLLER_INFO ControllerInfo,
UCHAR Gap3Length, UCHAR Gap3Length,
UCHAR FillerPattern); UCHAR FillerPattern);
NTSTATUS NTAPI HwSeek(PDRIVE_INFO DriveInfo, NTSTATUS NTAPI
UCHAR Cylinder); HwSeek(PDRIVE_INFO DriveInfo, UCHAR Cylinder);
NTSTATUS NTAPI HwReadWriteResult(PCONTROLLER_INFO ControllerInfo); NTSTATUS NTAPI
HwReadWriteResult(PCONTROLLER_INFO ControllerInfo);
NTSTATUS NTAPI HwGetVersion(PCONTROLLER_INFO ControllerInfo); NTSTATUS NTAPI
HwGetVersion(PCONTROLLER_INFO ControllerInfo);
NTSTATUS NTAPI HwConfigure(PCONTROLLER_INFO ControllerInfo, NTSTATUS NTAPI
HwConfigure(PCONTROLLER_INFO ControllerInfo,
BOOLEAN EIS, BOOLEAN EIS,
BOOLEAN EFIFO, BOOLEAN EFIFO,
BOOLEAN POLL, BOOLEAN POLL,
UCHAR FIFOTHR, UCHAR FIFOTHR,
UCHAR PRETRK) ; UCHAR PRETRK) ;
NTSTATUS NTAPI HwRecalibrateResult(PCONTROLLER_INFO ControllerInfo); NTSTATUS NTAPI
HwRecalibrateResult(PCONTROLLER_INFO ControllerInfo);
NTSTATUS NTAPI HwDiskChanged(PDRIVE_INFO DriveInfo, NTSTATUS NTAPI
HwDiskChanged(PDRIVE_INFO DriveInfo,
PBOOLEAN DiskChanged); PBOOLEAN DiskChanged);
NTSTATUS NTAPI HwSenseDriveStatusResult(PCONTROLLER_INFO ControllerInfo, NTSTATUS NTAPI
HwSenseDriveStatusResult(PCONTROLLER_INFO ControllerInfo,
PUCHAR Status); PUCHAR Status);
NTSTATUS NTAPI HwSpecify(PCONTROLLER_INFO ControllerInfo, NTSTATUS NTAPI
HwSpecify(PCONTROLLER_INFO ControllerInfo,
UCHAR HeadLoadTime, UCHAR HeadLoadTime,
UCHAR HeadUnloadTime, UCHAR HeadUnloadTime,
UCHAR StepRateTime, UCHAR StepRateTime,
BOOLEAN NonDma); BOOLEAN NonDma);
NTSTATUS NTAPI HwReadIdResult(PCONTROLLER_INFO ControllerInfo, NTSTATUS NTAPI
HwReadIdResult(PCONTROLLER_INFO ControllerInfo,
PUCHAR CurCylinder, PUCHAR CurCylinder,
PUCHAR CurHead); PUCHAR CurHead);
NTSTATUS NTAPI HwSetDataRate(PCONTROLLER_INFO ControllerInfo, NTSTATUS NTAPI
UCHAR DataRate); HwSetDataRate(PCONTROLLER_INFO ControllerInfo, UCHAR DataRate);
NTSTATUS NTAPI HwReset(PCONTROLLER_INFO Controller); NTSTATUS NTAPI
HwReset(PCONTROLLER_INFO Controller);
NTSTATUS NTAPI HwPowerOff(PCONTROLLER_INFO ControllerInfo); NTSTATUS NTAPI
HwPowerOff(PCONTROLLER_INFO ControllerInfo);
VOID NTAPI HwDumpRegisters(PCONTROLLER_INFO ControllerInfo); VOID NTAPI
HwDumpRegisters(PCONTROLLER_INFO ControllerInfo);
NTSTATUS NTAPI HwTurnOffMotor(PCONTROLLER_INFO ControllerInfo); NTSTATUS NTAPI
HwTurnOffMotor(PCONTROLLER_INFO ControllerInfo);

View file

@ -39,9 +39,9 @@
#include "csqrtns.h" #include "csqrtns.h"
#include "ioctl.h" #include "ioctl.h"
NTSTATUS NTAPI DeviceIoctl(PDEVICE_OBJECT DeviceObject, NTSTATUS NTAPI
PIRP Irp) DeviceIoctl(PDEVICE_OBJECT DeviceObject, PIRP Irp)
/* /*
* FUNCTION: Queue IOCTL IRPs * FUNCTION: Queue IOCTL IRPs
* ARGUMENTS: * ARGUMENTS:
@ -64,9 +64,9 @@ NTSTATUS NTAPI DeviceIoctl(PDEVICE_OBJECT DeviceObject,
return STATUS_PENDING; return STATUS_PENDING;
} }
VOID NTAPI DeviceIoctlPassive(PDRIVE_INFO DriveInfo, VOID NTAPI
PIRP Irp) DeviceIoctlPassive(PDRIVE_INFO DriveInfo, PIRP Irp)
/* /*
* FUNCTION: Handlees IOCTL requests at PASSIVE_LEVEL * FUNCTION: Handlees IOCTL requests at PASSIVE_LEVEL
* ARGUMENTS: * ARGUMENTS:

View file

@ -25,9 +25,10 @@
*/ */
DRIVER_DISPATCH DeviceIoctl; DRIVER_DISPATCH DeviceIoctl;
NTSTATUS NTAPI DeviceIoctl(PDEVICE_OBJECT DeviceObject,
PIRP Irp);
VOID NTAPI DeviceIoctlPassive(PDRIVE_INFO DriveInfo, NTSTATUS NTAPI
PIRP Irp); DeviceIoctl(PDEVICE_OBJECT DeviceObject, PIRP Irp);
VOID NTAPI
DeviceIoctlPassive(PDRIVE_INFO DriveInfo, PIRP Irp);

View file

@ -60,8 +60,9 @@
#include "hardware.h" #include "hardware.h"
#include "readwrite.h" #include "readwrite.h"
static IO_ALLOCATION_ACTION NTAPI MapRegisterCallback(PDEVICE_OBJECT DeviceObject, static IO_ALLOCATION_ACTION NTAPI
MapRegisterCallback(PDEVICE_OBJECT DeviceObject,
PIRP Irp, PIRP Irp,
PVOID MapRegisterBase, PVOID MapRegisterBase,
PVOID Context) PVOID Context)
@ -89,9 +90,9 @@ static IO_ALLOCATION_ACTION NTAPI MapRegisterCallback(PDEVICE_OBJECT DeviceObjec
return KeepObject; return KeepObject;
} }
NTSTATUS NTAPI ReadWrite(PDEVICE_OBJECT DeviceObject, NTSTATUS NTAPI
PIRP Irp) ReadWrite(PDEVICE_OBJECT DeviceObject, PIRP Irp)
/* /*
* FUNCTION: Dispatch routine called for read or write IRPs * FUNCTION: Dispatch routine called for read or write IRPs
* ARGUMENTS: * ARGUMENTS:
@ -131,8 +132,9 @@ NTSTATUS NTAPI ReadWrite(PDEVICE_OBJECT DeviceObject,
return STATUS_PENDING; return STATUS_PENDING;
} }
static VOID NTAPI RWFreeAdapterChannel(PADAPTER_OBJECT AdapterObject) static VOID NTAPI
RWFreeAdapterChannel(PADAPTER_OBJECT AdapterObject)
/* /*
* FUNCTION: Free the adapter DMA channel that we allocated * FUNCTION: Free the adapter DMA channel that we allocated
* ARGUMENTS: * ARGUMENTS:
@ -151,8 +153,9 @@ static VOID NTAPI RWFreeAdapterChannel(PADAPTER_OBJECT AdapterObject)
KeLowerIrql(Irql); KeLowerIrql(Irql);
} }
static NTSTATUS NTAPI RWDetermineMediaType(PDRIVE_INFO DriveInfo) static NTSTATUS NTAPI
RWDetermineMediaType(PDRIVE_INFO DriveInfo)
/* /*
* FUNCTION: Determine the media type of the disk in the drive and fill in the geometry * FUNCTION: Determine the media type of the disk in the drive and fill in the geometry
* ARGUMENTS: * ARGUMENTS:
@ -271,9 +274,9 @@ static NTSTATUS NTAPI RWDetermineMediaType(PDRIVE_INFO DriveInfo)
return STATUS_UNRECOGNIZED_MEDIA; return STATUS_UNRECOGNIZED_MEDIA;
} }
static NTSTATUS NTAPI RWSeekToCylinder(PDRIVE_INFO DriveInfo, static NTSTATUS NTAPI
UCHAR Cylinder) RWSeekToCylinder(PDRIVE_INFO DriveInfo, UCHAR Cylinder)
/* /*
* FUNCTION: Seek a particular drive to a particular track * FUNCTION: Seek a particular drive to a particular track
* ARGUMENTS: * ARGUMENTS:
@ -336,8 +339,9 @@ static NTSTATUS NTAPI RWSeekToCylinder(PDRIVE_INFO DriveInfo,
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
static NTSTATUS NTAPI RWComputeCHS(PDRIVE_INFO IN DriveInfo, static NTSTATUS NTAPI
RWComputeCHS(PDRIVE_INFO IN DriveInfo,
ULONG IN DiskByteOffset, ULONG IN DiskByteOffset,
PUCHAR OUT Cylinder, PUCHAR OUT Cylinder,
PUCHAR OUT Head, PUCHAR OUT Head,
@ -392,9 +396,9 @@ static NTSTATUS NTAPI RWComputeCHS(PDRIVE_INFO IN DriveInfo,
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
VOID NTAPI ReadWritePassive(PDRIVE_INFO DriveInfo, VOID NTAPI
PIRP Irp) ReadWritePassive(PDRIVE_INFO DriveInfo, PIRP Irp)
/* /*
* FUNCTION: Handle the first phase of a read or write IRP * FUNCTION: Handle the first phase of a read or write IRP
* ARGUMENTS: * ARGUMENTS:

View file

@ -25,8 +25,10 @@
*/ */
DRIVER_DISPATCH ReadWrite; DRIVER_DISPATCH ReadWrite;
NTSTATUS NTAPI ReadWrite(PDEVICE_OBJECT DeviceObject,
PIRP Irp);
VOID NTAPI ReadWritePassive(PDRIVE_INFO DriveInfo, PIRP Irp); NTSTATUS NTAPI
ReadWrite(PDEVICE_OBJECT DeviceObject, PIRP Irp);
VOID NTAPI
ReadWritePassive(PDRIVE_INFO DriveInfo, PIRP Irp);