]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Nt32Pkg/SnpNt32Dxe/SnpNt32.h
ArmPkg/CpuDxe ARM: honour RO/XP attributes in SetMemoryAttributes()
[mirror_edk2.git] / Nt32Pkg / SnpNt32Dxe / SnpNt32.h
index 6e9dafd2b7177c0c47f0b0f6bf64bf1a51fb3d9a..cb95c5711c228d3f8c61642d33baf729025fd329 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
 \r
-Copyright (c) 2006 - 2007, Intel Corporation\r
-All rights reserved. This program and the accompanying materials\r
+Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>\r
+This program and the accompanying materials\r
 are licensed and made available under the terms and conditions of the BSD License\r
 which accompanies this distribution.  The full text of the license may be found at\r
 http://opensource.org/licenses/bsd-license.php\r
@@ -58,6 +58,12 @@ typedef struct _NT_NET_INTERFACE_INFO {
 #define MAX_INTERFACE_INFO_NUMBER 16\r
 #define MAX_FILE_NAME_LENGTH      280\r
 \r
+#define SNP_MAX_TX_BUFFER_NUM         65536\r
+#define SNP_TX_BUFFER_INCREASEMENT    32\r
+\r
+\r
+\r
+\r
 //\r
 //  Functions in Net Library\r
 //\r
@@ -137,9 +143,9 @@ EFI_STATUS
 //\r
 //  Global data for this driver\r
 //\r
-#define SNP_NT32_DRIVER_SIGNATURE EFI_SIGNATURE_32 ('W', 'S', 'N', 'P')\r
+#define SNP_NT32_DRIVER_SIGNATURE SIGNATURE_32 ('W', 'S', 'N', 'P')\r
 \r
-typedef struct _SNPNT32_GLOBAL_DATA {\r
+struct _SNPNT32_GLOBAL_DATA {\r
   UINT32                            Signature;\r
 \r
   //\r
@@ -154,20 +160,34 @@ typedef struct _SNPNT32_GLOBAL_DATA {
 \r
   EFI_LOCK                          Lock;\r
 \r
+  //\r
+  // Array of the recycled transmit buffer address.\r
+  //\r
+  UINT64                            *RecycledTxBuf;\r
+\r
+  //\r
+  // Current number of recycled buffer pointers in RecycledTxBuf.\r
+  //\r
+  UINT32                             RecycledTxBufCount;\r
+\r
+  // The maximum number of recycled buffer pointers in RecycledTxBuf.\r
+  //\r
+  UINT32                             MaxRecycledTxBuf;\r
+\r
   //\r
   //  Private functions\r
   //\r
   SNPNT32_INITIALIZE_GLOBAL_DATA    InitializeGlobalData;\r
   SNPNT32_INITIALIZE_INSTANCE_DATA  InitializeInstanceData;\r
   SNPNT32_CLOSE_INSTANCE            CloseInstance;\r
-} SNPNT32_GLOBAL_DATA;\r
+};\r
 \r
 //\r
 //  Instance data for each fake SNP instance\r
 //\r
-#define SNP_NT32_INSTANCE_SIGNATURE EFI_SIGNATURE_32 ('w', 'S', 'N', 'P')\r
+#define SNP_NT32_INSTANCE_SIGNATURE SIGNATURE_32 ('w', 'S', 'N', 'P')\r
 \r
-typedef struct _SNPNT32_INSTANCE_DATA {\r
+struct _SNPNT32_INSTANCE_DATA {\r
   UINT32                      Signature;\r
 \r
   //\r
@@ -188,7 +208,7 @@ typedef struct _SNPNT32_INSTANCE_DATA {
   //\r
   //  Private functions\r
   //\r
-} SNPNT32_INSTANCE_DATA;\r
+};\r
 \r
 #define SNP_NT32_INSTANCE_DATA_FROM_SNP_THIS(a) \\r
   CR ( \\r