BUS_SET_RESOURCE(9)

名称
bus_set_resource - 確定したリソースと与えられたリソース ID との関連付け

書式
<sys/param.h> <sys/bus.h>

<machine/bus.h> <sys/rman.h> <machine/resource.h> int bus_set_resource(device_t dev, int type, int rid, u_long start, u_long count)

解説
bus_set_resource() 関数は、 type, rid ペアで指定されるリソースのうち、指定された開始アドレスのものを長さ count に設定します。 通常は、クライアントドライバはこのインタフェースを使用しません。 しかしながら、バスドライバはクライアントドライバが使用するリソースを 設定するためにしばしば使用します。

引数は以下の通りです。

dev リソースを設定するデバイスです。

type
    割り当てたいリソースの型です。 これは下記の中の 1 つです。

    SYS_RES_IRQ
        IRQ のリソースです。
    SYS_RES_DRQ
        ISA DMA ラインのリソースです。
    SYS_RES_IOPORT
        I/O ポートのリソースです。
    SYS_RES_MEMORY
        I/O メモリのリソースです。

rid 割り当てられているリソースを識別するバス特有のハンドルです。

start
    このリソースの開始アドレスです。

count
    このリソースの長さです。 例えば、バイト単位でのメモリの大きさです。

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

関連項目
bus_alloc_resource(9), bus_get_resource(9), device(9), driver(9)

作者
このマニュアルページは Warner Losh <imp@FreeBSD.org> が書きました。