PCI


  • PCIコンフィグレーションに関するページ

  • iomap
CONFIG_ADDRESSレジスタでPCIにアクセスできるみたい!!!
http://community.osdev.info/index.php?%28AT%29iomap

  • PCI(や他の周辺機器)にアクセスする概念は「I/O空間」と言うらしい


また、一部のCPUやPCIバスなどでは、メインメモリとは別に存在するメモリ空間としてI/O空間があり、このメモリ空間のことをI/Oポートと呼ぶ場合もある。
I/O空間のアドレスはI/OアドレスやI/Oポートアドレスと呼ばれる。
=I/Oポート

◎具体的に
アクセスには、IN,OUT命令を使う。
DXレジスタにポート番号、AXレジスタにデータを入れて、OUT命令(IN命令)
OS自作P.88,P.91あたり参照




  • レジスタのアドレス指定時の注意点
bit0-1:0に固定
bit2-7:レジスタアドレス
(bit0-7をレジスタアドレスと考えるといいかもしれません。0x00~0xfcが指定できます。ただし、4の倍数しか指定できないことに注意してください。)
↑考えるといい、ではなく、"考えなければいけない"。データシート上に書いてあるレジスタのアドレスをそのままbit2-7にセットしてもダメ。
つまり、データシート上に0x04とアドレスの書いてあるレジスタにアクセスしたかったら、(bit7-bit2=)000100ではなく、(bit7-bit0:)00000100としなければならない!

  • I/O空間

  • Linux
最終更新:2011年11月08日 13:39
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。