summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorYing-Chun Liu (PaulLiu) <[email protected]>2025-07-03 07:28:10 +0100
committerIlias Apalodimas <[email protected]>2025-07-03 12:25:56 +0300
commit146546138af5966c97619797dc7f879c4857b00d (patch)
treef37007229d3f39e633ddcecb9e6a7c5621361b5e /include
parent3c08df58cc43c3ae8ec378ab0e32cfe548313c39 (diff)
efi: add EFI_DEBUG_IMAGE_INFO for debug
This commit adds the functionality of generate EFI_DEBUG_IMAGE_INFO while loading the image. This feature is described in UEFI Spec 2.10. Section 18.4.3. The implementation ensures support for hardware-assisted debugging and provides a standardized mechanism for debuggers to discover the load address of an EFI application. Cc: Ilias Apalodimas <[email protected]> Cc: Peter Robinson <[email protected]> Cc: Simon Glass <[email protected]> Signed-off-by: Ying-Chun Liu (PaulLiu) <[email protected]> Tested-by: Heinrich Schuchardt <[email protected]> Acked-by: Ilias Apalodimas <[email protected]> Signed-off-by: Ilias Apalodimas <[email protected]>
Diffstat (limited to 'include')
-rw-r--r--include/efi_api.h2
-rw-r--r--include/efi_loader.h5
2 files changed, 7 insertions, 0 deletions
diff --git a/include/efi_api.h b/include/efi_api.h
index 8da0a350ce3..77a05f752e5 100644
--- a/include/efi_api.h
+++ b/include/efi_api.h
@@ -581,6 +581,8 @@ struct efi_loaded_image {
#define EFI_DEBUG_IMAGE_INFO_UPDATE_IN_PROGRESS 0x01
#define EFI_DEBUG_IMAGE_INFO_TABLE_MODIFIED 0x02
+#define EFI_DEBUG_IMAGE_INFO_TYPE_NORMAL 0x01
+
/**
* struct efi_debug_image_info_normal - Store Debug Information for normal
* image.
diff --git a/include/efi_loader.h b/include/efi_loader.h
index b60ea58d71f..3e70ac07055 100644
--- a/include/efi_loader.h
+++ b/include/efi_loader.h
@@ -647,6 +647,11 @@ efi_status_t efi_root_node_register(void);
efi_status_t efi_initialize_system_table(void);
/* Called by bootefi to initialize debug */
efi_status_t efi_initialize_system_table_pointer(void);
+/* Called by efi_load_image for register debug info */
+efi_status_t efi_core_new_debug_image_info_entry(u32 image_info_type,
+ struct efi_loaded_image *loaded_image,
+ efi_handle_t image_handle);
+void efi_core_remove_debug_image_info_entry(efi_handle_t image_handle);
/* efi_runtime_detach() - detach unimplemented runtime functions */
void efi_runtime_detach(void);
/* efi_convert_pointer() - convert pointer to virtual address */