QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3519|回复: 12

使用skyeye-1.2.4运行uClinux的问题

[复制链接]
发表于 2007-12-19 14:58:32 | 显示全部楼层 |阅读模式
我的配置环境
RedHat 9.0
arm-elf-gcc 3.2.2
uClinux-dist-20040408  
meunconfig为   lpc2200/Armulator  linux-2.4.x/uClibc

使用skyeye-1.2.4解压make后出现错误
arch/ppc/common/ppc_mmu.c:240: undefined reference to `prom_quiesce'
collect2: ld returned 1 exit status
make: *** [binary/skyeye] Error 1
于是找到prom_quiesce()并将其屏蔽掉,再make 终于出现 enjoy it!
s   -lbfd -liberty --end-group  -lm
****
**** The binary file located at 'binary/skyeye', enjoy it.
****
然后cd 到uClinux-dist,问题出现了:
[root@pandy uClinux-dist]# /home/skyeye-1.2.4/binary/skyeye -e linux-2.4.x/linux
big_endian is false.
arch: arm
cpu info: armv3, arm7tdmi, 41007700, fff8ff00, 0
mach info: name lpc, mach_init addr 0x8067df0
uart_mod:0, desc_in:, desc_out:, converter:
SKYEYE: use arm7100 mmu ops
Loaded ROM   images/romfs.img
exec file "linux-2.4.x/linux"'s format is elf32-little.
load section .init: addr = 0x81008000  size = 0x0000a000.
SKYEYE:NumInstrs 0, mem_write_byte addr = 81008000 no bank
[root@pandy uClinux-dist]#

baidu,google了好久也没找到答案,希望大家帮帮忙看哪里的问题,谢谢
 楼主| 发表于 2007-12-19 15:05:57 | 显示全部楼层
我的skyeye.conf
cpu: arm7tdmi
mach: lpc
mem_bank: map=M, type=RW, addr=0x00000000, size=0x00004000
mem_bank: map=M, type=RW, addr=0x01000000, size=0x00400000
mem_bank: map=M, type=R, addr=0x01400000, size=0x00400000, file=images/romfs.img
mem_bank: map=M, type=RW, addr=0x02000000, size=0x00400000
mem_bank: map=M, type=RW, addr=0x02400000, size=0x00008000
mem_bank: map=M, type=RW, addr=0x04000000, size=0x00400000
mem_bank: map=I, type=RW, addr=0xf0000000, size=0x10000000
回复

使用道具 举报

 楼主| 发表于 2007-12-19 15:15:23 | 显示全部楼层
感觉.init的addr应该是0x01000000,可我的是0x81008000。。
回复

使用道具 举报

发表于 2007-12-20 18:14:29 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2007-12-21 09:37:02 | 显示全部楼层
Thanks。。
回复

使用道具 举报

 楼主| 发表于 2007-12-21 21:22:24 | 显示全部楼层
Vendor/Product 配置为GDB/ARMulator,并且skyeye.conf里为mach:at91后成功运行uClinux内核
谢谢

但现在Vendor/Product 重新配置为philips/lpc2200,make无误后
按照http://skyeye.wiki.sourceforge.net/uClinux#tocuClinux2 给出的skyeye.conf,发现file所指向的init ram disk 文件并没有出现,
#skyeye config file sample
cpu: arm7tdmi
mach: lpc
mem_bank: map=M, type=RW, addr=0x40000000, size=0x00200000
mem_bank: map=M, type=RW, addr=0x81000000, size=0x00700000
mem_bank: map=M, type=RW,  addr=0x81700000, size=0x00100000, file=./initrd-u
mem_bank: map=I, type=RW, addr=0xe0000000, size=0x20000000

file=./initrd-u 应该怎么改呢?
回复

使用道具 举报

 楼主| 发表于 2007-12-23 14:58:14 | 显示全部楼层
KSH,as I do not comprehend the skyeye config file for lpc so much,so I appoint the file parameter to initrd-2.4.20-8.img which locate under the directory /boot,just as  
cpu: arm7tdmi
mach: lpc
mem_bank: map=M, type=RW, addr=0x40000000, size=0x00200000
mem_bank: map=M, type=RW, addr=0x81000000, size=0x00700000
mem_bank: map=M, type=RW,  addr=0x81700000, size=0x00100000, file=/boot/initrd-2.4.20-8.img
mem_bank: map=I, type=RW, addr=0xe0000000, size=0x20000000
then it runs longer ,with errors emerging...  SOS

[root@pandy uClinux-dist]# /home/skyeye-1.2.4/binary/skyeye -e linux-2.4.x/linuxbig_endian is false.
arch: arm
cpu info: armv3, arm7tdmi, 41007700, fff8ff00, 0
mach info: name lpc, mach_init addr 0x8067df0
uart_mod:0, desc_in:, desc_out:, converter:
SKYEYE: use arm7100 mmu ops
./boot/initrd-2.4.20-8.img: No such file or directory
bank 2, Couldn't open boot ROM ./boot/initrd-2.4.20-8.img - execution will commence with the debuger.
[root@pandy uClinux-dist]# /home/skyeye-1.2.4/binary/skyeye -e linux-2.4.x/linuxbig_endian is false.
arch: arm
cpu info: armv3, arm7tdmi, 41007700, fff8ff00, 0
mach info: name lpc, mach_init addr 0x8067df0
uart_mod:0, desc_in:, desc_out:, converter:
SKYEYE: use arm7100 mmu ops
Loaded RAM   /boot/initrd-2.4.20-8.img
exec file "linux-2.4.x/linux"'s format is elf32-little.
load section .init: addr = 0x81008000  size = 0x0000a000.
load section .text: addr = 0x81012000  size = 0x000f0940.
load section .data: addr = 0x81104000  size = 0x0000b54c.
not load section .bss: addr = 0x8110f560  size = 0x00021030 .
not load section .debug_abbrev: addr = 0x00000000  size = 0x0004392a .
not load section .debug_info: addr = 0x00000000  size = 0x01abf95d .
not load section .debug_line: addr = 0x00000000  size = 0x00308e91 .
not load section .debug_pubnames: addr = 0x00000000  size = 0x0001a960 .
not load section .debug_aranges: addr = 0x00000000  size = 0x00002850 .
call ARMul_InitSymTable,kernel filename is linux-2.4.x/linux.
start addr is set to 0x81008000 by exec file.
Linux version 2.4.24-uc0 (root@pandy) (gcc version 2.95.3 20010315 (release)(ColdFire patches - 20010318 from http://fiddes.net/coldfire/)(uClinux XIP and shared lib patches from http://www.snapgear.com/)) #1 五 12月 21 17:18:24 CST 2007
Processor: philip lpc2200 revision 14
Architecture: zlg-arm-linux
Ignoring unrecognised tag 0x00000000
On node 0 totalpages: 2048
zone(0): 0 pages.
zone(1): 2048 pages.
zone(2): 0 pages.
Kernel command line: root=/dev/ram
Calibrating delay loop... 563.60 BogoMIPS
Memory: 8MB = 8MB total
Memory: 5876KB available (962K code, 183K data, 40K init)
Dentry cache hash table entries: 1024 (order: 1, 8192 bytes)
Inode cache hash table entries: 512 (order: 0, 4096 bytes)
Mount cache hash table entries: 512 (order: 0, 4096 bytes)
Buffer cache hash table entries: 1024 (order: 0, 4096 bytes)
Page-cache hash table entries: 2048 (order: 1, 8192 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
Starting kswapd
Serial driver version 5.05c (2001-07-0 with no serial options enabled
ERROR:io_read: addr = e0010010
R 8115bea8,4,e0010000,10,e0010000,8110c340,8115bea8,81120cc8,8110c340,8110fe30,a0000013,8115bea4,8115bea8,8115be98,8108c278,81087fb8,C a0000093,S 0,0,200000d3,60000013,0,0,0,M 13,B 3,E 0,I 0,P 810e254c,T 0,L e1a0f00e,D 8afffffd,ERROR:io_read: addr = e001000c
R 8115bea8,3,e0010000,c,e0010000,8110c340,8115bea8,81120cc8,8110c340,ff,a0000013,8115bea4,8115bea8,8115be98,8108c28c,81087fb8,C 60000093,S 0,0,200000d3,60000013,0,0,0,M 13,B 3,E 0,I 0,P 810e254c,T 0,L e1a0f00e,D 8afffffd,ERROR:io_write a non-exsiting addr:addr = e001000c, data = bf
ERROR:io_write a non-exsiting addr:addr = e0010008, data = 0
ERROR:io_write a non-exsiting addr:addr = e001000c, data = 0
ERROR:io_write a non-exsiting addr:addr = e0010008, data = 1
ERROR:io_read: addr = e0010008
R 8115bea8,2,e0010000,8,ff,8110c340,8115bea8,81120cc8,8110c340,ff,a0000013,8115bea4,8115bea8,8115be98,8108c31c,81087fb8,C 60000093,S 0,0,200000d3,60000013,0,0,0,M 13,B 3,E 0,I 0,P 810e254c,T 0,L e1a0f00e,D 8afffffd,ERROR:io_write a non-exsiting addr:addr = e001000c, data = ff
ttyS00 at 0xe000c000 (irq = 6) is a 16450
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 512 bind 512)
RAMDISK: Compressed image found at block 0
Freeing initrd memory: 1024K
VFS: Mounted root (ext2 filesystem) readonly.
Freeing init memory: 40K
Kernel panic: No init found.  Try passing init= option to kernel.

I look for many articles on the website ,no correlative questions there  ...
回复

使用道具 举报

发表于 2007-12-23 23:27:05 | 显示全部楼层
initrd-u file should be your root file system.  Probably you can find it from skyeye-testsuite 2.3 package.
回复

使用道具 举报

 楼主| 发表于 2007-12-24 22:18:50 | 显示全部楼层
then i have a question to ask :why there is not a approprate img file under directory /images after I compile the uClinux-dist-20040408 ,which i can use directly,3Q
I can run the .img files in testsuit correctly,but unluckly,i did not found a corret file for my simulation ,wuwu。because of skyeye.conf &img file
(Vender/Product philips/lpc2200    linux-2.4.x  uclib)
and i have found a conf file that is different from sourceforge ,I think this one is more detailed,that is

cpu: arm7tdmi
mach: lpc2210 #ZLG EasyARM2000

#               4.0GB ######################## 0xFFFFFFFF
#                     #       AHB Device     #
#              3.75GB ######################## 0xF0000000
#                     #       VPB Device     #
#               3.5GB ######################## 0xE0000000
#                     #                      #
#               3.0GB #                      #
#                     #                      #
#          2.0GB+18MB ######################## 0x811FFFFF
#                     #  Bank1 Flash outside #
#          2.0GB+16MB ######################## 0x81000000
#          2.0GB+512KB######################## 0x8007FFFF
#                     #  Bank0 RAM outside   #
#               2.0GB ######################## 0x80000000
#                     #                      #
#                     #                      #
#                     ######################## 0x40003FFF
#                     #   16KB SRAM in Chip  #
#               1.0GB ######################## 0x40000000
#                     #                      #
#                     #                      #
#                     #    No In Used        #
#                     #                      #
#               0.0GB ######################## 0x00000000

                     #      Memory Map      #
# SRAM Outside Chip begin: 0 ,size: 32Byte ,redirected from 0x80000000,copied by code
mem_bank: map=M, type=RW,  addr=0x00000000, size=0x00000032
                     
# SRAM Inside Chip begin:1GB ,size:16KB
mem_bank: map=M, type=RW, addr=0x40000000, size=0x00004000

# SRAM Outside Chip begin: 2G ,size: 512KB
mem_bank: map=M, type=RW,  addr=0x80000000, size=0x00080000


# Flash ROM Outside of Chip begin: 2G+16MB size : 2MB
mem_bank: map=M, type=R, addr=0x81000000, size=0x00200000

                     #         IO Map       #
#VPB begin: 3.5GB ,size: 2M
mem_bank: map=I, type=RW, addr=0xE0000000, size=0x00200000

#AHB begin: 4GB - 2M, size: 2M
mem_bank: map=I, type=RW, addr=0xFFE00000, size=0x00200000

                     #           LOG        #
log: logon=2, logfile=./sk1.log, start=0, end=200000

#net: state=on,mac=00-17-A4-EE-75-CC, ethmod=tuntap, hostip=172.30.67.117
#net: state=on, type=rtl8019, mac=0:4:3:2:1:f, ethmod=tuntap, hostip=192.168.11.3

#uart: fd_in=0, fd_out=1

which one to use 。。
hope you can tell one by one ,thanks

[ 本帖最后由 pandy1110 于 2007-12-24 22:22 编辑 ]
回复

使用道具 举报

发表于 2007-12-24 22:45:31 | 显示全部楼层
You can use romfs.img that shoud be generate by your uClinux building. And it should be located at uClinux-dist/images/ directory. Then you can use romfs.img file to replace initrd-u. You should do all the thing according to the document in skyeye.wiki.sourceforge.net. If you think the document has something wrong, please tell me and I will improve it.
回复

使用道具 举报

发表于 2009-11-19 13:45:03 | 显示全部楼层
真的不知道这个是怎么修改的,各位,我看你们做这个很早的了,但是现在是2009年了,我现在使用这个来做就做不成功。和上边有位是一样的问题

6# 大 中 小 发表于 2007-12-21 21:22  只看该作者
Vendor/Product 配置为GDB/ARMulator,并且skyeye.conf里为mach:at91后成功运行uClinux内核
谢谢

但现在Vendor/Product 重新配置为philips/lpc2200,make无误后
按照http://skyeye.wiki.sourceforge.net/uClinux#tocuClinux2 给出的skyeye.conf,发现file所指向的init ram disk 文件并没有出现,
#skyeye config file sample
cpu: arm7tdmi
mach: lpc
mem_bank: map=M, type=RW, addr=0x40000000, size=0x00200000
mem_bank: map=M, type=RW, addr=0x81000000, size=0x00700000
mem_bank: map=M, type=RW,  addr=0x81700000, size=0x00100000, file=./initrd-u
mem_bank: map=I, type=RW, addr=0xe0000000, size=0x20000000

file=./initrd-u 应该怎么改呢?

这个就是该不对啊!麻烦看看是怎么回事。我按照KSH的做法还是没通过,很晕了, 希望大家帮帮忙解决哈!谢谢了!
回复

使用道具 举报

发表于 2009-11-19 13:48:20 | 显示全部楼层
真的不知道这个是怎么修改的,各位,我看你们做这个很早的了,但是现在是2009年了,我现在使用这个来做就做不成功。和上边有位是一样的问题

6# 大 中 小 发表于 2007-12-21 21:22  只看该作者
Vendor/Product 配置为GDB/ARMulator,并且skyeye.conf里为mach:at91后成功运行uClinux内核
谢谢

但现在Vendor/Product 重新配置为philips/lpc2200,make无误后
按照http://skyeye.wiki.sourceforge.net/uClinux#tocuClinux2 给出的skyeye.conf,发现file所指向的init ram disk 文件并没有出现,
#skyeye config file sample
cpu: arm7tdmi
mach: lpc
mem_bank: map=M, type=RW, addr=0x40000000, size=0x00200000
mem_bank: map=M, type=RW, addr=0x81000000, size=0x00700000
mem_bank: map=M, type=RW,  addr=0x81700000, size=0x00100000, file=./initrd-u
mem_bank: map=I, type=RW, addr=0xe0000000, size=0x20000000

file=./initrd-u 应该怎么改呢?

这个就是该不对啊!麻烦看看是怎么回事。我按照KSH的做法还是没通过,很晕了, 希望大家帮帮忙解决哈!谢谢了!
回复

使用道具 举报

发表于 2009-11-30 15:07:32 | 显示全部楼层
./initrd-u 意思是用initrd做文件系统,用uboot引导
file=images/romfs.ing  uclinux编译好后就生成romfs文件系统 你也以做一个initrd文件系统
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-11-24 10:44 , Processed in 0.038036 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

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