<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">2013/4/15 Michael Brown <span dir="ltr"><<a href="mailto:mbrown@fensystems.co.uk" target="_blank">mbrown@fensystems.co.uk</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="HOEnZb"><div class="h5">On 15/04/13 15:37, Joshua C. wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Let me put more light into the situation: this is a msi p67a-gd65<br>
motherboard with am 8MB winbond bios-chip. The bios file has about 2MB<br>
"free" space so I can put some more files on the bios-chip itself. The<br>
motherboard uses a cheap realtek trl8111e chip which is soldgered on the<br>
motherboard and taps one of the pci-e lanes on the chipset. PCI-E 3.0 is<br>
not supported by the p67 chipset. The stock bios uses the propriatery<br>
realtek pxe stack which can be downloaded from the realtek official site<br>
(current version as of today: 2.54). The pxe stack is integrated into<br>
the bios file and I know that the realtek stack is less than 64kb in size.<br>
<br>
I have my custom ipxe rom which comes at about 81kb in size. As I said<br>
the bios flashes successfully and the ipxe works correctly as long as<br>
the intel-sata-controller is not set to raid-mode. The intel-orom is<br>
about 120kb and I know that some older versions on the intel chipset (i<br>
think p57 was it) cannot work with newer oroms because of their size.<br>
<br>
I have disabled all other controllers on the motherboard (I don't need<br>
them anyway). The ones being active are usb, network and intel-sata.<br>
<br>
I can't say to the support service that I'm using a custom orom image<br>
because of the obvious reasons...<br>
<br>
I can compile the mrom image but since both the orom and mrom are in the<br>
same bios file I'm not sure if this can solve the problem. As I said<br>
this is not an expansion card with its own memory/extension bars. I can<br>
give it a try... Should I just compile both as stated here:<br>
<a href="http://ipxe.org/download" target="_blank">http://ipxe.org/download</a> and put them in the bios file? If so how can<br>
the mrom find the orom in this case??<br>
</blockquote>
<br></div></div>
Still exactly the same diagnosis. The size of the BIOS flash chip is not relevant here: what matters is the 128kB limit on option ROM space which is intrinsic to all PC BIOSes. You are (almost certainly) running out of space in this region when using a relatively large iPXE ROM image _and_ the Intel ROM with RAID enabled.<br>
<br>
You can't use .mrom in this situation: .mrom requires a NIC which has a memory BAR at least as large as the expansion ROM BAR (not true with RTL8169-based NICs), and also works only when the ROM image is held on the NIC's own expansion ROM (rather than being embedded into the BIOS flash).<br>
<br>
81kB is surprisingly large. My standard build of bin/realtek.rom comes in at 65kB. Which version of gcc are you using, and have you enabled any non-standard features?<br>
<br>
PCI BIOS 3.00 is not the same thing as PCIe gen3. As I said before, you should check the ROM banner printed by iPXE, which will state the PCI BIOS version.<br>
<br>
Did you try the patch from my previous message?<span class="HOEnZb"><font color="#888888"><br>
<br>
Michael<br>
</font></span></blockquote></div><br></div><div class="gmail_extra">Your patch fixed my problem. I tested this several times with files as big as 25MB (f18 kernel and initrd) and those worked fine. The system booted without any problems. Here is my configuration patch (I know it has redundancies but currently I don't have much time to fix it, and it still works!). I cannot see the pci bios version?!? Maybe this is because it have a custom ipxe string?<br>
<br clear="all"></div><div class="gmail_extra"><br>-- <br>--joshua
</div></div>