On Fri, May 9, 2008 at 12:49 PM, Nick <[EMAIL PROTECTED]> wrote:
> Hi,
>
>  I am writing a driver to service an interrupt from our fpga.  I am calling 
> request_irq in the open
>  function of my driver.  The fpga is connected to external interrupt 1.  I am 
> using interrupt
>  number 65 in the request_irq but the function is failing.  I traced to a 
> function called setup_irq
>  in file /kernel/irq/manage.c.  It fails because at this line: if (desc->chip 
> == &no_irq_chip) .
>  Is 65 the wrong interrupt number?  What do I need to do to properly setup 
> for external interrupts?

What kernel version are you using?
Are you using arch/ppc or arch/powerpc?

There has been a major shift in embedded powerpc support in the last
year.  Now, instead of hard coding the peripheral list in the platform
code, the devices are described in an OpenFirmware style device tree.
(See arch/powerpc/boot/dts/lite5200b.dts).

You need to add a node to the tree for your device and specify the
interrupt there.  Then use either of_irq_map_one() or
irq_of_parse_and_map() to get something that you can pass to
request_irq().

Cheers,
g.

-- 
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Reply via email to