【原创】uboot 自引导linux 内核
2014-04-03 20:00
886 查看
我们原来通过命令 U-BOOT# tftp 0x82000000 zImage;bootm 来加载内核并启动它;
但是这样太麻烦了,后来我们就像让UBOOt自己引导内核,我们只要将裁剪好的Linux内核写到某个位置即可。
步骤:
一、将Linux 镜像加载到内存起始地址0x82000000(这个地址以开饭板内存大小而定);
命令: #tftp 0x82000000 Boot3 【Boot3为我 的镜像名字】
二、擦除nand flash 将要被写的空间【此以0x100000--0x12000000为例】【此空间大小以镜像实际大小而定】
命令:#nand erase 0x100000 0x1100000
三、将镜像写到nand flash内
命令:#nand write 0x82000000 0x100000 0x11000000 【此句表示:从内存地址0x82000000 处将镜像写到nand flash 空间0x100000--0x12000000】
接下来就是配置UBOOT环境变量了```
四、选择UBOOT引导内核的存储位置
命令:# setenv bootargs console=ttyO0,57600n8 rw mem=128M root=/dev/mtdblock2 【此句表示:从mtdblock2引导内核,原本是从内存root=/dev/ram】
五、设置读取镜像的位置,即,刚才写入nand flash 的地址
命令:#setenv bootcmd nand read 0x82000000 0x100000 0x1100000\ ;bootm 0x82000000
到此,大功告成,掉电重启板子将自动进入内核。
但是这样太麻烦了,后来我们就像让UBOOt自己引导内核,我们只要将裁剪好的Linux内核写到某个位置即可。
步骤:
一、将Linux 镜像加载到内存起始地址0x82000000(这个地址以开饭板内存大小而定);
命令: #tftp 0x82000000 Boot3 【Boot3为我 的镜像名字】
二、擦除nand flash 将要被写的空间【此以0x100000--0x12000000为例】【此空间大小以镜像实际大小而定】
命令:#nand erase 0x100000 0x1100000
三、将镜像写到nand flash内
命令:#nand write 0x82000000 0x100000 0x11000000 【此句表示:从内存地址0x82000000 处将镜像写到nand flash 空间0x100000--0x12000000】
接下来就是配置UBOOT环境变量了```
四、选择UBOOT引导内核的存储位置
命令:# setenv bootargs console=ttyO0,57600n8 rw mem=128M root=/dev/mtdblock2 【此句表示:从mtdblock2引导内核,原本是从内存root=/dev/ram】
五、设置读取镜像的位置,即,刚才写入nand flash 的地址
命令:#setenv bootcmd nand read 0x82000000 0x100000 0x1100000\ ;bootm 0x82000000
到此,大功告成,掉电重启板子将自动进入内核。
相关文章推荐
- Linux0.11内核--启动引导代码分析bootsect.s
- U-boot引导Linux-2.6.39.3内核问题
- Linux0.11内核--启动引导代码分析bootsect.s
- Linux0.11内核--启动引导代码分析bootsect.s
- fl2440 uboot 成功引导linux2.6.28.7内核启动
- U-Boot-2009.8引导Linux的2.6.32.2内核
- U-boot引导Linux-2.6.39.3内核问题(转)
- linux内核完全注释---学习札记--引导启动程序boot
- T2080RDB-PC uboot 引导 Linux 内核启动
- [Linux内核完全剖析]第六章 引导启动程序(boot)总结
- GRUB引导linux3.0内核
- Linux 内核引导选项简介
- 使用u-boot引导smart210提供的内核,卡在了“Starting kernel ...”
- [置顶] 【原创分享】嵌入式linux应用之U-BOOT移植定制篇--20130822
- uboot 引导Linux
- linux 驱动学习笔记03--Linux 内核的引导
- 2012-Linux->18(使U-BOOT能正确引导LINUX for 1_20 error,but...)->1
- 用nasm重写linux0.0磁盘引导程序boot.s
- linux 内核 内存管理 bootmem alloctor 申请内存
- Linux 内核游记-bootsect.S