返回信息流uboot启动找不到文件系统
我现在有一个ramdisk的包 解压好了 我该怎么放上去呢?
tftp配好了 nfs也配好了 用哪个?
大牛说 要设置bootargs
网上查了查 说要设置这样一串命令 setenv bootargs root=/dev/nfs nfsroot=172.22.60.149:/root/nfs/root2410/ ip=172.22.60.63 init=/bin/bash console=ttySAC0,115200
我想知道这里的ip是我的ip么 还是我要设置板子的ip?
这串命令之间要空格么?
我用网线连了板子之后 我的主机就没有ip地址了阿。。。
还有就是 我非常不懂镜像、板子、ramdisk这些东西的关系
板子上的内核、文件系统是在flash里的? 镜像是在ram里的? 我是只要把镜像放进去 我就可以进行开发了? 没有弄到flash里也可以?
我是菜鸟 真的很多不懂 问题可能很可笑 大家尽量帮我解答吧 谢谢 好多东西网上搜来的答案也看不懂。。。
这是一条镜像帖。来源:北邮人论坛 / embedded-system / #6908同步于 2009/12/12
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Embedded_System机器人发帖
还是得开新贴。。求助:我该怎么挂文件系统?
EasonChen
2009/12/12镜像同步7 回复
订阅后,新回复会通过你的通知中心匿名送达。
7 条回复
先说一句,你的问题其实都不难,只是刚上手做可能有点儿乱。建议你好好读一读uboot的说明文件(专门有一个文件是说各个环境变量的含义的),如果某些变量你不知道作用或者想深入了解,去uboot源码里面搜索(那看的叫一个清楚啊,就是传说中内裤都看到了的样子)
这里啰嗦的写了一些,是因为自己当初学习也碰到了困难,希望对初学者有所帮助,不过最重要的:还是要自己去踏实耐心的学习。
tftp是用来传输文件的,可以将linux内核镜像(比如uImage)或者rmadisk镜像(叫initrd?)下载到sdram当中。
1、linux内核镜像和ramdisk镜像的使用:如果是下载到sdram当中,可以在uboot下使用bootm [内核镜像地址] [ramdisk地址]进行引导,这里ramdisk是可选的,如果两个地址只填一个,那就认为是内核镜像的地址(关于此部分内容可参考do_bootm函数,你就很清楚了);如果是在tftp下载后烧录到flash里面的话(tftp之后,擦除目标扇区s,再将镜像文件cp过去),根本上和sdram的没差别,只是掉电之后镜像文件也不会丢失。
PS:tftp下载时有文件的概念(要用文件名),但是uboot里面拷贝等操作是基于地址和长度的,虽然代码处理可能还有文件的概念(例如查看文件头,magic数等),但是不那么明显了。这里跟使用pc时文件的访问可能有些差别,自己体会一下吧。
2、bootargs的设置
对于启动包含文件系统的linux内核(一般的,没有文件系统的话,不算是完整的linux),通常有几种设置方法,描述如下(其实挺简单的,好好看看各个字段的意思就明确了,这里偷懒只说一下我用的开发板)
启动前的环境变量配置如下(只摘取了相关部分):
serverip=59.64.136.183
ipaddr=59.64.136.182
netdev=eth0
nfsargs=setenv bootargs console=ttyS0,9600 root=/dev/nfs rw
ramargs=setenv bootargs console=ttyS0,9600 root=/dev/ram rw
/*注意:addip和ip是同一条命令*/
addip=setenv bootargs $(bootargs) ip=$(ipaddr):$(serverip):$(gatewayip):$(netmask):$(hostname):$(netdev):off panic=1
flash_nfs=run nfsargs addip;bootm $(kernel_addr)
flash_self=run ramargs addip;bootm $(kernel_addr) $(ramdisk_addr)
kernel_addr=FE280000
ramdisk_addr=30120000
(1)使用nfs
条件:内核镜像已经下载到flash当中,地址0xFE280000,nfs server已经启动,地址是59.64.136.183
uboot下运行run flash_nfs,执行步骤:运行nfsargs——设置bootargs(包含串口、root目录、读写权限),将ip设置加到刚刚设置的bootargs之后(这里有off和panic,具体作用不表,感兴趣可查看uboot中关于环境变量的描述),使用bootm+内核镜像地址的方式启动linux
(2)使用ramdisk
条件:内核镜像保存至0xFE280000,ramdisk镜像保存于0x30120000
uboot下运行run flash_self,执行步骤:运行ramargs——设置bootargs(包含串口、root目录——可以看到跟nfs的不一样了,读写权限),将ip设置加入到bootargs之后,使用boot+内核镜像+ramdisk地址的方式进行启动。PS:这里可以先将两个镜像都放sdram里面(小心别摞上了),实验稳定后再烧录flash
(3)好像还有其他,楼下请补充
3、ip的问题
ipaddr是开发板ip,serverip是nfs server的ip。你说啥空格,不懂。此外,ip是属于终端的,或者说是属于网卡在操作系统中的抽象的(传说中的网络接口),跟网线有什么关系??你是卡在自动获取IP和手动配置的问题上了吗?
4、关于SDRAM和flash的问题
从读取方面来说:存储位置的不同,体现在操作上就是地址范围的差异(每个板子都有差别);掉电丢失的问题。
从写入方面:SDRAM写很方便,实地址指针访问就行,就跟你vc底下编程一样;flash写之前要擦除,一般uboot一直要做flash驱动(其实就是提供擦除、读写等接口函数)
其他没啥不明白的了吧
5、补充
问题是很细致,但是从你的问题能看出来,你自己的功课还没做够,其实做一段时间你就有感触了,自己琢磨的东西和别人告诉你的,理解深度是不一样的。而且,在自己探索问题的过程中,你其实会碰到并解决更多的问题,你的分析能力也会有很大的提升。
【 在 E说明asonChen (你的陈奕迅) 的大作中提到: 】
: uboot启动找不到文件系统
: 我现在有一个ramdisk的包 解压好了 我该怎么放上去呢?
: tftp配好了 nfs也配好了 用哪个?
: ...................
先谢过 慢慢看。。。
【 在 hobby 的大作中提到: 】
: 先说一句,你的问题其实都不难,只是刚上手做可能有点儿乱。建议你好好读一读uboot的说明文件(专门有一个文件是说各个环境变量的含义的),如果某些变量你不知道作用或者想深入了解,去uboot源码里面搜索(那看的叫一个清楚啊,就是传说中内裤都看到了的样子)
: 这里啰嗦的写了一些,是因为自己当初学习也碰到了困难,希望对初学者有所帮助,不过最重要的:还是要自己去踏实耐心的学习。
: tftp是用来传输文件的,可以将linux内核镜像(比如uImage)或者rmadisk镜像(叫initrd?)下载到sdram当中。
: ...................
嗯 看过之后大概有点知道了。。。
今天以前我都很白痴地直接用网线把主机和板子连起来 今天才知道 原来应该两个都连到交换机上。。 郁闷啊。。。
【 在 hobby 的大作中提到: 】
: 先说一句,你的问题其实都不难,只是刚上手做可能有点儿乱。建议你好好读一读uboot的说明文件(专门有一个文件是说各个环境变量的含义的),如果某些变量你不知道作用或者想深入了解,去uboot源码里面搜索(那看的叫一个清楚啊,就是传说中内裤都看到了的样子)
: 这里啰嗦的写了一些,是因为自己当初学习也碰到了困难,希望对初学者有所帮助,不过最重要的:还是要自己去踏实耐心的学习。
: tftp是用来传输文件的,可以将linux内核镜像(比如uImage)或者rmadisk镜像(叫initrd?)下载到sdram当中。
: ...................
可以直连……
请手动配置IP
【 在 EasonChen (你的陈奕迅) 的大作中提到: 】
: 嗯 看过之后大概有点知道了。。。
: 今天以前我都很白痴地直接用网线把主机和板子连起来 今天才知道 原来应该两个都连到交换机上。。 郁闷啊。。。
【 在 hobby 的大作中提到: 】
: 先说一句,你的问题其实都不难,只是刚上手做可能有点儿乱。建议你好好读一读uboot的说明文件(专门有一个文件是说各个环境变量的含义的),如果某些变量你不知道作用或者想深入了解,去uboot源码里面搜索(那看的叫一个清楚啊,就是传说中内裤都看到了的样子)
: 这里啰嗦的写了一些,是因为自己当初学习也碰到了困难,希望对初学者有所帮助,不过最重要的:还是要自己去踏实耐心的学习。
: tftp是用来传输文件的,可以将linux内核镜像(比如uImage)或者rmadisk镜像(叫initrd?)下载到sdram当中。
: ...................
[em68]
hobby 牛b啊 内裤都能看出来啊
提问也是一门艺术
如果你自己已经做了相关工作了 但还是有些不清楚的地方 可以到论坛求助 相信大家都会乐意帮助的
把软硬件平台 操作步骤 操作记录 你自己的分析 你的疑惑都列清楚了
这样也便于大家分享问题 也便于其他人从你的帖子中获益
不会就baidu之google之 要学会利用网络平台
自己解决的问题 你才能印象更深刻 才能学有所获
【 在 ssailing 的大作中提到: 】
: [em68]
: hobby 牛b啊 内裤都能看出来啊
: 提问也是一门艺术
: ...................
[em17]
就是形容看的很透彻嘛,打dota时候老这么说……