public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
* [ECOS] DSR does not run (pci interrupt on MPC8245)
@ 2003-09-08 16:38 paape
  0 siblings, 0 replies; only message in thread
From: paape @ 2003-09-08 16:38 UTC (permalink / raw)
  To: ecos-discuss

Hello,
I'm having a bit of trouble with the configuration of a pci interrupt.
I'm using eCos V2.0 (CD) and have done a quick and dirty port of the
csb281 template for and artis3000 board (mpc8245 and dp83815 nic).
In the "cyg_drv_interrupt_create" call, I pass priority 15.  In (what was)
csb281_pci_init() I have configured the 83815's interrupt to be level
sensitive,
active low (having made necessary changes for devid etc.).  The interrupt
processing eventually "hangs" (DSR does not run).  I believe that I am
looping
in Cyg_Scheduler::unlock_inner().  I have tracked it through my ISR,
interrupt_end()
and unlock().  What's odd is that if I configure the int to be
edge-sensitive,
processing (of the first interrupt anyway) works OK, the xx_deliver() runs
(via eth_drv_dsr() in DSR).  I'm doing all of the usual things...
cyg_interrupt_mask(), cyg_interrupt_acknowlege() in ISR but I don't call
cyg_interrupt_unmask() until after the xx_deliver() routine has completed.
Is there
possibly an issue here with respect to writing the EOI register in the EPIC?
Any
help would be greatly appreciated, as I am presently stumped.  Working
through
 the unlock_inner() routine looks like it would be a fairly tedious
undertaking.
Dan


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

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2003-09-08 16:38 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-09-08 16:38 [ECOS] DSR does not run (pci interrupt on MPC8245) paape

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