注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

蒙奇D小豌豆的博客

蒙奇D小豌豆的学习记录

 
 
 

日志

 
 

powepc中mpc83xx的U-boot启动配置(flash启动和RAM启动)  

2010-04-11 21:46:37|  分类: others |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

在uboot中设置分区的命令:
setenv mtdparts mtdparts=phys_mapped_flash:128k(HRCW)ro,6m(OSI),128k(bcfg),128k(acfg),128k(slog),-(free)ro
setenv othbootargs $mtdparts
saveenv
A  设置flash启动命令:

擦除命令,指定起始地址和长度:
=> erase fe020000 +100000   /*下面cp.b可能会要求先擦除flash分区*/ 

将内核映像和文件系统烧到flash,命令为:
tftp 100000 uImage
cp.b 100000 fe020000 100000
tftp 300000 rootfs.ext2.gz.uboot
cp.b 300000 fe120000 387323
烧写完后,使用imls查看为:
=> imls
Image at FE020000:
   Image Name:   Linux-2.6.11
   Image Type:   PowerPC Linux Kernel Image (gzip compressed)
   Data Size:    999117 Bytes = 975.7 kB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
Image at FE120000:
   Image Name:   uboot ext2 ramdisk rootfs
   Image Type:   PowerPC Linux RAMDisk Image (gzip compressed)
   Data Size:    3699427 Bytes =  3.5 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK


=> setenv flashboot 'setenv bootargs root=/dev/ram rw console=$consoledev,$baudrate $othbootargs;bootm $kernelimaddr $ramdiskimaddr'
=> setenv kernelimaddr fe020000
=> setenv ramdiskimaddr fe120000
=> saveenv
设置启动命令从flash启动
=> setenv bootcmd $flashboot
=> printenv bootcmd

uboot中的环境参数:
=> printenv
ramboot=setenv bootargs root=/dev/ram rw console=$consoledev,$baudrate $othboota
rgs;tftp $ramdiskaddr $ramdiskfile;tftp $loadaddr $bootfile;bootm $loadaddr $ram
diskaddr
nfsboot=setenv bootargs root=/dev/nfs rw nfsroot=$serverip:$rootpath ip=$ipaddr:
$serverip:$gatewayip:$netmask:$hostname:$netdev:off console=$consoledev,$baudrat
e $othbootargs;tftp $loadaddr $bootfile;bootm $loadaddr
baudrate=115200
loads_echo=1
ethaddr=00:04:9f:11:22:33
eth1addr=00:E0:0C:00:7D:01
rootpath=/tftpboot/10.193.20.150
loadaddr=200000
netdev=eth0
consoledev=ttyS0
ramdiskaddr=400000
bootfile=uImage
ramdiskfile=rootfs.ext2.gz.uboot
mtdparts=mtdparts=phys_mapped_flash:128k(HRCW)ro,6m(OSI),128k(bcfg),128k(acfg),1
28k(slog),-(free)ro
hostname=FTTB-MOCA
othbootargs=mtdparts=phys_mapped_flash:128k(HRCW)ro,6m(OSI),128k(bcfg),128k(acfg
),128k(slog),-(free)ro
bootdelay=3
filesize=f3f0d
fileaddr=100000
gatewayip=10.193.20.254
netmask=255.255.255.0
ipaddr=192.168.1.10
serverip=192.168.1.100
flashboot=setenv bootargs root=/dev/ram rw console=$consoledev,$baudrate $othboo
targs;bootm $kernelimaddr $ramdiskimaddr
kernelimaddr=fe020000
ramdiskimaddr=fe120000
ethact=Freescale TSEC0
bootcmd=setenv bootargs root=/dev/ram rw console=$consoledev,$baudrate $othboota
rgs;bootm $kernelimaddr $ramdiskimaddr
stdin=serial
stdout=serial
stderr=serial

Environment size: 1316/8188 bytes

=>boot /*启动*/

 

B   设置成RAM启动命令

=>tftp 100000 uImage

=>tftp 300000 rootfs.ext2.gz.uboot
=>bootcmd=bootm 100000  -  300000

=>boot /*启动*/

进入linux后,查看参数是否正常传递:
cat /proc/cmdline
root=/dev/ram rw console=ttyS0,115200 mtdparts=phys_mapped_flash:128k(HRCW)ro,6m
(OSI),128k(bcfg),128k(acfg),128k(slog),-(free)ro
cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00020000 00020000 "HRCW"
mtd1: 00600000 00020000 "OSI"
mtd2: 00020000 00020000 "bcfg"
mtd3: 00020000 00020000 "acfg"
mtd4: 00020000 00020000 "slog"
mtd5: 00980000 00020000 "free"

  评论这张
 
阅读(1426)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018