diff options
Diffstat (limited to 'private/ntos/ndis/netflex/protos.h')
-rw-r--r-- | private/ntos/ndis/netflex/protos.h | 450 |
1 files changed, 450 insertions, 0 deletions
diff --git a/private/ntos/ndis/netflex/protos.h b/private/ntos/ndis/netflex/protos.h new file mode 100644 index 000000000..47204461d --- /dev/null +++ b/private/ntos/ndis/netflex/protos.h @@ -0,0 +1,450 @@ +//************************************************************************ +//************************************************************************ +// +// File Name: PROTOS.H +// +// Program Name: NetFlex NDIS 3.0 Miniport Driver +// +// Companion Files: All +// +// Function: This module contains the NetFlex Miniport Driver +// routine prototypes references. +// +// (c) Compaq Computer Corporation, 1992,1993,1994 +// +// This file is licensed by Compaq Computer Corporation to Microsoft +// Corporation pursuant to the letter of August 20, 1992 from +// Gary Stimac to Mark Baber. +// +// History: +// +// 04/15/94 Robert Van Cleve - Converted from NDIS Mac Driver +//*********************************************************************** +//*********************************************************************** + + +#ifndef _PROTOS_ +#define _PROTOS_ + + +NDIS_STATUS +NetFlexBoardTest( + PACB acb, + NDIS_HANDLE NdisAdapterHandle + ); + +NDIS_STATUS +NetFlexBoardInitandReg( + PACB acb, + PNDIS_EISA_FUNCTION_INFORMATION EisaData + ); + + +VOID +NetFlexSetupNetType( + PACB acb + ); + +VOID +NetFlexGetBIA( + PACB acb + ); + +NDIS_STATUS +NetFlexDownload( + PACB acb + ); + +NDIS_STATUS +NetFlexReadConfigurationParameters( + PACB acb, + NDIS_HANDLE ConfigHandle + ); + +VOID +NetFlexGetUpstreamAddrPtr( + PACB acb + ); + +//++ + +NTSTATUS +DriverEntry( + IN PDRIVER_OBJECT DriverObject, + IN PUNICODE_STRING RegistryPath + ); + +BOOLEAN +NetFlexCheckForHang( + IN NDIS_HANDLE MiniportAdapterContext + ); + +VOID +NetFlexISR( + OUT PBOOLEAN InterruptRecognized, + OUT PBOOLEAN QueueDpc, + IN PVOID Context + ); + +VOID +NetFlexHandleInterrupt( + IN NDIS_HANDLE MiniportAdapterContext + ); + +VOID +NetFlexDeferredTimer( + IN PVOID SystemSpecific1, + IN PACB acb, + IN PVOID SystemSpecific2, + IN PVOID SystemSpecific3 + ); + +VOID +NetFlexEnableInterrupt( + IN NDIS_HANDLE Context + ); + +VOID +NetFlexDisableInterrupt( + IN NDIS_HANDLE Context + ); + +VOID +NetFlexHalt( + IN NDIS_HANDLE MiniportAdapterContext + ); + +VOID +NetFlexShutdown( + IN NDIS_HANDLE MiniportAdapterContext + ); + +NDIS_STATUS +NetFlexInitialize( + OUT PNDIS_STATUS OpenErrorStatus, + OUT PUINT SelectedMediumIndex, + IN PNDIS_MEDIUM MediumArray, + IN UINT MediumArraySize, + IN NDIS_HANDLE MiniportAdapterHandle, + IN NDIS_HANDLE ConfigurationHandle + ); + +NDIS_STATUS +NetFlexSetInformation( + IN NDIS_HANDLE MiniportAdapterContext, + IN NDIS_OID Oid, + IN PVOID InformationBuffer, + IN ULONG InformationBufferLength, + OUT PULONG BytesRead, + OUT PULONG BytesNeeded + ); + +NDIS_STATUS +NetFlexQueryInformation( + IN NDIS_HANDLE MiniportAdapterContext, + IN NDIS_OID Oid, + IN PVOID InformationBuffer, + IN ULONG InformationBufferLength, + OUT PULONG BytesWritten, + OUT PULONG BytesNeeded + ); + +VOID +NetFlexFinishQueryInformation( + PACB acb, + NDIS_STATUS Status + ); + +NDIS_STATUS +NetFlexResetDispatch( + OUT PBOOLEAN AddressingReset, + IN NDIS_HANDLE MiniportAdapterContext + ); + +VOID +NetFlexResetHandler( + IN PVOID SystemSpecific1, + IN PACB acb, + IN PVOID SystemSpecific2, + IN PVOID SystemSpecific3 + ); + +NDIS_STATUS NetFlexSend( + IN NDIS_HANDLE MiniportAdapterContext, + IN PNDIS_PACKET Packet, + IN UINT Flags + ); + +NDIS_STATUS NetFlexTransferData( + OUT PNDIS_PACKET Packet, + OUT PUINT BytesTransferred, + IN NDIS_HANDLE MiniportAdapterContext, + IN NDIS_HANDLE MiniportReceiveContext, + IN UINT ByteOffset, + IN UINT BytesToTransfer + ); + +NDIS_STATUS +NetFlexRegisterAdapter( + PACB *acbp, + PACB FirstHeadsAcb, + NDIS_HANDLE ConfigurationHandle, + USHORT baseaddr, + NDIS_HANDLE MiniportAdapterHandle + ); + +NDIS_STATUS +NetFlexInitializeAcb( + PACB acb + ); +VOID +NetFlexDeallocateAcb( + PACB acb); + + +VOID +NetFlexSendNextSCB( + PACB acb + ); + +VOID +NetFlexRemoveRequests( + PACB acb + ); + +VOID +NetFlexDoResetIndications( + IN PACB acb, + IN NDIS_STATUS Status + ); + +VOID +NetFlexQueueSCB( + PACB acb, + PSCBREQ scbreq + ); + +NDIS_STATUS +NetFlexAdapterReset( + PACB acb, + INT mode + ); + +NDIS_STATUS +NetFlexBudWait( + PACB acb + ); + +NDIS_STATUS +NetFlexInitializeAdapter( + PACB acb + ); + +NDIS_STATUS +NetFlexProcessRequest( + PACB acb + ); + +VOID +NetFlexFinishUnloading( + VOID + ); + +VOID +NetFlexDeregisterAdapter( + PACB acb + ); + +NDIS_STATUS +NetFlexAsciiToHex( + PNDIS_STRING src, + PUCHAR dst, + USHORT dst_length + ); + +VOID +FASTCALL +NetFlexProcessXmit( + PACB acb + ); + +USHORT +FASTCALL +NetFlexProcessTrRcv( + PACB acb + ); + +USHORT +FASTCALL +NetFlexProcessEthRcv( + PACB acb + ); + +NDIS_STATUS +NetFlexProcessSendQueue( + PACB acb + ); + +NDIS_STATUS +NetFlexProcessSend( + PACB acb, + PNDIS_PACKET Packet, + UINT PhysicalBufferCount, + UINT BufferCount, + PNDIS_BUFFER curbuf, + UINT TotalPacketLength + ); + +VOID +NetFlexGetUpstreamAddress( + PACB acb + ); + +VOID +NetFlexRingStatus( + PACB acb + ); + +VOID +NetFlexCommand( + PACB acb + ); + +VOID +NetFlexTransmitStatus( + PACB acb + ); + +BOOLEAN +NetFlexReset_Test( + PACB acb, + PMACREQ *resetreq + ); + +VOID +NetFlexProcessMacReq( + PACB acb + ); + +NDIS_STATUS +NetFlexValidateMulticasts( + PUCHAR multiaddrs, + USHORT multinumber + ); + +NDIS_STATUS +NetFlexOpenAdapter( + PACB acb + ); + + +BOOLEAN +NetFlexCloseAdapter( + PACB acb + ); + +NDIS_STATUS +NetFlexInitGlobals( + ); + +NDIS_STATUS +NetFlexConstrainPacket( + PACB acb, + PXMIT xmitptr, + PNDIS_PACKET Packet, + UINT PhysicalBufferCount, + PNDIS_BUFFER curbuf, + UINT TotalPacketLength + ); + +BOOLEAN +NetFlexFindEntry( + PVOID head, + PVOID *back, + PVOID entry + ); +VOID +NetFlexDequeue_OnePtrQ( + PVOID *head, + PVOID entry + ); + +VOID +NetFlexEnqueue_OnePtrQ_Head( + PVOID *head, + PVOID entry + ); + +NDIS_STATUS +NetFlexDequeue_OnePtrQ_Head( + PVOID *head, + PVOID *entry + ); + +NDIS_STATUS +NetFlexEnqueue_TwoPtrQ_Tail( + PVOID *head, + PVOID *tail, + PVOID entry + ); + +VOID +NetFlexDequeue_TwoPtrQ( + PVOID *head, + PVOID *tail, + PVOID entry + ); + +NDIS_STATUS +NetFlexDequeue_TwoPtrQ_Head( + PVOID *head, + PVOID *tail, + PVOID *entry + ); + +// +// Debug macros +// + +#if (DBG || DBGPRINT) +extern ULONG DebugLevel; + + +VOID +_DebugPrint( + PCCHAR DebugMessage, + ... + ); + +#define DebugPrint(level, msg) \ + if ((ULONG) level <= DebugLevel) \ + _DebugPrint msg + +extern USHORT DisplayLists; +VOID +_DisplayXmitList( + PACB acb + ); + +VOID +_DisplayRcvList( + PACB acb + ); + +#define DisplayXmitList(_acb) \ + if (DisplayLists) \ + _DisplayXmitList(_acb) + +#define DisplayRcvList(_acb) \ + if (DisplayLists) \ + _DisplayRcvList(_acb) + +#else + +#define DebugPrint(level, x) +#define DisplayXmitList(x) +#define DisplayRcvList(x) +#endif // DBG + + +#endif |