[Suzaku:01605] Re: SZ410 FPGA側で発生させた割り込み信号がlinux側で認識できない件

Miyamoto email@hidden
2009年 8月 18日 (火) 14:15:39 JST


溝渕様
アーツテックラボの宮本です。
お世話になっています。
ご回答ありがとうございます。

> [SUZAKU]# cat /proc/interrupts
> と入力すると、シリアルやLANの割り込みが入っていることを確認できると思い
> ます。

確かに、その通りです。
シリアルやLANはOS起動時にデバイスドライバが読み込まれた時点で割り込みが有効になっているのを確認しました。
自作IPからの割り込み信号も、デバイスドライバのrequest_irq()を呼ぶと、
OS側で認識できるようになると期待しているのですが・・

ちなみに、request_irq()の呼び出しが成功しない限り、
割り込み信号は発生しないと考えてよろしいでしょうか?
それともOSが認識できないだけで信号自体は発生するのでしょうか?

> init_module()を以下のようにしてみるとどうなりますか?ちなみにrequest_irq
> ()の第5引数に値を設定していましたが、割り込みは共有していますか?

割り込みは共有していません。
nullで問題ありません。

頂いたソースに書き換えて実行してみました。
以下がコンソールの出力です。

#insmod sync.ko
#sync: start driver
#enable: 3

enable: 3はxilinx_intc_enable()が呼ばれた際に出力しているデバッグメッセージです。
この後、/proc/interruptsにirq3が追加されます。
ボタン押下で割り込み信号を発生させているつもりですが、
ハンドラは呼ばれていません。

よろしくお願いします。 




suzaku メーリングリストの案内