This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Porting problem: some tests in ext. RAM don't work


Hello

I try to do a port eCos for an Olimex LPC-H2294 header board:
ARM7TDMI-S Philips LPC2294, with on-board external RAM/ROM - 1/4M:
http://www.olimex.com/dev/lpc-h2294.html.

Nowaday I've got the RedBoots images for the board (the RAM/ROM
environment). Both of them work pretty well. I can upload eCos tests to
the external RAM with GDB. But I have trouble with a running almost all
of the threated-eCos/tests under GDB in the external RAM. (No problems,
if I run these test from on-chip ROM). Well, I'm newbie in the eCos
porting, be patient, please.

Can anybody post me any hints, ideas? Excuse me for the fat citations. I
think that ext. RAM is configured right in my startup code. I'd learned
Jani Monoses's hal/arm/lpc2xxx/* branch as a prototype for my port.

Regards

Sergei Gavrikov

*** i. RedBoot [RAM]

For example, when I upload 'redboot.elf' (RAM image) with redboot_ROM +
GDB and run it I can see

Welcome to minicom 2.1

OPTIONS: History Buffer, F-key Macros, Search History Buffer, I18n
Compiled on Sep 18 2004, 16:54:29.

Press CTRL-A Z for help on special keys

version

RedBoot(tm) bootstrap and debug environment [RAM]
Non-certified release, version UNKNOWN - built 11:15:19, Jan 31 2006

Platform: Olimex LPC2XXX/LPC-H2294 (ARM7TDMI-S)
Copyright (C) 2000, 2001, 2002, 2003, 2004 Red Hat, Inc.

RAM: 0x81000000-0x81100000, [0x8101afa8-0x81100000] available
RedBoot>

And this RAM-phantom works pretty well !

*** ii. heaptest

When I upload to RAM and run with GDB 'heaptest', for example, it looks
fine too:

$ arm-elf-gdb /tmp/lpch2294/default_RAM/install/tests/services/memalloc/common/current/tests/heaptest
GNU gdb 6.1
Copyright 2004 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 GDB was configured as "--host=i686-pc-linux-gnu
--target=arm-elf"...
0x00002e9c in ?? ()
Loading section .rom_vectors, size 0x40 lma 0x81010000
Loading section .text, size 0x708c lma 0x81010040
Loading section .rodata, size 0x56c lma 0x810170cc
Loading section .data, size 0x354 lma 0x81017638
Start address 0x81010040, load size 31116
Transfer rate: 27658 bits/sec, 311 bytes/write.
(lpch2294-gdb) c
Continuing.
INFO:<Starting heaptest - testing all memory usable as heap>
INFO:<Any failures reported may indicate failing RAM hardware,>
INFO:<or an invalid memory map>
INFO:<Testing memory at 0x8101bbf0 of size 934916 for 10 iterations>
PASS:<all zeroes>
PASS:<all ones>
PASS:<checkerboard 1>
PASS:<checkerboard 2>
PASS:<memory addr>
PASS:<all zeroes>
PASS:<all ones>
PASS:<checkerboard 1>
PASS:<checkerboard 2>
PASS:<memory addr>
PASS:<all zeroes>
PASS:<all ones>
PASS:<checkerboard 1>
PASS:<checkerboard 2>
PASS:<memory addr>
PASS:<all zeroes>
PASS:<all ones>
PASS:<checkerboard 1>
PASS:<checkerboard 2>
PASS:<memory addr>
PASS:<all zeroes>
PASS:<all ones>
PASS:<checkerboard 1>
PASS:<checkerboard 2>
PASS:<memory addr>
PASS:<all zeroes>
PASS:<all ones>
PASS:<checkerboard 1>
PASS:<checkerboard 2>
PASS:<memory addr>
PASS:<heaptest OK>
EXIT:<done>
Interrupted while waiting for the program.
Give up (and stop debugging it)? (y or n) y
(lpch2294-gdb)

*** iii. tm_basic, context, etc.

But when I upload to RAM and run some tests, for example, 'tm_basic',
'context' (from hal tests), I can go to sleep. The running hangs up.

$ arm-elf-gdb /tmp/lpch2294/default_RAM/install/tests/kernel/current/tests/tm_basic
GNU gdb 6.1
Copyright 2004 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 GDB was configured as "--host=i686-pc-linux-gnu
--target=arm-elf"...
0x00002e9c in ?? ()
Loading section .rom_vectors, size 0x40 lma 0x81010000
Loading section .text, size 0xcf40 lma 0x81010040
Loading section .rodata, size 0xf5c lma 0x8101cf80
Loading section .data, size 0x358 lma 0x8101dedc
Start address 0x81010040, load size 57908
Transfer rate: 25736 bits/sec, 313 bytes/write.
(lpch2294-gdb) c
Continuing.

Thank you for your time,

Sergei Gavrikov

--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]