> -----Original Message----- > From: kernelnewbies-bounce@xxxxxxxxxxxx > [mailto:kernelnewbies-bounce@xxxxxxxxxxxx] On Behalf Of > Sandeep Sanjay Patil > Sent: 29 March 2007 03:40 PM > To: Ahmed S. Darwish > Cc: Mansha Linux; Rajat Jain; kernelnewbies > Subject: Re: how the interrupt handler(ISR) knows the source > of interrupt ? > > Well, > since the interrupts are being discussed, ia had a question bugging me > since a long time. Sometimes we have two types of interrupts... > > 1. Level IRQ > 2. Edge trigerred IRQ > > difference? AFAIK it determines at a hardware level what causes the interrupt to be triggered/flagged. Level IRQ determines whether an interrupt has been triggered by the level of the IRQ line, Edge triggered by the leading edge of the interrupt (as a signal on a line). Why two different methods? It depends on whether the interrupt is shared. If the interrupt is shared Level Interrupts need to be used. If edge triggered interrupts are used and two interrupts are generated at approximately the same time, the processor will handle the highest priority then clear down the interrupt, the lower priority interrupt may be lost. In the case of level triggered IRQs, after clearing the higher priority interrupt the interrupt line will remain high, due to the lower priority interrupt. The processor will then see that another interrupt is pending and service that as well. Is that correct? Martyn ---- Martyn Welch Principal Software Engineer Radstone Digital Processing Part of GE Fanuc Embedded Systems Phone: +44 (0) 1327 322748 email: martyn.welch@xxxxxxxxxxxxxx web: www.radstone.com ________________________________________________________________________ This e-mail has been scanned for all viruses by Star.The service is powered by MessageLabs. ________________________________________________________________________ -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ