]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkCompatibilityPkg/Foundation/Efi/Protocol/LoadedImage/LoadedImage.h
Add in the 1st version of ECP.
[mirror_edk2.git] / EdkCompatibilityPkg / Foundation / Efi / Protocol / LoadedImage / LoadedImage.h
diff --git a/EdkCompatibilityPkg/Foundation/Efi/Protocol/LoadedImage/LoadedImage.h b/EdkCompatibilityPkg/Foundation/Efi/Protocol/LoadedImage/LoadedImage.h
new file mode 100644 (file)
index 0000000..07c62f1
--- /dev/null
@@ -0,0 +1,73 @@
+/*++\r
+\r
+Copyright (c) 2004, 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:\r
+\r
+ LoadedImage.h\r
+\r
+Abstract:\r
+\r
+  EFI 1.0 Loaded image protocol definition.\r
+\r
+  Every EFI driver and application is passed an image handle when it is loaded.\r
+  This image handle will contain a Loaded Image Protocol.\r
+\r
+--*/\r
+\r
+#ifndef _LOADED_IMAGE_H_\r
+#define _LOADED_IMAGE_H_\r
+\r
+#define EFI_LOADED_IMAGE_PROTOCOL_GUID \\r
+  { \\r
+    0x5B1B31A1, 0x9562, 0x11d2, 0x8E, 0x3F, 0x00, 0xA0, 0xC9, 0x69, 0x72, 0x3B \\r
+  }\r
+\r
+//\r
+// EFI_SYSTEM_TABLE & EFI_IMAGE_UNLOAD are defined in EfiApi.h\r
+//\r
+#define EFI_LOADED_IMAGE_INFORMATION_REVISION 0x1000\r
+\r
+typedef struct {\r
+  UINT32                    Revision;\r
+  EFI_HANDLE                ParentHandle;\r
+  EFI_SYSTEM_TABLE          *SystemTable;\r
+\r
+  //\r
+  // Source location of image\r
+  //\r
+  EFI_HANDLE                DeviceHandle;\r
+  EFI_DEVICE_PATH_PROTOCOL  *FilePath;\r
+  VOID                      *Reserved;\r
+\r
+  //\r
+  // Images load options\r
+  //\r
+  UINT32                    LoadOptionsSize;\r
+  VOID                      *LoadOptions;\r
+\r
+  //\r
+  // Location of where image was loaded\r
+  //\r
+  VOID                      *ImageBase;\r
+  UINT64                    ImageSize;\r
+  EFI_MEMORY_TYPE           ImageCodeType;\r
+  EFI_MEMORY_TYPE           ImageDataType;\r
+\r
+  //\r
+  // If the driver image supports a dynamic unload request\r
+  //\r
+  EFI_IMAGE_UNLOAD          Unload;\r
+\r
+} EFI_LOADED_IMAGE_PROTOCOL;\r
+\r
+extern EFI_GUID gEfiLoadedImageProtocolGuid;\r
+\r
+#endif\r