what is the "kernel" start_addr in NAND
xiangfu
xiangfu at openmoko.org
Fri Aug 15 07:58:24 CEST 2008
Dale Schumacher wrote:
> Andy,
>
> Would you mind giving a description of the steps in the Freerunner
> boot process. I think a few paragraphs would be sufficient to provide
> a conceptual foundation for understanding the roles played by various
> parts of the boot code. AFIAK the steps include:
>
> * Loading stepping-stone program from 1st block(s) in NOR/NAND
> * Loading u-boot and u-boot_env
> * Launching u-boot with u-boot_env
> * Locating Linux kernel based on FS and format specified in u-boot_env
> * Loading and executing specified Linux kernel
>
> I'm not sure how kernel parameters are specified, such as the location
> of root-FS, and I expect I've missed a few steps in the process
> (splash screen?). In any case, more detail on any of the above would
> be greatly appreciated. I would be willing to add it to the wiki as
> well.
>
> Thanks,
> Dale
i am reading the code that Andy write in kboot-stage1, the code is
really cool.
so i know something about load Linux kernel .
the uImage*****.bin we use have a head information in front of the linux
kernel
1. we read the head information from NAND flash then check the image
magic ,
2. get the kernel size base head information .
3. read the kernel from nand to RAM.
4. init some tag /* first tag */ /* revision tag */ /* memory tags
*/ /* kernel commandline */
now i just know those are kernel's parameter but i still know the
detail later i will read all the tag struck
5. trash the cache, turn off I/D-cache, flush I/D-cache
6. run the kernel :-)
More information about the openmoko-kernel
mailing list