Merge tag 'efi-arm-no-relocate-for-rmk' of git://git.kernel.org/pub/scm/linux/kernel...
authorRussell King <rmk+kernel@armlinux.org.uk>
Tue, 26 May 2020 09:52:26 +0000 (10:52 +0100)
committerRussell King <rmk+kernel@armlinux.org.uk>
Tue, 26 May 2020 09:52:26 +0000 (10:52 +0100)
commitfce2bc254adbfe0449ab6bfb51bffba9d3c42689
tree0d800776f0ebd51236df5e091fbd1851530e650f
parent2318976619daf0e868de5b8aff19c1fd8d585867
parentd0f9ca9be11f25ef4151195eab7ea36d136084f6
Merge tag 'efi-arm-no-relocate-for-rmk' of git://git./linux/kernel/git/ardb/linux into misc

Simplify EFI handover to decompressor

The EFI stub in the ARM kernel runs in the context of the firmware, which
means it usually runs with the caches and MMU on. Currently, we relocate
the zImage so it appears in the first 128 MiB, disable the MMU and caches
and invoke the decompressor via its ordinary entry point. However, since we
can pass the base of DRAM directly, there is no need to relocate the zImage,
which also means there is no need to disable and re-enable the caches and
create new page tables etc.

This also allows systems whose DRAM start address is not a round multiple
of 128 MB to decompress the kernel proper to the base of memory, ensuring
that all memory is usable at runtime.