request_irq
関数で登録した割り込みハンドラの実装を行なう。
この実験では割り込みハンドラとして次のようなdio_interrupt_handler
を作成して実装する。
割り込みハンドラに渡される引数は、割り込み番号(irq)、登録時に指定
した識別子(*dev_id)
、レジスタ情報(*regs)の3つである。
このうち、ハンドラ内で実際に使用するのは、識別子として登録したデバイス情
報(*dev_id)
のポインタだけである。
この識別子からデバイスのリソース情報構造体を取出して、割り込み要因フラグの確
認やクリアを行なう。(PCI-2726C I/O公開資料 P.11の1.7
ADR+0Ch : 割り込み要因フラグ)
「PCI-2726C I/O公開資料」を参照するばあいに、今後は、単に「I/O資料」と
呼ぶことにする。
割り込みステータスの確認を行って、このデバイスからの割り込みでなかった場 合には、すぐに処理を終了する。