===================================================================== = Linux版デジタル入出力ドライバについて = = API-DIO(LNX) Ver4.50 = = CONTEC Co.,Ltd. = ===================================================================== ◆ 目次 ======= はじめに 製品概要 制限事項 注意事項 お問い合わせ先 インストール方法 インストールされるファイル アンインストール方法 サンプルプログラム バージョンアップ履歴 ◆ はじめに =========== 日頃から格別のお引き立てを賜りまして厚く御礼申し上げます。 API-DIO(LNX)に関する説明を以下に記載します。ヘルプ等に記載 されていない事項もありますので、ぜひご一読下さい。 ◆ 製品概要 =========== ・API-DIO(LNX)は、モジュール形式のドライバとシェアードライブラリにより、弊社製 デジタルI/Oボードを制御するための関数群を提供しています。 ・入出力、割り込み、タイマによるトリガ監視といった基本的な機能を提供しています。 ・設定プログラム(config)と設定ファイルにより、使用するデバイスを設定して使用します。 ・設定プログラムは実行環境へ移行を容易にする設定ファイルとドライバ起動スクリプト、 停止スクリプトを出力します。 ・ドライバに組み込んで実行できるユーザー割り込み処理ソースコードが添付されています。 ◆注意事項 ========== ドライバのインストールおよび設定、起動はroot権限で行う必要があります。 ◆お問い合わせ先 ================ 本製品についてのご質問は、コンテックインフォメーションセンター まで、E-mailまたはFAXにてお問い合わせください。また、最新版のドライバに つきましては、弊社ホームページより無償でダウンロードできます。 FAX : 03-5628-9344 E-mail : tsc@contec.co.jp HomePage : http://www.contec.co.jp/apipac/ また、お問い合わせの際は、下記内容を書いてお問い合わせください。 ・ご使用のLinuxディストリビューション: ・ご使用のカーネルバージョン: ・ご使用のボード名: ・ボードの使用枚数: ・ハードウェア環境: ・ご質問内容: ・問題の発生内容: ・問題の発生状況: ・問題の発生頻度: ・ご連絡先の会社名: ・部署名: ・お名前: ・ご連絡先の電話番号: ◆インストール方法 ================== 本ドライバは、圧縮ファイルで提供しています。シェルから下記のようにコマンドを 実行してコピー/解凍して使用してください。 ライブラリのインストールパスを/usr/local/lib等に変更したい場合は、あらかじめ Makefileを見てインストール先を変更しておいてください。 ※下記のX.XXはドライバのバージョンです。 # cd # mount /dev/cdrom /mnt/cdrom # cp /mnt/cdrom/linux/dio/cdioX.XXj.tgz ./ # tar xvfz cdioX.XXj.tgz ................ # cd contec/cdio # make ................ # make install ................ # cd config # ./config ..... 以下設定 ......... # ./contec_dio_start.sh ドライバの起動と停止は contec_dio_start.sh とcontec_dio_stop.sh で行います。 システム起動時に毎回ドライバを起動する場合は、/etc/rc.d/rc.local等に、起動 スクリプトの処理内容を記述してください。 ◆インストールされるファイル ============================ ・本製品の圧縮ファイルは、次の様な構成で ファイルをインストールします。 //contec //contec/cdio cdio_uninstall.sh ............ アンインストール用シェルスクリプト Makefile ..................... インストール用メイクファイル readme.txt ................... READMEファイル /config config ................... 設定プログラム contec_dio.conf .......... 設定ファイル:configの実行により生成され、 起動スクリプトにより/procにコピーされます。 contec_dio_start.sh ...... ドライバ起動スクリプト contec_dio_stop.sh ....... ドライバ停止スクリプト cdio.o ................... 起動するバージョンのドライバ /2.4.2-2 cgetres.o ............ config用リソース取得ドライバ /2.4.5-3 ................. /2.4.2-2と同様 /2.4.7-10 ................ /2.4.2-2と同様 /2.4.18-1 ................ /2.4.2-2と同様 /2.4.18-3 ................ /2.4.2-2と同様 /2.4.18-14 ............... /2.4.2-2と同様 /2.4.20-8 ................ /2.4.2-2と同様 /2.4.21-4.EL ............. /2.4.2-2と同様 /2.6.8-1 cgetres.ko ........... config用リソース取得ドライバ /2.6.9-5.EL .............. /2.6.8-1と同様 /2.6.18-8.el5 ............ /2.6.8-1と同様 /2.6.23-2 .............. /2.6.8-1と同様 /module Makefile ................. コンパイル及びインストール用メイクファイル Cdio_user_irq.c .......... ユーザー割り込み処理ソース /2.4.2-2 cdio_raw.o ............ コンパイル済みドライバオブジェクト(ユーザー割り込み処理ルーチン以外) cdio.o ................ コンパイル済みドライバ本体 /2.4.5-3 ................. /2.4.2-2と同様 /2.4.7-10 ................ /2.4.2-2と同様 /2.4.18-1 ................ /2.4.2-2と同様 /2.4.18-3 ................ /2.4.2-2と同様 /2.4.18-14 ............... /2.4.2-2と同様 /2.4.20-8 ................ /2.4.2-2と同様 /2.4.21-4.EL ............. /2.4.2-2と同様 /2.6.8-1 cdio_raw.ko ............ コンパイル済みドライバオブジェクト(ユーザー割り込み処理ルーチン以外) cdio.ko ................ コンパイル済みドライバ本体 /2.6.9-5.EL .............. /2.6.8-1と同様 /2.6.18-8.el5 ............ /2.6.8-1と同様 /2.6.23-2 .............. /2.6.8-1と同様 /library Makefile ................. インストール用メイクファイル libcdio.so.1.0 ........... シェアードライブラリ /samples/ console/ ................. コンソールサンプルディレクトリ BusMaster/ ............ BusMasterサンプルディレクトリ console_curses/ .......... cursesを使用したコンソールサンプルディレクトリ BusMaster/ ............ BusMasterサンプルディレクトリ kylix/ ................... Kylixサンプルディレクトリ /help/ diohelp.htm ............... htmlヘルプファイル dio_dm_help.htm ........... htmlヘルプファイル(バスマスタ機能編) data/ ..................... ヘルプデータ dm_data/ .................. ヘルプデータ ・make installにより、以下のファイルがシステムにコピーされます。 /usr/lib/libcdio.so ........... シェアードライブラリ /usr/lib/libcdio.so.1.0 ....... シェアードライブラリ ・ドライバ開始スクリプトを実行することにより、以下のファイルがシステムに作成されます。 /dev/cdioXXX (XXXは数字) ...... デバイスのファイルノード /proc/contec_dio.conf ......... 設定ファイルのコピー ◆アンインストール方法 ====================== アンインストールはアンインストール用シェルスクリプトを実行することで行えます。 # cd contec # ./cdio_uninstall.sh ................... # 詳細はcdio_uninstall.shスクリプトを参照してください。 ◆サンプルプログラム ==================== サンプルプログラムは、各言語ごとに以下のディレクトリで構成されています。 //contec/cdio/samples ディレクトリの説明 /inc C/C++およびKylixの関数定義ファイルがあります。ご自分でプログラムを作成される場合、 これらのファイルをC/C++場合インクルード 、Kylixの場合プロジェクトに追加してご使用 下さい。 また、これらのファイルは編集しないでください。 /console C言語のサンプルプログラムソースコード、及びMakefileが入っています。 /kylix Kylix2のサンプルプログラムソースコード、及びプロジェクトファイル等が 入っています。 バスマスタ対応ボードでは、Kylix2はサポートしません。 ◆バージョンアップ履歴 API-DIO(LNX) ========================================= Ver4.40->Ver4.50 (Ver Mar.2011) -------------------------------- ・使用可能ボードの追加 追加ボード:DI-128RL-PCI, DO-128RL-PCI Ver4.30 -> Ver4.40 (Web Release) -------------------------------- ・新規ディストリビューションに対応(SMP対応含む) ・Red Hat Enterprise Linux 5 ・Turbo Linux 11 server Ver4.21->Ver4.30 (Ver Jan.2009) -------------------------------- ・使用可能ボードの追加 追加ボード:DIO-32DM-PE ・カードバスデバイスで正常にIOできない場合がある不具合を修正 Ver4.20->Ver4.21 (web release) -------------------------------- ・バスマスタの転送完了通知が実際よりも多く通知されることがある不具合を修正 ・configでデバイスの自動検出を行うとセグメンテーションフォールトを起こす場合がある不具合を修正 Ver4.10->Ver4.20 (Ver Apr.2008) -------------------------------- ・使用可能ボードの追加 追加ボード:DI-64T-PE, DO-64T-PE, DI-32T-PE, DO-32T-PE DIO-48D-PE, DIO-96D-LPE, DI-128T-PE, DO-128T-PE Ver4.00->Ver4.10 (Ver Jan.2008) -------------------------------- ・使用可能ボードの追加 追加ボード:RRY-32-PE, RRY-16C-PE, DIO-1616RY-PE ・DioDmSetBuff関数にてカーネルパニックを起こすことがある不具合を修正 Ver3.51->Ver4.00 (Ver Oct.2007) -------------------------------- ・使用可能ボードの追加 追加ボード:DI-32B-PE, DO-32B-PE, DIO-1616H-PE, DIO-3232H-PE DIO-1616RL-PE, DIO-3232RL-PE Ver3.50->Ver3.51 (web release) -------------------------------- ・Ver3.50のドライバファイル一部破損のため入れ替え Ver3.40->Ver3.50 (Ver Jun.2007) -------------------------------- ・使用可能ボードの追加 追加ボード:DIO-96D2-LPCI Ver3.30->Ver3.40 (Ver Feb.2007) -------------------------------- ・使用可能ボードの追加 追加ボード:DIO-3232B-PE, DIO-3232F-PE, DIO-1616B-PE, DIO-1616TB-PE DI-64L-PE, DI-32L-PE, DO-64L-PE, DO-32L-PE DIO-6464T2-PCI, DI-128T2-PCI, DO-128T2-PCI,DI-32T2-PCI DO-32T2-PCI, DI-64T2-PCI, DO-64T2-PCI, DIO-48D2-PCI Ver3.21->Ver3.30 (Ver Nov.2006) -------------------------------- ・使用可能ボードの追加 追加ボード:DIO-3232T-PE, DIO-1616T-PE, DIO-6464T-PE, DIO-6464L-PE, DI-128L-PE, DO-128L-PE Ver3.20->Ver3.21 -------------------------------- ・PIO-32DM(PCI)をカーネル2.4系で1GByte以上のメモリを搭載したPCで使用すると、 DioDmSetBuff関数にてカーネルパニックを起こすことがある不具合を修正 (カーネルバージョン2.4.13以上でのみ有効) Ver3.10->Ver3.20 (Ver Apr.2006) -------------------------------- ・使用可能ボードの追加 追加ボード:DIO-48D-LPE, DIO-1616T-LPE, DIO-3232L-PE, DIO-1616L-PE Ver3.00->Ver3.10 (Ver Nov.2005) -------------------------------- ・使用可能ボードの追加 追加ボード:PIO-32/32F(PCI)H, PIO-16/16T(PCI)H, PIO-16/16TB(PCI)H Ver2.20->Ver3.00 (Ver Aug.2005) -------------------------------- ・kernel 2.6.xx に対応 ・Red Hat Enterprise Linux 4 に対応 ・Turbo Linux 10 Server に対応 Ver2.10->Ver2.20 (Ver Jun.2005) -------------------------------- ・使用可能ボードの追加 追加ボード:PIO-64/64L(PCI)H, PI-128L(PCI)H, PO-128L(PCI)H ・関数追加: DioDmGetWritePointerUserBuf() ・infiniteサンプルでDioDmGetWritePointerUserBuf()を使用するように変更。 ・バスマスタ転送カウントが24bitから25bitに桁上がりするときに 正常にカウントされない不具合を修正。 Ver.2.00 -> Ver.2.10 (Ver Apr.2005) -------------------------------- ・使用可能ボードの追加 追加ボード:PIO-32/32T(PCI)H, PIO-32/32B(PCI)V, RRY-16C(PCI)H, RRY-32(PCI)H, PIO-48D(LPCI)H Ver.1.50 -> Ver.2.00 (Ver Jan.2005) -------------------------------- ・使用可能ボードの追加 追加ボード:PIO-48D(CB)H Ver.1.40 -> Ver.1.50 (Ver Oct.2004) -------------------------------- ・使用可能ボードの追加 追加ボード:PIO-32/32H(PCI)H, PIO-16/16H(PCI)H, PIO-32/32RL(PCI)H PIO-16/16RL(PCI)H, PIO-16/16L(CB)H Ver.1.30 -> Ver.1.40 (Web Release) -------------------------------- ・使用可能ボードの追加 追加ボード:PIO-32DM(PCI) ・PIO-32DM(PCI)用の新関数を追加しました。 ・Red Hat Professional Workstation に対応 ・DioExit実行時、正常に終了処理が行われず、アプリケーションを終了しなければ 同一ボードを利用できるプロセス数が減っていく不具合を修正。 Ver.1.20 -> Ver.1.30 (Web Release) -------------------------------- ・使用可能ボードの追加 追加ボード:PIO-48D(PCI) ・PIO-48D(PCI)用の新関数を追加しました。 ・トリガ使用時にほかのボードを扱っているプロセスが存在すると そのボードを扱っているプロセスがすべて終了したときにトリガが 停止してしまう不具合を修正。 ・割り込み使用時、1kHZ程度以上のパルスを入れ続けると割り込みが 入らなくなることがある不具合を修正。 Ver.1.10 -> Ver.1.20 (Ver Nov.2003) -------------------------------- ・使用可能ボードの追加 追加ボード:PIO-16/16B(PCI)H,PI-32B(PCI)H,PO-32B(PCI)H, PIO-16/16L(LPCI)H,PIO-16/16B(LPCI)H, PIO-16/16T(LPCI)H Ver.1.02 -> Ver.1.10 (Web Release) -------------------------------- ・RedHat Linux 8.0 RedHat Linux 9 に対応 Ver.1.01 -> Ver.1.02 (Web Release) -------------------------------- ・PIO-XX(PCI)H(PIO-32/32B(PCI)Hを除く)、PI-XX(PCI)H、PIO-16/16RY(PCI)で 割り込みが正常に通知されない不具合を修正 Ver.1.00 -> Ver.1.01 (Ver. Dec.2002) -------------------------------- ・割り込み使用時にCPU使用率が100%になっていたのを修正 ・Help修正 Ver.1.00 (Web Release) -------------------------------- ・ファーストリリース