On 16/04/13 08:12, Joshua C. wrote:
> Glad the patch works for you. Unfortunately it can't be applied as > a general solution. If PMM allocation fails (which is not > uncommon), then iPXE has no way to shrink itself, so we have to be > pessimistic in reporting our runtime size. Is there a way to test at runtime if PMM works? If so maybe this can help?
Yes. Unfortunately, the decision on what runtime size to advertise in the ROM's PCI header has to be taken at _build_ time; it's a static field, and by the time we get to execute our first instruction, the BIOS has already read the value in the field.
I've been wondering of the manufactorer can do something about this 128kb-orom-limit?
Unfortunately not; it's an architectural limit intrinsic to the way BIOSes work.
If iPXE were allowed to load first, then you may find it works even without a patch. If PMM works, then iPXE will reduce its runtime image below the pessimistic estimate advertised via the ROM's PCI header, and there should then be enough space left in the 128kB for the Intel ROM to load.
Since you are adding the ROM into the BIOS flash, you may be able to alter the order in which ROMs are loaded by adjusting the order within the flash image.
I'll explain to them what caused the problem as well as why they cannot reproduce it at their side. On the other hand I have an efi-bios which should be capable of overcomming the limitations of the old pc-bios.
EFI is completely unaffected by this limit, if you're using a native EFI iPXE ROM. (Most EFI systems also include a BIOS emulation layer, allowing you to use a standard BIOS iPXE ROM; if you're using this then you're still subject to the same 128kB limit.)
To build a native EFI iPXE ROM, you would do: make bin-x86_64-efi/10ec8168.efirom
Any ideas if and how the manufacturer can help (if they're willing to do so, of course)?
Try adjusting the order of ROMs within the flash. If this doesn't help, ask if there's any way you can alter the order in which ROMs are loaded.
Michael _______________________________________________ ipxe-devel mailing list [email protected] https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel

