|
|
// Copyright (c) 2000-2002, Microsoft Corporation, all rights reserved
//
// globals.c
//
// IEEE1394 mini-port/call-manager driver
//
//
// Loads and unload the ARP module when the
// bridge is activated
//
// Created by Adube
//
#include <precomp.h>
NIC1394_CHARACTERISTICS Nic1394Characteristics = { 5, 1, 0, NicRegisterEnum1394, NicDeregisterEnum1394, nicAddRemoteNode, nicRemoveRemoteNode };
ENUM1394_REGISTER_DRIVER_HANDLER NdisEnum1394RegisterDriver = NULL; ENUM1394_DEREGISTER_DRIVER_HANDLER NdisEnum1394DeregisterDriver = NULL; ENUM1394_REGISTER_ADAPTER_HANDLER NdisEnum1394RegisterAdapter = NULL; ENUM1394_DEREGISTER_ADAPTER_HANDLER NdisEnum1394DeregisterAdapter = NULL;
PCALLBACK_OBJECT Nic1394CallbackObject = NULL; PVOID Nic1394CallbackRegisterationHandle = NULL;
ULONG g_IsochTag = ISOCH_TAG; ULONGLONG g_ullOne = 1;
LONG g_ulMedium ; UINT NumRecvFifos = NUM_RECV_FIFO_FIRST_PHASE ; UINT NicSends; UINT BusSends; UINT NicSendCompletes; UINT BusSendCompletes;
const PUCHAR pnic1394DriverDescription = "NET IP/1394 Miniport"; const USHORT nic1394DriverGeneration = 0;
BOOLEAN g_ulNicDumpPacket = FALSE; ULONG g_ulDumpEthPacket = 0;
// Debug counts of client oddities that should not be happening.
//
ULONG g_ulUnexpectedInCallCompletes = 0; ULONG g_ulCallsNotClosable = 0; BOOLEAN g_AdapterFreed = FALSE;
ULONG AdapterNum = 0;
const unsigned char Net1394ConfigRom[48] = { 0x00, 0x04, 0xad, 0xeb, 0x12, 0x00, 0x00, 0x5e, 0x13, 0x00, 0x00, 0x01, 0x17, 0x7b, 0xb0, 0xcf, 0x81, 0x00, 0x00, 0x01, 0x00, 0x06, 0x38, 0x91, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0x4e, 0x00, 0x49, 0x00, 0x43, 0x00, 0x31, 0x00, 0x33, 0x00, 0x39, 0x00, 0x34, 0x00, 0x00, 0x00 };
//
// Histograms to collect data
//
STAT_BUCKET SendStats; STAT_BUCKET RcvStats;
// Stats
ULONG nicMaxRcv; ULONG nicMaxSend; ULONG BusFailure; ULONG MallocFailure; ULONG IsochOverwrite; ULONG RcvTimerCount; // Number of times timer has fired.
ULONG SendTimerCount; // Number of times timer has fired.
ULONG TotSends; ULONG TotRecvs; ULONG MaxIndicatedFifos; ULONG MdlsAllocated[NoMoreCodePaths]; ULONG MdlsFreed[NoMoreCodePaths]; ULONG NdisBufferAllocated[NoMoreCodePaths]; ULONG NdisBufferFreed[NoMoreCodePaths];
|