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.

133 lines
3.1 KiB

  1. //-----------------------------------------------------------------------------
  2. // Constants
  3. //-----------------------------------------------------------------------------
  4. // The NDIS version we report when registering mini-port and address family.
  5. //
  6. #define NDIS_MajorVersion 5
  7. #define NDIS_MinorVersion 0
  8. #define NIC1394_MajorVersion 5
  9. #define NIC1394_MinorVersion 1
  10. #define MAX_PACKET_POOL_SIZE 0xFFFF
  11. #define MIN_PACKET_POOL_SIZE 0x100
  12. #define NOT !
  13. #define IS ==
  14. #define AND &&
  15. #define OR ||
  16. #define NOT_EQUAL !=
  17. #if TODO
  18. // Verify the following (I randomly picked 4096 here)...
  19. #endif
  20. #define Nic1394_MaxFrameSize 4096
  21. #define WAIT_INFINITE 0
  22. #define MAX_CHANNEL_NUMBER 63
  23. #define BROADCAST_CHANNEL 31
  24. #define GASP_SPECIFIER_ID_HI 0
  25. #define GASP_SPECIFIER_ID_LO 0x5E
  26. #define INVALID_CHANNEL 0xff
  27. #define HEADER_FRAGMENTED_MASK 0xC0000000
  28. #define MAX_ALLOWED_FRAGMENTS 20
  29. #define MCAST_LIST_SIZE 32
  30. #define ISOCH_TAG 3 // Set to 3 in accordance with 1394a spec. Clause 8.2 - Gasp Header
  31. #define MAX_NUMBER_NODES 64
  32. #define QUEUE_REASSEMBLY_TIMER_ALWAYS 0
  33. //
  34. // Compile options
  35. //
  36. #define FALL_THROUGH
  37. #define INTEROP
  38. #define SEPERATE_CHANNEL_TYPE 1
  39. #define INTERCEPT_MAKE_CALL 0
  40. #define TRACK_FAILURE 1
  41. #define USE_KLOCKS 1
  42. #define FIFO_WRAPPER 0
  43. #define NUM_RECV_FIFO_FIRST_PHASE 20
  44. #define NUM_RECV_FIFO_BUFFERS 256
  45. #ifdef Win9X
  46. #define _ETHERNET_ 1
  47. #define PACKETPOOL_LOCK 0 // Serialize access to the packet pool
  48. #define QUEUED_PACKETS 1 // Serializes Recieve Indications to TCP.IP
  49. #if QUEUED_PACKETS
  50. #define QUEUED_PACKETS_STATS 1
  51. #endif
  52. #endif
  53. //
  54. // If this is a Win2K compilation
  55. //
  56. #ifdef Win2K
  57. #define _ETHERNET_ 1
  58. #define TRACK_LOCKS 0
  59. #define QUEUED_PACKETS 0 // Serializes Recieve Indications to TCP.IP
  60. #ifdef DBG
  61. #define PKT_LOG 1
  62. #endif
  63. //#define LOWER_SEND_SPEED 1 // Lower the send speed temprarily
  64. #endif
  65. #define DO_TIMESTAMPS 0
  66. #if DO_TIMESTAMPS
  67. #define ENTRY_EXIT_TIME 0
  68. #define INIT_HALT_TIME 1
  69. #else
  70. #define ENTRY_EXIT_TIME 0
  71. #define INIT_HALT_TIME 0
  72. #endif
  73. #define TESTMODE 0
  74. //
  75. // Constants used to tag data structures like NdisPackets and IsochDescriptors
  76. // For informational purposes only
  77. //
  78. #define NIC1394_TAG_INDICATED 'idnI'
  79. #define NIC1394_TAG_QUEUED 'ueuQ'
  80. #define NIC1394_TAG_RETURNED 'uteR'
  81. #define NIC1394_TAG_ALLOCATED 'ollA'
  82. #define NIC1394_TAG_FREED 'eerF'
  83. #define NIC1394_TAG_REASSEMBLY 'sseR'
  84. #define NIC1394_TAG_COMPLETED 'pmoC'
  85. #define NIC1394_TAG_IN_SEND 'dneS'
  86. #define NIC1394_TAG_IN_CALLBACK 'llaC'
  87. #define ADAPTER_NAME_SIZE 128
  88. #define ANSI_ARP_CLIENT_DOS_DEVICE_NAME "\\\\.\\ARP1394"
  89. #define NOT_TESTED_YET 0
  90. //
  91. // The 1394 constants for 800 and above are not defined in
  92. // 1394.h Make temporary local definitions.
  93. //
  94. #define ASYNC_PAYLOAD_800_RATE_LOCAL 4096
  95. #define ASYNC_PAYLOAD_1600_RATE_LOCAL (4096*2)
  96. #define ASYNC_PAYLOAD_3200_RATE_LOCAL (4096*4)
  97. #define MAX_REC_800_RATE_LOCAL (MAX_REC_400_RATE+1)
  98. #define MAX_REC_1600_RATE_LOCAL (MAX_REC_800_RATE_LOCAL + 1)
  99. #define MAX_REC_3200_RATE_LOCAL (MAX_REC_1600_RATE_LOCAL + 1)