Re: [PATCH v2 1/6] efi: stub: add some missing boot service prototypes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 8/9/22 10:09, Ard Biesheuvel wrote:
Define the correct prototypes for the load_image/start_image and
install_multiple_protocol_interfaces boot service pointers so we can
call them from the EFI zboot code.

Signed-off-by: Ard Biesheuvel <ardb@xxxxxxxxxx>

Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@xxxxxxxxxxxxx>

---
  drivers/firmware/efi/libstub/efistub.h | 12 ++++++++----
  1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/firmware/efi/libstub/efistub.h b/drivers/firmware/efi/libstub/efistub.h
index ab9e990447d3..33215d7bd276 100644
--- a/drivers/firmware/efi/libstub/efistub.h
+++ b/drivers/firmware/efi/libstub/efistub.h
@@ -254,8 +254,12 @@ union efi_boot_services {
  							    efi_handle_t *);
  		efi_status_t (__efiapi *install_configuration_table)(efi_guid_t *,
  								     void *);
-		void *load_image;
-		void *start_image;
+		efi_status_t (__efiapi *load_image)(bool, efi_handle_t,
+						    efi_device_path_protocol_t *,
+						    void *, unsigned long,
+						    efi_handle_t *);
+		efi_status_t (__efiapi *start_image)(efi_handle_t, unsigned long *,
+						     efi_char16_t **);
  		efi_status_t __noreturn (__efiapi *exit)(efi_handle_t,
  							 efi_status_t,
  							 unsigned long,
@@ -277,8 +281,8 @@ union efi_boot_services {
  		void *locate_handle_buffer;
  		efi_status_t (__efiapi *locate_protocol)(efi_guid_t *, void *,
  							 void **);
-		void *install_multiple_protocol_interfaces;
-		void *uninstall_multiple_protocol_interfaces;
+		efi_status_t (__efiapi *install_multiple_protocol_interfaces)(efi_handle_t *, ...);
+		efi_status_t (__efiapi *uninstall_multiple_protocol_interfaces)(efi_handle_t, ...);
  		void *calculate_crc32;
  		void *copy_mem;
  		void *set_mem;




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux