@
ScarFez, you don't want to flash Grub to the SPI. There are more things in the U-Boot package than just booting. One of the sections is for the dual control processors, which handle the speed adjustment and thermal limiting, (if I understand it correctly). Many vendors use closed source code for this function. We do have some work alike open source for that code, (can't remember it's name). Plus, there is DRAM initialization and other SoC specific code that needs to run.
Anyway, you want U-Boot, (or similar firmware), to be in SPI, (eventually), and have Grub as the payload. Thus, we can change kernels, boot devices, password protect booting, or editing grub menu entries, all from Grub.
That's my ideal end result. Stable, fully open source SPI firmware that will check USB, SD card, NVMe and then eMMC for booting. Whence a device has been selected, Grub takes over from that specific device. (So if Grub gets screwed up on your eMMC, you can boot using USB or SD card to recover.)