关于文件系统的烧写地址 - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4930|回复: 6
打印 上一主题 下一主题

关于文件系统的烧写地址

[复制链接]

2

主题

7

帖子

36

积分

新手上路

Rank: 1

积分
36
跳转到指定楼层
楼主
发表于 2014-12-30 16:34:04 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
在烧写文件系统到Nand Flash 上时,怎么确定要开始烧写的地址阿,只要在uImage后面就行了吗?  在uboot 环境变量里面是否需要设置文件系统的起始地址阿?
9 c; h3 G* w- m4 T' @& G# r6 y3 t9 J) d
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

2

主题

7

帖子

36

积分

新手上路

Rank: 1

积分
36
推荐
 楼主| 发表于 2014-12-30 20:14:05 | 只看该作者
hefeislb2000 发表于 2014-12-30 20:11) `, }3 Q  q5 i7 M& x. ^. ?
如果文件系统和内核都在Nand  Flash上呢, uboot命令是否也需要配置文件系统的地址阿?

3 z; |. _2 I) Y  U/ C! [如果我修改了文件系统的烧写地址,是否要修改uboot代码阿 ?
5 R/ A" w; }) S! ~0 K1 O
回复 支持 1 反对 0

使用道具 举报

14

主题

102

帖子

821

积分

创龙

Rank: 8Rank: 8

积分
821
7#
发表于 2014-12-31 18:43:35 | 只看该作者
内核源码固定的了,不建议修改这个。
/ q& G) o1 L+ L, \  j% l0 C5 j8 f
回复 支持 反对

使用道具 举报

2

主题

7

帖子

36

积分

新手上路

Rank: 1

积分
36
6#
 楼主| 发表于 2014-12-31 14:41:24 | 只看该作者
mtd分区在nand Flash驱动里面配置,是指在内核中通过make menuconfig 配置吗?& y) G: H" n2 X! A
回复 支持 反对

使用道具 举报

0

主题

215

帖子

1246

积分

创龙

Rank: 8Rank: 8

积分
1246
5#
发表于 2014-12-31 10:36:55 | 只看该作者
U-Boot > setenv bootargs ${mem_args} eth=${ethaddr} ' console=ttyS2,115200n8; Q1 I/ j, S0 w+ D+ v+ W+ n; x7 d; r4 W3 e3 L1 f5 Y
root=/dev/mmcblk0p2 rw rootfstype=ext3'
( J- Y+ l8 V/ t+ y# r" C0 ?2 f
5 K$ ]7 [4 m: l# }* Z文件系统的能否正确挂载与文件系统的烧写地址无关,指定文件系统的所在的 mtd分区就可以了,mtd 分区在 nand flash 驱动里面进行配置
! q+ k6 H3 W% N, \
回复 支持 反对

使用道具 举报

2

主题

7

帖子

36

积分

新手上路

Rank: 1

积分
36
板凳
 楼主| 发表于 2014-12-30 20:11:57 | 只看该作者
如果文件系统和内核都在Nand  Flash上呢, uboot命令是否也需要配置文件系统的地址阿?! K6 l9 r3 n' p4 m
- I/ N  G2 p( I8 u1 }
( u0 ~  Y* c- M4 R
- M  w" E1 I2 I2 S4 a. I
回复 支持 反对

使用道具 举报

14

主题

102

帖子

821

积分

创龙

Rank: 8Rank: 8

积分
821
沙发
发表于 2014-12-30 17:41:45 | 只看该作者
通过UBOOT参数区读取nand flash分区,读到ddr2的0xc0700000 ,然后运行,具体UBOOT参数请看如下。
: p$ F! V5 {  _9 @. {2 d/ m" r4 g, N3 i
如不希望使用 U-Boot 默认的启动顺序启动系统,可以根据实际需求设置特定方式启4 c) [: D  I* Q$ m' y0 c7 d" G8 e
动参数,以下为部分启动方式举例:" u" Q1 b  W- v" J0 [
3.1 SD 卡方式启动4 f( A3 |" _" S5 _
U-Boot > setenv bootcmd 'mmc rescan 0;fatload mmc 0 0xc0700000 uImage; bootm
: X1 T: A$ [) b7 E* xc0700000'/ g" s  k  Q# V. ]) O
U-Boot > setenv bootargs ${mem_args} eth=${ethaddr} 'console=ttyS2,115200n8
9 j: J, h! ~7 j0 p, Croot=/dev/mmcblk0p2 rw rootfstype=ext3'7 e/ a, ^& c% Y, k. Y, j+ }
U-Boot > saveenv$ V, E9 L+ o& |" Y
3.2 NAND FLASH 方式启动
' `+ [! a! l' w, |% @9 hU-Boot > setenv bootcmd 'nboot.e 0xc0700000 0 0x120000; bootm'6 _5 y' a% w: u& w: O" O
U-Boot > setenv bootargs ${mem_args} eth=${ethaddr} 'console=ttyS2,115200n8 ip=off
! e2 S7 Z& L  _; z8 O: Zubi.mtd=4,2048 root=ubi0_0 rootfstype=ubifs'
  v5 d/ f. c2 N: i6 rU-Boot > saveenv4 t: w( u9 ?( g9 x; e
"ip=off"表示不自动获取网路 IP,如需自动获取网络 IP,请将"ip=off"改为"ip=dhcp"。+ |0 k; b. s, b1 Q  K5 L( Q' G
但是,若设置了自动获取网络 IP,而此时实际并没有接入网络,系统会不断的检测网络
- I6 p1 d- j1 J是否接入而导致系统启动时间将较长。
. I  Y' ^  b5 w; C- S9 ]3.3 网络方式启动
/ l7 n# C& p2 l# \6 t  vU-Boot > setenv serverip 192.168.1.1 62 //请根据实际情况修改服务器 IP' h( F8 }+ O" Q  z7 n
U-Boot > setenv bootfile ${serverip}:uImage //请根据 tftp 实际情况修改内核镜像名字
* J/ C0 d& G8 }9 M6 zU-Boot > setenv nfsrootfs '/home/tl/omapl138/rootfs' //请根据实际情况修改 NFS 文件
( j  H# u5 k; i. {$ R* l7 k1 T8 \0 L系统路径+ J* ~! T) l0 P) m
U-Boot > setenv bootcmd 'dhcp;bootm'( s  ^- D4 g0 P% t; ~
U-Boot > setenv bootargs ${mem_args} eth=${ethaddr}
9 r- V- J) M& H5 C0 K8 O2 L: bnfsroot=${serverip}{nfsrootfs} ,nolock rw 'console=ttyS2,115200n8 ip=dhcp root=/dev/nfs'* o  S+ R! Z/ P
U-Boot > saveenv( \2 g, T- D+ z, w3 d$ `% U
销售邮箱: sales@tronlong.com 技术邮箱: support@tronlong.com DSP 论坛: www.51dsp.net% o* M% {& Y4 V. z
公司总机: 020-8998-6280 公司官网: www.tronlong.com 9/14
4 z6 a) h* W: [3 dDSP+ARM+FPGA
+ S8 J, w9 m: S7 Y; Q% a三核主板方案领导者
9 L5 \& l  x" d虽然在以上方式中, uImage 和文件系统都是在保存同一种存储介质, 但从 U-Boot 的( h% O9 W" ?. C- s+ e6 q% G  ^
启动参数可以看出, uImage 和文件系统的加载和启动是通过独立 U-Boot 命令设置的。也
& i% E; i! p' i5 O" P- ^就是说可通过不同 U-Boot 命令的搭配,实现加载和启动存放在不同存储介质中的 uImage
0 @1 I2 w& X$ \5 I# l+ B和文件系统。 以 uImage 在 NAND FLASH、文件系统在 SD 卡为例, U-Boot 设置命令如
8 S5 q7 D1 d3 }* v- I1 u; D0 L7 j下:
" F" w1 {5 w( P* J1 ~. nU-Boot > setenv bootcmd 'nboot.e 0xc0700000 0 0x120000; bootm'2 [; `3 [% }; Z2 r) \1 r' |9 s* N, Y
U-Boot > setenv bootargs ${mem_args} eth=${ethaddr} ' console=ttyS2,115200n8
, ?# P7 k/ s. I$ z! qroot=/dev/mmcblk0p2 rw rootfstype=ext3'3 x* p2 t3 u1 X/ ]. d
U-Boot > saveenv
$ \7 K/ c+ ^: G5 x% P4 d" B6 N
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2024-5-18 20:39 , Processed in 0.040966 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表