efi_loader: export efi_convert_pointer()

We need ConvertPointer() to adjust pointers when implementing  runtime
services within U-Boot.

After ExitBootServices() gd is not available anymore. So we should not use
EFI_ENTRY() and EFI_EXIT().

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
This commit is contained in:
Heinrich Schuchardt 2020-03-24 18:05:22 +01:00
parent 5f7dcf079d
commit a44d2a2399
2 changed files with 6 additions and 5 deletions

View file

@ -397,6 +397,9 @@ efi_status_t efi_root_node_register(void);
efi_status_t efi_initialize_system_table(void); efi_status_t efi_initialize_system_table(void);
/* efi_runtime_detach() - detach unimplemented runtime functions */ /* efi_runtime_detach() - detach unimplemented runtime functions */
void efi_runtime_detach(void); void efi_runtime_detach(void);
/* efi_convert_pointer() - convert pointer to virtual address */
efi_status_t EFIAPI efi_convert_pointer(efi_uintn_t debug_disposition,
void **address);
/* Called by bootefi to make console interface available */ /* Called by bootefi to make console interface available */
efi_status_t efi_console_register(void); efi_status_t efi_console_register(void);
/* Called by bootefi to make all disk storage accessible as EFI objects */ /* Called by bootefi to make all disk storage accessible as EFI objects */

View file

@ -496,15 +496,13 @@ static __efi_runtime efi_status_t EFIAPI efi_convert_pointer_runtime(
* @address: pointer to be converted * @address: pointer to be converted
* Return: status code * Return: status code
*/ */
static __efi_runtime efi_status_t EFIAPI efi_convert_pointer( __efi_runtime efi_status_t EFIAPI
efi_uintn_t debug_disposition, void **address) efi_convert_pointer(efi_uintn_t debug_disposition, void **address)
{ {
efi_physical_addr_t addr; efi_physical_addr_t addr;
efi_uintn_t i; efi_uintn_t i;
efi_status_t ret = EFI_NOT_FOUND; efi_status_t ret = EFI_NOT_FOUND;
EFI_ENTRY("%zu %p", debug_disposition, address);
if (!efi_virtmap) { if (!efi_virtmap) {
ret = EFI_UNSUPPORTED; ret = EFI_UNSUPPORTED;
goto out; goto out;
@ -533,7 +531,7 @@ static __efi_runtime efi_status_t EFIAPI efi_convert_pointer(
} }
out: out:
return EFI_EXIT(ret); return ret;
} }
static __efi_runtime void efi_relocate_runtime_table(ulong offset) static __efi_runtime void efi_relocate_runtime_table(ulong offset)