当前位置:  技术问答>linux和unix

S3C2416 Linux-2.6.35内核移植出现文件系统挂不上的,大家帮帮我这为菜鸟

    来源: 互联网  发布时间:2017-05-26

    本文导语:  CPU:   S3C2416@534MHz        Fclk = 534MHz, Hclk = 133MHz, Pclk = 66MHz DRAM:    128 MB NAND:    512 MB  In:      serial Out:     serial Err:     serial Hit any key to stop autoboot:  0  NAND read: device 0 offset 0x900000, s...

CPU:   S3C2416@534MHz
       Fclk = 534MHz, Hclk = 133MHz, Pclk = 66MHz
DRAM:    128 MB
NAND:    512 MB 
In:      serial
Out:     serial
Err:     serial
Hit any key to stop autoboot:  0 

NAND read: device 0 offset 0x900000, size 0x300000
 3145728 bytes read: OK
Boot with zImage

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
Linux version 2.6.35 (root@ljf-desktop) (gcc version 4.3.3 (Sourcery G++ Lite 2009q1-176) ) #4 Sat Aug 3 17:04:19 CST 2013
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
CPU: VIVT data cache, VIVT instruction cache
Machine: SMDK2416
Memory policy: ECC disabled, Data cache writeback
CPU S3C2416/S3C2450 (id 0x32450003)
S3C24XX Clocks, Copyright 2004 Simtec Electronics
CPU: MPLL on 534.000 MHz, cpu 534.000 MHz, mem 133.500 MHz, pclk 66.750 MHz
CPU: EPLL on 96.000 MHz, usb-bus 48.000 MHz
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512
Kernel command line: mem=128M console=ttySAC0,115200n8 noinitrd root=/dev/mtdblock3 rw init=/linuxrc rootfstype=jffs2
PID hash table entries: 512 (order: -1, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 128MB = 128MB total
Memory: 125716k/125716k available, 5356k reserved, 0K highmem
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
    DMA     : 0xffc00000 - 0xffe00000   (   2 MB)
    vmalloc : 0xc8800000 - 0xe0000000   ( 376 MB)
    lowmem  : 0xc0000000 - 0xc8000000   ( 128 MB)
    modules : 0xbf000000 - 0xc0000000   (  16 MB)
      .init : 0xc0008000 - 0xc0029000   ( 132 kB)
      .text : 0xc0029000 - 0xc03b4000   (3628 kB)
      .data : 0xc03cc000 - 0xc03ef380   ( 141 kB)
Hierarchical RCU implementation.
        RCU-based detection of stalled CPUs is disabled.
        Verbose stalled-CPUs detection is disabled.
NR_IRQS:99
irq: clearing subpending status 00000002
Console: colour dummy device 80x30
console [ttySAC0] enabled
Calibrating delay loop... 266.24 BogoMIPS (lpj=665600)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
gpiochip_add: gpios 256..271 (GPIOJ) failed to register
gpiochip_add: gpios 288..303 (GPIOK) failed to register
gpiochip_add: gpios 320..334 (GPIOL) failed to register
gpiochip_add: gpios 352..353 (GPIOM) failed to register
NET: Registered protocol family 16
S3C Power Management, Copyright 2004 Simtec Electronics
S3C2416: Initializing architecture
S3C2416: IRQ Support
bio: create slab  at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
s3c-i2c s3c2410-i2c: slave address 0x10
s3c-i2c s3c2410-i2c: bus frequency set to 65 KHz
s3c-i2c s3c2410-i2c: i2c-0: S3C I2C adapter
Advanced Linux Sound Architecture Driver Version 1.0.23.
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
NET: Registered protocol family 1
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
NetWinder Floating Point Emulator V0.97 (extended precision)
JFFS2 version 2.2. (NAND) (SUMMARY)  漏 2001-2006 Red Hat, Inc.
ROMFS MTD (C) 2007 Red Hat, Inc.
msgmni has been set to 245
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
lp: driver loaded but no devices found
ppdev: user-space parallel port driver
Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
s3c2440-uart.0: s3c2410_serial0 at MMIO 0x50000000 (irq = 70) is a S3C2440
s3c2440-uart.1: s3c2410_serial1 at MMIO 0x50004000 (irq = 73) is a S3C2440
s3c2440-uart.2: s3c2410_serial2 at MMIO 0x50008000 (irq = 76) is a S3C2440
brd: module loaded
loop: module loaded
Uniform Multi-Platform E-IDE driver
ide-gd driver 1.18
ide-cd driver 5.00
S3C24XX NAND Driver, (c) 2004 Simtec Electronics
s3c24xx-nand s3c2440-nand: Tacls=2, 14ns Twrph0=4 29ns, Twrph1=2 14ns
s3c24xx-nand s3c2440-nand: NAND ECC disabled
NAND device: Manufacturer ID: 0xec, Chip ID: 0xdc (Samsung NAND 512MiB 3,3V 8-bit)
NAND_ECC_NONE selected by board driver. This is not recommended !!
Scanning device for bad blocks
Bad eraseblock 0 at 0x000000000000
Bad eraseblock 5 at 0x000001400000
Bad eraseblock 6 at 0x000001800000
Bad eraseblock 7 at 0x000001c00000
Creating 4 MTD partitions on "NAND 512MiB 3,3V 8-bit":
0x000000000000-0x000000100000 : "2416_Boot"
0x000000100000-0x000000900000 : "2416_space"
0x000000900000-0x000000c00000 : "2416_kernel"
0x000000c00000-0x000020000000 : "2416_rootfs"
dm9000 Ethernet Driver, V1.31
usbmon: debugfs is not available
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
s3c2410-ohci s3c2410-ohci: S3C24XX OHCI
s3c2410-ohci s3c2410-ohci: new USB bus registered, assigned bus number 1
s3c2410-ohci s3c2410-ohci: irq 42, io mem 0x49000000
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
usbcore: registered new interface driver libusual
usbcore: registered new interface driver usbserial
USB Serial support registered for generic
usbcore: registered new interface driver usbserial_generic
usbserial: USB Serial Driver core
USB Serial support registered for FTDI USB Serial Device
usbcore: registered new interface driver ftdi_sio
ftdi_sio: v1.6.0:USB FTDI Serial Converters Driver
USB Serial support registered for pl2303
usbcore: registered new interface driver pl2303
pl2303: Prolific PL2303 USB to serial adaptor driver
mice: PS/2 mouse device common for all mice
S3C24XX RTC, (c) 2004,2006 Simtec Electronics
S3C2410 Watchdog Timer, (c) 2004 Simtec Electronics
s3c2410-wdt s3c2410-wdt: watchdog inactive, reset disabled, irq enabled
No device for DAI UDA134X
No device for DAI s3c24xx-i2s
ALSA device list:
  No soundcards found.
TCP cubic registered
NET: Registered protocol family 17
drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
usb 1-1: new full speed USB device using s3c2410-ohci and address 2
hub 1-1:1.0: USB hub found
hub 1-1:1.0: 4 ports detected
VFS: Mounted root (jffs2 filesystem) on device 31:3.
Freeing init memory: 132K
Failed to execute /linuxrc.  Attempting defaults...
Kernel panic - not syncing: No init found.  Try passing init= option to kernel. See Linux Documentation/init.txt for guidance.
[] (unwind_backtrace+0x0/0xec) from [] (panic+0x54/0xdc)
[] (panic+0x54/0xdc) from [] (init_post+0x9c/0xbc)
[] (init_post+0x9c/0xbc) from [] (kernel_init+0x110/0x14c)
[] (kernel_init+0x110/0x14c) from [] (kernel_thread_exit+0x0/0x8)

这里说明下,这边的文件系统是可以用的,用别的内核就可以挂载上去。
内核和文件系统用的编译器是一样的。

我也上网搜了很久,很多方法也试过,还是弄不出来。

|
       start_kernel()函数会调用 rest_init()函数来进行最后的初始化,包括创建系统的第一个进程-init 进程来结束内核的启动。Init 进程首先进行一系列的硬件初始化,然后通过命令行传递过来的参数挂载根文件系统。最后 init 进程会执行用 户传递过来的“init=”启动参数执行用户指定的命令,或者执行以下几个进程之一:
execve("/sbin/init",argv_init,envp_init);
execve("/etc/init",argv_init,envp_init);
execve("/bin/init",argv_init,envp_init);
execve("/bin/sh",argv_init,envp_init)。
      VFS: Mounted root (jffs2 filesystem) on device 31:3.这句说明jffs2文件系统已经挂在 上了,在尝试启动linuxrc时失败。问题可能存在于内核配置、启动参数本身、以及文件系统,建议先看看http://www.docin.com/p-593852486.html    试试修改内核配置,试试yaffs2文件系统启动;在根目录INIT下main.c文件中跟踪start_kernel函数,你还能够发现其实内核启动后创建的第一个进程可以是linuxrc,也可以是bash等,因此你也可以试试修改配置参数。

|
内核和文件系统编译器是否一样

|
mem=64M console=ttySAC0,115200 no_console_suspend root=/dev/mtdblock3 rootfstype=jffs2 mtdparts=384K(u-boot),128K(u-boot-env),5M(kernel),120M(root)
我的是 linux-2.3.36 s3c2440参考一下

|
1、有没有可能现在 文件系统给你格了?
2、你加载以前的内核镜像 试试,还能不能跑起来,如果不能,重新烧录下文件系统试试,
3、基于2如果不能,那么你在编译新内核的时候在 filesystem 选择中 使能了 对jffs2的支持么 看你的log信息,用的是jffs2的文件系统把

|
注意启动信息:
VFS: Mounted root (jffs2 filesystem) on device 31:3.
说明已挂上jffs2类型的根文件系统,但如果你的 /linuxrc 文件是其它类型的,如yaffs2, 就不能执行该文件。
内核中要移植与根文件相应的驱动, 一定要编入内核,而不是模块


|
Failed to execute /linuxrc执行这个文件失败,
你的bootloader启动参数是不是配置出错了。

|
linuxrc 这个文件存在吗?

|
这种问题一般都是参数配置错误

|
你是以挂载的方式吧。内核剪裁,可能是没有添加网卡驱动;或者tftp服务器没有配置好

|
重做一遍,再试一下。

|
楼上说的对,文件系统已经挂载上,文件系统挂载跟tftp没任何关系,估计还是你参数写的不对

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • S3C2416从NAND Flash启动系统思路


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3