
Thanks for the response. We like what you do with u-boot, we believe it is a better solution.
We've reviewed the PI netboot project and have come to the conclusion that even with modifications it will not provide the flexibility of u-boot, due to the proprietary nature of the PI firmware.
With the current PI implementation we have to configure the hardware on each and every PI, and cannot ship them and the sd card to a customer and have them installed. There is the extra step of configuring the hardware. After configuring the hardware a customer has the potential of having two identical devices which work differently, non-netboot and netboot, with no visible way to tell the difference. Back to what it would take for u-boot to fill this need? The u-boot portion of the kernel parms needs to be appended to the firmware portion of the kernel pams which are in the directory:
/proc/device-tree/chosen/bootargs where device-tree is a link to /sys/firmware/devicetree/base it appears the parsing requirement may be limited, although I do not know how these files are written, by firmware or by the kernel. How can we get your help? Thanks
Duncan Hare
714 931 7952
From: Stephen Warren swarren@wwwdotorg.org To: Simon Glass sjg@chromium.org; dh@synoia.com Cc: "u-boot@lists.denx.de" u-boot@lists.denx.de; Stephen Warren swarren@nvidia.com Sent: Friday, August 26, 2016 9:00 AM Subject: Re: [U-Boot] u-boot - raspberry pi
On 08/26/2016 08:39 AM, Simon Glass wrote:
+Stephen
On 25 August 2016 at 22:12, dh@synoia.com wrote:
We have u-boot working on a raspberry pi, but need to append our kernel parms to those built by the firmware.
is there a version of u-boot for the pi 3, with this support, and some doc (the variable name for the firmware built kernel parms), a github link would be perfect.
We have an order of 400 PIs for a hospital in S America, and want to supply net boot, including kernels. Duncan Hare
The current port of U-Boot to the Pi is intended to replace the operations that the binary FW performs rather than add to them. As such, there's currently no easy way to do what you need with U-Boot.
Two potential options exist:
1) Update U-Boot so that it saves the DTB pointer the binary FW passes at boot, parses this DTB, and exposes various properties (its address, the command-line embodied within it) as environment variables. U-Boot scripts could then use those environment variables as they see fit (e.g. ignore them to be compatible with current U-Boot behaviour, or set $bootargs by appending the extracted cmdline to whatever you want to add).
2) The binary FW recently grew a network boot feature itself. Perhaps this will fulfil your network boot needs by itself, so you don't need to use U-Boot.
https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/net...
I haven't tried this yet, but it sounds good.