exec file "vmlinux_old"'s format is elf32-little.
load section .init: addr = 0xc0008000size = 0x00019000.
load section .text: addr = 0xc0021000size = 0x0016d014.
======正常应该是先load .init,就像上面哪样,不知为什么会直接load .text,高人指点一下 问题找到了。vmlinux要用根目录下面的哪个,原先我用的是compress下面的vmlinux 请问为什么要修改cs6的地址呢?根据datasheet上的说明原始的应该是正确的啊!
回复 28# albert198511 的帖子
按照楼主的指示,如果执行make smdk2410_defconfig,编译通过后执行在我的机器上(fedora8)会出现“Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0)”的提示,我改为make s3c2410_defconfig其他的都不变则可以成功加载,具体原因不明,你可以试试我的方法。回复 41# rongna 的帖子
请参照http://skyeye.wiki.sourceforge.net/Linux 修改内核文件:make menuconfig时, 在 - [ Character Driver] - 菜单下选择去掉
8250/16550 and compatible serial support 我依照楼主的方法作的,为何后面无法继续启动了。大家帮我看看这段提示里有没有什么问题
root@ubuntu:/home/zsy/skyeye/2410# skyeye -e vmlinux
arch: arm
cpu info: armv4, arm920t, 41009200, ff00fff0, 2
mach info: name s3c2410x, mach_init addr 0x8067b9f
ethmod num=1, mac addr=0:4:3:2:1:f, hostip=10.0.0.1
lcd_mod:1
SKYEYE: use arm920t mmu ops
Loaded RAM initrd.img
exec file "vmlinux"'s format is elf32-little.
load section .text: addr = 0x00000000size = 0x000dc294.
load section .got: addr = 0x000dc294size = 0x00000060.
load section .got.plt: addr = 0x000dc2f4size = 0x0000000c.
load section .data: addr = 0x000dc300size = 0x00000000.
not load section .bss: addr = 0x000dc300size = 0x00008438 .
not load section .stack: addr = 0x000e4738size = 0x00001000 .
not load section .comment: addr = 0x00000000size = 0x00000012 .
start addr is set to 0x00000000 by exec file. 配置文件如下:
# skyeye config file for S3C2410X
cpu: arm920t
mach: s3c2410x
# physical memory
mem_bank: map=M, type=RW, addr=0xc0000000, size=0x00800000
mem_bank: map=M, type=RW, addr=0xc0800000, size=0x00800000, file=initrd.img
mem_bank: map=M, type=RW, addr=0xc1000000, size=0x01000000
# all peripherals I/O mapping area
mem_bank: map=I, type=RW, addr=0x48000000, size=0x20000000
mem_bank: map=I, type=RW, addr=0x19000300, size=0x00000020
net: type=cs8900a, base=0x19000300, size=0x20,int=9, mac=0:4:3:2:1:f, ethmod=tuntap, hostip=10.0.0.1
lcd: type=s3c2410x, mod=gtk
#dbct:state=on 按照楼主的操作进行编译linux-2.6.14,编译器使用的是eldk(arm-2008-11-24.iso)
在make时出错:
CC arch/arm/mm/alignment.o
arch/arm/mm/alignment.c: In function 'proc_alignment_write':
arch/arm/mm/alignment.c:119: error: read-only variable '__r2' used as 'asm' output
arch/arm/mm/alignment.c:119: error: read-only variable '__r2' used as 'asm' output
arch/arm/mm/alignment.c:119: error: read-only variable '__r2' used as 'asm' output
arch/arm/mm/alignment.c:119: error: read-only variable '__r2' used as 'asm' output
make: *** Error 1
make: *** Error 2
相同方法编译linux-2.6.26,arch/arm/mm/alignment.c顺利编译通过。
两个版本的alignment.c在proc_alignment_write函数处没有差别。
请问大家这是什么原因造成的,如何解决?谢谢 似乎是编译器的问题,如果用linux-2.6.14 ,应该不要用比较新的编译起吧。
这是什么错误啊?
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0)这是什么错误啊,是不是启动不了文件系统啊?应该怎样改啊?
参考skyeye-testsuite-1.2.5中的配置文件后终于解决了这个问题.其实make s3c2410_defconfig后vim .config,只要改动两个地方就行了,一是174行,设置CONFIG_CMDLINE,我的是用skyeye-testsuite-1.2.5中的initrd.img,所以设置为:mem=32M console=ttySAC0 root=/dev/ram initrd=0x30800000,0x00800000 ramdisk_size=2048 rw。二是608行附近出现有8250的注释掉.
[ 本帖最后由 lyuyi007 于 2009-4-12 15:19 编辑 ]
回复 51# hamzsy 的帖子
这是skyeye版本的问题,你用最新的运行就可以通过了.我也遇到过. 必然是,2.6.15内核不太一样http://hi.baidu.com/dljaye/blog/item/fc333cdef2bbb85c94ee37fb.html 原帖由 socoola 于 2008-2-1 11:55 发表 http://www.linuxfans.org/bbs/images/common/back.gif
9. 在include/asm-arm/arch-s3c2410/目录下创建smdk2410.h文件
#ifndef _INCLUDE_SMDK2410_H_
#define _INCLUDE_SMDK2410_H_
#include
#define pSMDK2410_ETH_IO 0x19000000
#define vSMDK2410_ETH_IO 0xE0000000
# ...
这个文件编译出错了,怎么会事呀? 原帖由 socoola 于 2008-2-1 11:55 发表
9. 在include/asm-arm/arch-s3c2410/目录下创建smdk2410.h文件
#ifndef _INCLUDE_SMDK2410_H_
#define _INCLUDE_SMDK2410_H_
#include
#define pSMDK2410_ETH_IO 0x19000000
#define vSMDK2410_ETH_IO 0xE0000000
# ...
这个是linux 版本的问题,linux 2.6.2x的cs8900a驱动移植请参考:
http://blog.chinaunix.net/u2/63560/showart_514147.html
[ 本帖最后由 huangzhendi 于 2009-4-28 08:07 编辑 ]
按照你说的出现错误
完全按照你说做了,成功编译了skyeye,linux-2.6.14但是启动的时候出现:booting the kernel 后就不动了
求救!