[U-Boot] Proposal to add NAND-boot support for Sunxi SPL

Roy Spliet r.spliet at ultimaker.com
Fri May 22 12:12:05 CEST 2015


Hello Hans,

Sorry for ignoring the second half of your question so far. Here's 
what's on my mind.
Op 21-05-15 om 20:08 schreef Hans de Goede:
> Hi Roy,
>
> 2) What is the plan to add support for loading files from nand in 
> u-boot proper,
> so that we can get (e.g.) extlinux.conf + kernel +dtb from a /boot on 
> nand ?

For the full U-boot I agree we want both MMC and NAND support, 
regardless of where it was loaded from. From what I can tell U-boot 
already has UBI support. It sounds like a logical step to try and 
construct a proper NAND driver for U-boot that either co-exists with 
this SPL driver or, even better, shares code. That way, I only assume 
that the UBI and UBIFS layers will take care of all the rest.
The NAND framework in u-boot resembles Linux in many ways. I'm currently 
in doubt whether we should take Boris' driver as a starting point, or 
rather use something heavily reduced that re-uses this SPL code. Either 
way, in U-boot we can perform a clean NAND-chip detection, preferably 
based on DT definitions as we also use on Linux, and take care of 
everything proper like PLL settings and a bunch of parameters which are 
now hard-coded or a configuration option in sunxi-common.h.

SPL is a different story. I don't know the exact size restriction, but 
for A10 I've heard it might be as little as 30KB. Current SPL with my 
patches and without MMC is already 23KiB. I personally think we can 
reduce it slightly by taking out support for reading everything other 
than the bootloader partition from SPL (so remove non-syndrome mode, 
remove the random seeds table...), but it certainly doesn't leave any 
room for the full NAND framework to do ID-based NAND chip detection.
I personally think it's acceptable if NAND-SPL does not have MMC support 
and vice-versa. For NAND, SPL is only loaded when there is no 
first-level bootloader found on the MMC, so I safely dare to assume 
U-boot isn't there. MMCs are generally not so tiny that SPL fits but 
U-boot doesn't.

Questions, comments?
Cheers,

Roy

>
> Regards,
>
> Hans


-- 


IMAGINE IT >> MAKE IT

Meet us online at Twitter <http://twitter.com/ultimaker>, Facebook 
<http://facebook.com/ultimaker>, Google+ <http://google.com/+Ultimaker>

www.ultimaker.com


More information about the U-Boot mailing list