public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
* [ECOS] MPC823 interrupt problem?
@ 2001-03-27  6:18 林志勝
  2001-04-02  1:16 ` Jesper Skov
  0 siblings, 1 reply; 4+ messages in thread
From: 林志勝 @ 2001-03-27  6:18 UTC (permalink / raw)
  To: ecos-discuss

Hi everyone:

    I am porting eCos on my custom board.
The CPU on my board is MPC823. Redboot is ready for my borad.
But I try to run hello example using default template, it will
stop on undefine code. I use Trace32 to debug the hello program.
When the code enable interrupt in cyg_Scheduler::start(), it will
stop on undefine code ( at CYGARC_PPC_EXCEPTION_DECREMENT+0x888)
What problem may I meet?? or What should I set or unset option at
configuration tool??

Thank you very much !!


Ken

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [ECOS] MPC823 interrupt problem?
  2001-03-27  6:18 [ECOS] MPC823 interrupt problem? 林志勝
@ 2001-04-02  1:16 ` Jesper Skov
  2001-04-03 14:53   ` Linus Nielsen Feltzing
  2001-04-04  6:00   ` ???
  0 siblings, 2 replies; 4+ messages in thread
From: Jesper Skov @ 2001-04-02  1:16 UTC (permalink / raw)
  To: 林志勝; +Cc: ecos-discuss

>>>>> "=?big5?B?qkyn07PT?=" == =?big5?B?qkyn07PT?=  <big5> writes:

=?big5?B?qkyn07PT?=> Hi everyone: I am porting eCos on my custom
=?big5?B?qkyn07PT?=> board.  The CPU on my board is MPC823. Redboot is
=?big5?B?qkyn07PT?=> ready for my borad.  But I try to run hello
=?big5?B?qkyn07PT?=> example using default template, it will stop on
=?big5?B?qkyn07PT?=> undefine code. I use Trace32 to debug the hello
=?big5?B?qkyn07PT?=> program.  When the code enable interrupt in
=?big5?B?qkyn07PT?=> cyg_Scheduler::start(), it will stop on undefine
=?big5?B?qkyn07PT?=> code ( at CYGARC_PPC_EXCEPTION_DECREMENT+0x888)
=?big5?B?qkyn07PT?=> What problem may I meet?? or What should I set or
=?big5?B?qkyn07PT?=> unset option at configuration tool??

CYGARC_PPC_EXCEPTION_DECREMENT is a preprocessor symbol which is used
to adjuste the stack on exceptions. It should never form part of an
address and I'm surprised that the debugger knows about it at all.

Sounds like the problem is caused by interrupts though, so that's
probably where you want to be looking.

Jesper

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [ECOS] MPC823 interrupt problem?
  2001-04-02  1:16 ` Jesper Skov
@ 2001-04-03 14:53   ` Linus Nielsen Feltzing
  2001-04-04  6:00   ` ???
  1 sibling, 0 replies; 4+ messages in thread
From: Linus Nielsen Feltzing @ 2001-04-03 14:53 UTC (permalink / raw)
  To: ecos-discuss

> CYGARC_PPC_EXCEPTION_DECREMENT is a preprocessor symbol which is used
> to adjuste the stack on exceptions. It should never form part of an
> address and I'm surprised that the debugger knows about it at all.

Are you sure? Isn't this the decrementer exception?
This is a common thing when starting up an MPC8xx processor. The decrementer
will start decrementing as soon as the clocks are set up, and since it is
initiated to 0 at reset, it will trigger a decrementer exception as soon as
the interrupt disable bit is cleared in MSR.

I guess that is common knowledge, so I'd rather find out why there isn't
any code in the exception vector area to handle this exception. Maybe
the interrupt prefix bit is modified in MSR by mistake? How is your MPC
configured at reset (I mean the reset configuration on the data bus)?

/Linus


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [ECOS] MPC823 interrupt problem?
  2001-04-02  1:16 ` Jesper Skov
  2001-04-03 14:53   ` Linus Nielsen Feltzing
@ 2001-04-04  6:00   ` ???
  1 sibling, 0 replies; 4+ messages in thread
From: ??? @ 2001-04-04  6:00 UTC (permalink / raw)
  To: ecos-discuss

> >Hi everyone: I am porting eCos on my custom
> >board.  The CPU on my board is MPC823. Redboot is
> >ready for my borad.  But I try to run hello
> >example using default template, it will stop on
> >undefine code. I use Trace32 to debug the hello
> >program.  When the code enable interrupt in
> >cyg_Scheduler::start(), it will stop on undefine
> >code ( at CYGARC_PPC_EXCEPTION_DECREMENT+0x888)
> >What problem may I meet?? or What should I set or
> >unset option at configuration tool??
> 
> CYGARC_PPC_EXCEPTION_DECREMENT is a preprocessor symbol which is used
> to adjuste the stack on exceptions. It should never form part of an
> address and I'm surprised that the debugger knows about it at all.
> 
> Sounds like the problem is caused by interrupts though, so that's
> probably where you want to be looking.
> 
> Jesper

Hi :
    I find out the problem. Because I download hello.exe via Trace32. 
Hello.exe is a ram_base application. It doesn't install exception vectors.
When the hello.exe code turn on interrupt, it will be down. Sorry I don't
notice the option(copy exception vectors to ram). Turn it on, everything 
is OK.

Ken

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2001-04-04  6:00 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-03-27  6:18 [ECOS] MPC823 interrupt problem? 林志勝
2001-04-02  1:16 ` Jesper Skov
2001-04-03 14:53   ` Linus Nielsen Feltzing
2001-04-04  6:00   ` ???

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).