スポンサーリンク

BUS_CONFIG_INTR(9) FreeBSD カーネル開発者マニュアル BUS_CONFIG_INTR(9)

名称

BUS_CONFIG_INTR − 割り込みの極性およびトリガモードの設定

書式

#include <sys/param.h>
#include <sys/bus.h>

int

       BUS_CONFIG_INTR(device_t dev, int irq, enum intr_trigger trig,enum intr_polarity pol);

解説

BUS_CONFIG_INTR() メソッドは、バスまたはデバイスのドライバが、親のバスに 割り込み極性およびトリガモードを提供することを可能にします。これは通常 は、ルートバス (例えば nexus) までの全ての経路を上がって行きます。その全 ての経路において、実際にハードウェアをプログラムするために必要な動作がな されます。 BUS_CONFIG_INTR() メソッドは割り込み番号をとるため、 BUS_SETUP_INTR(9) より先に呼び出されることが必ずしも要求されませんが、当 然だと仮定されます。

trig 引数は以下のいずれかです。

       INTR_TRIGGER_CONFORM

割り込みトリガモードは、デバイスがアタッチされてい るバスにとっての標準です。

INTR_TRIGGER_EDGE
割り込みは、エッジトリガされます。これは、割り込み 線の信号の立上りエッジによって、割り込みが立ち上げ られることを意味します。その信号は通常、スパイクを 発生させるように元の状態に戻ります。

INTR_TRIGGER_LEVEL
割り込みは、レベルトリガされます。これは、割り込み 線の信号が変化して、その割り込みのサービス完了まで の間変化せずに維持される時に、割り込みが立ち上げら れることを意味します。サービス完了後、信号は戻りま す。

pol 引数は以下のいずれかです。

INTR_POLARITY_CONFORM
割り込みの極性は、デバイスがアタッチされているバス にとっての標準です。

INTR_POLARITY_HIGH
割り込み線の電圧がハイになることによって、割り込み が活性化されます。

INTR_POLARITY_LOW
割り込み線の電圧がローになることによって、割り込み が活性化されます。

戻り値

成功時には 0 が返され、そうでなければ適切なエラーが返されます。

関連項目

BUS_SETUP_INTR(9), BUS_TEARDOWN_INTR(9), device(9), driver(9)

歴史

BUS_CONFIG_INTR() メソッドは FreeBSD 5.2 ではじめて登場しました。

作者

このマニュアルページは Marcel Moolenaar ⟨marcel@xcllnt.net⟩ によって書か れました。

FreeBSD 10.0 January 6, 2005 FreeBSD 10.0

スポンサーリンク