public inbox for linuxppc-dev@ozlabs.org 
 help / color / mirror / Atom feed
From: Richard Whitlock <richard.whitlo@btconnect•com>
To: Sean MacLennan <smaclennan@pikatech•com>
Cc: richw@netcomuk•co.uk, linuxppc-dev@ozlabs•org
Subject: Re: DTS configuration of external interrupts on 8347
Date: Thu, 24 Jul 2008 16:06:03 +0100	[thread overview]
Message-ID: <48889A5B.5030200@btconnect.com> (raw)
In-Reply-To: <20080723131335.00eadc6a@lappy.seanm.ca>

Sean MacLennan wrote:
> On Wed, 23 Jul 2008 15:58:38 +0100
> "Richard Whitlock" <richard.whitlo@btconnect•com> wrote:
>
>   
>> I have a small problem with a port of linux 2.6.26 to a custom board.
>> Our board is almost identical to the Analogue & Micro asp 8347 board,
>> so I'm using Kumar Gala's excellent fsl tree (thank you Kumar) as it 
>> already has a defconfig for the asp.
>> Thanks also to Bryan O'Donoghue for pointing us in the direction of
>> the asp port in the first place.
>>
>> The problem we have is I am unable to request an external interrupt.
>> We have an FPGA which has an interrupt line - HW IRQ_0, so thats
>> linux IRQ 48. I have added the following to the dts file:
>>
>> fpgaKFAF@0xF8000000 {
>>                 interrupts = <48 8>;
>>                 interrupt-parent = <&ipic>;
>> }
>>
>> but whenever I call request_irq() it returns -ENOSYS.
>>
>> The driver loads fine, and the open function does very little - a
>> call to ioremap() - which works, and a call to request_irq() which
>> does not. Is there anything else I have to do to configure this
>> interrupt?
>>     
>
> I don't think you have enough information in the dts. We do the same
> thing on the warp (you can look at the warp.dts):
>
> fpga@2,0 {
> 	compatible = "pika,fpga";
> 	reg = <0x00000002 0x00000000 0x00001000>;
> 	interrupts = <0x18 0x8>;
> 	interrupt-parent = <&UIC0>;
> };
>
> You need the compatible, maybe "kfaf,fpga", and I believe the reg entry
> although you could try without it.
>
> You then can use:
>
> 	of_find_compatible_node
> 	irq_of_parse_and_map
> 	request_irq
>
> platforms/44x/warp.c shows an example using the ad7414. Just change the
> ad7414 string to your compatible string.
>
> Cheers,
>    Sean
>
>
>
>   
Sean,

Thanks for that - our original code had no call to irq_of_parse_and_map().
We've put that in, as well as a call to of_find_compatible_node(), and 
now everything works fine. We have also modified our dts file along the 
lines you suggested.
Cheers,


Richard.

  reply	other threads:[~2008-07-24 15:07 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-23 14:58 DTS configuration of external interrupts on 8347 Richard Whitlock
2008-07-23 17:13 ` Sean MacLennan
2008-07-24 15:06   ` Richard Whitlock [this message]
2008-07-25 10:15     ` Wang Jian

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=48889A5B.5030200@btconnect.com \
    --to=richard.whitlo@btconnect$(echo .)com \
    --cc=linuxppc-dev@ozlabs$(echo .)org \
    --cc=richw@netcomuk$(echo .)co.uk \
    --cc=smaclennan@pikatech$(echo .)com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox