[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v4 0/6] efi: arm linux loader unification and correctness
From: |
Leif Lindholm |
Subject: |
[PATCH v4 0/6] efi: arm linux loader unification and correctness |
Date: |
Mon, 9 Jul 2018 18:32:59 +0100 |
The existing linux loader for 32-bit ARM is really only a piggy-back
on the U-Boot loader, and for UEFI it's entirely possible to reuse
the same loader across multiple architectures.
This set will stop the ability to boot non-efistub kernels on arm-efi,
but that has really only ever worked by luck.
Also, both arm and arm64 have certain requirements with regards to
placement of the initrd, which weren't honored by the existing loader -
leading to theoretical issues on arm and some very observable ones on
arm64 systems with large amounts of RAM or large holes in the memory
map. So ensure the unified loader respects these requirements.
Changes since v3:
- Reformatted grub_efi_get_ram_base() based on feedback.
- Renamed grub_efi_linux_* functions grub_armxx_efi_linux_*, and
made the Linux magic macro naming match x86.
- Clarified commit message for 4/6.
- Relocated the comment and macros for initrd allocation function.
Changes since v2:
It would be difficult to provide a linear history of this set, but the
main change since v2 is the renaming/refactoring of linux headers to
be included for multiple architectures in a single source file
(which was actually submitted as a separate set), and the follow-on
changes this required for the unified apis.
Leif Lindholm (6):
efi: add central copy of grub_efi_find_mmap_size
efi: add grub_efi_get_ram_base() function for arm64
arm64 linux loader: rename functions and macros and move to common
headers
arm/efi: switch to arm64 linux loader
arm: delete unused efi support from loader/arm
efi: restrict arm/arm64 linux loader initrd placement
grub-core/Makefile.am | 1 -
grub-core/Makefile.core.def | 7 +-
grub-core/kern/arm/efi/misc.c | 202 --------------------------------------
grub-core/kern/efi/mm.c | 51 ++++++++++
grub-core/loader/arm/linux.c | 28 ------
grub-core/loader/arm64/linux.c | 53 ++++++++--
grub-core/loader/arm64/xen_boot.c | 10 +-
include/grub/arm/efi/loader.h | 26 -----
include/grub/arm/linux.h | 21 +---
include/grub/arm64/linux.h | 9 +-
include/grub/efi/efi.h | 6 ++
11 files changed, 120 insertions(+), 294 deletions(-)
delete mode 100644 grub-core/kern/arm/efi/misc.c
delete mode 100644 include/grub/arm/efi/loader.h
--
2.11.0
- [PATCH v4 0/6] efi: arm linux loader unification and correctness,
Leif Lindholm <=
- [PATCH v4 1/6] efi: add central copy of grub_efi_find_mmap_size, Leif Lindholm, 2018/07/09
- [PATCH v4 2/6] efi: add grub_efi_get_ram_base() function for arm64, Leif Lindholm, 2018/07/09
- [PATCH v4 3/6] arm64 linux loader: rename functions and macros and move to common headers, Leif Lindholm, 2018/07/09
- [PATCH v4 4/6] arm/efi: switch to arm64 linux loader, Leif Lindholm, 2018/07/09
- [PATCH v4 6/6] efi: restrict arm/arm64 linux loader initrd placement, Leif Lindholm, 2018/07/09
- [PATCH v4 5/6] arm: delete unused efi support from loader/arm, Leif Lindholm, 2018/07/09
- Re: [PATCH v4 0/6] efi: arm linux loader unification and correctness, Daniel Kiper, 2018/07/10