efi_loader: remove efi_exit_caches()
Since GRUB patch d0c070179d4d ("arm/efi: Switch to arm64 linux loader",
2018-07-09) we do not need a workaround for GRUB on 32bit ARM anymore.
So let's eliminate function efi_exit_caches().
This will require Linux distributions to update grub-efi-arm to the GRUB
git HEAD (a tag containing the aforementioned GRUB patch is not available
yet).
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
This commit is contained in:
parent
4b985e0035
commit
3170db63c4
|
|
@ -26,14 +26,6 @@ LIST_HEAD(efi_obj_list);
|
||||||
/* List of all events */
|
/* List of all events */
|
||||||
LIST_HEAD(efi_events);
|
LIST_HEAD(efi_events);
|
||||||
|
|
||||||
/*
|
|
||||||
* If we're running on nasty systems (32bit ARM booting into non-EFI Linux)
|
|
||||||
* we need to do trickery with caches. Since we don't want to break the EFI
|
|
||||||
* aware boot path, only apply hacks when loading exiting directly (breaking
|
|
||||||
* direct Linux EFI booting along the way - oh well).
|
|
||||||
*/
|
|
||||||
static bool efi_is_direct_boot = true;
|
|
||||||
|
|
||||||
#ifdef CONFIG_ARM
|
#ifdef CONFIG_ARM
|
||||||
/*
|
/*
|
||||||
* The "gd" pointer lives in a register on ARM and AArch64 that we declare
|
* The "gd" pointer lives in a register on ARM and AArch64 that we declare
|
||||||
|
|
@ -1684,8 +1676,6 @@ static efi_status_t EFIAPI efi_start_image(efi_handle_t image_handle,
|
||||||
EFI_ENTRY("%p, %p, %p", image_handle, exit_data_size, exit_data);
|
EFI_ENTRY("%p, %p, %p", image_handle, exit_data_size, exit_data);
|
||||||
entry = info->reserved;
|
entry = info->reserved;
|
||||||
|
|
||||||
efi_is_direct_boot = false;
|
|
||||||
|
|
||||||
/* call the image! */
|
/* call the image! */
|
||||||
if (setjmp(&info->exit_jmp)) {
|
if (setjmp(&info->exit_jmp)) {
|
||||||
/*
|
/*
|
||||||
|
|
@ -1799,21 +1789,6 @@ static efi_status_t EFIAPI efi_unload_image(efi_handle_t image_handle)
|
||||||
return EFI_EXIT(EFI_SUCCESS);
|
return EFI_EXIT(EFI_SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* efi_exit_caches() - fix up caches for EFI payloads if necessary
|
|
||||||
*/
|
|
||||||
static void efi_exit_caches(void)
|
|
||||||
{
|
|
||||||
#if defined(CONFIG_ARM) && !defined(CONFIG_ARM64)
|
|
||||||
/*
|
|
||||||
* Grub on 32bit ARM needs to have caches disabled before jumping into
|
|
||||||
* a zImage, but does not know of all cache layers. Give it a hand.
|
|
||||||
*/
|
|
||||||
if (efi_is_direct_boot)
|
|
||||||
cleanup_before_linux();
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* efi_exit_boot_services() - stop all boot services
|
* efi_exit_boot_services() - stop all boot services
|
||||||
* @image_handle: handle of the loaded image
|
* @image_handle: handle of the loaded image
|
||||||
|
|
@ -1867,9 +1842,6 @@ static efi_status_t EFIAPI efi_exit_boot_services(efi_handle_t image_handle,
|
||||||
|
|
||||||
board_quiesce_devices();
|
board_quiesce_devices();
|
||||||
|
|
||||||
/* Fix up caches for EFI payloads if necessary */
|
|
||||||
efi_exit_caches();
|
|
||||||
|
|
||||||
/* This stops all lingering devices */
|
/* This stops all lingering devices */
|
||||||
bootm_disable_interrupts();
|
bootm_disable_interrupts();
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue