QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2669|回复: 7

skyeye xscale 仿真错误 (again)

[复制链接]
发表于 2004-8-17 11:59:03 | 显示全部楼层 |阅读模式
之前,已经有一篇关于xscale的运行贴子
http://www.linuxfans.org/nuke/modules.php?name=Forums&file=viewtopic&t=70084&start=0&postdays=0&postorder=asc&highlight=

但这里再次问一下,不同之处:
(1)错误现象不同
(2)上篇chyyuu的解决方法还不太理解:

前言:
(1)我安装的是skyeye-0.7.4
(2)基于linux-2.4.19, patch-2.4.19-rm7, diff-2.4.19-rm7-pxa2编译内核(cd /usr/src/linux-2.4.19/; make lubbock_config; make dep zImage,一切都很顺利 )
(Add-on: cross-tool is gcc-3.2.1 + binutils-2.13.90)
(3)skyeye.conf, initrd4M.img (来源:skyeye-binary-testsuit-1.0.7/xscale/linux-2.4.x), zImage (来源:/usr/src/linux-2.4.19/arch/arm/boot/zImage)

运行:

[root@localhost linux-2.4.x]# skyeye
***************************************************************
****                                                       ****
****   SkyEye  Simulator Ver 0.7.4 with  GDB 5.3 Interface ****
****                                                       ****
***************************************************************
GNU gdb 5.3
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This SkyEye was configured as "--host=i686-pc-linux-gnu --target=arm-elf".
(SkyEye) target sim
cpu info: xscale, xscale, 69052100, fffffff0, 2
mach info: name pxa_lubbock, mach_init addr 0x814155c
SKYEYE: use xscale mmu ops
Loaded ROM zImage
Loaded ROM ./initrd4M.img
Connected to the simulator.
(SkyEye) load
No executable file specified.
Use the "file" or "exec-file" command.
(SkyEye) run
Starting program:
warning: No executable file specified.
warning: No program loaded.
Uncompressing Linux..................................................... done, booting the kernel.
Linux version 2.4.19-rmk7-pxa2 ([email protected]) (gcc version 3.2.1)
#1 二 8月 17 10:00:41 CST 2004
CPU: XScale-PXA250 revision 0
Machine: Intel DBPXA250 Development Platform
Ignoring unrecognised tag 0x00000000
Memory clock: 99.53MHz (*27)
Run Mode clock: 99.53MHz (*1)
Turbo Mode clock: 99.53MHz (*1.0, inactive)
On node 0 totalpages: 16384
zone(0): 16384 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: root=/dev/nfs ip=bootp console=ttyS0,115200 mem=64M
Console: colour dummy device 80x30
Calibrating delay loop... 7.29 BogoMIPS
Memory: 64MB = 64MB total
Memory: 63012KB available (1401K code, 299K data, 80K init)
Dentry cache hash table entries: 8192 (order: 4, 65536 bytes)
Inode cache hash table entries: 4096 (order: 3, 32768 bytes)
Mount-cache hash table entries: 1024 (order: 1, 8192 bytes)
Buffer-cache hash table entries: 4096 (order: 2, 16384 bytes)
Page-cache hash table entries: 16384 (order: 4, 65536 bytes)
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
Disabling CPU frequency change support.
CPU clock: 0.000 MHz (0.000-0.000 MHz)
Starting kswapd
JFFS2 version 2.1. (C) 2001 Red Hat, Inc., designed by Axis Communications AB.
Console: switching to colour frame buffer device 80x30
Keyboard interface test failed[1]: 00
Keyboard interface test failed[2]: 00
Keyboard interface test failed[3]: 00
initialize_kbd: Keyboard reset failed, no ACK
pty: 256 Unix98 ptys configured
Serial driver version 5.05c (2001-07-0 with no serial options enabled
Keyboard timed out[1]
keyboard: Timeout - AT keyboard not present?
Keyboard timed out[1]
keyboard: Timeout - AT keyboard not present?
ttyS00 at 0x0000 (irq = 15) is a PXA UART
ttyS01 at 0x0000 (irq = 14) is a PXA UART
ttyS02 at 0x0000 (irq = 13) is a PXA UART
SA1100 Real Time Clock driver v1.00
rtc: warning: initializing default clock divider/trim value
Uniform Multi-Platform E-IDE driver Revision: 6.31
ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=xx
(死机!完全不动) <<==============================

Program received signal SIGINT, Interrupt.
No program loaded.
0xc0027dd8 in ?? ()
(SkyEye)


问题:
是否需要按上篇文章那样,修改config文件?
发表于 2004-8-18 11:12:50 | 显示全部楼层
你内核编译的时候,选了IDE了吧,skyeye还没有仿真IDE,你重新编译内核,去掉IDE的选项,在试一下。
回复

使用道具 举报

 楼主| 发表于 2004-8-18 11:31:24 | 显示全部楼层
谢谢,我试一下。
回复

使用道具 举报

 楼主| 发表于 2004-8-18 19:04:02 | 显示全部楼层

帮忙“诊断”一下!

依照上篇回复的提示,我开始做一个内核没有IDE设备搜索的。
但做了几次都失败了,
$make config (很多选项不知道应该怎样设,这样反复了很多次)
$make
常见的情况是:
Uncompressing Linux.............................. done, booting the kernel.
然后就HALT了。

最后一次是这样做的(虽然也失败了)

$cd /usr/src/linux-2.4.19

$make lubbock_config
===========================(make modifications)================================
------(1) remove the IDE/SCSI/USB/SoundCard etc.
------(2) set Kernel cmd_line : mem=64M root=/dev/ram ramdisk=8192 ramdisk_start=0xc1000000 console=ttyS0,115200

$make
(about 20 min.s later)

[root@localhost xscale-lab]# cp /usr/src/linux-2.4.19/arch/arm/boot/zImage .
cp:是否覆盖‘./zImage’? y

$cat skyeye.cong
cpu: xscale
mach: pxa_lubbock
mem_bank: map=I, type=RW, addr=0x40000000, size=0x0c000000
mem_bank: map=M, type=RW, addr=0xa0000000, size=0x00200000
mem_bank: map=M, type=RW, addr=0xa0200000, size=0x00100000, file=zImage, boot=yes
mem_bank: map=M, type=RW, addr=0xa0300000, size=0x00d00000
mem_bank: map=M, type=RW, addr=0xa1000000, size=0x00800000, file=./initrd4M.img
mem_bank: map=M, type=RW, addr=0xa1800000, size=0x02800000



[root@localhost xscale-lab]# skyeye
***************************************************************
****                                                       ****
****   SkyEye  Simulator Ver 0.7.4 with  GDB 5.3 Interface ****
****                                                       ****
***************************************************************
GNU gdb 5.3
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This SkyEye was configured as "--host=i686-pc-linux-gnu --target=arm-elf".
(SkyEye) tar sim
cpu info: xscale, xscale, 69052100, fffffff0, 2
mach info: name pxa_lubbock, mach_init addr 0x814155c
SKYEYE: use xscale mmu ops
Loaded ROM zImage
Loaded ROM ./initrd4M.img
Connected to the simulator.
(SkyEye) run
Starting program:
warning: No executable file specified.
warning: No program loaded.
Uncompressing Linux.............................. done, booting the kernel.
Linux version 2.4.19-rmk7-pxa2 ([email protected]) (gcc version 3.3.2)
#5 三 8月 18 17:46:45 CST 2004
CPU: XScale-PXA250 revision 0
Machine: Intel DBPXA250 Development Platform
Ignoring unrecognised tag 0x00000000
Memory clock: 99.53MHz (*27)
Run Mode clock: 99.53MHz (*1)
Turbo Mode clock: 99.53MHz (*1.0, inactive)
On node 0 totalpages: 16384
zone(0): 16384 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: mem=64M root=/dev/ram ramdisk=8192 ramdisk_start=0xc1000000 console=ttyS0,115200
Console: colour dummy device 80x30
Calibrating delay loop... 7.29 BogoMIPS
Memory: 64MB = 64MB total
Memory: 63780KB available (715K code, 239K data, 60K init)
Dentry cache hash table entries: 8192 (order: 4, 65536 bytes)
Inode cache hash table entries: 4096 (order: 3, 32768 bytes)
Mount-cache hash table entries: 1024 (order: 1, 8192 bytes)
Buffer-cache hash table entries: 4096 (order: 2, 16384 bytes)
Page-cache hash table entries: 16384 (order: 4, 65536 bytes)
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Disabling CPU frequency change support.
CPU clock: 0.000 MHz (0.000-0.000 MHz)
Starting kswapd
Console: switching to colour frame buffer device 80x30
Keyboard interface test failed[1]: 00
Keyboard interface test failed[2]: 00
Keyboard interface test failed[3]: 00
initialize_kbd: Keyboard reset failed, no ACK
pty: 256 Unix98 ptys configured
Keyboard timed out[1]
keyboard: Timeout - AT keyboard not present?
Keyboard timed out[1]
keyboard: Timeout - AT keyboard not present?
Serial driver version 5.05c (2001-07-0 with no serial options enabled
ttyS00 at 0x0000 (irq = 15) is a PXA UART
ttyS01 at 0x0000 (irq = 14) is a PXA UART
ttyS02 at 0x0000 (irq = 13) is a PXA UART
SA1100 Real Time Clock driver v1.00
rtc: warning: initializing default clock divider/trim value
RAMDISK driver initialized: 16 RAM disks of 8192K size 1024 blocksize
NetWinder Floating Point Emulator V0.95 (c) 1998-1999 Rebel.com
FAT: bogus logical sector size 0
Kernel panic: VFS: Unable to mount root fs on 01:00
  
(.......HALT!!!..................)

Program received signal SIGINT, Interrupt.
No program loaded.
0xc00258bc in ?? ()
(SkyEye) load
No executable file specified.
Use the "file" or "exec-file" command.
(SkyEye) where
#0  0xc00258bc in ?? ()
No program loaded.
(SkyEye)


比较以前有进步:
(1)原先解压缩完之后,就HALT了;
(2)但root fs mount失败??
(我用的initrd4M是从网上的skyeye-testutils-1.0.7/xscale/linux-2.4.x拷贝来的)
回复

使用道具 举报

发表于 2004-8-25 23:06:45 | 显示全部楼层
现在解决这个问题了吗?
回复

使用道具 举报

 楼主| 发表于 2004-8-26 09:46:57 | 显示全部楼层
没有解决。这个实验暂停了。准备仔细做一遍armlinux的编译。另外,initrd4M.img的相关信息从那里能获得?(如有关目录/文件,文件系统类型、大小的)
回复

使用道具 举报

发表于 2004-8-26 10:07:45 | 显示全部楼层
initrd4M.img是自己做的,你也可以仿照initrd4M.img的内容自己做一个文件系统。
回复

使用道具 举报

 楼主| 发表于 2004-8-26 10:59:24 | 显示全部楼层
谢谢,试验通过了。原因是:内核编译没有配ext2支持,二是选了FAT。
我也试验了img的制作(修改),明白了。

[root@localhost skyeye-binary-testutils-1.0.7]# cd xscale/
[root@localhost xscale]# cd linux-2.4.x/
[root@localhost linux-2.4.x]# ls
initrd4M.img  skyeye.conf  zImage  zImage.new  zImage.orig
[root@localhost linux-2.4.x]# mkdir /mnt/test
[root@localhost linux-2.4.x]# mount -loop initrd4M.img /mnt/test
mount: initrd4M.img is not a block device (maybe try `-o loop'?)
[root@localhost linux-2.4.x]# mount -o loop initrd4M.img /mnt/test
[root@localhost linux-2.4.x]# cd /mnt/test
[root@localhost test]# ls
bin  dev  etc  home  lib  lost+found  mnt  proc  tmp  usr  var
然后添加了交叉编译出来的执行程序放入/mnt/test/bin目录,然后umount,通了。谢谢
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-11-21 23:11 , Processed in 0.043303 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

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