* RE: [ECOS] Redboot :: __startup_stack
@ 2005-07-05 4:20 Harsha D
0 siblings, 0 replies; 5+ messages in thread
From: Harsha D @ 2005-07-05 4:20 UTC (permalink / raw)
To: Andrew Lunn; +Cc: ecos-discuss
Hi
As i said earlier i was able to run redboot (RAM) with gdb stubs
disabled.
When i enable the gdb stubs, the objdump of redboot gives me...
------------------------------------------------------------------------
-----------------
#ifdef CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
bl initialize_stub
203000f0: eb0008d3 bl 20302444 <initialize_stub>
// Now that stub is initialized, change vector. It is possible
// to single-step through most of the init code, except the
below.
// Put a breakpoint at the call to cyg_hal_invoke_constructors
to
// pass over this bit (s-s depends on internal state in the
stub).
#endif
#if defined(CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS) || \
defined(CYGIMP_HAL_PROCESS_ALL_EXCEPTIONS)
mov r0,#0 // move vectors
203000f4: e3a00000 mov r0, #0 ; 0x0
ldr r1,=__exception_handlers
203000f8: e59f12c8 ldr r1, [pc, #712] ; 203003c8
<_eCos_id+0x14>
ldr r2,[r1,#0x04] // undefined instruction
....
------------------------------------------------------------------------
------------------
I find that redboot never returns (to 0x203000f4) after initialize_stub
is called.
The '+' sign which is the last function (putdebugchar) called in
initialize_stub is coming on
serial port, but tracing after this seems to lead to
software_interrupt->exception_handler.
and the $T050f.. (which points to startup_stack)
I would like to know what are the things that happen after
initalize_stub is called.
Do i have to change anything in the implementation for my board. Please
throw some light on
the same
Thanking u
harsha
-----Original Message-----
From: Harsha D
Sent: 01 July 2005 18:11
To: 'Andrew Lunn'
Cc: ecos-discuss@sources.redhat.com
Subject: RE: [ECOS] Redboot :: __startup_stack
Hi
I was able to get the redboot working by disabling the gdb stubs. (which
effectively makes initialize_stub not be called).
Now redboot prompt appears.. although some junk characters are taken as
input and the program seems to be in infinite loop.
But i am unable to understand what is that in the gdb stubs which is
making the redboot to crash. If you can throw some light on some of the
possibilities it would be great !!
Thanking you
harsha
-----Original Message-----
From: Andrew Lunn [mailto:andrew@lunn.ch]
Sent: 01 July 2005 13:16
To: Harsha D
Cc: ecos-discuss@sources.redhat.com
Subject: Re: [ECOS] Redboot :: __startup_stack
On Fri, Jul 01, 2005 at 10:09:49AM +0530, Harsha D wrote:
> Hi
>
> ===============================================================
> Porting : Redboot
> Platform : ARM922T based board
> source base : based on Excalibur package
>
> ===============================================================
> Memory layout is
> --------------------------
> SRAM(32KB) 0x00000000 - 0x00008000
> RAM(32MB) 0x20000000 - 0x02000000
>
> ===============================================================
> My ram ldi file
> ---------------------
> MEMORY
> {
> ram : ORIGIN = 0x20000000, LENGTH = 0x02000000
> }
>
> SECTIONS
> {
> SECTIONS_BEGIN
> SECTION_fixed_vectors (ram, 0x20000020, LMA_EQ_VMA)
> SECTION_rom_vectors (ram, 0x20300000, LMA_EQ_VMA)
> SECTION_text (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_fini (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_rodata (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_rodata1 (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_fixup (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_gcc_except_table (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_data (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_bss (ram, ALIGN (0x4), LMA_EQ_VMA)
> CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
> SECTIONS_END
> }
....
> [ I am loading redboot at 0x20300000]
> Googling told me that
> fixed_vectors should be at 0x20(???) which is not the case for me.
> Will it cause any problems ? If yes then how should i have my memory
layout.
SECTION_fixed_vectors (ram, 0x20000020, LMA_EQ_VMA)
Add an sram memory region and change this to 0x20 and the fixed
vectors will move.
Andrew
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
^ permalink raw reply [flat|nested] 5+ messages in thread
* RE: [ECOS] Redboot :: __startup_stack
@ 2005-07-01 12:37 Harsha D
0 siblings, 0 replies; 5+ messages in thread
From: Harsha D @ 2005-07-01 12:37 UTC (permalink / raw)
To: Andrew Lunn; +Cc: ecos-discuss
Hi
I was able to get the redboot working by disabling the gdb stubs. (which
effectively makes initialize_stub not be called).
Now redboot prompt appears.. although some junk characters are taken as
input and the program seems to be in infinite loop.
But i am unable to understand what is that in the gdb stubs which is
making the redboot to crash. If you can throw some light on some of the
possibilities it would be great !!
Thanking you
harsha
-----Original Message-----
From: Andrew Lunn [mailto:andrew@lunn.ch]
Sent: 01 July 2005 13:16
To: Harsha D
Cc: ecos-discuss@sources.redhat.com
Subject: Re: [ECOS] Redboot :: __startup_stack
On Fri, Jul 01, 2005 at 10:09:49AM +0530, Harsha D wrote:
> Hi
>
> ===============================================================
> Porting : Redboot
> Platform : ARM922T based board
> source base : based on Excalibur package
>
> ===============================================================
> Memory layout is
> --------------------------
> SRAM(32KB) 0x00000000 - 0x00008000
> RAM(32MB) 0x20000000 - 0x02000000
>
> ===============================================================
> My ram ldi file
> ---------------------
> MEMORY
> {
> ram : ORIGIN = 0x20000000, LENGTH = 0x02000000
> }
>
> SECTIONS
> {
> SECTIONS_BEGIN
> SECTION_fixed_vectors (ram, 0x20000020, LMA_EQ_VMA)
> SECTION_rom_vectors (ram, 0x20300000, LMA_EQ_VMA)
> SECTION_text (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_fini (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_rodata (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_rodata1 (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_fixup (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_gcc_except_table (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_data (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_bss (ram, ALIGN (0x4), LMA_EQ_VMA)
> CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
> SECTIONS_END
> }
....
> [ I am loading redboot at 0x20300000]
> Googling told me that
> fixed_vectors should be at 0x20(???) which is not the case for me.
> Will it cause any problems ? If yes then how should i have my memory
layout.
SECTION_fixed_vectors (ram, 0x20000020, LMA_EQ_VMA)
Add an sram memory region and change this to 0x20 and the fixed
vectors will move.
Andrew
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
^ permalink raw reply [flat|nested] 5+ messages in thread
* RE: [ECOS] Redboot :: __startup_stack
@ 2005-07-01 8:34 Harsha D
0 siblings, 0 replies; 5+ messages in thread
From: Harsha D @ 2005-07-01 8:34 UTC (permalink / raw)
To: Andrew Lunn; +Cc: ecos-discuss
Well i did that but then i get only "++++++++ ..." output on the hyper
terminal.
update ldi file
MEMORY
{
sram : ORIGIN = 0x00000000, LENGTH = 0x00008000
ram : ORIGIN = 0x20000000, LENGTH = 0x02000000
}
SECTIONS
{
SECTIONS_BEGIN
SECTION_fixed_vectors (sram, 0x20, LMA_EQ_VMA)
SECTION_rom_vectors (ram, 0x20300000, LMA_EQ_VMA)
SECTION_text (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_fini (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_rodata (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_rodata1 (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_fixup (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_gcc_except_table (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_data (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_bss (ram, ALIGN (0x4), LMA_EQ_VMA)
CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
SECTIONS_END
}
thanking u
harsha
-----Original Message-----
From: Andrew Lunn [mailto:andrew@lunn.ch]
Sent: 01 July 2005 13:16
To: Harsha D
Cc: ecos-discuss@sources.redhat.com
Subject: Re: [ECOS] Redboot :: __startup_stack
On Fri, Jul 01, 2005 at 10:09:49AM +0530, Harsha D wrote:
> Hi
>
> ===============================================================
> Porting : Redboot
> Platform : ARM922T based board
> source base : based on Excalibur package
>
> ===============================================================
> Memory layout is
> --------------------------
> SRAM(32KB) 0x00000000 - 0x00008000
> RAM(32MB) 0x20000000 - 0x02000000
>
> ===============================================================
> My ram ldi file
> ---------------------
> MEMORY
> {
> ram : ORIGIN = 0x20000000, LENGTH = 0x02000000
> }
>
> SECTIONS
> {
> SECTIONS_BEGIN
> SECTION_fixed_vectors (ram, 0x20000020, LMA_EQ_VMA)
> SECTION_rom_vectors (ram, 0x20300000, LMA_EQ_VMA)
> SECTION_text (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_fini (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_rodata (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_rodata1 (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_fixup (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_gcc_except_table (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_data (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_bss (ram, ALIGN (0x4), LMA_EQ_VMA)
> CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
> SECTIONS_END
> }
....
> [ I am loading redboot at 0x20300000]
> Googling told me that
> fixed_vectors should be at 0x20(???) which is not the case for me.
> Will it cause any problems ? If yes then how should i have my memory
layout.
SECTION_fixed_vectors (ram, 0x20000020, LMA_EQ_VMA)
Add an sram memory region and change this to 0x20 and the fixed
vectors will move.
Andrew
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [ECOS] Redboot :: __startup_stack
2005-07-01 4:36 Harsha D
@ 2005-07-01 7:46 ` Andrew Lunn
0 siblings, 0 replies; 5+ messages in thread
From: Andrew Lunn @ 2005-07-01 7:46 UTC (permalink / raw)
To: Harsha D; +Cc: ecos-discuss
On Fri, Jul 01, 2005 at 10:09:49AM +0530, Harsha D wrote:
> Hi
>
> ===============================================================
> Porting : Redboot
> Platform : ARM922T based board
> source base : based on Excalibur package
>
> ===============================================================
> Memory layout is
> --------------------------
> SRAM(32KB) 0x00000000 - 0x00008000
> RAM(32MB) 0x20000000 - 0x02000000
>
> ===============================================================
> My ram ldi file
> ---------------------
> MEMORY
> {
> ram : ORIGIN = 0x20000000, LENGTH = 0x02000000
> }
>
> SECTIONS
> {
> SECTIONS_BEGIN
> SECTION_fixed_vectors (ram, 0x20000020, LMA_EQ_VMA)
> SECTION_rom_vectors (ram, 0x20300000, LMA_EQ_VMA)
> SECTION_text (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_fini (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_rodata (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_rodata1 (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_fixup (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_gcc_except_table (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_data (ram, ALIGN (0x4), LMA_EQ_VMA)
> SECTION_bss (ram, ALIGN (0x4), LMA_EQ_VMA)
> CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
> SECTIONS_END
> }
....
> [ I am loading redboot at 0x20300000]
> Googling told me that
> fixed_vectors should be at 0x20(???) which is not the case for me.
> Will it cause any problems ? If yes then how should i have my memory layout.
SECTION_fixed_vectors (ram, 0x20000020, LMA_EQ_VMA)
Add an sram memory region and change this to 0x20 and the fixed
vectors will move.
Andrew
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
^ permalink raw reply [flat|nested] 5+ messages in thread
* [ECOS] Redboot :: __startup_stack
@ 2005-07-01 4:36 Harsha D
2005-07-01 7:46 ` Andrew Lunn
0 siblings, 1 reply; 5+ messages in thread
From: Harsha D @ 2005-07-01 4:36 UTC (permalink / raw)
To: ecos-discuss
Hi
===============================================================
Porting : Redboot
Platform : ARM922T based board
source base : based on Excalibur package
===============================================================
Memory layout is
--------------------------
SRAM(32KB) 0x00000000 - 0x00008000
RAM(32MB) 0x20000000 - 0x02000000
===============================================================
My ram ldi file
---------------------
MEMORY
{
ram : ORIGIN = 0x20000000, LENGTH = 0x02000000
}
SECTIONS
{
SECTIONS_BEGIN
SECTION_fixed_vectors (ram, 0x20000020, LMA_EQ_VMA)
SECTION_rom_vectors (ram, 0x20300000, LMA_EQ_VMA)
SECTION_text (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_fini (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_rodata (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_rodata1 (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_fixup (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_gcc_except_table (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_data (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_bss (ram, ALIGN (0x4), LMA_EQ_VMA)
CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
SECTIONS_END
}
[ I am loading redboot at 0x20300000]
=================================================================
What i am trying to do...
-----------------------------------
Trying to execute the redboot (ram version). I am using another small bootstrap program to
initialize/setup the platform. This at present i am not doing in Redboot, and plan to transfer
in the ROM version of Redboot.
I want to run Redboot => get messages on hyperterminal, able to connect from gdb and flash
writing
==================================================================
Problem
------------
The redboot.bin is executing but "+T050f....." message appears on
hypterterminal. When i traced i found that it is pointing to the
__startup_stack. When i disassemble ...
20300378 <.__GDB_stack>:
20300378: 2030ca70 eorcss ip, r0, r0, ror sl
2030037c <.__startup_stack>:
2030037c: 2030da70 eorcss sp, r0, r0, ror sl
20300380 <.__exception_stack>:
20300380: 2030b9f0 ldrcssh fp, [r0], -r0
20300384 <.__undef_exception_stack>:
20300384: 2030ba70 eorcss fp, r0, r0, ror sl
I am not able to find what is the error here. Googling told me that
fixed_vectors should be at 0x20(???) which is not the case for me.
Will it cause any problems ? If yes then how should i have my memory layout.
=====================================================================
Warm regards
harsha
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2005-07-05 4:20 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-07-05 4:20 [ECOS] Redboot :: __startup_stack Harsha D
-- strict thread matches above, loose matches on Subject: below --
2005-07-01 12:37 Harsha D
2005-07-01 8:34 Harsha D
2005-07-01 4:36 Harsha D
2005-07-01 7:46 ` Andrew Lunn
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).