iPXE discussion forum
Mac Pro (late 2013 model) EFI and iPXE booting - Printable Version

+- iPXE discussion forum (https://forum.ipxe.org)
+-- Forum: iPXE user forums (/forumdisplay.php?fid=1)
+--- Forum: General (/forumdisplay.php?fid=2)
+--- Thread: Mac Pro (late 2013 model) EFI and iPXE booting (/showthread.php?tid=7323)

Pages: 1 2


RE: Mac Pro (late 2013 model) EFI and iPXE booting - robinsmidsrod - 2015-01-03 16:33

kiwi66: The keyboard issue is a known problem. I've heard that someone thinks it is a timing issue (USB controller init), and adding a few sleep calls might make it work, but I've heard other say that it doesn't work even with that. Try and see.

It would be very useful if you explained how you created the nbi bundle (which commands you ran and so forth). A howto either here on the forum or under the appnote hierarchy on the wiki would be great!


RE: Mac Pro (late 2013 model) EFI and iPXE booting - kiwi66 - 2015-01-04 01:44

I have documented my work here:

http://www.fink.org/netboot/netbooting.html

it includes a script to build a NBI from the src directly.
Now I can boot from the network into IPXE , fetch my config via HTTP from my webserver and then load linux kernel and ramdisk.

There's a few things which don't work when trying to build IPXE on MacOS X, namely it uses clang and not gcc and that spills out some warnings as errors which then stop the compilation. But compiling it under Linux and using it on a Mac works just fine.


RE: Mac Pro (late 2013 model) EFI and iPXE booting - gzebedin - 2015-01-11 13:04

Hello Kiwi66!

Thank you for you posting and the detailed descripton! I am working on the same problem some time now and thanks to your post I could finally get macbooks to netboot IPXE. I used your nbi file and ipxe starts up fine but when it tries to load via TFTP it get an "exec format error". usual PXE with BIOS Laptops from this file works. See attached image!
[Image: AADxjrB5k_RABPu5_sIid-eua]
do you maybe have an idea?

Thank you
Gerald


(2015-01-04 01:44)kiwi66 Wrote:  I have documented my work here:

http://www.fink.org/netboot/netbooting.html

it includes a script to build a NBI from the src directly.
Now I can boot from the network into IPXE , fetch my config via HTTP from my webserver and then load linux kernel and ramdisk.

There's a few things which don't work when trying to build IPXE on MacOS X, namely it uses clang and not gcc and that spills out some warnings as errors which then stop the compilation. But compiling it under Linux and using it on a Mac works just fine.



RE: Mac Pro (late 2013 model) EFI and iPXE booting - Aigor - 2015-02-19 12:46

Very Interesting Thread, can i ask you somenthing about normal network boot of real Macintosh?
I have one insane idea, i play with hackintosh and i would like to build a boot server to serve network installation for hackintosh, via some bios modification i can boot untouched OSX from usb stick, so i dont need to use clover or other bootloader, my lacks of knoweledge start in "to know how osx network boot works"


RE: Mac Pro (late 2013 model) EFI and iPXE booting - addseo1234 - 2015-08-20 05:09

Thank you for you posting and the detailed descripton!


RE: Mac Pro (late 2013 model) EFI and iPXE booting - daledondale - 2016-01-04 11:21

That GUID is EFI_DEVICE_PATH_TO_TEXT_PROTOCOL_GUID; it represents the EFI functionality for converting a device path into a printable representation.

Ironically, iPXE uses that protocol only for debugging purposes; before enabling DEBUG=efi_init it wouldn't even have tried to locate the protocol. You can temporarily hack around the missing protocol by commenting out the line
________________________________________________________________________________​_________________________________________________________
Como crear un blog - Crear una app


RE: Mac Pro (late 2013 model) EFI and iPXE booting - korekhov - 2016-07-19 01:33

(2014-08-30 11:39)robinsmidsrod Wrote:  @goldenfri: EFI doesn't support anything but EFI binary formats until now. There is no way to add bzImage support before the developers enable that in the source. Until now you'll have to just boot other EFI images, like vmlinuz.efi.

Are there changes to this? I tried to enable different images types including bzImage, but make fails on me. See this for details if interested - https://gist.github.com/korekhov/94357966843def2d281b580ce7b4e0ba

The issue I'm trying to get past is this error I get when loading CentOS7 vmlinuz/initrd:

<snip>
[ 6.929403] md: autorun ...
[ 6.932518] md: ... autorun DONE.
[ 6.936437] VFS: Cannot open root device "live:/fdi.iso" or unknown-block(0,0): error -19
[ 6.939850] usb 2-1: new high-speed USB device number 2 using ehci-pci
[ 6.952855] Please append a correct "root=" boot option; here are the available partitions:
[ 6.962185] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[ 6.971415] CPU: 18 PID: 1 Comm: swapper/0 Not tainted 3.10.0-229.20.1.el7.x86_64 #1
[ 6.980060] Hardware name: Dell DCS6430G/038VV0, BIOS 2.0.1 01/28/2016
[ 6.987348] ffffffff81813230 00000000e541dbf2 ffff882f76affd60 ffffffff816045b6
[ 6.995648] ffff882f76affde0 ffffffff815fde5a ffffffff00000010 ffff882f76affdf0
[ 7.003949] ffff882f76affd90 00000000e541dbf2 0000000000000008 ffff882f76affe00
[ 7.012250] Call Trace:
[ 7.014991] [<ffffffff816045b6>] dump_stack+0x19/0x1b
[ 7.020730] [<ffffffff815fde5a>] panic+0xd8/0x1e7
[ 7.026079] [<ffffffff81a4557e>] mount_block_root+0x225/0x2b0
[ 7.032591] [<ffffffff81a4565c>] mount_root+0x53/0x56
[ 7.038329] [<ffffffff81a4579b>] prepare_namespace+0x13c/0x174
[ 7.044940] [<ffffffff81a45268>] kernel_init_freeable+0x1f0/0x217
[ 7.051841] [<ffffffff81a449db>] ? initcall_blacklist+0xb0/0xb0
[ 7.054198] usb 2-1: New USB device found, idVendor=8087, idProduct=8002
[ 7.054200] usb 2-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 7.054462] hub 2-1:1.0: USB hub found
[ 7.054562] hub 2-1:1.0: 8 ports detected
[ 7.082647] [<ffffffff815f2b70>] ? rest_init+0x80/0x80
[ 7.088473] [<ffffffff815f2b7e>] kernel_init+0xe/0xf0
[ 7.094216] [<ffffffff81614358>] ret_from_fork+0x58/0x90
[ 7.100242] [<ffffffff815f2b70>] ? rest_init+0x80/0x80
<snip>

Am I even correct to think that my ipxe.efi is missing proper image support?
Thanks!