]> git.proxmox.com Git - mirror_edk2.git/blobdiff - OldMdePkg/Include/Ppi/BootScriptExecuter.h
Moved the MdePkg to OldMdePkg so that new code in MdePkg does not break existing...
[mirror_edk2.git] / OldMdePkg / Include / Ppi / BootScriptExecuter.h
diff --git a/OldMdePkg/Include/Ppi/BootScriptExecuter.h b/OldMdePkg/Include/Ppi/BootScriptExecuter.h
new file mode 100644 (file)
index 0000000..5b10292
--- /dev/null
@@ -0,0 +1,72 @@
+/** @file\r
+  This file declares Boot Script Executer PPI.\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
+\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:  BootScriptExecuter.h\r
+\r
+  @par Revision Reference:\r
+  This PPI is defined in Framework of EFI BootScript spec.\r
+  Version 0.91.\r
+\r
+**/\r
+\r
+#ifndef _PEI_BOOT_SCRIPT_EXECUTER_PPI_H\r
+#define _PEI_BOOT_SCRIPT_EXECUTER_PPI_H\r
+\r
+#define EFI_PEI_BOOT_SCRIPT_EXECUTER_PPI_GUID \\r
+  { \\r
+    0xabd42895, 0x78cf, 0x4872, {0x84, 0x44, 0x1b, 0x5c, 0x18, 0x0b, 0xfb, 0xff } \\r
+  }\r
+\r
+typedef struct _EFI_PEI_BOOT_SCRIPT_EXECUTER_PPI EFI_PEI_BOOT_SCRIPT_EXECUTER_PPI;\r
+\r
+/**\r
+  Executes the Framework boot script table.\r
+\r
+  @param  PeiServices    A pointer to the system PEI Services Table.\r
+  @param  This           A pointer to the EFI_PEI_BOOT_SCRIPT_EXECUTER_PPI instance.\r
+  @param  Address        The physical memory address where the table is stored.\r
+                         It must be zero if the table to be executed is stored in a firmware volume file.\r
+  @param  FvFile         The firmware volume file name that contains the table to\r
+                         be executed. It must be NULL if the table to be executed is stored in physical memory.\r
+\r
+  @retval EFI_SUCCESS           The boot script table was executed successfully.\r
+  @retval EFI_INVALID_PARAMETER Address is zero and FvFile is NULL.\r
+  @retval EFI_NOT_FOUND         The file name specified in FvFile cannot be found.\r
+  @retval EFI_UNSUPPORTED       The format of the boot script table is invalid.\r
+                                Or An unsupported opcode occurred in the table.\r
+                                Or There were opcode execution errors, such as an insufficient dependency.\r
+\r
+**/\r
+typedef\r
+EFI_STATUS\r
+(EFIAPI *EFI_PEI_BOOT_SCRIPT_EXECUTE) (\r
+  IN     EFI_PEI_SERVICES                        **PeiServices,\r
+  IN     EFI_PEI_BOOT_SCRIPT_EXECUTER_PPI        *This,\r
+  IN     EFI_PHYSICAL_ADDRESS                    Address,\r
+  IN     EFI_GUID                                *FvFile OPTIONAL\r
+  );\r
+\r
+/**\r
+  @par Ppi Description:\r
+  This PPI produces functions to interpret and execute the Framework boot script table.\r
+\r
+  @param Execute\r
+  Executes a boot script table.\r
+\r
+**/\r
+struct _EFI_PEI_BOOT_SCRIPT_EXECUTER_PPI {\r
+  EFI_PEI_BOOT_SCRIPT_EXECUTE Execute;\r
+};\r
+\r
+extern EFI_GUID gEfiPeiBootScriptExecuterPpiGuid;\r
+\r
+#endif\r