スポンサーリンク

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

名称

BUS_READ_IVAR, BUS_WRITE_IVAR − バス特有のデバイスインスタンス変数の操作

書式

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

int

BUS_READ_IVAR(device_t dev, device_t child, int index, uintptr_t *result);

int

BUS_WRITE_IVAR(device_t dev, device_t child, int index, uintptr_t value);

解説

これらの 2 つのメソッドは子デバイスのバス特有のインスタンス変数の組を管理 します。その意図は、異なった型のバスはそれぞれが適当なインスタンス変数の 組(ISA バスにおける port や irq という具合に)を定義するということです。

この情報は構造体として子デバイスに与えられることも出来ましたが、そうする と、全てのドライバを編集し再コンパイルするという作業なしには、バスが変数 を追加したり削除したりすることは困難になります。この作業はベンダが供給す るバイナリのドライバでは不可能かもしれません。

戻り値

成功時には 0 が返され、それ以外の場合は適切なエラーが返されます。

関連項目

device(9), driver(9)

作者

このマニュアルページは Doug Rabson が書きました。

FreeBSD 10.0 June 16, 1998 FreeBSD 10.0

スポンサーリンク