[PATCH 1/4] Documentation: arm: [U]EFI runtime services
From: H. Peter Anvin <hidden>
Date: 2013-06-27 18:33:19
Also in:
linux-efi, lkml
From: H. Peter Anvin <hidden>
Date: 2013-06-27 18:33:19
Also in:
linux-efi, lkml
On 06/26/2013 07:38 AM, James Bottomley wrote:
On Wed, 2013-06-26 at 14:59 +0100, Matt Fleming wrote:quoted
On Wed, 26 Jun, at 03:53:11PM, Leif Lindholm wrote:quoted
It's completely feasible, but we'd need to use a different method to do the boot services call with a 1:1 mapping (idmap support is not available until much later in the boot process).At least if you no longer relied upon the idmap we could potentially have a single efi_enter_virtual_mode() call-site in init/main.c, which would be nice.The fixed virtual address scheme currently being looked at for x86_64 to make SetVirtualAddressMap() kexec invariant doesn't work on 32 bit because the address space isn't big enough. For ARM, given that we've much more opportunity to work with the vendors, can we just avoid transitioning to a virtual address map and always just install a physical mapping before doing efi calls?
What we could do on x86-32 is to map from 0xc0000000 downwards. It wouldn't be invariant across kernel builds with different user/kernel split... but I'm not sure we can win that one. The other option is to say sod it and just use straight 1:1 mapping on 32 bits... -hpa