打印
[嵌入式linux]

mini2440 移植kernel 2.6.34 问题!

[复制链接]
5160|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
godsky|  楼主 | 2010-6-3 15:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
高手你好!帮我诊断下现在的内核已经添加了对mini2440 支持, 我就按照友善的分区要求把内核中带的mach-mini2440.c文件中 nand分区修改了然后编译下载到 arm ,启动时信息如下错误 :Enter your selection: b
Copy linux kernel from 0x00060000 to 0x30008000, size = 0x00500000 ... done
zImage magic = 0x016f2818
Setup linux parameters at 0x30000100
linux command line is: "noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0"
MACH_TYPE = 1999
NOW, Booting Linux......
Uncompressing Linux... done, booting the kernel.
Linux version 2.6.34 ([email=root@cug]root@cug[/email]) (gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72) ) #1 Mon May 31 11:45:30 CST 2010
CPU: ARM920T [41129200] revision 0 (ARMv4T), cr=c0007177
CPU: VIVT data cache, VIVT instruction cache
Machine: MINI2440
ATAG_INITRD is deprecated; please update your bootloader.
Memory policy: ECC disabled, Data cache writeback
CPU S3C2440A (id 0x32440001)
S3C24XX Clocks, Copyright 2004 Simtec Electronics
S3C244X: core 405.000 MHz, memory 101.250 MHz, peripheral 50.625 MHz
CLOCK: Slow mode (1.500 MHz), fast, MPLL on, UPLL on
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
Kernel command line: noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0
PID hash table entries: 256 (order: -2, 1024 bytes)
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 64MB = 64MB total
Memory: 60556k/60556k available, 4980k reserved, 0K highmem
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
    DMA     : 0xffc00000 - 0xffe00000   (   2 MB)
    vmalloc : 0xc4800000 - 0xe0000000   ( 440 MB)
    lowmem  : 0xc0000000 - 0xc4000000   (  64 MB)
    modules : 0xbf000000 - 0xc0000000   (  16 MB)
      .init : 0xc0008000 - 0xc002a000   ( 136 kB)
      .text : 0xc002a000 - 0xc03c8000   (3704 kB)
      .data : 0xc03e8000 - 0xc04111e0   ( 165 kB)
SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Hierarchical RCU implementation.
NR_IRQS:85
irq: clearing pending ext status 00000200
irq: clearing subpending status 00000003
irq: clearing subpending status 00000002
Console: colour dummy device 80x30
console [ttySAC0] enabled
Calibrating delay loop... 201.93 BogoMIPS (lpj=504832)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
MINI2440: Option string mini2440=0tb
MINI2440: 't' ignored, touchscreen not compiled in
MINI2440: LCD [0:240x320] 1:800x480 2:1024x768
S3C2440: Initialising architecture
S3C2440: IRQ Support
S3C24XX DMA Driver, Copyright 2003-2006 Simtec Electronics
DMA channel 0 at c4808000, irq 33
DMA channel 1 at c4808040, irq 34
DMA channel 2 at c4808080, irq 35
DMA channel 3 at c48080c0, irq 36
S3C244X: Clock Support, DVS off
bio: create slab <bio-0> at 0
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
s3c-i2c s3c2440-i2c: slave address 0x10
s3c-i2c s3c2440-i2c: bus frequency set to 98 KHz
s3c-i2c s3c2440-i2c: i2c-0: S3C I2C adapter
Advanced Linux Sound Architecture Driver Version 1.0.22.1.
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
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.
JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
ROMFS MTD (C) 2007 Red Hat, Inc.
msgmni has been set to 118
alg: No test for stdrng (krng)
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
Console: switching to colour frame buffer device 30x20
fb0: s3c2410fb frame buffer device
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
at24 0-0050: 1024 byte 24c08 EEPROM (writable)
S3C24XX NAND Driver, (c) 2004 Simtec Electronics
s3c24xx-nand s3c2440-nand: Tacls=1, 9ns Twrph0=3 29ns, Twrph1=2 19ns
s3c24xx-nand s3c2440-nand: NAND soft ECC
NAND device: Manufacturer ID: 0xec, Chip ID: 0x76 (Samsung NAND 64MiB 3,3V 8-bit)
Creating 5 MTD partitions on "NAND 64MiB 3,3V 8-bit":
0x000000000000-0x000000040000 : "supervivi"
0x000000040000-0x000000060000 : "param"
ftl_cs: FTL header not found.
0x000000060000-0x000000560000 : "Kernel"
uncorrectable error :
0x000000560000-0x000040560000 : "root"
mtd: partition "root" extends beyond the end of device "NAND 64MiB 3,3V 8-bit" -- size truncated to 0x3aa0000
ftl_cs: FTL header not found.
0x000000000000-0x000040000000 : "nand"
mtd: partition "nand" extends beyond the end of device "NAND 64MiB 3,3V 8-bit" -- size truncated to 0x4000000
dm9000 Ethernet Driver, V1.31
dm9000 dm9000: eth%d: Invalid ethernet MAC address. Please set using ifconfig
eth0: dm9000e at c486e300,c4872304 IRQ 51 MAC: ff:ff:ff:ff:ff:ff (chip)
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
s3c2440-usbgadget s3c2440-usbgadget: S3C2440: increasing FIFO to 128 bytes
mice: PS/2 mouse device common for all mice
input: gpio-keys as /devices/platform/gpio-keys/input/input0
S3C24XX RTC, (c) 2004,2006 Simtec Electronics
s3c2410-rtc s3c2410-rtc: rtc disabled, re-enabling
s3c2410-rtc s3c2410-rtc: rtc core: registered s3c as rtc0
i2c /dev entries driver
S3C2410 Watchdog Timer, (c) 2004 Simtec Electronics
s3c2410-wdt s3c2410-wdt: watchdog inactive, reset disabled, irq enabled
cpuidle: using governor ladder
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
s3c-sdi s3c2440-sdi: powered down.
s3c-sdi s3c2440-sdi: mmc0 - using pio, sw SDIO IRQ
usbcore: registered new interface driver hiddev
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
No device for DAI UDA134X
No device for DAI s3c24xx-i2s
S3C24XX_UDA134X SoC Audio driver
UDA134X SoC Audio Codec
asoc: UDA134X <-> s3c24xx-i2s mapping ok
ALSA device list:
  #0: S3C24XX_UDA134X (UDA134X)
TCP cubic registered
NET: Registered protocol family 17
s3c2410-rtc s3c2410-rtc: setting system clock to 2010-06-01 09:29:52 UTC (1275384592)
yaffs: dev is 32505859 name is "mtdblock3"
yaffs: passed flags ""
VFS: Mounted root (yaffs filesystem) on device 31:3.
Freeing init memory: 136K
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.
[<c002f628>] (unwind_backtrace+0x0/0xec) from [<c02e6f38>] (panic+0x40/0xcc)
[<c02e6f38>] (panic+0x40/0xcc) from [<c002a58c>] (init_post+0x9c/0xbc)
[<c002a58c>] (init_post+0x9c/0xbc) from [<c000846c>] (kernel_init+0x108/0x140)
[<c000846c>] (kernel_init+0x108/0x140) from [<c002b814>] (kernel_thread_exit+0x0/0x我百度了 有人说是nand分区问题;文件系统的/linuxrc不存在 这些我检查了都正确啊 可是还是不行啊  高手帮忙  

相关帖子

沙发
centimetre| | 2010-6-3 17:38 | 只看该作者
noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0

看一下你的yaffs文件系统下面有没有linuxrc文件,以及是否能执行。
其实应该不需要这个init=/linuxrc吧
www.cmtekchina.com

使用特权

评论回复
板凳
godsky|  楼主 | 2010-6-5 18:42 | 只看该作者
试过了 不行 还是谢谢你了

使用特权

评论回复
地板
jkeqiang| | 2010-6-5 18:57 | 只看该作者
command line 加上 fstype=yaffs

使用特权

评论回复
5
sinanjj| | 2010-6-7 12:40 | 只看该作者
好像我见过很多用这开发板的都出这问题。。。

使用特权

评论回复
6
centimetre| | 2010-6-7 14:33 | 只看该作者
看这篇**,使用yaffs2作为根文件系统
http://www.cmtekchina.com/doc/yaffs2-rootfs.html

使用特权

评论回复
7
godsky|  楼主 | 2010-6-8 20:24 | 只看该作者
谢谢大家关注。我移植2.6.33.5 就没有上述问题了。我怀疑是不是我的编译器arm gcc 4.3.2 不适合2.6.34啊

使用特权

评论回复
8
makearm| | 2010-7-15 14:05 | 只看该作者
arm ggc 4.3.2适合2.6.34的 楼主应该是挂载文件系统失败才对!

多看看你的文件系统吧!

使用特权

评论回复
9
godsky|  楼主 | 2010-7-15 14:43 | 只看该作者
哦  我再看看 谢谢了

使用特权

评论回复
10
dami| | 2010-7-16 10:58 | 只看该作者
也可能是分区问题哦

使用特权

评论回复
11
makearm| | 2010-7-18 21:17 | 只看该作者
楼主实验一下我的文件系统! 我的是可以跑起来的!和linux-2.6.34

rootfs.tar.gz

2.36 MB

使用特权

评论回复
12
makearm| | 2010-7-18 21:18 | 只看该作者
0x000000000000-0x000000040000 : "supervivi"
0x000000040000-0x000000060000 : "param"
ftl_cs: FTL header not found.
0x000000060000-0x000000560000 : "Kernel"
uncorrectable error :
0x000000560000-0x000040560000 : "root"
mtd: partition "root" extends beyond the end of device "NAND 64MiB 3,3V 8-bit" -- size truncated to 0x3aa0000
ftl_cs: FTL header not found.
0x000000000000-0x000040000000 : "nand"


ECC怎么不配置去掉呢?

使用特权

评论回复
13
makearm| | 2010-7-18 21:19 | 只看该作者
我出现这样的问题!
[root@MrMakearm=W]#insmod ledc.ko
Led Major = 251
Led Minor = 00
MakeLed create ok led init ok
[root@MrMakearm=W]#rmmod ledc
[root@MrMakearm=W]#insmod ledc.ko
Led Major = 251
Led Minor = 00
------------[ cut here ]------------
WARNING: at fs/sysfs/dir.c:451 sysfs_add_one+0x64/0x8c()
sysfs: cannot create duplicate filename '/devices/virtual/MakeLed'
Modules linked in: ledc(+) [last unloaded: ledc]
[<c0035628>] (unwind_backtrace+0x0/0xec) from [<c0042ccc>] (warn_slowpath_common+0x44/0x5c)
[<c0042ccc>] (warn_slowpath_common+0x44/0x5c) from [<c0042d1c>] (warn_slowpath_fmt+0x24/0x30)
[<c0042d1c>] (warn_slowpath_fmt+0x24/0x30) from [<c00dcb48>] (sysfs_add_one+0x64/0x8c)
[<c00dcb48>] (sysfs_add_one+0x64/0x8c) from [<c00dd41c>] (create_dir+0x48/0x98)
[<c00dd41c>] (create_dir+0x48/0x98) from [<c00dd4a0>] (sysfs_create_dir+0x34/0x4c)
[<c00dd4a0>] (sysfs_create_dir+0x34/0x4c) from [<c018ba38>] (kobject_add_internal+0xb8/0x18c)
[<c018ba38>] (kobject_add_internal+0xb8/0x18c) from [<c018bc80>] (kobject_add+0x4c/0x5c)
[<c018bc80>] (kobject_add+0x4c/0x5c) from [<c01cc2ac>] (get_device_parent+0xe0/0x134)
[<c01cc2ac>] (get_device_parent+0xe0/0x134) from [<c01cd038>] (device_add+0x78/0x450)
[<c01cd038>] (device_add+0x78/0x450) from [<c01cd49c>] (device_create_vargs+0x74/0xa8)
[<c01cd49c>] (device_create_vargs+0x74/0xa8) from [<c01cd4e8>] (device_create+0x18/0x20)
[<c01cd4e8>] (device_create+0x18/0x20) from [<bf009134>] (led_init+0x134/0x18c [ledc])
[<bf009134>] (led_init+0x134/0x18c [ledc]) from [<c0030384>] (do_one_initcall+0x5c/0x1b4)
[<c0030384>] (do_one_initcall+0x5c/0x1b4) from [<c0066120>] (sys_init_module+0xbc/0x1e8)
[<c0066120>] (sys_init_module+0xbc/0x1e8) from [<c0030e60>] (ret_fast_syscall+0x0/0x2c)
---[ end trace a512b0c9e9a0d7a9 ]---
kobject_add_internal failed for MakeLed with -EEXIST, don't try to register things with the same name in the same directory.
[<c0035628>] (unwind_backtrace+0x0/0xec) from [<c018bac4>] (kobject_add_internal+0x144/0x18c)
[<c018bac4>] (kobject_add_internal+0x144/0x18c) from [<c018bc80>] (kobject_add+0x4c/0x5c)
[<c018bc80>] (kobject_add+0x4c/0x5c) from [<c01cc2ac>] (get_device_parent+0xe0/0x134)
[<c01cc2ac>] (get_device_parent+0xe0/0x134) from [<c01cd038>] (device_add+0x78/0x450)
[<c01cd038>] (device_add+0x78/0x450) from [<c01cd49c>] (device_create_vargs+0x74/0xa8)
[<c01cd49c>] (device_create_vargs+0x74/0xa8) from [<c01cd4e8>] (device_create+0x18/0x20)
[<c01cd4e8>] (device_create+0x18/0x20) from [<bf009134>] (led_init+0x134/0x18c [ledc])
[<bf009134>] (led_init+0x134/0x18c [ledc]) from [<c0030384>] (do_one_initcall+0x5c/0x1b4)
[<c0030384>] (do_one_initcall+0x5c/0x1b4) from [<c0066120>] (sys_init_module+0xbc/0x1e8)
[<c0066120>] (sys_init_module+0xbc/0x1e8) from [<c0030e60>] (ret_fast_syscall+0x0/0x2c)
MakeLed create ok led init ok
[root@MrMakearm=W]#

使用特权

评论回复
14
chengchenz| | 2010-7-24 10:48 | 只看该作者
楼主的分区表好像有问题
Creating 5 MTD partitions on "NAND 64MiB 3,3V 8-bit":
0x000000000000-0x000000040000 : "supervivi"
0x000000040000-0x000000060000 : "param"
ftl_cs: FTL header not found.
0x000000060000-0x000000560000 : "Kernel"
uncorrectable error :
0x000000560000-0x000040560000 : "root"
mtd: partition "root" extends beyond the end of device "NAND 64MiB 3,3V 8-bit" -- size truncated to 0x3aa0000
ftl_cs: FTL header not found.
0x000000000000-0x000040000000 : "nand"
mtd: partition "nand" extends beyond the end of device "NAND 64MiB 3,3V 8-bit" -- size truncated to 0x4000000

64M是0x4000000,楼主的设置好像都多了个0.

使用特权

评论回复
15
godsky|  楼主 | 2010-7-27 16:32 | 只看该作者
0x000000000000-0x000040000000 : "nand"  是多个0 ,这里没问题 友善的vivi 实现了64M 128 。。1G 分区按同一分区表管理的。。这里没问题。

——————————————————————————————————————

使用特权

评论回复
16
chengchenz| | 2010-8-6 12:25 | 只看该作者
哦,看来不同的板子这方面差别还比较大。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

28

帖子

0

粉丝