> Date: Tue, 6 Mar 2018 21:13:50 +0100 > From: Patrick Wildt <patr...@blueri.se> > > On Tue, Mar 06, 2018 at 08:24:04PM +0100, Mark Kettenis wrote: > > > From: Christian Weisgerber <na...@mips.inka.de> > > > Date: Tue, 6 Mar 2018 19:10:32 -0000 (UTC) > > > > > > On 2018-03-05, qweqwe.2009...@gmail.com <qweqwe.2009...@gmail.com> wrote: > > > > > > > I need network boot on my Raspberry Pi 3B. I compiled u-boot and OpenBSD > > > > efiboot from the latest sources, and got following result: > > > > > > TFTP network booting on arm64 is implemented. It works with the > > > OverDrive 1000, which has a UEFI BIOS. > > > > > > I have no idea how the Pi3 boots, though. > > > > U-Boot. New versions of U-Boot implement the necessary UEFI > > interfaces, but they'll only work if U-Boot has a driver for the > > network interface. You should probably check whether the network > > interface works within U-Boot first. > > Actually... No, this is not the issue. U-Boot has an implementation > for the Network Subsystem, which means that you can read/write raw > UDP packets. The implementation on arm64 makes use of a higher level > TFTP implementation which proper EFI implementations provide. This > can be seen on the OverDrive 1000. It provides an interface to "get > files". This means the EFI layer does the actual TFTP protocol. > > u-boot does not provide this layer. If you need network boot support > on u-boot based machines, you either need to implement this layer in > u-boot, our you need to extend our arm64 bootloader to do raw network > packets and the TFTP protocol.
Ah you're right. U-Boot implements TFTP but it isn't exposed through its EFI interface.