今井です. ええと,ボードは http://www.interface.co.jp/catalog/prdc.asp?name=pci-2752c こいつでしょうか. マニュアルをダウンロードするにはユーザ登録がいるようなので,一般的な話だ け書くと ・I/O ベースアドレス PCI デバイスの場合は,刺さっているボード同士の I/O アドレスが ぶつからないように BIOS 等が良きに計らってくれます. というわけで,マニュアルのサンプルプログラムに載っている(と思わ れる)I/O アドレスとは異なった I/O アドレスに割り当てられている 可能性があります. /sbin/lspci コマンドか cat /proc/pci で,ベースアドレスを確認し てみましょう ・I/O 空間にマップするデバイスなのか ボードによっては,ポートを I/O 空間にマップせずにメモリ空間にマッ プするものもあります. この場合は /dev/mem 経由のアクセスになると思います. ・初期化 PCI コンフィギュレーションレジスタなどをいじらないとボードの設定 ができない場合,inw(), outw() を用いたユーザプログラムでは実現不 可能(だと思った方が良い)です. ・I/O レジスタの幅は? 32bit や 8 bit 幅のレジスタに対して 16bit のアクセスを行った場合 には,正常なアクセスができないデバイスである,ということも考えら れます. ・たまたまレジスタの値が 0xffff であった ええと 何もレジスタの無いアドレスを叩いている のか レジスタにはアクセスしできているのだが,その値がたまたま 0xffff であった のか,というあたりです. # マニュアルを読んでいないので,このレジスタの取るべき値がいくつ であるのかわかりませんが. このボードは,入出力ボード,だそうなので,簡単な LED 駆動回路を ポートに接続し,ポートを出力モードに切替えて,LED を点滅させてみ てはどうでしょうか. でわでわ _._. __._ _ . ... _ .___ ._. _____ _... ._ _._ _.._. .____ _ . ... _ Kunihiko IMAI 今井 邦彦
Follow-Ups: References:
- [linux-users:99556] ユーザー空間からI/OPort への直接アクセス方法Yoichi And
- [linux-users:99557] Re: ユーザー空間からI/OPort への直接アクセス方法ANDO Koji
- [linux-users:99561] Re: ユーザー空間からI/OPort への直接アクセス方法Yoichi And
- Prev by Subject: [linux-users:99562] Re: DeskTopの変更
- Next by Subject: [linux-users:99565] Re: rxvt起動時のスタンバイ動作異常
- Previous by thread: [linux-users:99561] Re: ユーザー空間からI/OPort への直接アクセス方法
- Next by thread: [linux-users:99567] Re: ユーザー空間からI/OPort への直接アクセス方法
- Indexes:[Main][Thread]