]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Use adrp in the arm64 efi loader
authorandrew <andrew@FreeBSD.org>
Tue, 13 Oct 2020 16:51:05 +0000 (16:51 +0000)
committerandrew <andrew@FreeBSD.org>
Tue, 13 Oct 2020 16:51:05 +0000 (16:51 +0000)
commitd6331c6df9897d89582271e2ab33e40031d8f2a4
tree0ade48ac98c68640dd4c9b8cd10bbacc133e961d
parenta5e15f451a2086bc9ddbe6c89e4557623cb09c28
Use adrp in the arm64 efi loader

On startup the arm64 efi loaders need to know PC-relative addresses.
Previously we used the adr instruction to find this address, however this
instruction is limited to +/- 1MiB.

Switch to adrp to find the 4k page the address is within and an add to
set the bottom 12 bits. This lets us address +/- 4GiB which should be
large enough for now.

Reported by: imp
MFC after: 2 weeks
Sponsored by: Innovate UK
stand/efi/loader/arch/arm64/start.S