]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Protocol/PxeBaseCodeCallBack.h
MdePkg: Add definition for new warning code EFI_WARN_FILE_SYSTEM.
[mirror_edk2.git] / MdePkg / Include / Protocol / PxeBaseCodeCallBack.h
index 267144db8993ca0056715c64e215d7e415f7fe1f..210f962ed003eb467de9fcfe340b79df89b8e655 100644 (file)
@@ -1,47 +1,56 @@
 /** @file\r
-  EFI PXE Base Code CallBack Protocol\r
+  It is invoked when the PXE Base Code Protocol is about to transmit, has received, \r
+  or is waiting to receive a packet.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
-  All rights reserved. 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
+Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>\r
+This program and the accompanying materials are licensed and made available under \r
+the terms and conditions of the BSD License that accompanies this distribution.  \r
+The full text of the license may be found at\r
+http://opensource.org/licenses/bsd-license.php.                                          \r
+    \r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
 \r
-  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
-  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
-\r
-  Module Name:  PxeBaseCodeCallBack.h\r
+  @par Revision Reference:          \r
+  This Protocol is introduced in EFI Specification 1.10\r
 \r
 **/\r
 \r
 #ifndef _PXE_BASE_CODE_CALLBACK_H_\r
 #define _PXE_BASE_CODE_CALLBACK_H_\r
 \r
-//\r
-// Call Back Definitions\r
-//\r
+///\r
+/// Call Back Definitions.\r
+///\r
 #define EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL_GUID \\r
   { \\r
     0x245dca21, 0xfb7b, 0x11d3, {0x8f, 0x01, 0x00, 0xa0, 0xc9, 0x69, 0x72, 0x3b } \\r
   }\r
 \r
-//\r
-// Revision Number\r
-//\r
+///\r
+/// UEFI Revision Number Definition.\r
+///\r
 #define EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL_REVISION 0x00010000\r
+\r
+///\r
+/// EFI 1.1 Revision Number defintion.\r
+///\r
 #define EFI_PXE_BASE_CODE_CALLBACK_INTERFACE_REVISION  \\r
         EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL_REVISION\r
 \r
-//\r
-// Protocol definition\r
-//\r
+///\r
+/// UEFI Protocol name.\r
+///\r
 typedef struct _EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL  EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL;\r
 \r
-//\r
-// Protocol defined in EFI1.1.\r
-// \r
+///\r
+/// EFI1.1 Protocol name.\r
+/// \r
 typedef EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL   EFI_PXE_BASE_CODE_CALLBACK;\r
 \r
+///\r
+/// Event type list for PXE Base Code Protocol function.\r
+///\r
 typedef enum {\r
   EFI_PXE_BASE_CODE_FUNCTION_FIRST,\r
   EFI_PXE_BASE_CODE_FUNCTION_DHCP,\r
@@ -54,6 +63,9 @@ typedef enum {
   EFI_PXE_BASE_CODE_PXE_FUNCTION_LAST\r
 } EFI_PXE_BASE_CODE_FUNCTION;\r
 \r
+///\r
+/// Callback status type.\r
+///\r
 typedef enum {\r
   EFI_PXE_BASE_CODE_CALLBACK_STATUS_FIRST,\r
   EFI_PXE_BASE_CODE_CALLBACK_STATUS_CONTINUE,\r
@@ -65,7 +77,17 @@ typedef enum {
   Callback function that is invoked when the PXE Base Code Protocol is about to transmit, has\r
   received, or is waiting to receive a packet.                                                 \r
   \r
-  @param  This                  Pointer to the EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL instance.\r
+  This function is invoked when the PXE Base Code Protocol is about to transmit, has received,\r
+  or is waiting to receive a packet. Parameters Function and Received specify the type of event.\r
+  Parameters PacketLen and Packet specify the packet that generated the event. If these fields\r
+  are zero and NULL respectively, then this is a status update callback. If the operation specified\r
+  by Function is to continue, then CALLBACK_STATUS_CONTINUE should be returned. If the operation\r
+  specified by Function should be aborted, then CALLBACK_STATUS_ABORT should be returned. Due to\r
+  the polling nature of UEFI device drivers, a callback function should not execute for more than 5 ms.\r
+  The SetParameters() function must be called after a Callback Protocol is installed to enable the\r
+  use of callbacks.\r
+  \r
+  @param  This                  The pointer to the EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL instance.\r
   @param  Function              The PXE Base Code Protocol function that is waiting for an event.                                                              \r
   @param  Received              TRUE if the callback is being invoked due to a receive event. FALSE if\r
                                 the callback is being invoked due to a transmit event.                \r
@@ -88,7 +110,16 @@ EFI_PXE_BASE_CODE_CALLBACK_STATUS
   IN EFI_PXE_BASE_CODE_PACKET             *Packet     OPTIONAL\r
   );\r
 \r
+///\r
+/// Protocol that is invoked when the PXE Base Code Protocol is about \r
+/// to transmit, has received, or is waiting to receive a packet.\r
+///\r
 struct _EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL {\r
+  ///\r
+  ///  The revision of the EFI_PXE_BASE_CODE_PROTOCOL. All future revisions must \r
+  ///  be backwards compatible. If a future version is not backwards compatible \r
+  ///  it is not the same GUID.\r
+  ///\r
   UINT64            Revision;\r
   EFI_PXE_CALLBACK  Callback;\r
 };\r