/* semfispr.h */ /* Prototypes for Device Driver for IBM SDLC adapter. */ /*****************************************************************************/ BOOLean AdapterExistenceCheck ( PCONFIGDATA pConfigData ); VOID AdapterReset (PDX pDX); BOOLean AllocateDMAMemory ( ULONG BufferSize, PVOID *pBufferPtr, PMDL *ppMdl, PHYSICAL_ADDRESS * pPhysAddr, ULONG *ErrorCode ); VOID Close8273Sequence (PDX pDX); VOID CompleteIoRequest (PIRP Irp); BOOLean DeviceInit ( PDRIVER_OBJECT pDriverObject, CHAR * DeviceName, PCONFIGDATA pConfigData ); VOID DPCRoutine( IN PKDPC pDpc, IN PDEVICE_OBJECT pDeviceObject, IN PIRP pIrp, IN PVOID DeferredContext ); NTSTATUS DriverEntry (IN PDRIVER_OBJECT DriverObject, IN PUNICODE_STRING RegistryPath ); NTSTATUS EntryPointClose ( PDEVICE_OBJECT pDeviceObject, PIRP pIrp ); NTSTATUS EntryPointDevIoctl ( PDEVICE_OBJECT pDeviceObject, PIRP pIrp ); BOOLEAN EntryPointISR ( PKINTERRUPT pInterrupt, PVOID Context ); NTSTATUS EntryPointOpen ( PDEVICE_OBJECT pDeviceObject, PIRP pIrp ); BOOLEAN EntryPointRogueInterrupt ( PKINTERRUPT pInterrupt, PVOID Context ); VOID EntryPointUnload (IN PDRIVER_OBJECT pDriverObject); BOOLean GetInterfaceType (IN PDRIVER_OBJECT pDriverObject); BOOLean GetDriverSpec (CHAR *DriverName, PCONFIGDATA *pConfigData ); VOID GetV24Input (PDX pDX); BOOLean InitialiseAdapter (PDX pDX); VOID IoctlAbortReceiver (PDX pDX); VOID IoctlAbortTransmitter (PDX pDX); VOID IoctlSetInterfaceRecord (PDX pDX); BOOLean IoctlSetLinkConfig (PDX pDX); BOOLean IoctlRxFrame (PDX pDX); BOOLean IoctlSetV24Output (PDX pDX); BOOLean IoctlTxFrame (PDX pDX); VOID RxFSMActionInvalid (PDX pDX); VOID RxFSMActionRestart (PDX pDX); VOID RxFSMActionStart (PDX pDX); VOID RxFSMActionStop (PDX pDX); VOID RxFSMActionRcvError (PDX pDX); VOID RxFSMActionRcvOK (PDX pDX); VOID RxFSMEvent (PDX pDX, int Input); VOID FSMNullAction (PDX pDX); BOOLean SetLinkConfig (PDX pDX); BOOLean SetV24Output (PDX pDX); VOID StartDMA(PDX pDX, PHYSICAL_ADDRESS PhysicalAddress, USHORT BufferLength, UCHAR OpCode); VOID StopDMA (PDX pDX); BOOLEAN SynchEntryPointOpen (PVOID Context); BOOLEAN SynchReset8273 (PVOID Context); BOOLEAN SynchTerminateAdapter (PVOID Context); VOID TerminateAdapter (PDX pDX); VOID TxFSMActionAbort (PDX pDX); VOID TxFSMActionEndError (PDX pDX); VOID TxFSMActionEndOK (PDX pDX); VOID TxFSMActionInvalid (PDX pDX); VOID TxFSMActionStart (PDX pDX); VOID TxFSMActionStop (PDX pDX); VOID TxFSMActionXmitNext (PDX pDX); VOID TxFSMEvent (PDX pDX, int Input); UCHAR Write8273Cmd (PDX pDX, UCHAR *Cmd); VOID LogDriverError ( PDEVICE_OBJECT pDeviceObject, NTSTATUS FinalStatus, ULONG UniqueErrorValue, UCHAR MajorFunctionCode, ULONG IoControlCode );