]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/Network/SnpDxe/Snp.h
MdeModulePkg: update SNP.GetStatus to handle multiple recycled TX buffer.
[mirror_edk2.git] / MdeModulePkg / Universal / Network / SnpDxe / Snp.h
index f1d0ab36dbcfa79c73a997e3f1dcafe3a29550a3..67f65ffc422f0997dfc69d1d05304b2fdc909e27 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
     Declaration of strctures and functions for SnpDxe driver.\r
 \r
-Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2004 - 2016, Intel Corporation. All rights reserved.<BR>\r
 This program and the accompanying materials are licensed\r
 and made available under the terms and conditions of the BSD License which\r
 accompanies this distribution. The full text of the license may be found at\r
@@ -49,6 +49,9 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #define PCI_BAR_MEM_MODE      0x00000000\r
 #define PCI_BAR_MEM_64BIT     0x00000004\r
 \r
+#define SNP_TX_BUFFER_INCREASEMENT    MAX_XMIT_BUFFERS\r
+#define SNP_MAX_TX_BUFFER_NUM         65536\r
+\r
 typedef\r
 EFI_STATUS\r
 (EFIAPI *ISSUE_UNDI32_COMMAND) (\r
@@ -130,6 +133,19 @@ typedef struct {
   // i.e. PXE_STATFLAGS_GET_STATUS_NO_MEDIA_SUPPORTED\r
   //\r
   BOOLEAN                MediaStatusSupported;\r
+\r
+  //\r
+  // Array of the recycled transmit buffer address from UNDI.\r
+  //\r
+  UINT64                 *RecycledTxBuf;\r
+  //\r
+  // The maximum number of recycled buffer pointers in RecycledTxBuf.\r
+  //\r
+  UINT32                 MaxRecycledTxBuf;\r
+  //\r
+  // Current number of recycled buffer pointers in RecycledTxBuf.\r
+  //\r
+  UINT32                 RecycledTxBufCount;\r
 } SNP_DRIVER;\r
 \r
 #define EFI_SIMPLE_NETWORK_DEV_FROM_THIS(a) CR (a, SNP_DRIVER, Snp, SNP_DRIVER_SIGNATURE)\r