diff options
Diffstat (limited to 'documentation/manual-pages/ja/man9/DRIVER_MODULE.9')
-rw-r--r-- | documentation/manual-pages/ja/man9/DRIVER_MODULE.9 | 113 |
1 files changed, 113 insertions, 0 deletions
diff --git a/documentation/manual-pages/ja/man9/DRIVER_MODULE.9 b/documentation/manual-pages/ja/man9/DRIVER_MODULE.9 new file mode 100644 index 0000000000..38e859d057 --- /dev/null +++ b/documentation/manual-pages/ja/man9/DRIVER_MODULE.9 @@ -0,0 +1,113 @@ +.\" -*- nroff -*- +.\" +.\" Copyright (c) 2000 Alexander Langer +.\" +.\" All rights reserved. +.\" +.\" This program is free software. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.\" %FreeBSD: src/share/man/man9/DRIVER_MODULE.9,v 1.10 2001/12/26 23:14:04 davidc Exp % +.\" +.\" $FreeBSD$ +.Dd May 16, 2000 +.Dt DRIVER_MODULE 9 +.Os +.Sh 名称 +.Nm DRIVER_MODULE +.Nd カーネルドライバ宣言マクロ +.Sh 書式 +.In sys/param.h +.In sys/kernel.h +.In sys/bus.h +.In sys/module.h +.Fn DRIVER_MODULE name busname "driver_t driver" "devclass_t devclass" "modeventhand_t evh" "void *arg" +.Fn MULTI_DRIVER_MODULE name busname "driver_t drivers[]" "devclass_t devclass" "modeventhand_t evh" "void *arg" +.Sh 解説 +.Fn DRIVER_MODULE +マクロは、カーネルドライバを宣言します。 +.Fn DRIVER_MODULE +は実際のドライバ宣言に展開し、そこで +.Fa name +はドライバとその関数の接頭辞として使用されます。 +これはプレインテキストとして与えられ、 +.Li char +または +.Li char * +ではないことに注意してください。 +.Pp +.Fa busname +はドライバの親のバス (PCI, ISA, PPBUS, その他) で、 +.Ql pci , +.Ql isa , +.Ql ppbus +等です。 +.Pp +.Fn DRIVER_MODULE +の中で使用される識別子は、ドライバの名前と別のものにすることができます。 +また、異なるバス上には同じドライバ識別子が存在できます。 +これは、同じドライバを使用する同一または異なるバス上の種々のカード用に、 +フロントエンドをうまくきれいに作成する方法です。 +例えば、次のようにできます。 +.Pp +.Fn DRIVER_MODULE foo isa foo_driver foo_devclass NULL NULL ; +.Pp +.Fn DRIVER_MODULE foo pci foo_driver foo_devclass NULL NULL ; +.Pp +.Fa driver +は +.Li driver_t +型のドライバで、ドライバについての情報を含み、それゆえ +.Fn DRIVER_MODULE +を呼び出すための最も重要な 2 つの部分のうちの 1 つです。 +.Pp +引数 +.Fa devclass +はデバイスについてのカーネル内部の情報を含み、 +カーネルドライバモジュールの内部で使用されます。 +.Pp +引数 +.Fa evh +はドライバ (またはモジュール) がロードまたはアンロードされた時に +呼び出されるイベントハンドラです ( +.Xr module 9 +を参照してください)。 +.Pp +現時点では +.Fa arg +は使用されず、 +.Dv NULL +ポインタであるべきです。 +.Pp +.Fn MULTI_DRIVER_MODULE +は +.Fn DRIVER_MODULE +の特殊バージョンであり、 +単一のドライバインスタンスの代りにドライバリストを取ります。 +.Sh 関連項目 +.Xr device 9 , +.Xr driver 9 , +.Xr module 9 +.Sh 作者 +このマニュアルページは +.An Alexander Langer Aq alex@FreeBSD.org +が書きました。 |