主题 : 求解:u-boot添加USB后,能引导内核 但不能挂载文件系统 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 46191
精华: 0
发帖: 10
金钱: 50 两
威望: 10 点
综合积分: 20 分
注册时间: 2011-05-11
最后登录: 2011-08-02
楼主  发表于: 2011-06-22 10:52

 求解:u-boot添加USB后,能引导内核 但不能挂载文件系统

CPU:ARM1176 s3c6410
使用友善的uboot烧写2.6.38.2内核及yaffs2文件系统。
用我自己的uboot可以引导内核正常启动,可以挂载文件系统(友善的自然也可以引导、挂载)。

当我向自己的uboot添加USB下载功能,并烧写内核及文件系统后,可以引导内核,但是挂载不了文件系统。
串口打印的信息和没有烧写文件系统时是一样的。

串口打印的信息如下:
……
s3c-sdhci s3c-sdhci.0: clock source 0: hsmmc (133250000 Hz)
s3c-sdhci s3c-sdhci.0: clock source 1: hsmmc (133250000 Hz)
s3c-sdhci s3c-sdhci.0: clock source 2: mmc_bus (24000000 Hz)
mmc0: SDHCI controller on samsung-hsmmc [s3c-sdhci.0] using ADMA
s3c-sdhci s3c-sdhci.1: clock source 0: hsmmc (133250000 Hz)
s3c-sdhci s3c-sdhci.1: clock source 1: hsmmc (133250000 Hz)
s3c-sdhci s3c-sdhci.1: clock source 2: mmc_bus (24000000 Hz)
mmc0: mmc_rescan_try_freq: trying to init card at 400000 Hz
mmc1: SDHCI controller on samsung-hsmmc [s3c-sdhci.1] using ADMA
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
VFP support v0.3: implementor 41 architecture 1 part 20 variant b rev 5
drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
mmc0: mmc_rescan_try_freq: trying to init card at 300000 Hz
yaffs: dev is 32505858 name is "mtdblock2" rw
yaffs: passed flags ""
VFS: Mounted root (yaffs filesystem) on device 31:2.
Freeing init memory: 112K
Kernel panic - not syncing: No init found. Try passing init= option to kernel. See Linux Documentation/init.txt for guidance.
[<c002f07c>] (unwind_backtrace+0x0/0xec) from [<c01aaa94>] (panic+0x4c/0x178)
[<c01aaa94>] (panic+0x4c/0x178) from [<c0024604>] (init_post+0x108/0x138)
[<c0024604>] (init_post+0x108/0x138) from [<c00085b0>] (kernel_init+0x10c/0x14c)
[<c00085b0>] (kernel_init+0x10c/0x14c) from [<c002a860>]  
(kernel_thread_exit+0x0/0x8)



用友善的uboot引导不了我的uboot烧写的内核,报如下错误:

NAND read: device 0 offset 0x80000, size 0x500000

s3c-nand: 1 bit error detected at byte 1242, correcting from 0x00 to 0x40...OK

s3c-nand: ECC uncorrectable error detected

s3c-nand: 1 bit error detected at byte 499, correcting from 0xe1 to 0xe9...OK

s3c-nand: ECC uncorrectable error detected

reading NAND page at offset 0x80000 failed

5242880 bytes read: ERROR

## Booting image at c0008000 ...

Boot with Image


Starting kernel ...


undefined instruction

pc : [<50008004>] lr : [<c7e22ed0>]

sp : c7fffdfc ip : 7f005000 fp : c7e2ce6c

r10: 00000002 r9 : 00000000 r8 : 6c976a6f

r7 : 00000000 r6 : 00000000 r5 : 50000124 r4 : 00000000

r3 : 50008000 r2 : 50000100 r1 : 000009d8 r0 : 00000000

Flags: nZCv IRQs off FIQs off Mode SVC_32

Resetting CPU ...


应该是ECC的问题,由于是新手,还请高手们讲解得详细一点,万分感谢!