次のページ 前のページ 目次へ

4. デバイスドライバによる Tundra Universe PCI-VME ブリッジとの対話の仕方

4.1 VMELinux と共に用いられるデバイスドライバ

4.2 VMEMaster デバイスドライバ

/dev/vme_m* は通常、バス・マスタとしてVMEbus にアクセスする ドライバです。

Universe チップは、VMEbus への 4 つの VMEMaster ウインドウをプログラ マへ提供します。これらのウインドウは image と呼ばれます。これらの ウインドウ内のレジスタの詳細はこの HOWTO の範囲を超えます。詳細に ついては Universe のドキュメントを参照してください。 Tundra Universe

4.3 VMESlave デバイスドライバ

/dev/vme_s* は通常、別の VMEbus マスタがこのデバイスにアクセスする ことを許可するドライバです。

Universe チップは、VMEbus への 4 つの VMESlave ウインドウをプログラ マへ提供します。これらのウインドウは image と呼ばれます。これらの ウインドウ内のレジスタの詳細はこの HOWTO の範囲を越えます。詳細に ついては Universe のドキュメントを参照してください。 Tundra Universe

スレーブ VME モードは、VMELinux ではまだサポートしていません。

4.4 Universe のレジスタの直接制御

/dev/vme_ioctl を使うと Universe のレジスタを読み書きできます。

経験豊かなユーザであれば、このデバイスを使って Universe チップの内部の レジスタへ直接アクセスできます。これらのレジスタの説明とその動作は この HOWTO の範囲を超えてしまいます。 以下から入手可能な Universe のドキュメントを調べてください。 Tundra Universe

4.5 read()

n = read(vme_handle,buf,len);

引数の意味は以下の通りです -

4.6 write()

write(vme_handle,buf,len);

引数の意味は以下の通りです -

4.7 lseek()

lseek(vme_handle,vme_pnt,Seek_Type);

引数の意味は以下の通りです -

4.8 ioctl()

ioctl(vme_handle, command, argument);

引数の意味は以下の通りです -

また -

4.9 open() と close()

4 つの VMELinux マスタあるいはスレーブ・デバイスとコントロール・デバイスを オープン/クローズします。スレーブイメージはまだサポートされていません。


次のページ 前のページ 目次へ