This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: exception when calling reset_platform
- From: Iztok Zupet <iz at vsr dot si>
- To: Roland Caßebohm <roland dot cassebohm at visionsystems dot de>
- Cc: ecos-discuss at sources dot redhat dot com
- Date: Thu, 13 Jun 2002 19:16:21 +0200
- Subject: Re: [ECOS] exception when calling reset_platform
- Organization: VSR d.o.o.
- References: <200206131620.g5DGK0O07287@hhlx01.visionsystems.de>
- Reply-to: iz at vsr dot si
On Thursday 13 June 2002 18:20, Roland Caßebohm wrote:
> Hi,
>
> my ARM7TDMI (SNDS100 Board) makes an abort prefetch exception when the
> application calls reset_platform().
>
> I added two nop's because I thought the processor prefetches the init_done
> value, but this doesn't help:
>
> ----------
> .global reset_platform
> .type reset_platform,function
> reset_platform:
> #ifdef CYGSEM_HAL_ROM_MONITOR
> // initialize CPSR (machine state register)
> mov
> r0,#(CPSR_IRQ_DISABLE|CPSR_FIQ_DISABLE|CPSR_SUPERVISOR_MODE) msr
> cpsr,r0
> b warm_reset
> #else
> mov r0,#0
> mov pc,r0 // Jump to reset vector
> //roland
> mov r0,r0 // nop
> mov r0,r0 // nop
> #endif
>
> init_done:
> .long 0xDEADB00B
> ----------
>
> Does anybody know what's wrong?
>
> Roland
Hi:
Looks like that the abort prefetch hapens somewhere else, not in the code
You've sent. Take a look at the reset vector and the code that executes there
( if it is in RAM). It may be corrupt for some reason. Anyhow, can You figure
out the address of the exeption?
iz
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss