Manpages

名 前

/etc/pcmcia/config − PCMCIA カ ー ド の 設 定 デ ー タ ベ ー ス

説 明

PCMCIA カ ー ド 設 定 フ ァ イ ル は cardmgr(8) が 起 動 時 に 読 み 込 む 。 こ の 設 定 フ ァ イ ル は 、 カ ー ド サ ー ビ ス が 利 用 で き る IO ポ ー ト ・ メ モ リ ・ IRQ と い っ た リ ソ ー ス を 定 義 し 、 デ バ イ ス ド ラ イ バ の ロ ー ド や 初 期 化 の 方 法 を 指 定 し 、 そ れ ぞ れ の PCMCIA カ ー ド の 詳 細 に つ い て 記 述 す る 。

リ ソ ー ス の 記 述

リ ソ ー ス の エ ン ト リ に は 3 つ の 種 類 が あ る 。 include, exclude, reserve で あ る 。 include し た リ ソ ー ス は 、 カ ー ド サ ー ビ ス が ク ラ イ ア ン ト と な る 各 種 ド ラ イ バ に 割 り 当 て る 。 カ ー ド サ ー ビ ス の 制 御 下 に あ る リ ソ ー ス は exclude す る こ と も で き る 。 例 え ば シ ス テ ム の 特 定 の デ バ イ ス が そ の リ ソ ー ス を 使 う よ う な 場 合 で あ る 。 リ ソ ー ス は reserve す る こ と も で き る 。 こ の 場 合 は 、 そ の リ ソ ー ス を 特 に 使 い た い と 要 求 す る ク ラ イ ア ン ト が 現 わ れ る か 、 あ る い は 他 に 割 り 当 て 可 能 な リ ソ ー ス が 無 く な る ま で 、 そ の リ ソ ー ス は 割 り 当 て な い 。 リ ソ ー ス の タ イ プ に は 3 つ の 種 類 が あ る 。 port, memory, irq で あ る 。 デ フ ォ ル ト で は 、 カ ー ド サ ー ビ ス は 他 の デ バ イ ス ド ラ イ バ が 使 っ て い な い irq を 自 由 に 使 え る も の と 仮 定 す る 。 し か し 、 カ ー ド サ ー ビ ス は I/O ポ ー ト と ア ド レ ス の 範 囲 に 関 し て は な ん の 仮 定 も 行 わ な い 。 Linux の ド ラ イ バ の 中 に は リ ソ ー ス の 利 用 状 況 を 登 録 し な い 物 が あ る か ら で あ る 。 そ の た め 、 IO ポ ー ト と メ モ リ の 範 囲 に つ い て は 、 PCMCIA デ バ イ ス が 使 っ て 良 い 部 分 を 明 示 的 に 指 定 し な け れ ば な ら な い 。 こ れ ら を ま と め る と 、 設 定 フ ァ イ ル の 内 容 は 以 下 の よ う に な る :

include port 0x300-0x3ff, memory 0xd0000-0xdffff
reserve irq 3
exclude irq 4, port 0x3f8-0x3ff こ の 例 で は 、 カ ー ド サ ー ビ ス は I/O ポ ー ト の 0x300 か ら 0x3ff と 、 メ モ リ の 0xd0000 か ら 0xdffff ま で を 割 り 当 て て 良 い こ と に な る 。 exclude 指 定 を し た irq 4 と I/O ポ ー ト の 0x3f8 か ら 0x3ff は 、 利 用 可 能 で あ っ て も 使 わ な い 。 reserve 指 定 し た irq 3 は 、 特 に そ の 割 り 込 み を ク ラ イ ア ン ト が 必 要 と し た 場 合 に 限 っ て 利 用 す る 。 カ ー ド サ ー ビ ス は 、 他 の カ ー ネ ル デ バ イ ス ド ラ イ バ に 割 り 当 て ら れ て い る リ ソ ー ス は 決 し て 利 用 し な い 。 include/exclude/reserve メ カ ニ ズ ム は 、 カ ー ド サ ー ビ ス が 使 お う と 試 み る リ ソ ー ス を 指 定 す る も の で 、 Linux の リ ソ ー ス マ ネ ー ジ ャ ー に 登 録 さ れ な い デ バ イ ス と う ま く 共 存 す る た め の 仕 組 み な の で あ る 。

デ バ イ ス ド ラ イ バ の 記 述

カ ー ド サ ー ビ ス の 全 て の ク ラ イ ア ン ト ド ラ イ バ は 、 32 文 字 の タ グ に よ っ て 識 別 さ れ る 。 設 定 フ ァ イ ル 中 の device エ ン ト リ が ク ラ イ ア ン ト ド ラ イ バ を 記 述 す る 。 必 須 の フ ィ ー ル ド は 識 別 用 の タ グ の み で 、 そ の 他 の フ ィ ー ル ド に は 、 そ の デ バ イ ス を 利 用 す る た め に ロ ー ド す べ き カ ー ネ ル モ ジ ュ ー ル や デ バ イ ス の 実 体 を 有 効 /無 効 す る た め に 実 行 す る ス ク リ プ ト を 指 定 す る 。 ド ラ イ バ の 実 体 が ソ ケ ッ ト に 割 り 当 て ら れ る と 、 ド ラ イ バ は cardmgr に シ ス テ ム か ら 見 た そ の デ バ イ ス の 名 称 (ネ ッ ト ワ ー ク デ バ イ ス な ら ば eth0、 モ デ ム な ら ば cua1 な ど ) を 通 知 す る 。 こ の 名 称 は 設 定 用 ス ク リ プ ト に 渡 さ れ る 。 例 え ば :

device "pcnet_cs"
class "network"
module "net/8390" opts "ei_debug=4", "pcnet_cs" と い う 指 定 で は 、 pcnet_cs デ バ イ ス は 2 つ の ロ ー ダ ブ ル モ ジ ュ ー ル が 必 要 で あ る こ と を 示 し て い る 。 1 つ め の モ ジ ュ ー ル (8390) は モ ジ ュ ー ル デ ィ レ ク ト リ の net サ ブ デ ィ レ ク ト リ に あ り 、 指 定 し た パ ラ メ ー タ ei_debug=4 と 共 に ロ ー ド さ れ る 。 2 つ め の モ ジ ュ ー ル (de650_cs) は pcmcia サ ブ デ ィ レ ク ト リ に あ る 。 こ の デ バ イ ス (pcnet_cs) は network と い う ク ラ ス に 属 し 、 デ バ イ ス の 起 動 と 終 了 に は 、 設 定 フ ァ イ ル と 同 じ デ ィ レ ク ト リ に あ る network ス ク リ プ ト (/etc/pcmcia/network) が 利 用 さ れ る 。 デ バ イ ス ド ラ イ バ 宣 言 の 外 部 で 、 特 定 の カ ー ネ ル モ ジ ュ ー ル の デ フ ォ ル ト の オ プ シ ョ ン を 指 定 す る こ と も で き る 。 こ れ は ロ ー カ ル な 設 定 オ プ シ ョ ン を メ イ ン の カ ー ド 設 定 フ ァ イ ル か ら 分 離 す る の に 便 利 で あ る 。

module "pcnet_cs" opts "mem_speed=600"

カ ー ド の 記 述

card 宣 言 は 、 PCMCIA カ ー ド と そ の ク ラ イ ア ン ト ド ラ イ バ と を 結 び つ け る も の で あ る 。 card 宣 言 は 、 カ ー ド の 名 称 ・ カ ー ド が 挿 入 さ れ た 際 の 識 別 方 法 ・ 利 用 す る ド ラ イ バ 、 の 3 つ の 部 分 か ら な る 。 カ ー ド を 識 別 す る に は 6 つ の メ ソ ッ ド (方 法 ) が あ る 。 version メ ソ ッ ド は カ ー ド 識 別 に VERSION_1 id 文 字 列 を 用 い る 。 manfid メ ソ ッ ド は カ ー ド の MANFID タ プ ル コ ー ド を 用 い る 。 pci メ ソ ッ ド は CardBus カ ー ド の PCI デ バ イ ス ID を 用 い る 。 tuple メ ソ ッ ド は カ ー ド の 任 意 の CIS タ プ ル に 埋 め こ ま れ た 文 字 列 を 用 い る 。 function メ ソ ッ ド は カ ー ド の function ID を 用 い る 。 anonymous メ ソ ッ ド は CIS を 持 た な い カ ー ド に マ ッ チ す る (こ れ は 旧 式 の タ イ プ I メ モ リ カ ー ド に 用 い る 物 で あ る )。 以 下 に い く つ か 例 を 示 す 。

card "Linksys Ethernet Card"
tuple 0x40, 0x0009, "E-CARD PC Ethernet Card"
bind "pcnet_cs" こ の カ ー ド は 0x40 タ プ ル の オ フ セ ッ ト 0x0009 か ら 始 ま る 文 字 列 "E-CARD PC Ethernet Card" に よ っ て 識 別 さ れ 、 pcnet_cs ド ラ イ バ に バ イ ン ド さ れ る (ド ラ イ バ は あ ら か じ め driver 宣 言 で 定 義 さ れ て い な け れ ば な ら な い )。

card "Connectware LANdingGear Adapter"
manfid 0x0057, 0x1004
bind "pcnet_cs" こ の カ ー ド は MANFID タ プ ル の 内 容 に よ っ て 識 別 さ れ る 。 pci メ ソ ッ ド も 同 じ 形 式 で 、 manfid の 代 わ り に pci と 書 く 。

card "D-Link DE-650 Ethernet Card"
version "D-Link", "DE-650"
bind "pcnet_cs" こ の カ ー ド は VERISON_1 タ プ ル に よ っ て 識 別 さ れ 、 pcnet_cs ド ラ イ バ に バ イ ン ド さ れ る 。

card "Serial port device"
function serial_port
bind "serial_cs" こ れ はCIS function ID が 0x02 (シ リ ア ル ポ ー ト カ ー ド に 対 応 ) の あ ら ゆ る カ ー ド を serial_cs ド ラ イ バ に バ イ ン ド す る 。 function ID は 数 字 で も 良 い し 、 定 義 済 み の function で あ る memory_card, serial_port, parallel_port, fixed_disk, video_adapter, network_adapter, aims_card の い ず れ か で も か ま わ な い 。 最 後 に 、 カ ー ド で 見 付 か っ た 設 定 情 報 と は 異 な る も の を カ ー ド サ ー ビ ス に 用 い さ せ る よ う な 指 定 も 設 定 フ ァ イ ル で は 可 能 で あ る 。 カ ー ド の 設 定 情 報 が 特 に 不 完 全 ・ 不 正 確 で あ る 場 合 に こ れ を 使 え る こ と も あ る 。 新 し い 設 定 は フ ァ イ ル か ら 読 み 込 む 。 例 を 示 す :

card "Evil broken card"
manfid 0x1234, 0x5678
cis "fixup.cis"
bind "serial_cs"

メ モ リ 領 域 定 義

メ モ リ 領 域 定 義 は 、 特 定 の 形 式 の メ モ リ デ バ イ ス を Memory Technology Driver (MTD) に 関 連 付 け す る た め に 用 い ら れ る 。 MTD は メ モ リ ア ク セ ス を 、 デ バ イ ス 独 立 な や り 方 で 提 供 す る 。 カ ー ド が こ の 種 の メ モ リ デ バ イ ス で あ る と 識 別 さ れ る と 、 カ ー ド サ ー ビ ス は そ の メ モ リ 領 域 全 て に 対 し て MTD を 読 み 込 も う と す る 。 メ モ リ 領 域 定 義 は region キ ー ワ ー ド と 識 別 文 字 列 か ら 始 ま る 。 次 に 識 別 メ ソ ッ ド で あ る defaultjedec が 来 る 。 default は 他 に 分 類 さ れ な か っ た す べ て の 領 域 で 使 う MTD を 指 定 し 、 jedec は メ モ リ 領 域 を JEDEC の 識 別 コ ー ド に よ っ て 識 別 す る 。 例 え ば

region "Intel Series 2 Flash"
jedec 0x89 0xa2
mtd "iflash2_mtd" は 、JEDEC が マ ッ チ す れ ば iflash_mtd ド ラ イ バ が ロ ー ド さ れ る こ と を 示 し て い る 。

バ グ

今 の と こ ろ reserve キ ー ワ ー ド の 実 装 は こ の バ ー ジ ョ ン の カ ー ド サ ー ビ ス に は あ ま り 便 利 で な い 。

著 者

David Hinds − dahinds [AT] users.net

関 連 項 目

cardmgr(8)