
In message OF7269A263.F3284F70-ON48256EB2.0013759A@legend.com.cn you wrote:
As I would not use any NOR Flash on my project, U-Boot and Linux Kernel are both seated on the NAND Flash. The bootrom can boot only a piece of code not more than 16K, so I must cut U-Boot down to 16k or divide it into two stages (like GRUB).
This is not (easily) possible. The whole design of U-Boot is based on the assumption that we can call C code (including the needed library routines) as early after power-on as possible. Even before initia- lizing the memory controller we arrange for a serial console and messages printed to the console. All this does not fit in 16 kB.
You could use your own botstrap code which performs enough of the necessary hardware intiialization, and which then could load a full U-Boot image (whih the relkevant initialization parts disabled) form NAND flash - but to do so you would have to implement your own simple boot loader.
It can be done, but it includes a lot of work and I doubt it if makes sense.
U-Boot was not designed for this, and we don't plan to support such a configuration.
Best regards,
Wolfgang Denk