]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFrameworkPkg/Include/Ppi/BootScriptExecuter.h
Add more comments for IntelFramework's header files.
[mirror_edk2.git] / IntelFrameworkPkg / Include / Ppi / BootScriptExecuter.h
index 28bc0e5e3f72c5559d983baa102323431d6e5287..c98f3821ebd61bc78d6d3c09ade0447b2ed90b75 100644 (file)
@@ -1,6 +1,13 @@
 /** @file\r
   This file declares Boot Script Executer PPI.\r
 \r
+  This PPI is published by a PEIM upon dispatch and provides an execution engine for the\r
+  Framework boot script. This PEIM should be platform neutral and have no specific knowledge of\r
+  platform instructions and other information. The ability to interpret the boot script depends on the\r
+  abundance of other PPIs that are available. For example, if the script requests an SMBus command\r
+  execution, the PEIM looks for a relevant PPI that is available to execute it, rather than executing it\r
+  by issuing the native IA-32 instruction.\r
+\r
   Copyright (c) 2007, 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
 \r
 **/\r
 \r
-#ifndef _PEI_BOOT_SCRIPT_EXECUTER_PPI_H\r
-#define _PEI_BOOT_SCRIPT_EXECUTER_PPI_H\r
+#ifndef _PEI_BOOT_SCRIPT_EXECUTER_PPI_H_\r
+#define _PEI_BOOT_SCRIPT_EXECUTER_PPI_H_\r
 \r
 #include <PiPei.h>\r
 \r
+#define EFI_ACPI_S3_RESUME_SCRIPT_TABLE               0x00\r
+\r
+//\r
+// Boot Script Opcode Definitions\r
+//\r
+\r
+#define EFI_BOOT_SCRIPT_IO_WRITE_OPCODE               0x00\r
+#define EFI_BOOT_SCRIPT_IO_READ_WRITE_OPCODE          0x01\r
+#define EFI_BOOT_SCRIPT_MEM_WRITE_OPCODE              0x02\r
+#define EFI_BOOT_SCRIPT_MEM_READ_WRITE_OPCODE         0x03\r
+#define EFI_BOOT_SCRIPT_PCI_CONFIG_WRITE_OPCODE       0x04\r
+#define EFI_BOOT_SCRIPT_PCI_CONFIG_READ_WRITE_OPCODE  0x05\r
+#define EFI_BOOT_SCRIPT_SMBUS_EXECUTE_OPCODE          0x06\r
+#define EFI_BOOT_SCRIPT_STALL_OPCODE                  0x07\r
+#define EFI_BOOT_SCRIPT_DISPATCH_OPCODE               0x08\r
+\r
+//\r
+// Extensions to boot script definitions\r
+//\r
+#define EFI_BOOT_SCRIPT_MEM_POLL_OPCODE               0x09\r
+#define EFI_BOOT_SCRIPT_INFORMATION_OPCODE            0x0A\r
+#define EFI_BOOT_SCRIPT_PCI_CONFIG2_WRITE_OPCODE      0x0B\r
+#define EFI_BOOT_SCRIPT_PCI_CONFIG2_READ_WRITE_OPCODE 0x0C\r
+#define EFI_BOOT_SCRIPT_DISPATCH_2_OPCODE             0x0D\r
+#define EFI_BOOT_SCRIPT_TABLE_OPCODE                  0xAA\r
+#define EFI_BOOT_SCRIPT_TERMINATE_OPCODE              0xFF\r
+\r
+//\r
+// EFI Boot Script Width\r
+//\r
+typedef enum {\r
+  EfiBootScriptWidthUint8,\r
+  EfiBootScriptWidthUint16,\r
+  EfiBootScriptWidthUint32,\r
+  EfiBootScriptWidthUint64,\r
+  EfiBootScriptWidthFifoUint8,\r
+  EfiBootScriptWidthFifoUint16,\r
+  EfiBootScriptWidthFifoUint32,\r
+  EfiBootScriptWidthFifoUint64,\r
+  EfiBootScriptWidthFillUint8,\r
+  EfiBootScriptWidthFillUint16,\r
+  EfiBootScriptWidthFillUint32,\r
+  EfiBootScriptWidthFillUint64,\r
+  EfiBootScriptWidthMaximum\r
+} EFI_BOOT_SCRIPT_WIDTH;\r
+\r
 #define EFI_PEI_BOOT_SCRIPT_EXECUTER_PPI_GUID \\r
   { \\r
     0xabd42895, 0x78cf, 0x4872, {0x84, 0x44, 0x1b, 0x5c, 0x18, 0x0b, 0xfb, 0xff } \\r