diff mbox series

[v3,07/35] efi: Add a way to obtain boot services in the app

Message ID 20211025213041.v3.7.I72ca3496a359815552442fccbd017f0474108e28@changeid
State Superseded
Delegated to: Heinrich Schuchardt
Headers show
Series efi: Improvements to U-Boot running on top of UEFI | expand

Commit Message

Simon Glass Oct. 26, 2021, 3:30 a.m. UTC
Add a function to return this information along with a stub for the
efi_info_get() function, since calling it otherwise hangs U-Boot.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

(no changes since v1)

 include/efi.h     |  8 +++++++-
 lib/efi/efi_app.c | 10 ++++++++++
 2 files changed, 17 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/include/efi.h b/include/efi.h
index 18c13e0370a..b5835422b95 100644
--- a/include/efi.h
+++ b/include/efi.h
@@ -444,9 +444,15 @@  extern char _binary_u_boot_bin_start[], _binary_u_boot_bin_end[];
  *
  * @return pointer to EFI system table
  */
-
 struct efi_system_table *efi_get_sys_table(void);
 
+/**
+ * efi_get_boot() - Get access to the EFI boot services table
+ *
+ * @return pointer to EFI boot services table
+ */
+struct efi_boot_services *efi_get_boot(void);
+
 /**
  * efi_get_ram_base() - Find the base of RAM
  *
diff --git a/lib/efi/efi_app.c b/lib/efi/efi_app.c
index 907bacd716a..f61665686c5 100644
--- a/lib/efi/efi_app.c
+++ b/lib/efi/efi_app.c
@@ -31,11 +31,21 @@  struct efi_system_table *efi_get_sys_table(void)
 	return global_priv->sys_table;
 }
 
+struct efi_boot_services *efi_get_boot(void)
+{
+	return global_priv->boot;
+}
+
 unsigned long efi_get_ram_base(void)
 {
 	return global_priv->ram_base;
 }
 
+int efi_info_get(enum efi_entry_t type, void **datap, int *sizep)
+{
+	return -ENOSYS;
+}
+
 static efi_status_t setup_memory(struct efi_priv *priv)
 {
 	struct efi_boot_services *boot = priv->boot;