KiNOKO-DAQ 関連情報 掲示板

このスレッドに記事を投稿する
前のスレッド | 次のスレッド | 掲示版ホーム

camdrvのインストールのエラーについて
2015 年 5 月 20 日 17 時 19 分
投稿者: 森本貴博

こんにちは。初めて質問させていただきます。京都大学で原子核物理を研究している修士1年生の森本貴博といいます。

使用PCはLESANCE DT VHPE685050RAM/GF86GTS(2007年製)
LinuxのバージョンはUbuntu12.04LTS日本語版
PCIバスは東陽テクニカ CC/PCI
CAMACのクレートコントローラーは東陽テクニカCC7700を使っています。

KINOKOのダウンロードパッケージに搭載されている /camdrv/Linux2.6_CC77pci ディレクトリにあるcamdrvの中身をmakeし、そのあと管理者権限でmake installしたところ
「insmod: error inserting 'camdrv.ko': -1 No such device」
というエラーメッセージが出現しました。
makeはきちんと完了しており、「camdrv.ko」という名称のファイルは同じディレクトリに存在していることは確認しております。

さらにcamdrvの中身のみを別でダウンロードし、そこでmake installしても同様の結果となりました。

その他のLinuxのディレクトリについても調べてみましたが、/camdrv/Linux2.6_CCP_PCI でmake installするとインストールが完了するものの、あらゆるテストに対して反応が一切ありません。

camdrv.koが正しく認識されていないのはどういう問題が起きているからでしょうか?また他の対応機器のディレクトリでインストールすると中途半端に反応するのはなぜでしょうか?



2015 年 5 月 21 日 5 時 29 分
投稿者: 榎本三四郎

おそらく、PCI に挿してあるボードが PC あるいはカーネルに
認識されていないのだと思います。報告されている症状は、
PC に CAMAC のカードを挿さずにドライバをインストールした
場合に出てくるものと同じです。

"lspci -v" というコマンドを実行してみて、CC-7700/PCI が
見えているかを確認してみてください。この段階でドライバが
インストールされている必要はありません。PCをブートした
直後の状態で lspci の出力に CC-7700/PCI が見えていなければ、
その先に進むことはできません。

lspci の出力では、CC-7700/PCI は(認識されていれば)おそらく
Unknown Device と表示されていると思いますが、Vendor ID が
0x0001 で、Devide ID が 0xcc77 となっているものが
CC-7700/PCI です。もし見方がわからなければ、lspci の出力を
添付してもらえれば私の方で確認できます。

他の機器用の camdrv が途中までインストールできて実行時に反応
しないのは、機器によっては、デバイスが存在しないことをドライバが
検出できないためです。特に、ISA バス用のものは、ISA バスの仕様
として、どのようなデバイスがバスに接続されているかを検出する
方法がありません。そのため、camdrv は「あると仮定してやってみる」
しかないわけです。デバイスが存在しなければ、やってみても当然
反応はありません。

逆に、PCI では、デバイスドライバなしでもどのようなデバイスが
接続されているかを検出することができ、それに基づいて適切な
ドライバをインストールできるようになっています(プラグアンド
プレイと呼ばれる機能です)。lspci コマンドの出力は、ここで
検出されたデバイスを一覧表示しています。camdrv は、ドライバ
インストール時にこの一覧を見てデバイスが存在することを
確認するので、camdrv.ko がちゃんとコンパイルされていても、
PCI デバイス一覧に CC-7700/PCI が存在しなければ、インストール時
にエラーを出してその先に進みません。



2015 年 5 月 21 日 5 時 43 分
投稿者: 榎本三四郎

追加です。

CCP-PCI は、PCI 用のカードであるにもかかわらず、
プラグアンドプレイのための機能が実装されていません。
そのため、camdrv では、CCP-PCI に対しては、ISA バス
用のデバイスと同じように、そこにあると仮定してアクセス
を試みます。CCP-PCI 用のドライバを使ったときに、
実際にアクセスするまで問題が発覚しないのはこのためです。

あと、CCP-PCI のようなプラグアンドプレイを実装して
いない PCI デバイス用のドライバを、CCP-PCI デバイスを
入れずに使うのは、危険かもしれません。CCP-PCI 用の
ドライバが CCP-PCI があると思って読み書きする場所に、
実際には何があるか分からないからです。



2015 年 5 月 21 日 17 時 42 分
投稿者: 森本貴博

榎本さま

丁寧なご説明ありがとうございます。
"lspci -v"を行ったところ以下のメッセージが出て、私の方で確認したところどうもpciが認識されていないように思われました。



00:00.0 Host bridge: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller (rev 02)
Subsystem: Micro-Star International Co., Ltd. G33/P35 Neo
Flags: bus master, fast devsel, latency 0
Capabilities: <access denied>

00:01.0 PCI bridge: Intel Corporation 82G33/G31/P35/P31 Express PCI Express Root Port (rev 02) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
I/O behind bridge: 0000a000-0000afff
Memory behind bridge: fa000000-fe9fffff
Prefetchable memory behind bridge: 00000000d0000000-00000000dfffffff
Capabilities: <access denied>
Kernel driver in use: pcieport
Kernel modules: shpchp

00:1a.0 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4 (rev 02) (prog-if 00 [UHCI])
Subsystem: Micro-Star International Co., Ltd. G33/P35 Neo
Flags: bus master, medium devsel, latency 0, IRQ 16
I/O ports at 9c00 [size=32]
Capabilities: <access denied>
Kernel driver in use: uhci_hcd

00:1a.1 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5 (rev 02) (prog-if 00 [UHCI])
Subsystem: Micro-Star International Co., Ltd. G33/P35 Neo
Flags: bus master, medium devsel, latency 0, IRQ 21
I/O ports at 9880 [size=32]
Capabilities: <access denied>
Kernel driver in use: uhci_hcd

00:1a.7 USB controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2 (rev 02) (prog-if 20 [EHCI])
Subsystem: Micro-Star International Co., Ltd. G33/P35 Neo
Flags: bus master, medium devsel, latency 0, IRQ 18
Memory at f9fffc00 (32-bit, non-prefetchable) [size=1K]
Capabilities: <access denied>
Kernel driver in use: ehci_hcd

00:1b.0 Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 02)
Subsystem: Micro-Star International Co., Ltd. G33/P35 Neo
Flags: bus master, fast devsel, latency 0, IRQ 45
Memory at f9ff8000 (64-bit, non-prefetchable) [size=16K]
Capabilities: <access denied>
Kernel driver in use: snd_hda_intel
Kernel modules: snd-hda-intel

00:1c.0 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 1 (rev 02) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
I/O behind bridge: 00001000-00001fff
Memory behind bridge: 80400000-805fffff
Prefetchable memory behind bridge: 0000000080600000-00000000807fffff
Capabilities: <access denied>
Kernel driver in use: pcieport
Kernel modules: shpchp

00:1c.4 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 5 (rev 02) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=03, subordinate=03, sec-latency=0
I/O behind bridge: 0000b000-0000bfff
Memory behind bridge: fea00000-feafffff
Prefetchable memory behind bridge: 0000000080200000-00000000803fffff
Capabilities: <access denied>
Kernel driver in use: pcieport
Kernel modules: shpchp

00:1c.5 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 6 (rev 02) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=04, subordinate=04, sec-latency=0
I/O behind bridge: 0000c000-0000cfff
Memory behind bridge: feb00000-febfffff
Prefetchable memory behind bridge: 0000000080000000-00000000801fffff
Capabilities: <access denied>
Kernel driver in use: pcieport
Kernel modules: shpchp

00:1d.0 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 02) (prog-if 00 [UHCI])
Subsystem: Micro-Star International Co., Ltd. G33/P35 Neo
Flags: bus master, medium devsel, latency 0, IRQ 23
I/O ports at 9800 [size=32]
Capabilities: <access denied>
Kernel driver in use: uhci_hcd

00:1d.1 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 02) (prog-if 00 [UHCI])
Subsystem: Micro-Star International Co., Ltd. G33/P35 Neo
Flags: bus master, medium devsel, latency 0, IRQ 19
I/O ports at 9480 [size=32]
Capabilities: <access denied>
Kernel driver in use: uhci_hcd

00:1d.2 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 02) (prog-if 00 [UHCI])
Subsystem: Micro-Star International Co., Ltd. G33/P35 Neo
Flags: bus master, medium devsel, latency 0, IRQ 18
I/O ports at 9400 [size=32]
Capabilities: <access denied>
Kernel driver in use: uhci_hcd

00:1d.3 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #6 (rev 02) (prog-if 00 [UHCI])
Subsystem: Micro-Star International Co., Ltd. G33/P35 Neo
Flags: bus master, medium devsel, latency 0, IRQ 16
I/O ports at 9080 [size=32]
Capabilities: <access denied>
Kernel driver in use: uhci_hcd

00:1d.7 USB controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 02) (prog-if 20 [EHCI])
Subsystem: Micro-Star International Co., Ltd. G33/P35 Neo
Flags: bus master, medium devsel, latency 0, IRQ 23
Memory at f9fff800 (32-bit, non-prefetchable) [size=1K]
Capabilities: <access denied>
Kernel driver in use: ehci_hcd

00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 92) (prog-if 01 [Subtractive decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=05, subordinate=05, sec-latency=32
I/O behind bridge: 0000d000-0000efff
Capabilities: <access denied>

00:1f.0 ISA bridge: Intel Corporation 82801IB (ICH9) LPC Interface Controller (rev 02)
Subsystem: Micro-Star International Co., Ltd. G33/P35 Neo
Flags: bus master, medium devsel, latency 0
Capabilities: <access denied>
Kernel modules: iTCO_wdt

00:1f.2 IDE interface: Intel Corporation 82801IB (ICH9) 2 port SATA Controller [IDE mode] (rev 02) (prog-if 8f [Master SecP SecO PriP PriO])
Subsystem: Micro-Star International Co., Ltd. G33/P35 Neo
Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 19
I/O ports at 9000 [size=8]
I/O ports at 8c00 [size=4]
I/O ports at 8880 [size=8]
I/O ports at 8800 [size=4]
I/O ports at 8480 [size=16]
I/O ports at 8400 [size=16]
Capabilities: <access denied>
Kernel driver in use: ata_piix

00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 02)
Subsystem: Micro-Star International Co., Ltd. G33/P35 Neo
Flags: medium devsel, IRQ 11
Memory at f9fff400 (64-bit, non-prefetchable) [size=256]
I/O ports at 0400 [size=32]
Kernel modules: i2c-i801

00:1f.5 IDE interface: Intel Corporation 82801I (ICH9 Family) 2 port SATA Controller [IDE mode] (rev 02) (prog-if 85 [Master SecO PriO])
Subsystem: Micro-Star International Co., Ltd. G33/P35 Neo
Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 19
I/O ports at 8000 [size=8]
I/O ports at 7c00 [size=4]
I/O ports at 7880 [size=8]
I/O ports at 7800 [size=4]
I/O ports at 7480 [size=16]
I/O ports at 7400 [size=16]
Capabilities: <access denied>
Kernel driver in use: ata_piix

01:00.0 VGA compatible controller: NVIDIA Corporation G84 [GeForce 8600 GTS] (rev a1) (prog-if 00 [VGA controller])
Subsystem: Micro-Star International Co., Ltd. Device 0950
Flags: bus master, fast devsel, latency 0, IRQ 16
Memory at fd000000 (32-bit, non-prefetchable) [size=16M]
Memory at d0000000 (64-bit, prefetchable) [size=256M]
Memory at fa000000 (64-bit, non-prefetchable) [size=32M]
I/O ports at ac00 [size=128]
Expansion ROM at fe9e0000 [disabled] [size=128K]
Capabilities: <access denied>
Kernel driver in use: nouveau
Kernel modules: nouveau, nvidiafb

03:00.0 IDE interface: Marvell Technology Group Ltd. 88SE6121 SATA II / PATA Controller (rev b2) (prog-if 8f [Master SecP SecO PriP PriO])
Subsystem: Marvell Technology Group Ltd. 88SE6121 SATA II / PATA Controller
Physical Slot: 0-1
Flags: bus master, fast devsel, latency 0, IRQ 16
I/O ports at bc00 [size=8]
I/O ports at b880 [size=4]
I/O ports at b800 [size=8]
I/O ports at b480 [size=4]
I/O ports at b400 [size=16]
Memory at feaffc00 (32-bit, non-prefetchable) [size=1K]
Capabilities: <access denied>
Kernel driver in use: pata_marvell
Kernel modules: pata_marvell

04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 01)
Subsystem: Micro-Star International Co., Ltd. Device 360c
Physical Slot: 0-2
Flags: bus master, fast devsel, latency 0, IRQ 44
I/O ports at c800 [size=256]
Memory at febff000 (64-bit, non-prefetchable) [size=4K]
Expansion ROM at febc0000 [disabled] [size=128K]
Capabilities: <access denied>
Kernel driver in use: r8169
Kernel modules: r8169


"lspci -n"で直接Vender IDやDevice IDも調べましたが、それらしき番号は確認できませんでした。

また手持ちのPCI(すべて東陽テクニカの同じ規格)で試してみたところすべて認識しませんでした。単に1つのPCIが故障などで認識されていないのではなさそうです。
この場合はパソコンがPCIに対応していないと見てパソコンのほうを変えるのがいいでしょうか?



2015 年 5 月 22 日 8 時 45 分
投稿者: 榎本三四郎

lspci の出力に CC-7700/PCI がないのは間違いないようです。

PCI スロットが備わっている PC で PCI が使えないということは
まずないと思うので、BIOS か何かの設定で使えるようになるかも
しれません。過去の経験の範囲内では、カードを正しく挿したのに
lspci に表示されなかったといことは、CC-7700/PCI ではなかった
と記憶しています。不運にもその PCI スロットだけが壊れている
可能性もあるので、他の PCI スロットがあれば試してみてもいいかも
しれません。もちろん、別の PC を使えるのなら、それも試してみて
いいと思います。可能なら、あまり新しくない PC に今と同じ
Ubuntu 12.04 を入れることができれば、動作実績があるので
より確実だと思います。



2015 年 6 月 26 日 18 時 4 分
投稿者: 伏見賢一

こんにちは伏見です。
森本さんの症状は以前何度も経験しています。
cc7700とPCとの相性の問題です。
たいていの場合はPCIスロットの可能なスロットに差し替えて再起動するということを
全ての可能性に対して実行していくと認識します。

他のPCIカードがあるとそれとも干渉してうまく動かないことがあります。
その場合は、まずcc7700を認識するスロットを探し出して、認識できてから別のスロットにPCIカードを入れます。

どうしても認識しない場合はcc7700のボードが壊れている可能性が高いです。


このスレッドに記事を投稿する