tail head cat sleep
QR code linking to this page

manページ  — PCCARD.CONF

名称

pccard.confpccardd(8) 設定ファイル

内容

解説

pccard.conf ファイルは、PC-CARD スロット管理デーモン pccardd(8) 用の設定ファイルです。カードを識別し、 PC-CARD カードにドライバ (ドライバ用リソースも含む) を 対応させることが出来る情報を提供します。

設定ファイル内には四つの基本的な要素があります。 オプションとして他のセクションに先立って リソースプール があり、その後 1 つ以上の カード識別子 デバイス実体 が続きます。 最後の 2 つはどんな順序で現れてもよく、 都合に応じてあちこちへ散在しても構いません。

/etc/pccard.conf ファイルは、デフォルトのリソースプール設定と pccard 識別子データベースを持つ /etc/defaults/pccard.conf からインクルードされます。 ユーザ固有の設定を /etc/pccard.conf で指定して、これらのデフォルトを上書きしたり追加エントリを追加可能です。

それぞれの PC-CARD カードは、製造者やカードのバージョンを規定する 設定タプルを含んでいます。これらは、設定ファイル中でカードの仕様を 特定するのに使われ、それによって、そのカードとインタフェースをとれる ドライバを見つけます。 カードとドライバの間には、多対 1 の対応関係があります。すなわち、 単一のドライバが複数の型のカードにインタフェースをとることがあります。 この助けとして、ドライバの指定とは別に、カードの初期化や (ネットワークカードの場合なら) イーサネットアドレスの取り出し用に パラメータを指定することもできます。

ドライバは一度カードに割り当てられると、そのカードに割り当てられた ままになります。しかし、同じ型のドライバの複数の実体が設定される こともあるため、もし、同じの型のドライバが対応づけられているカードが 2 枚挿し込まれたら、同じ名前で別のドライバ実体が設定される可能性があります。

insert remove コマンドは、実行可能なシェルコマンド行を指定することができます。 実行されるコマンドは、そのキーワードの後の行の残りです。 行は、バックスラッシュを使って継続することができます。 簡単なマクロ置換によって、現在のカーネルのデバイス名 ( $device) とネットワークカードのイーサネットアドレス ( $ether) をコマンド行へ入れることが可能です。 pccardd(8) は、コマンド行を実行するために system(3) サブルーチンを使います。

pccardd(8) は、syslog を使用して、カードの挿抜をアナウンスします。 logstr コマンドで設定された文字列を使用するか、 これが設定されていない場合には、製造者とカードバージョンの文字列を使用します。

数値は 8 進数、16 進数、10 進数のいずれかの表現をとります。 もし 10 進数に k K が付いていれば、その値は 1024 を掛けたものになります。 名前にスペースを含める必要があるならば、 ダブルクォートで括っておくとよいでしょう。 ハッシュ文字 (#) は、その行の残りをコメントにします。

リソースプール

この (オプションである) セクションは、ISA バスのメモリアドレス空間や I/O ポート、割込み要求番号 (IRQ) といったシステムリソースのプールを指定します。 このリソースプールは、それぞれのドライバの記述中で指定された要求に応じて、 動的にアドレス空間や割り込み番号を割り当てるのに使われます。

リソースに関する構文は以下の通りです。

    io start - end ...

    memory address size ...

    irq irq-number ...

各文では、初期化時にドライバへ割り当てるのに使える、 I/O やメモリや IRQ のブロックを定義します。

デバッグレベルパラメータの文法は次の通りです:

    debuglevel level

上の文はどれも複数行にすることができ、 これで各々のリソースをかたまりに分けて定義することができます。

カード識別子

カード識別子の構文は以下の通りです。

    card manufacturer version [ add_info1 [ add_info2 ]]

    config index driver interrupt [ flags]

    ether offset

    reset time

    iosize size

    memsize size

    insert command

    remove command

    logstr string

第 1 行は必須です。あとの文はオプションであり、 どのような順序で現れても構いません。 config 行は複数存在することもあります。 card のパラメータには、製造者名、カードのバージョン、 そして追加情報 add_info1 と add_info2 があり、 カードの CIS メモリから得た値との一致をみるのに使われます。 amp;"/.*/" のように '/' で文字列を括れば、 これらのパラメータは、拡張正規表現 regex(3) で記述可能です。 各式は、先頭において文字 '^' で評価されます。

config パラメータは、 カードの CIS で得られる範囲からそのカードの設定インデックスを選択し、 この設定で関連づけられたドライバを選択し、 そして (もしあれば) 割り当てられるべき割り込みレベルを選択します。 オプションとしてフラグの集合を割り当てることもできます。 index では、 "auto" または "default" か、カードの CIS から取得可能な範囲を指定します。 "auto" により、CIS から取得される情報と使用中の I/O リソースの状態から、 自動的にリソースを割り当て可能です。

オプションの ether キーワードは、カードの属性メモリ内に ネットワークカードの物理イーサネットアドレスが保持されているときに使われます。 この文のパラメータは、イーサネットアドレスの属性メモリ内での オフセットを指しています。この値は、 $ether マクロを使うことで、insert/remove コマンド内でも使用できます。

オプションの reset キーワードは、カード挿入時のリセット期間を time ミリ秒であると指定します。 デフォルトは 100 ミリ秒です。

iosize memsize のキーワードは、 I/O ポートや共有メモリブロック等のリソースが CIS タプルに指定されていない カード用に使用します。

insert 及び remove セクションでは、カードが挿入されたり取り外されたりしたときに 実行されるべきシェルコマンドを書くことができます。複数の insert remove コマンドも書くことができ、その場合列挙された順に実行されます。

logstr コマンドで、カード挿抜時にログされる文字列を、ユーザが指定可能です。 logstr が指定されていない場合、 CIS 中の製造者とカードバージョンの文字列を使用して、出力文字列を生成します。

ワイルドカードエントリ

カード識別子として、次の 2 個のワイルドカードエントリを 汎用カードに使用可能です:

    generic serial

    generic fixed_disk

キーワード serial は "Functional ID: Serial port/modem" にマッチし、 fixed_disk は "Fixed disk card" にマッチします。 構文は card identifiers と同じですが、最初の行で "card" の代りに "generic" が使用されます。 マッチしなかったカードがこれらの汎用エントリを使用できるように、これらは、 pccard.conf の最後に置かれます。 エイリアス "function" を "generic" の代りに使用可能です。 これは、歴史的な事情によるものです。

使用例

典型的な設定ファイルは以下のような体裁になります。
#
# サンプル設定ファイル
#
# パラメータのプール
#
io 0x280 - 0x2F0 0x300 - 0x360
irq 5 6 8 9 10 15
memory 0xd4000 96k
memory 0xc4000 32k
#
# カードデータベース
#
card "RPTI LTD." "EP400"  # NE2000 clone
       ether 0x110
       config 0x21 "ed0" 5
       insert ifconfig $device physical $ether
       insert ifconfig $device bean
       remove ifconfig $device down

card "XYZZY" "FAX/1.0" tty config 0x30 "sio1" 11 insert echo start getty remove echo stop getty

関連ファイル

/etc/defaults/pccard.conf
  pccardd(8) の設定ファイル。
/etc/pccard.conf ユーザの設定ファイル。

関連項目

pccardd(8)

PCCARD.CONF (5) November 2, 1994

tail head cat sleep
QR code linking to this page


このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.

If it wasn't for C, we'd be using BASI, PASAL and OBOL