回复 #15 gbf0871 的帖子
thanks for your tips.the related content in the file is:
/* add for skyeye */
#include <asm-arm/arch-s3c2410/smdk2410.h>
#include "devs.h"
#include "cpu.h"
static struct map_desc smdk2410_iodesc[] __initdata = {
/* nothing here yet */
/* add for skyeye */
/* Map the ethernet controller CS8900A */
{vSMDK2410_ETH_IO,pSMDK2410_ETH_IO, SZ_1M, MT_DEVICE}
/* add for skyeye end */
};
I think it is the same with zbluecn's
回复 #14 socoola 的帖子
This problem is solved, in /include/asm-arm/arch-s3c2410/memory.horiginal text is :
/*
* DRAM starts at 0x30000000 for S3C2410/S3C2440
* and at 0x0C000000 for S3C2400
*/
#ifdef CONFIG_CPU_S3C2400
#define PHYS_OFFSET (0x0C000000UL)
#else
#define PHYS_OFFSET (0x30000000UL)
#endif
At the first time, i modify it as:
#ifdef CONFIG_CPU_S3C2400
#define PHYS_OFFSET (0x0C000000UL)
#else
#define PHYS_OFFSET (0xC0000000UL)
#endif
so the error is occur.
The right modification is :
#ifdef CONFIG_CPU_S3C2400
#define PHYS_OFFSET (0xC0000000UL) /* notify here */
#else
#define PHYS_OFFSET (0xC0000000UL)
#endif
回复 #17 socoola 的帖子
如果你要使用zImage就不要使用这个修改了不过 使用zImage,在skyeye上模拟, 解压的速度很慢~~ 不知道是不是我的机子的问题
[ 本帖最后由 zbluecn 于 2008-2-2 16:53 编辑 ]
God help me, new error!!!!!!
environment:host: Fedora8
Linux tar:http://www.at.kernel.org/pub/linux/kernel/v2.6/linux-2.6.14.tar.bz2
skyeye version:1.2.4
cross compiler:ttp://handhelds.org/download/projects/toolchain/arm-linux-gcc-3.4.1.tar.bz2
error info:
NET: Registered protocol family 1
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0)
run log:
big_endian is false.
arch: arm
cpu info: armv4, arm920t, 41009200, ff00fff0, 2
mach info: name s3c2410x, mach_init addr 0x806b340
ethmod num=1, mac addr=0:4:3:2:1:f, hostip=10.0.0.1
lcd_mod:1
uart_mod:0, desc_in:, desc_out:, converter:
SKYEYE: use arm920t mmu ops
Loaded RAM ./initrd.img
exec file "vmlinux"'s format is elf32-little.
load section .init: addr = 0xc0008000size = 0x00016000.
load section .text: addr = 0xc001e000size = 0x0017806c.
not load section .pci_fixup: addr = 0xc019606csize = 0x00000000 .
not load section __ksymtab: addr = 0xc019606csize = 0x00000000 .
not load section __ksymtab_gpl: addr = 0xc019606csize = 0x00000000 .
not load section __kcrctab: addr = 0xc019606csize = 0x00000000 .
not load section __kcrctab_gpl: addr = 0xc019606csize = 0x00000000 .
load section __param: addr = 0xc019606csize = 0x0000026c.
load section .data: addr = 0xc0198000size = 0x0002fc20.
not load section .bss: addr = 0xc01c7c20size = 0x000158f8 .
not load section .comment: addr = 0x00000000size = 0x00001c7a .
call ARMul_InitSymTable,kernel filename is vmlinux.
start addr is set to 0xc0008000 by exec file.
Linux version 2.6.14 ([email protected]) (gcc version 3.4.1) #1 Sat Feb 2 16:51:28 CST 2008
CPU: ARM920Tid(wb) revision 0 (ARMvundefined/unknown)
Machine: SMDK2410
Warning: bad configuration page, trying to continue
Memory policy: ECC disabled, Data cache writeback
CPU S3C2410 (id 0x32410000)
S3C2410: core 62.400 MHz, memory 62.400 MHz, peripheral 62.400 MHz
S3C2410 Clocks, (c) 2004 Simtec Electronics
CLOCK: Slow mode (1.500 MHz), fast, MPLL on, UPLL on
CPU0: D VIVT write-back cache
CPU0: I cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
CPU0: D cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
Built 1 zonelists
Kernel command line: mem=32M console=ttySAC0 root=/dev/ram initrd=0xc0800000,0x00800000 ramdisk_size=2048 rw
PID hash table entries: 256 (order: 8, 4096 bytes)
timer tcon=00000000, tcnt cb1f, tcfg 00000200,00000000, usec 0000189e
Console: colour dummy device 80x30
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 32MB = 32MB total
Memory: 30476KB available (1504K code, 277K data, 88K init)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
softlockup thread 0 started up.
NET: Registered protocol family 16
S3C2410: Initialising architecture
Console: switching to colour frame buffer device 80x25
fb0: Virtual frame buffer device, using 1024K of video memory
s3c2410_serial0 at MMIO 0x50000000 (irq = 70) is a S3C2410
s3c2410_serial1 at MMIO 0x50004000 (irq = 73) is a S3C2410
s3c2410_serial2 at MMIO 0x50008000 (irq = 76) is a S3C2410
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered
RAMDISK driver initialized: 16 RAM disks of 2048K size 1024 blocksize
Cirrus Logic CS8900A driver for Linux (Modified for SMDK2410)
eth0: CS8900A rev D at 0xe0000300 irq=53, no eeprom , addr: 08: 0:3E:26:0A:5B
mice: PS/2 mouse device common for all mice
NET: Registered protocol family 2
IP route cache hash table entries: 512 (order: -1, 2048 bytes)
TCP established hash table entries: 2048 (order: 1, 8192 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP reno registered
TCP bic registered
NET: Registered protocol family 1
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0)
linux is running on skyeye, but the network is not working
10、配置、编译内核。在内核顶层目录当中键入:#make smdk2410_defconfig --------->modify as: #make s3c2410_defconfig
由于2.6的内核默认就支持了S3C2410,所以就有一个默认的内核配置文件。里面只是包
括了一个简单的配置,要使网卡编译进内核,还要进行手工配置。
now inux is running on skyeye, but the network is not working
on my computer:(eth0 is disabled):ifconfig
eth1 Link encap:EthernetHWaddr 00:14:78:9A:E7:1A
inet addr:192.168.0.200Bcast:192.168.0.255Mask:255.255.255.0
inet6 addr: fe80::214:78ff:fe9a:e71a/64 Scope:Link
UP BROADCAST RUNNING MULTICASTMTU:1500Metric:1
RX packets:15885 errors:0 dropped:0 overruns:0 frame:0
TX packets:7418 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2218278 (2.1 MiB)TX bytes:3342110 (3.1 MiB)
Interrupt:18 Base address:0x2c00
lo Link encap:Local Loopback
inet addr:127.0.0.1Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNINGMTU:16436Metric:1
RX packets:10302 errors:0 dropped:0 overruns:0 frame:0
TX packets:10302 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:807039 (788.1 KiB)TX bytes:807039 (788.1 KiB)
tap0 Link encap:EthernetHWaddr 00:FF:9F:0B:2F:86
inet addr:10.0.0.1Bcast:10.255.255.255Mask:255.0.0.0
inet6 addr: fe80::2ff:9fff:fe0b:2f86/64 Scope:Link
UP BROADCAST RUNNING MULTICASTMTU:1500Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:1 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:500
RX bytes:0 (0.0 b)TX bytes:90 (90.0 b)
skyeye.conf:
# 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
on armlinux(run on skyeye):
/ $ ifconfig
eth0 Link encap:EthernetHWaddr 00:04:03:02:01:0F
inet addr:10.0.0.2Bcast:10.255.255.255Mask:255.0.0.0
UP BROADCAST RUNNING MULTICASTMTU:1500Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B)TX bytes:0 (0.0 B)
Interrupt:53 Base address:0x300
lo Link encap:Local Loopback
inet addr:127.0.0.1Mask:255.0.0.0
UP LOOPBACK RUNNINGMTU:16436Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B)TX bytes:0 (0.0 B)
/ $
on the computer, ping 10.0.0.2 fail
on the armlinux(on skyeye), ping 10.0.0.1 fail
run example vmlinux on dictionary skyeye-testsuite-2.3/linux/s3c2410/s3c2410x-2.6.14 , the result is the same
回复 #19 socoola 的帖子
你没有挂机根目录~~ skyeye-testsuite-2.3/linux/s3c2410/s3c2410x-2.6.14 的网卡是不能使用的需要自己加入cs8900的驱动啊 还有打skyeye 1.2.4 的补丁了吗
回复 #23 zbluecn 的帖子
i had patched the dev_net_cs8900.diff for skyeye, also involved cs8900 driver for linux.Now the target and host can communicate with each other, but i do nothing with it.
I guess skyeye's driver is not stable, sometimes it works, and sometimes it rests.
a little disappointing.
BTW: when install fedora, i select the English language. now i can not use any Chinese except copy and paste. any solution? 您好:我对第10步的
#make menuconfig
根目录文件使用skyeye-testsuite-2.3.tar.bz2 中s3c2410的镜像
设置内核启动参数mem=32M console=ttySAC0 root=/dev/ram initrd=0xc0800000,0x00800000 ramdisk_size=2048 rw
我的理解是把skyeye-testsuite-2.3/linux/s3c2410/s3c2410x-2.6.14/目录下的skyeye.conf文件拷贝到linux-2.6.14目录下,并接将lcd那行注释掉。
但是在运行skyeye -e vmlinux时,在图示部位停止执行
难道要用skyeye-testsuite-2.3/linux/s3c2410/s3c2410x-2.6.14/目录下的vmlinux覆盖make生成的vmlinux吗?谢谢!
(skyeye-testsuite-2.3/linux/s3c2410/s3c2410x-2.6.14/下的vmlinux测试过,好使) "根目录文件使用skyeye-testsuite-2.3.tar.bz2 中s3c2410的镜像
",应该是复制 initrd吧
回复 #26 lvcoffee 的帖子
对 我少说了 两个都复制了啊。。。 skyeye.conf和initrd.img文件上面的问题已经解决 谢谢高手们的指点!
现在执行到“Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0)”又停止了。。。
看LZ发的图片 不是执行skyeye -e vmlinux之后再mkdir mnt;mount -o nolock 10.0.0.1:root/arm mnt的吗?
还有就是 “root/arm ”具体是指哪个目录,里面有什么?
谢谢!
[ 本帖最后由 albert198511 于 2008-3-12 10:10 编辑 ]
回复 #19 socoola 的帖子
您好,我遇到和您一样的错误,请问您是怎么挂载的啊? 谢谢!求救!谢谢!
楼上各位兄弟,我按照楼主的步骤,编译出来了vmlinux, 我把它拷贝到拷贝到testsuit 2.3里边的s3c2410x-2.6.14目录里,skyeye -e vmlinux
启动内核的时候就定在那里了,不知道是啥原因,在楼主的文章里,有一个地方不是很明白:就是内核参数,我是修改的.config文件里的CONFIG_CMDLINE, 不知道对不对。
我看楼上有的兄弟没有运行起来,是缺了文件了,我把vmlinux复制到s3c2410x-2.6.14这个文件夹,应该不缺什么了呀,
是不是还有什么需要改动的地方,请大家说说呀,初学,头疼!
help
设置内核启动参数mem=32M console=ttySAC0 root=/dev/ram initrd=0xc0800000,0x00800000 ramdisk_size=2048 rw这个步骤具体怎么操作??