首先 介绍如何将内核写进nand flash:
这里 我们有几种方法来实现自引导:
1.采用go的方法:
这是直接从内存引导的内核,我们可以将内核写进nand flash 让他自引导:
2.采用bootm的方法:
首先 我们需要用u-boot-1.2.0/tools/mkimage 工具来处理一下我们的内核文件zImage;
这里解释一下参数的意义:
-A ==> set architecture to 'arch'
-O ==> set operating system to 'os'
-T ==> set image type to 'type'
-C ==> set compression type 'comp'
-a ==> set load address to 'addr' (hex)
-e ==> set entry point to 'ep' (hex)
-n ==> set image name to 'name'
-d ==> use image data from 'datafile'
-x ==> set XIP (execute in place)
接着 我们来通过u-boot来将内核zImage.img下载到内存中:
下面是自引导的实现:
################################################################################
注意:
这里的内核大小是小于1M,如果你的内核大于1M,可以更改size的大小
将0x00100000改成比你的内核更大的值!