我用得cpu是LPC2290,开发板是周立功公司得MagicArm2200。默认的启动方式是由norflash中的bootloader把uclinux内核(位于nand flash中)调入到内存中引导起uclinux。
由于最终产品内存的限制,现在想把uclinux拿到norflash中直接运行,以减少其对内存的消耗。
重新编译了内核,指定编译成rom启动方式,将映象文件拷贝到norflash中的指定位置,由bootloader跳转过去,但是系统好像没有了响应。。。
从uclinux官方网站看到过如下一个讨论:
Hello Armand,
the CONFIG_ROMKERNEL is used in arch/armnommu/kernel/head-armv.S.
However, I have just recognized that the necessary link script for
execution from rom isn't in the official kernel source. I have never
submitted for CVS because currently I have to copy the right link script
by hand. If you want to run the kernel from flash, you can pick parts of
http://cvs.home.at/midori/sources/linux-2.4.20-uc1/xip.patch
The scripts are arch/armnommu/vmlinux-armv-ram.lds.in and
vmlinux-armv-rom.lds.in.
In the official kernel source, the kernel can be executed from ram only.
Regards,
Erwin
可知uclinux默认并不支持从flash启动,需要打另外的补丁,各位大侠,有没有人做过啊?我已经找到这个补丁,但需要根据具体芯片改写,希望对philips芯片熟悉的朋友一起研究一下啊?
关键词:
如何
uclinux
norflash
启动