This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Help with Interrupts


Hi Guys,
     I'm working on an AT91 EB40A _eval board,
connected to an external FPGA. I'm having this weird
problem with simple interrupt handling. Initially I
had a test thread, of priority 0, that waits on a
semaphore. This semaphore would be posted by a DSR on
on interrupt IRQ2. For testing, I had a simple printf
in the thread. Upon execution, everything goes well
until I don't see anymore printfs. I couldn't ctrl-c
and examine the state of the threads as ctrl-c ing
completely shuts doen the process.
I also tried the following things.
 
1. Put a while(1) loop in the main (cyg_usr_start),
and make that post the semaphore. This while loop
continuosly checks for a variable and posts the
semaphore. This variable is inturn set by the DSR.
Result: Interrupts never get recognized, even once.
The process just stays in the while loop.
 
2. Try traking out all threads and just print a
counter once in every 100 interrupts, inside the DSR.
This works for a couple of seconds, but then hangs. I
don't see any more printfs.
 
I'm clueless here. Is the interrupt stack getting
overflown, but why?
 
Can someone suggest what I'm doing wrong here.
 
Thank you very much for your help.
 
Sincerely,
Giri.




	
		
__________________________________
Do you Yahoo!?
Yahoo! Photos: High-quality 4x6 digital prints for 25¢
http://photos.yahoo.com/ph/print_splash

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]