summaryrefslogtreecommitdiff
path: root/inc/efiprot.h
diff options
context:
space:
mode:
authorNigel Croxon <nigel.croxon@hpe.com>2016-03-17 09:50:15 -0400
committerNigel Croxon <nigel.croxon@hpe.com>2016-03-17 09:50:15 -0400
commit3b31a5e394081d1fc8b5d17008d25910bc4e8f49 (patch)
tree9843f8efe76a90daa2b6d6a82507f43975b9a7fc /inc/efiprot.h
parent8c29617e0bfe1675bdaf49d6708672f61faed29a (diff)
downloadgnu-efi-3b31a5e394081d1fc8b5d17008d25910bc4e8f49.tar.gz
Moved LOADED_IMAGE_PROTOCOL definitions into efiprot.h,
with other protocol definitions. Signed-off-by: Nathan Blythe <nblythe@lgsinnovations.com> Signed-off-by: Nigel Croxon <nigel.croxon@hpe.com>
Diffstat (limited to 'inc/efiprot.h')
-rw-r--r--inc/efiprot.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/inc/efiprot.h b/inc/efiprot.h
index 007294d..52c9ace 100644
--- a/inc/efiprot.h
+++ b/inc/efiprot.h
@@ -926,5 +926,44 @@ typedef struct _EFI_COMPONENT_NAME2 {
CHAR8 *SupportedLanguages;
} EFI_COMPONENT_NAME2;
+
+//
+// Loaded Image Protocol
+//
+#define LOADED_IMAGE_PROTOCOL \
+ { 0x5B1B31A1, 0x9562, 0x11d2, {0x8E, 0x3F, 0x00, 0xA0, 0xC9, 0x69, 0x72, 0x3B} }
+
+typedef
+EFI_STATUS
+(EFIAPI *EFI_IMAGE_UNLOAD) (
+ IN EFI_HANDLE ImageHandle
+ );
+
+#define EFI_IMAGE_INFORMATION_REVISION 0x1000
+typedef struct {
+ UINT32 Revision;
+ EFI_HANDLE ParentHandle;
+ struct _EFI_SYSTEM_TABLE *SystemTable;
+
+ // Source location of image
+ EFI_HANDLE DeviceHandle;
+ EFI_DEVICE_PATH *FilePath;
+ VOID *Reserved;
+
+ // Images load options
+ UINT32 LoadOptionsSize;
+ VOID *LoadOptions;
+
+ // Location of where image was loaded
+ VOID *ImageBase;
+ UINT64 ImageSize;
+ EFI_MEMORY_TYPE ImageCodeType;
+ EFI_MEMORY_TYPE ImageDataType;
+
+ // If the driver image supports a dynamic unload request
+ EFI_IMAGE_UNLOAD Unload;
+} EFI_LOADED_IMAGE;
+
+
#endif