Runtime services may (and do) use device mappings on some UEFI implementations.
authorkettenis <kettenis@openbsd.org>
Fri, 12 Jan 2018 14:52:55 +0000 (14:52 +0000)
committerkettenis <kettenis@openbsd.org>
Fri, 12 Jan 2018 14:52:55 +0000 (14:52 +0000)
commit92b45dfeacc25505e7ee31ac33c7dd7e47388b68
treeb5a75681fb755234c133ec4bb67ad85795854d15
parent10224b2f61be2529d5283235b7212429f8de4312
Runtime services may (and do) use device mappings on some UEFI implementations.
Skip these mappings during the remap-pahse as they are likely to be in
a different 512G bloch as memory and SetVirtualAddressMap() shouldn't need
them.  But do assign a new virtual address and let efi(4) create a mapping.
Add a PMAP_DEVICE flag such that pmap_enter() can continue to be used
to create these mappings.

ok patrick@
sys/arch/arm64/arm64/machdep.c
sys/arch/arm64/arm64/pmap.c
sys/arch/arm64/dev/efi.c
sys/arch/arm64/include/pmap.h