[GIT PULL 00/33] EFI updates for v5.8

From: Ard Biesheuvel
Date: Fri Apr 24 2020 - 09:06:14 EST


Hello Ingo, Thomas,

Please pull the attached changes into tip/efi/next. There is some
coordination going on with the RISC-V tree this time, so please take the
patches in this exact order, and apply them onto v5.7-rc2 so the first
three patches can serve as a shared stable base between the efi/core
branch and the riscv tree.

The following changes since commit ae83d0b416db002fe95601e7f97f64b59514d936:

Linux 5.7-rc2 (2020-04-19 14:35:30 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git tags/efi-next

for you to fetch changes up to 4eb8320bd1aaa7e69d039f2c251735e3ef0b9a38:

efi: Move arch_tables check to caller (2020-04-24 14:52:16 +0200)

----------------------------------------------------------------
EFI changes for v5.8:
- preliminary changes for RISC-V
- add support for setting the resolution on the EFI framebuffer
- simplify kernel image loading for arm64
- Move .bss into .data via the linker script instead of relying on symbol
annotations.
- Get rid of __pure getters to access global variables
- Clean up the config table matching arrays

----------------------------------------------------------------
Ard Biesheuvel (14):
efi/libstub: Make initrd file loader configurable
efi/libstub: Unify EFI call wrappers for non-x86
efi/libstub/random: Align allocate size to EFI_ALLOC_ALIGN
efi/libstub/random: Increase random alloc granularity
efi/libstub/arm64: Replace 'preferred' offset with alignment check
efi/libstub/arm64: Simplify randomized loading of kernel image
efi/libstub: Add API function to allocate aligned memory
efi/libstub/arm64: Switch to ordinary page allocator for kernel image
efi/libstub: Move efi_relocate_kernel() into separate source file
efi/libstub: Drop __pure getter for efi_system_table
efi/libstub: Drop __pure getters for EFI stub options
efi/libstub/x86: Avoid getter function for efi_is64
efi: Clean up config table description arrays
efi: Move arch_tables check to caller

Arvind Sankar (17):
efi/gop: Remove redundant current_fb_base
efi/gop: Move check for framebuffer before con_out
efi/gop: Get mode information outside the loop
efi/gop: Factor out locating the gop into a function
efi/gop: Slightly re-arrange logic of find_gop
efi/gop: Move variable declarations into loop block
efi/gop: Use helper macros for populating lfb_base
efi/gop: Use helper macros for find_bits
efi/gop: Remove unreachable code from setup_pixel_info
efi/gop: Add prototypes for query_mode and set_mode
efi/gop: Allow specifying mode number on command line
efi/gop: Allow specifying mode by <xres>x<yres>
efi/gop: Allow specifying depth as well as resolution
efi/gop: Allow automatically choosing the best mode
efi/arm: Remove __efistub_global annotation
efi/x86: Remove __efistub_global and add relocation check
efi: Kill __efistub_global

Atish Patra (1):
efi/libstub: Move arm-stub to a common file

Zou Wei (1):
efi/libstub/arm: Make install_memreserve_table static

Documentation/fb/efifb.rst | 33 +-
arch/arm/Kconfig | 2 +-
arch/arm/boot/compressed/vmlinux.lds.S | 2 +-
arch/arm/include/asm/efi.h | 8 -
arch/arm64/Kconfig | 2 +-
arch/arm64/include/asm/efi.h | 8 -
arch/ia64/kernel/efi.c | 12 +-
arch/x86/boot/compressed/vmlinux.lds.S | 1 +
arch/x86/include/asm/efi.h | 29 +-
arch/x86/platform/efi/efi.c | 8 +-
drivers/firmware/efi/Kconfig | 15 +-
drivers/firmware/efi/arm-init.c | 4 +-
drivers/firmware/efi/efi.c | 44 +-
drivers/firmware/efi/libstub/Makefile | 42 +-
drivers/firmware/efi/libstub/alignedmem.c | 57 +++
drivers/firmware/efi/libstub/arm64-stub.c | 94 ++--
drivers/firmware/efi/libstub/efi-stub-helper.c | 47 +-
.../efi/libstub/{arm-stub.c => efi-stub.c} | 23 +-
drivers/firmware/efi/libstub/efistub.h | 96 ++--
drivers/firmware/efi/libstub/fdt.c | 8 +-
drivers/firmware/efi/libstub/file.c | 34 +-
drivers/firmware/efi/libstub/gop.c | 492 ++++++++++++++++-----
drivers/firmware/efi/libstub/mem.c | 191 +-------
drivers/firmware/efi/libstub/randomalloc.c | 6 +-
drivers/firmware/efi/libstub/relocate.c | 174 ++++++++
drivers/firmware/efi/libstub/x86-stub.c | 35 +-
include/linux/efi.h | 2 +-
27 files changed, 895 insertions(+), 574 deletions(-)
create mode 100644 drivers/firmware/efi/libstub/alignedmem.c
rename drivers/firmware/efi/libstub/{arm-stub.c => efi-stub.c} (96%)
create mode 100644 drivers/firmware/efi/libstub/relocate.c