Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

100 lines
2.6 KiB

  1. #include <precomp.h>
  2. NIC1394_CHARACTERISTICS Nic1394Characteristics =
  3. {
  4. 5,
  5. 1,
  6. 0,
  7. NicRegisterEnum1394,
  8. NicDeregisterEnum1394,
  9. nicAddRemoteNode,
  10. nicRemoveRemoteNode
  11. };
  12. ENUM1394_REGISTER_DRIVER_HANDLER NdisEnum1394RegisterDriver = NULL;
  13. ENUM1394_DEREGISTER_DRIVER_HANDLER NdisEnum1394DeregisterDriver = NULL;
  14. ENUM1394_REGISTER_ADAPTER_HANDLER NdisEnum1394RegisterAdapter = NULL;
  15. ENUM1394_DEREGISTER_ADAPTER_HANDLER NdisEnum1394DeregisterAdapter = NULL;
  16. PCALLBACK_OBJECT Nic1394CallbackObject = NULL;
  17. PVOID Nic1394CallbackRegisterationHandle = NULL;
  18. ULONG g_IsochTag = ISOCH_TAG;
  19. ULONGLONG g_ullOne = 1;
  20. LONG g_ulMedium ;
  21. UINT NumRecvFifos = NUM_RECV_FIFO_FIRST_PHASE ;
  22. UINT NicSends;
  23. UINT BusSends;
  24. UINT NicSendCompletes;
  25. UINT BusSendCompletes;
  26. const PUCHAR pnic1394DriverDescription = "NET IP/1394 Miniport";
  27. const USHORT nic1394DriverGeneration = 0;
  28. BOOLEAN g_ulNicDumpPacket = FALSE;
  29. ULONG g_ulDumpEthPacket = 0;
  30. // Debug counts of client oddities that should not be happening.
  31. //
  32. ULONG g_ulUnexpectedInCallCompletes = 0;
  33. ULONG g_ulCallsNotClosable = 0;
  34. BOOLEAN g_AdapterFreed = FALSE;
  35. ULONG AdapterNum = 0;
  36. #ifdef INTEROP
  37. const unsigned char Net1394ConfigRom[48] = {
  38. 0x00, 0x04, 0xad, 0xeb, 0x12, 0x00, 0x00, 0x5e,
  39. 0x13, 0x00, 0x00, 0x01, 0x17, 0x7b, 0xb0, 0xcf,
  40. 0x81, 0x00, 0x00, 0x01, 0x00, 0x06, 0x38, 0x91,
  41. 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09,
  42. 0x4e, 0x00, 0x49, 0x00, 0x43, 0x00, 0x31, 0x00,
  43. 0x33, 0x00, 0x39, 0x00, 0x34, 0x00, 0x00, 0x00
  44. };
  45. #else
  46. const unsigned char Net1394ConfigRom[48] = {
  47. 0x00, 0x04, 0xa8, 0x36, 0x12, 0x00, 0x00, 0x5e,
  48. 0x13, 0x00, 0x00, 0x01, 0x82, 0x7b, 0xb0, 0xcf,
  49. 0x81, 0x00, 0x00, 0x01, 0x00, 0x06, 0x38, 0x91,
  50. 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09,
  51. 0x4e, 0x00, 0x49, 0x00, 0x43, 0x00, 0x31, 0x00,
  52. 0x33, 0x00, 0x39, 0x00, 0x34, 0x00, 0x00, 0x00
  53. };
  54. #endif // INTEROP
  55. //
  56. // Histograms to collect data
  57. //
  58. STAT_BUCKET SendStats;
  59. STAT_BUCKET RcvStats;
  60. // Stats
  61. ULONG nicMaxRcv;
  62. ULONG nicMaxSend;
  63. ULONG BusFailure;
  64. ULONG MallocFailure;
  65. ULONG IsochOverwrite;
  66. ULONG RcvTimerCount; // Number of times timer has fired.
  67. ULONG SendTimerCount; // Number of times timer has fired.
  68. ULONG TotSends;
  69. ULONG TotRecvs;
  70. ULONG MaxIndicatedFifos;
  71. ULONG MdlsAllocated[NoMoreCodePaths];
  72. ULONG MdlsFreed[NoMoreCodePaths];
  73. ULONG NdisBufferAllocated[NoMoreCodePaths];
  74. ULONG NdisBufferFreed[NoMoreCodePaths];