[ipxe-devel] 64 bit bARS support.
Michael Brown
mbrown at fensystems.co.uk
Fri May 24 12:16:16 UTC 2013
On 24/05/13 10:54, Alex Markuze wrote:
> I’ve noticed that the iPXE code has macros and comments regarding the
> support of 64 bit BAR addresses.
>
> Has this code been ever validated? Does it work or does it still need
> patching?
The code is working as far as I know.
The special handling for 64-bit BARs is twofold: firstly we need to
detect BARs that are 64-bit capable and treat them as such (i.e. treat
the next BAR as the high dword rather than being a separate BAR);
secondly we need to fail to map 64-bit capable BARs if there's no way
for the CPU to access them (i.e. if the BIOS has assigned an address
above 4GB and we are running a 32-bit binary).
Most BIOSes should assign addresses below 4GB even for 64-bit capable
BARs, to allow for access from within a 32-bit OS.
Under UEFI, the problem goes away since we (usually) run as a 64-bit binary.
Michael
More information about the ipxe-devel
mailing list