]> git.proxmox.com Git - mirror_edk2.git/blobdiff - NetworkPkg/Mtftp6Dxe/Mtftp6Impl.h
ArmPkg/ArmScmiDxe: Add clock enable function
[mirror_edk2.git] / NetworkPkg / Mtftp6Dxe / Mtftp6Impl.h
index 68fa0da115983aa5b631a6749864a5a373582cc4..f0279daca3fb38e36830fa7e57c3a662aec47a8a 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Mtftp6 internal data structure and definition declaration.\r
 \r
-  Copyright (c) 2009 - 2012, Intel Corporation. All rights reserved. <BR>\r
+  Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved. <BR>\r
 \r
   This program and the accompanying materials\r
   are licensed and made available under the terms and conditions of the BSD License\r
@@ -29,6 +29,7 @@
 #include <Library/UefiLib.h>\r
 #include <Library/BaseLib.h>\r
 #include <Library/NetLib.h>\r
+#include <Library/PrintLib.h>\r
 \r
 typedef struct _MTFTP6_SERVICE  MTFTP6_SERVICE;\r
 typedef struct _MTFTP6_INSTANCE MTFTP6_INSTANCE;\r
@@ -45,6 +46,7 @@ typedef struct _MTFTP6_INSTANCE MTFTP6_INSTANCE;
 #define MTFTP6_GET_MAPPING_TIMEOUT     3\r
 #define MTFTP6_DEFAULT_MAX_RETRY       5\r
 #define MTFTP6_DEFAULT_BLK_SIZE        512\r
+#define MTFTP6_DEFAULT_WINDOWSIZE      1\r
 #define MTFTP6_TICK_PER_SECOND         10000000U\r
 \r
 #define MTFTP6_SERVICE_FROM_THIS(a)    CR (a, MTFTP6_SERVICE, ServiceBinding, MTFTP6_SERVICE_SIGNATURE)\r
@@ -76,6 +78,20 @@ struct _MTFTP6_INSTANCE {
   UINT16                        LastBlk;\r
   LIST_ENTRY                    BlkList;\r
 \r
+  UINT16                        Operation;\r
+\r
+  UINT16                        WindowSize;\r
+\r
+  //\r
+  // Record the total received and saved block number.\r
+  //\r
+  UINT64                        TotalBlock;\r
+\r
+  //\r
+  // Record the acked block number.\r
+  //\r
+  UINT64                        AckedBlock;\r
+\r
   EFI_IPv6_ADDRESS              ServerIp;\r
   UINT16                        ServerCmdPort;\r
   UINT16                        ServerDataPort;\r
@@ -117,9 +133,14 @@ struct _MTFTP6_SERVICE {
   // mtftp driver and udp driver.\r
   //\r
   UDP_IO                        *DummyUdpIo;\r
-  BOOLEAN                       InDestroy;\r
 };\r
 \r
+typedef struct {\r
+  EFI_SERVICE_BINDING_PROTOCOL  *ServiceBinding;\r
+  UINTN                         NumberOfChildren;\r
+  EFI_HANDLE                    *ChildHandleBuffer;\r
+} MTFTP6_DESTROY_CHILD_IN_HANDLE_BUF_CONTEXT;\r
+\r
 /**\r
   Returns the current operating mode data for the MTFTP6 instance.\r
 \r