Re: Devices, IRQs and handlers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,
Please see below.
vijay

On 09/01/06, Rajaram Suryanarayanan <rajaram_linux@xxxxxxxxx> wrote:
> Hi,
>
> I am confused about the mapping between devices, IRQs and the handlers. I am
> following Robert Love's "Linux Kernel Development" book.
>


> 1. I see that different handlers can share the same IRQ with SA_SHIRQ flag.
> So does it mean there can be different interrupt handlers for the same
> device...? As I think each device has a unique IRQ ( strict 1-to-1 mapping
> between device and its IRQ ).
>


No. It means that different devices can share an interrupt.   All the
devices need to
set SA_SHIRQ flag for sharing to work. Each device will have only 1 interrupt.
Each device type i.e every model has a unique dev id.
Each device will have a unique IRQ (hardware interrupt).
try cat /proc/interrupts. Some interrupts will be shared.

> 2. Related to the first question, can different devices share the same IRQ ?
>
yes. If all have SA_SHIRQ enabled. If the first device does not enable sharing,
no other devices can use the interrupt.
> 3. Regarding dev_id parameter, is it unique to each device ? I mean is each
> device has a strict 1-to-1 mapping with dev_id ?
>

see above
> Please explain.
>
> Thanks,
> Rajaram.
>
>
>
hope this helps. someone please correct me if anything is wrong.
-vijay
>
>
>  ________________________________
> Yahoo! Photos
>  Got holiday prints? See all the ways to get quality prints in your hands
> ASAP.
>
>


--
Networks Lab, RPI
http://poisson.ecse.rpi.edu/~vijay

--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/



[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux