QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3298|回复: 4

求助skyeyeV1.2.5 no bank found错误

[复制链接]
发表于 2008-8-16 15:57:30 | 显示全部楼层 |阅读模式
环境:
liunx2.6.22.1
skyeye1.2.5
busybox1.11.1

initrd制作实际操作过程(参考网上的)


创建映像文件并挂到 initrd 目录
#mkdir initrd
#dd if=/dev/zero of=initrd.img bs=1k count=4096
#mke2fs -F -v initrd.img
#mount -o loop initrd.img initrd

将添加 busybox 到此映像文件
#cd initrd
#cp -r ../_install/* .

#创建必要的目录
#mkdir proc lib etc dev root home var tmp
#chmod 777 tmp

建立设备文件
#cd dev
#mknod -m 644 console c 5 1
#mknod -m 644 null c 1 3
#mknod -m 640 ram b 1 1
#mknod -m 644 mem c 1 1
#cd ..

创建脚本文件 etc/inittab, 内容如下:
::sysinit:/etc/init.d/rcS
::askfirst:-/bin/sh
::restart:/sbin/init
::ctrlaltdel:/sbin/reboot
::shutdown:/bin/umount -a -r
::shutdown:/sbin/swapoff -a

设置此脚本执行权限
#chmod 644 etc/inittab

创建脚本文件 etc/init.d/rcS, 内容如下:
#!/bin/sh
/bin/mount -t proc none /proc
/sbin/ifconfig lo 127.0.0.1 up
/sbin/ifconfig eth0 10.0.0.2 netmask 255.0.0.0 up
hostname skyeye
mkdir /var/tmp
mkdir /var/log
mkdir /var/run
mkdir /var/lock
/bin/ash

设置此脚本执行权限
#chmod 755 etc/init.d/rcS

最后一步,执行实际的写入操作,生成 initrd.img
cd ..
umount initrd

skyeye.conf的内容如下!
  cpu: arm920t
  mach: s3c2410x(我的实际开发板是S3C2410A)

  # 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

使用skyeye -c skyeye.conf -e vmlinux运行后出现如下错误!
Your elf file is little endian.
arch: arm
cpu info: armv4, arm920t, 41009200, ff00fff0, 2
mach info: name s3c2410x, mach_init addr 0x806bbf0
ethmod num=1, mac addr=0:4:3:2:1:f, hostip=10.0.0.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.
not load section .comment: addr = 0x00000000 size = 0x00002a30 .
call ARMul_InitSymTable,kernel filename is vmlinux.
SKYEYE:Error in mem_read_word, no bank found, NumInstrs 0, mem_read_word addr = 0 no bank

------------------(下面出现的都是上面这一行然后是不停地刷屏)-------------------------
发表于 2008-8-16 21:34:23 | 显示全部楼层
可能是vmlinux内核文件没有加载好
在cygwin上getopt错误就是这样
debug一下skyeye吧
回复

使用道具 举报

 楼主| 发表于 2008-8-17 02:58:37 | 显示全部楼层
原帖由 duzhig 于 2008-8-16 21:34 发表
可能是vmlinux内核文件没有加载好
在cygwin上getopt错误就是这样
debug一下skyeye吧


谢谢你的回复,很可惜我对linux的开发不是很了解,你说的debug是指什么呢?
是用GDB吗?
可否提供具体的方案或者策略?
谢谢

另外,似乎很多内核在skyeye进行模拟的时候都与真实的开发板有所不同而要作出调整,请问你知道是依据什么原则进行调整的吗?
我的内核是没有经过这方面的调整的,是否这是一定要做的工作?
回复

使用道具 举报

发表于 2008-8-17 10:35:55 | 显示全部楼层

回复 #1 finalfantasy000 的帖子

回复

使用道具 举报

发表于 2008-8-17 16:05:02 | 显示全部楼层
哦什么时候加上load_addr:base=0x20000000, mask=0xFFFFFF
1.2.6还没有实现吧
9200可以加载到20000000了吗不用改hardware.h了
我试验怎么还是
unknown option load_addr
另外http://skyeye.wikispaces.com/Linux#toc2里要提示编译内核时候
bootline要改主要是initrd参数要和skyeye.conf对应起来
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-2 08:34 , Processed in 0.050930 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表