This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: eCos port of ARX Xscale almost completed memalloc problem
- From: Jonathan Larmour <jifl at eCosCentric dot com>
- To: "Costas Santos, Julio" <julio dot costas dot santos at intel dot com>
- Cc: ecos-discuss at sources dot redhat dot com
- Date: Thu, 20 Feb 2003 16:36:33 +0000
- Subject: Re: [ECOS] eCos port of ARX Xscale almost completed memalloc problem
- References: <09FC6F0BFDF8604DB2A4F396E82EC38707BADB@swsmsx403>
Costas Santos, Julio wrote:
To whom it may concern,
Hi we have a port of ecos for the Xscale processor almost ready but we are
facing a problem quite difficult to find a solution for.
We have basically taken the IQ80310 eCos hal and copied it. Then generated a
new target xxxx which basically uses the same 80200 processor and same
memory layout (0xa0000000 - 0xa2000000). We have support for serial port and
therefore get diagnostic outputs.
However the board is hanging before ecos entry point (cyg_user_start) is
reached. We have debugged that (in invoke_constructors) and found that it
was hanging at:
.text._GLOBAL_.I.47000.cygmem_memalloc_heaps
0xa103e3c8 0x18
............/lib/libtarget.a(services_memalloc_common_heaps.o)
So in order to isolate the problem the CYGPKG_MEMALLOC_MALLOC_ALLOCATORS
component was disabled and then ecos initialised fine, getting up to ecos
entry point.
However in order to carry on with our port we require the memalloc package
to be included in our ecos configuration. We have checked memory layouts,
and heap generation but still cannot find any problem.
Any suggestions are welcome?
Your memory map is probably wrong for your target (or possibly your MMU
isn't set up right, whatever). You could probably get a better indicator
of where the problem is by changing the default allocator from dlmalloc to
the "Simple variable block allocator". That should allow your system to
boot, but the problem will almost certainly still be there.
Then run the "heaptest" program which should hopefully indicate at what
addresses it's having trouble.
It's also worth ensuring CYGPKG_INFRA_DEBUG is enabled for maximum checking.
Jifl
--
eCosCentric http://www.eCosCentric.com/ The eCos and RedBoot experts
--[ "You can complain because roses have thorns, or you ]--
--[ can rejoice because thorns have roses." -Lincoln ]-- Opinions==mine
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss