主题 : cramfs移植出问题(请指教) 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 11349
精华: 0
发帖: 13
金钱: 65 两
威望: 13 点
综合积分: 26 分
注册时间: 2009-12-04
最后登录: 2011-05-23
楼主  发表于: 2010-01-05 21:51

 cramfs移植出问题(请指教)

管理提醒: (kasim) 这个问题和cramfs没有关系,建议换一个更确切的标题 (2010-01-05 22:41)
我正在做Cramfs的移植,bootloader是vivi,开发板是QQ2440V3,通过nfs的方式挂载cramfs,用busybox制作的,结果启动的后半部分信息如下:
   device=eth0, addr=192.168.1.230, mask=255.255.255.0, gw=192.168.1.111,
     host=QQ2440V3, domain=, nis-domain=arm9.net,
     bootserver=192.168.1.111, rootserver=192.168.1.111, rootpath=
Looking up port of RPC 100003/2 on 192.168.1.111
Looking up port of RPC 100005/1 on 192.168.1.111
VFS: Mounted root (nfs filesystem).
Mounted devfs on /dev
Freeing init memory: 144K
': No such file or directory
can't open /dev/ttySAC0: No such file or directory
can't open /dev/ttySAC0: No such file or directory
can't open /dev/ttySAC0: No such file or directory
can't open /dev/ttySAC0: No such file or directory
can't open /dev/ttySAC0: No such file or directory
can't open /dev/ttySAC0: No such file or directory
我的inittab文件的内容如下:
# Startup the system
null::sysinit: /bin/mount –o remount,rw/
null::sysinit: /bin/mount –t proc proc /proc
null::sysinit: /bin/mount –a
console::sysinit: /etc/init.d/rcS
ttySAC0::respawn: /bin/sh


请问错误的原因是在哪里?
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
1楼  发表于: 2010-01-05 22:40
我想你的问题在于内核使用的devfs不会生成/dev/ttySAC0这样的节点(也许应该是/dev/tts/0?), 正确的名称取决于你所用的S3C2440A UART驱动。
另外,你的概念有问题,nfs和cramfs都是文件系统类型,两者不可能并存于同一文件系统上,因此不存在"通过nfs的方式挂载cramfs"的说法。你现在挂载的根文件系统类型是nfs,和cramfs没有一点关系。
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 新手上路
UID: 11349
精华: 0
发帖: 13
金钱: 65 两
威望: 13 点
综合积分: 26 分
注册时间: 2009-12-04
最后登录: 2011-05-23
2楼  发表于: 2010-01-06 09:49

 回 1楼(kasim) 的帖子

对了 我用的busybox是1.13的,还有我没表达清楚,我在vivi中运用命令param set linux_cmd_line "console=ttySAC0 root=/dev/nfs nfsroot=192.168.1.111:/opt/FriendlyARM/QQ2440/root_nfs ip=192.168.1.230:192.168.1.111:192.168.1.111:255.255.255.0:QQ2440V3.arm9.net:eth0:off",挂载cramfs作为根文件系统使用的,你说的那个就是名称的问题,我已经尝试改过了。可还是不行,还有一个问题是cramfs是只读的,在整个过程中哪个地方体它是只读的?
级别: 新手上路
UID: 11349
精华: 0
发帖: 13
金钱: 65 两
威望: 13 点
综合积分: 26 分
注册时间: 2009-12-04
最后登录: 2011-05-23
3楼  发表于: 2010-01-06 10:14

 回 1楼(kasim) 的帖子

还有就是devfs有什么用途
级别: 新手上路
UID: 11349
精华: 0
发帖: 13
金钱: 65 两
威望: 13 点
综合积分: 26 分
注册时间: 2009-12-04
最后登录: 2011-05-23
4楼  发表于: 2010-01-06 10:45

 回 1楼(kasim) 的帖子

在linux-2.6.12/drivers/serial/s3c2410.c
#define S3C24XX_SERIAL_DEVFS   “tts/”


在结构体static struct uart_driver s3c24xx_uart_drv的成员.dev_name为:
.dev_name       = "s3c2410_serial",
这里是不是和inittab中的不匹配呀
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
5楼  发表于: 2010-01-06 13:19

 Re:回 1楼(kasim) 的帖子

引用第2楼tobeyourbest于2010-01-06 09:49发表的 回 1楼(kasim) 的帖子 :
对了 我用的busybox是1.13的,还有我没表达清楚,我在vivi中运用命令param set linux_cmd_line "console=ttySAC0 root=/dev/nfs nfsroot=192.168.1.111:/opt/FriendlyARM/QQ2440/root_nfs ip=192.168.1.230:192.168.1.111:192.168.1.111:255.255.255.0:QQ2440V3.arm9.net:eth0:off",挂载cramfs作为根文件系统使用的,你说的那个就是名称的问题,我已经尝试改过了。可还是不行,还有一个问题是cramfs是只读的,在整个过程中哪个地方体它是只读的?

我想我已经说的很清楚了,你没有搞清楚概念,你让内核挂载nfs文件系统作为根文件系统,和cramfs没有关系,去google一下cramfs的概念会对你比较有帮助。
另外,从你给出的信息看,你用来挂载的nfs文件系统和你所用的2.6.12的内核不匹配,也许用QQ2440V3光盘上的root_nfs还有成功的可能。
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."