Re: [PATCH] sparc32,leon: need VIRQ:IRQ 1:1, don't mask/ack IRQ Controller

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

 



From: Daniel Hellstrom <daniel@xxxxxxxxxxx>
Date: Wed, 16 Mar 2011 16:54:24 +0100

> The AMBA Plug&Play information supports only 1 IRQ per AMBA device,
> a device node in linux is an AMBA core which consists of 3 devices
> (AHB Master, AHB Slave and APB Slave in any combination). The IRQ
> information is really the first IRQ of a device, the Plug&Play does
> not tell how many IRQs are actually present on a device so the
> interrupt property of a device can impossibly tell how many IRQs
> each device has, it must be up to the driver to probe the hardware
> in a device-specific way simply know how many IRQs are present.
> 
> Using Virtual IRQs does not work for such devices, because VIRQ+1
> is not REAL_IRQ+1. Thus, the LEON architecture needs real IRQs or
> map virtual IRQs 1:1 to real IRQs.
> 
> This patch changes the VIRQ allocation to try the real IRQ if not
> already taken.
> 
> LEON IRQ Controller is edge triggered, not masking or acking is
> needed in the normal case, handle_simple_irq handler can be used
> for that.
> 
> Signed-off-by: Daniel Hellstrom <daniel@xxxxxxxxxxx>

As I stated in another email I am absolutely and completely against
this change.

Just because you only store one interrupt in the firmware device node,
it does not mean that you cannot store multiple interrupts in the
internal device node structure we build.  And then have the drivers
use that.
--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Kernel Development]     [DCCP]     [Linux ARM Development]     [Linux]     [Photo]     [Yosemite Help]     [Linux ARM Kernel]     [Linux SCSI]     [Linux x86_64]     [Linux Hams]

  Powered by Linux