Quote:
Originally Posted by louigi600
Might be a good thing to have this "Sticky" at the top ... just in case someone misses this important information in the near future.
Stuart: what are the chances that u-boot for the trimslice works for the AC100 ?
|
Each U-Boot is configured specifically for each device. When you build it you specify a board config file.
Therefore the U-Boot binary for the Trimslice will not be of use for anything other than a Trimslice.
The support I added for FDT is around adding the dtb files to the kernel packages, and setting them up to be versionless so a kernel can be upgraded without having to modify the u-boot config (in the same was as the uImage or uinitrd is loaded). The Trimslice needs no further work since its u-boot has support for FDT.
For other devices with U-boot, you may find that they don't boot any kernels past version 3.12 regardless of FDT. I don't recall what the change was in the kernel to cause this, but it affected the 'Plug' computers that had the original Marvell branded u-boot. However, my OpenRD client has the original Marvell branded u-boot and it works fine with Linux 3.15.
If you're not using U-Boot then you'd still need either that alternative boot loader to be upgraded to support FDT (the best choice) or you'd need to append the FDT to the zImage (and in u-boot's case, you'd make the uImage file from the zImage with the appended FDT).
I had what I think is the best idea to handle this. The correct FDT can be supplied as a kernel parameter and the doinst.sh script in the kernel package can handle it correctly without having to rely on some (most likely incorrect) guesses about what the architecture is. I can work around devices that don't need an FDT appending (such as the OpenRD client), and try and guess the device if the kernel parameter isn't present.
I'm not sure this will make a lot of sense if you haven't done any reading about FDT and so on, but it will if you ever upgrade and your kernel spits out that your board isn't supported, or halts at 'Uncompressing Linux.....'.