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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

关于文件系统的烧写地址

[复制链接]

2

主题

7

帖子

36

积分

新手上路

Rank: 1

积分
36
跳转到指定楼层
楼主
发表于 2014-12-30 16:34:04 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
在烧写文件系统到Nand Flash 上时,怎么确定要开始烧写的地址阿,只要在uImage后面就行了吗?  在uboot 环境变量里面是否需要设置文件系统的起始地址阿?
% n7 \, {* U0 [1 z. d) l6 j  o: b2 F* P  C. x3 W1 e: ]/ y
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

2

主题

7

帖子

36

积分

新手上路

Rank: 1

积分
36
推荐
 楼主| 发表于 2014-12-30 20:14:05 | 只看该作者
hefeislb2000 发表于 2014-12-30 20:11/ p+ e7 v7 N6 O5 d% ^
如果文件系统和内核都在Nand  Flash上呢, uboot命令是否也需要配置文件系统的地址阿?

* \  o; O9 _. t7 s" r' V如果我修改了文件系统的烧写地址,是否要修改uboot代码阿 ?
. O/ _. y$ B# R
回复 支持 1 反对 0

使用道具 举报

14

主题

102

帖子

821

积分

创龙

Rank: 8Rank: 8

积分
821
7#
发表于 2014-12-31 18:43:35 | 只看该作者
内核源码固定的了,不建议修改这个。% G3 I9 b3 i- q. w1 z/ I
回复 支持 反对

使用道具 举报

2

主题

7

帖子

36

积分

新手上路

Rank: 1

积分
36
6#
 楼主| 发表于 2014-12-31 14:41:24 | 只看该作者
mtd分区在nand Flash驱动里面配置,是指在内核中通过make menuconfig 配置吗?
4 |1 p) F5 C1 M8 C7 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
9 M1 P1 Y; ?/ |" W$ }root=/dev/mmcblk0p2 rw rootfstype=ext3'
% F  G- _2 N8 h
1 M: \1 q, S( U$ H文件系统的能否正确挂载与文件系统的烧写地址无关,指定文件系统的所在的 mtd分区就可以了,mtd 分区在 nand flash 驱动里面进行配置4 A! u8 \3 j0 m  L" X6 U& ]
回复 支持 反对

使用道具 举报

2

主题

7

帖子

36

积分

新手上路

Rank: 1

积分
36
板凳
 楼主| 发表于 2014-12-30 20:11:57 | 只看该作者
如果文件系统和内核都在Nand  Flash上呢, uboot命令是否也需要配置文件系统的地址阿?
2 Y* Q4 |3 H+ {) x
& l- H$ g% f# S- e
# W! e3 T% Y8 a. m- p  c7 J
; I2 s) e+ n* v1 W! n8 a$ n" C' d
回复 支持 反对

使用道具 举报

14

主题

102

帖子

821

积分

创龙

Rank: 8Rank: 8

积分
821
沙发
发表于 2014-12-30 17:41:45 | 只看该作者
通过UBOOT参数区读取nand flash分区,读到ddr2的0xc0700000 ,然后运行,具体UBOOT参数请看如下。1 K! [1 z( y! X$ ?# o/ F- c
0 ^3 k1 y* ], l1 D8 ^7 y8 u
如不希望使用 U-Boot 默认的启动顺序启动系统,可以根据实际需求设置特定方式启4 v4 q. \6 v: [( ?2 L- N
动参数,以下为部分启动方式举例:/ _1 V3 U4 f6 J
3.1 SD 卡方式启动2 \0 n7 h. n4 M; ~  K5 l3 V
U-Boot > setenv bootcmd 'mmc rescan 0;fatload mmc 0 0xc0700000 uImage; bootm7 h( m1 B& k% b% @- J
c0700000'0 O9 G3 s9 {$ b- c6 O3 z( T
U-Boot > setenv bootargs ${mem_args} eth=${ethaddr} 'console=ttyS2,115200n8
4 h4 z" K3 j6 O2 V6 yroot=/dev/mmcblk0p2 rw rootfstype=ext3'. }0 i4 V% l+ K8 x
U-Boot > saveenv7 e8 D6 C* M' J8 |5 n. A# g
3.2 NAND FLASH 方式启动
: r/ y! {4 W% [( oU-Boot > setenv bootcmd 'nboot.e 0xc0700000 0 0x120000; bootm'
- v3 @# a" A! p/ EU-Boot > setenv bootargs ${mem_args} eth=${ethaddr} 'console=ttyS2,115200n8 ip=off7 M9 f* \& X/ {! g5 M8 n- {4 {
ubi.mtd=4,2048 root=ubi0_0 rootfstype=ubifs'
' Q5 ^9 B  f' _0 SU-Boot > saveenv! K, N2 P4 w/ Q. K4 y
"ip=off"表示不自动获取网路 IP,如需自动获取网络 IP,请将"ip=off"改为"ip=dhcp"。
& Z, k4 |8 o# O* G: G但是,若设置了自动获取网络 IP,而此时实际并没有接入网络,系统会不断的检测网络+ c6 L" ^# u4 g# b
是否接入而导致系统启动时间将较长。( X7 ]8 r9 I# U6 v) Q$ W
3.3 网络方式启动5 b  f8 f8 ]  i) n% o' v# h1 u9 y
U-Boot > setenv serverip 192.168.1.1 62 //请根据实际情况修改服务器 IP- R0 P* R: p( V/ C6 J: S
U-Boot > setenv bootfile ${serverip}:uImage //请根据 tftp 实际情况修改内核镜像名字
8 r9 \1 [# p7 N( b8 a6 c- \$ bU-Boot > setenv nfsrootfs '/home/tl/omapl138/rootfs' //请根据实际情况修改 NFS 文件# L& N# y4 S8 i) [8 W9 x+ T
系统路径6 b+ s' K' a5 Q3 p% \+ X8 `. p
U-Boot > setenv bootcmd 'dhcp;bootm'; `2 f! R- m% `5 X7 J
U-Boot > setenv bootargs ${mem_args} eth=${ethaddr}
$ r. H4 Z& G5 O& f( hnfsroot=${serverip}{nfsrootfs} ,nolock rw 'console=ttyS2,115200n8 ip=dhcp root=/dev/nfs'
5 J  t  g6 b4 ~; i. k4 s  AU-Boot > saveenv
! H* m- C% M  z: W  l* j销售邮箱: sales@tronlong.com 技术邮箱: support@tronlong.com DSP 论坛: www.51dsp.net' M3 @1 g/ Q. v$ Z- f
公司总机: 020-8998-6280 公司官网: www.tronlong.com 9/14
; a8 T$ Q; {: oDSP+ARM+FPGA9 X" A9 |9 @) G- I% b7 }( c
三核主板方案领导者6 k1 M1 |6 e' Z) f1 J  r& b
虽然在以上方式中, uImage 和文件系统都是在保存同一种存储介质, 但从 U-Boot 的
8 h- @$ r* L- t$ l0 \启动参数可以看出, uImage 和文件系统的加载和启动是通过独立 U-Boot 命令设置的。也  i5 }4 E! ]$ F4 @# Y2 g2 U6 }
就是说可通过不同 U-Boot 命令的搭配,实现加载和启动存放在不同存储介质中的 uImage
4 x; t5 E" m  F/ B9 m( Y% K和文件系统。 以 uImage 在 NAND FLASH、文件系统在 SD 卡为例, U-Boot 设置命令如
% r$ U' C/ o$ c下:
' p; }2 j+ y8 t0 ?U-Boot > setenv bootcmd 'nboot.e 0xc0700000 0 0x120000; bootm'9 U# V# a$ {* i
U-Boot > setenv bootargs ${mem_args} eth=${ethaddr} ' console=ttyS2,115200n8. j, A6 A+ A4 l
root=/dev/mmcblk0p2 rw rootfstype=ext3'9 C/ X, }4 B1 `! a
U-Boot > saveenv% W8 }3 n: ?0 f2 p1 I3 s( I/ i
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-17 11:11 , Processed in 0.043581 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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