|
カッコ内の日付は、日本でのバージョンアップの案内日です。
WinDriver 11.00 の新機能 (2012/3/6)
新機能
- Windows 8: Windows 8 Developer Preview のサポートを追加
- DriverWizard: Windows GCC (MinGW/Cygwin) 用のコード生成を追加
強化
- Linux: Debian と Red Hat Package Manager (RPM) 用の WinDriver インストール パッケージを追加
- Linux カーネル 3.2.4 のサポートを追加
- PCI: 64-bit BAR アドレスのサポートを追加
修正
- 64-bit カーネルでの Windows PCI 32-bit アプリケーションの実行: WinDriver のデバイス情報を取得する関数 —
WDC_PciGetDeviceInfo() / WDC_PcmciaGetDeviceInfo() または low-level WD_PciGetCardInfo() / WD_PcmciaGetCardInfo() への呼び出しの dwOptions WD_ITEMS フィールドの値を無視する問題を修正
- DriverWizard の Kernel PlugIn のコード生成: DriverWizard で生成された
KP_XXX_Open_32_64() の関数を修正して、以前に Kernel PlugIn のコンパイルで発生していた Warning の問題を解決 (v10.40 からの問題)
- Windows 64-bit: WinDriver のインストール時にスペースを含むパスを指定した場合に発生する問題を修正 (例、Program Files ディレクトリへのインストールなど) (v8.00 からの問題)
- DriverWizard on Windows: デフォルトで DriverWizard で生成したプロジェクトを WinDriver の wizard/my_projects ディレクトリに保存 (v10.20 からの問題)
- USB on Windows: USB デバイスが無効なインターフェースを持つ Configuration Descriptor を提供する場合に、OS のクラッシュが発生する問題を修正 (v7.00 からの問題)
- USB on Windows CE: ストリーミング中に USB デバイスを取り外した際に、Detach 処理で遅延が発生する問題を修正 (v10.01 からの問題)
- USB streaming on Windows CE:
WDU_StreamOpen() への呼び出しで 0 (無限) タイムアウトの処理の問題を修正; 以前はタイムアウトの設定なし (無限タイムアウト) ではなく、即座にタイムアウト エラーが発生 (v10.01 からの問題)
- Windows: WinDriver のドライバの起動時にマイナーな 20-byte のメモリー リークが発生する問題を修正
- Windows: Microsoft の Verifier ユーティリティ (Verifier.exe) を使用する際に発生するセキュリティ Warning が発生するレジストリ関連の問題を修正
- PCI on Windows: PCI デバイスのオープンの失敗で C# の WinDriver アプリケーションがクラッシュする問題を修正 (v8.00 からの問題)
終息
- Mac OS X のサポートを終了
- Linux カーネル 2.2.x および 2.4.x のサポートを終了
WinDriver 10.40 修正版 (2011/11/9)
修正
- WinDriver Windows: windrvr6.sys ファイルのデジタル署名の問題を修正 (v10.40 の問題)。
windrvr6.sys ファイルが正常にデジタル署名されていなかったため、WinDriver のインストール時に、Windows OS 側で Jungo のドライバを「未署名」と認識し、インストールに失敗する場合がありました。
注意: 修正版の WinDriver では、カーネル モジュールのビルド日付が 10月 17日になっています。
Debug Monitor を起動して、Build Date: Oct 17 2011 と表示されることをご確認ください。
修正前の古い v10.40 のモジュールを使用している場合は、お手数をお掛けしますが、古い v10.40 をアンインストール後、修正版の v10.40 をダウンロードして、v10.40 を再インストールしてください。
WinDriver 10.40 の新機能 (2011/10/12)
新機能
- Windows Embedded Standard 2009 のサポートを追加
- Windows Embedded Compact 7 ("Windows CE 7") のサポートを追加
- Linux カーネル 2.6.39 のサポートを追加
強化
- PCI on Mac OS X: 64-bit BAR アドレスのサポートを追加
- Windows DriverWizard: <driver_name>_installation.bat スクリプトを DriverWizard で生成されたドライバ コードに追加。名前を変更したドライバのインストールが容易になりました。
- PCI Altera sample: WinDriver/altera/pci_dev_kit/lib/altera_lib.c サンプルにライセンス登録を追加
修正
- WinDriver Windows installation: wdreg ユーティリティを変更して
ERROR_FILE_NOT_FOUND エラーが発生する問題を修正。RunOnce レジストレーション キーの定義の不足で発生していました。
- Windows CE: PCI デバイスのリソースの検出の問題を修正
- USB on Linux and Windows CE: マルチ インターフェイス デバイスのエンドポイントでアクションを実行する際に usb_diag サンプルで発生するアプリケーション クラッシュの問題を修正 (v10.0.2 からの問題)
- USB on Linux and Windows CE: マルチ インターフェイス デバイスのデバイス情報をプリントする際に usb_diag サンプルで発生するセグメンテーションの失敗の問題を修正 (v10.3.0 からの問題)
- Windows 64-bit: DriverWizard で生成される Borland C++ Builder のプロジェクトの WinDriver のライブラリのパスの問題を修正 (v8.0.0 からの問題)
- PCI: 64-bit カーネルで 32-bit アプリケーションを起動する際に割り込み有効関数 —
WDC_IntEnable() / WD_IntEnable() — が返す割り込みタイプの問題を修正 (v9.1.0 からの問題)
- Visual Basic .NET (Windows): サンプルおよび DriverWizard で生成された Visual Basic .NET 2008 のプロジェクトのローディングの問題を修正 (v10.2.0 からの問題)
- DriverWizard on Windows: Select Code Generation Options と Select Additional Options ダイアログでキーボード入力のサポートの問題を修正 (v9.0.0 からの問題)
- PCI on Windows: DriverWizard の C# Kernel PlugIn コード生成の問題を修正 (v8.0.0 からの問題)
- Linux USB: Debian Squeeze ディストリビューションで WinDriver USB Linux GPL ドライバ — windrvr6_usb.ko — のインストールの問題を修正
- DriverWizard PCI: 割り込み転送コマンドを含む DriverWizard で生成されたユーザーモードのドライバ プロジェクトのコンパイル エラーの問題を修正 (v10.3.1 からの問題)
- USB on Linux: USB コントロール転送のメモリ リークの問題を修正
- PCI on Windows:
WD_INTERRUPT のロス割り込みカウンター (dwLost field) で発生するエラーを修正
- PCI on Windows: DMA 割り当て (
WDC_DMASGBufLock() / WD_DMALock() を使用した) の問題を修正 — フォールバックを無効にして DMA 割り当てを廃止 (v9.2.0 からの問題)
WinDriver 10.31 の新機能 (2011/5/24)
新機能
- Windows 7 および Server 2008: Windows 7 および Windows Server 2008 R2 Service Pack 1 のサポートを追加
- Linux: Linux カーネル 2.6.38 のサポートを追加
強化
- PCI Xilinx サンプル: Xilinx Virtex5 のサンプル (WinDriver/xilinx/virtex5)
を Xilinx Bus Master DMA (BMD) デザインの PCI Express カードの汎用的なサンプル (WinDriver/xilinx/bmd_design) に変更;
これによって、サンプル ファイル名と API の名前を変更。新しいサンプルは、Xilinx Virtex および Spartan 開発キットで動作検証しました。
- PCI Xilinx BMD Kernel PlugIn サンプル:
KP_BMD_Open_32_64() 関数を WinDriver/xilinx/bmd_design/kp/kp_bmd.c
へ追加 (以前は、WinDriver/xilinx/virtex5/bmd/kp/kp_vrtx5.c)。
- PCI: pci_diag サンプルおよび DriverWizard で生成される KernelPlugIn のライブラリとドライバ コードで、
不必要なポインタ型を削除し、内部構造体型の名前を変更し、コード変換を統一し、混乱を回避
修正
- USB on Linux: CentOS Linux ディストリビューションで、DriverWizard が USB デバイスを不正に識別する問題を修正 (v10.21 からの問題)
- Mac OS X: 64-bit Mac OS X プラットフォームで、DriverWizard と wddebug_gui を含む
32-bit アプリケーションの起動のサポートを修正。この修正に関連して、32-bit と 64-bit Mac OS X 用に別々の WinDriver のインストーラを用意
- USB on Windows: ユーザーモードからデバイスへ
SET_CONFIGURATION リクエストを送信した後に、スタンバイから復帰する際に BSOD が発生する問題を修正 (v9.21 からの問題)
- Windows CE: project_wd.bib を修正して、WinCE6 プラットフォームで、WinDriver のカーネル モジュールのインストールをサポート
- PCI: 同時に開く可能性のある DMA ハンドルの制限数を削除
- Linux: Linux カーネルの real-time パッチで、ドライバのインストール エラーの問題を修正 ("init_MUTEX 関数の暗黙の宣言")
- Kernel PlugIn: 64-bit Kernel PlugIn ドライバで 32-bit ユーザーモード アプリケーションを使用した際に、Kernel PlugIn の割り込み有効/無効関数が呼ばれなかった問題を修正 (v10.30 からの問題)
- Kernel PlugIn on Windows: 有効な Kernel PlugIn ドライバがある時に、WinDriver のカーネル モジュールを無効/有効にすると BSOD が発生する問題を修正
- Kernel PlugIn: サンプルおよび DriverWizard で生成される C および C# の PCI コードを修正して、ユーザーモードから Kernel PlugIn ドライバへ正しいコンテキスト タイプを渡し、Kernel PlugIn high-IRQL のレガシー割り込みハンドラーのコンテキスト キャストを修正し、レガシー割り込みを受信する際に発生する OS クラッシュの問題を解消 (v10.30 からの問題)
- Kernel PlugIn: サンプルおよび DriverWizard で生成された Kernel PlugIn の open 関数の不具合を修正。以前は、ユーザーモードから Kernel PlugIn ドライバへハンドルを開く際に、OS クラッシュの問題が発生 (v10.30 からの問題)
終息
WinDriver 10.30 の新機能 (2011/2/4)
新機能
- Windows: .NET Framework 4.0 用の WinDriver .NET API DLL (wdapi_dotnet<version>.dll) のバージョンを追加
- Linux: Linux カーネル 2.6.37 のサポートを追加
強化
- USB on Windows CE: ストリーミングのパフォーマンスを改良
- PCI on Linux and Mac OS X:
WDC_GET_ENABLED_INT_LAST_MSG macro を実装
(最後に受信した MSI/MSI-X 割り込みのメッセージ データの取得用)
- USB on Windows:
WDU_SelectiveSuspend() の .NET ラッパーを追加
- Kernel PlugIn (PCI on Windows, Linux, and Mac OS X): 32-bit アプリケーションから 64-bit Kernel PlugIn への通信を追加。この変更には、新しい
KP_INIT 構造体のフィールド (funcOpen_32_64) を含み、PCI Kernel PlugIn のサンプル (kp_pci) および DriverWizard で生成した Kernel PlugIn のコードを改良
修正
- Windows: wdreg – 一つの INF ファイルで複数のデバイスを有効/無効にする際に、一つのデバイスでエラーが発生する問題を修正
- PCI on Linux x86_64: PCI read/write の処理中にクラッシュする問題を修正 –
例えば、
WD_Transfer() への呼び出しや、割り込み転送コマンドの実行中
- USB on 64-bit Windows: 32-bit アプリケーションから
WDU_StreamGetStatus() を呼び出す際に発生する OS のクラッシュの問題を修正
- Linux 2.4.x: WinDriver のビルド処理の問題を修正 (v10.21 からの問題)
- USB on Windows:
USB_ISOCH_NOASAP フラグをセットして、アイソクロナスの書き込み (OUT) ストリームの動作で発生する問題を修正
- Windows: Windows 7 WDK のビルド オプションのサポートを修正 (ddk_make.bat ビルド スクリプトの –
win7 と win7_x64)。
これで、Kernel PlugIn のビルドに関する問題も修正 (10.21 からの問題)
- PCI on Windows:
WDC_PciDeviceOpen() – WinDriver と動作するように登録されていない PCI デバイスの認識の問題を修正 (v10.21 からの問題)
- Debug Monitor: コマンドラインの Debug Monitor ユーティリティ – wddebug – のデフォルトのデバッグ レベルを
D_TRACE に変更 (GUI の Debug Monitor ユーティリティ wddebug_gui と一致)
- PCI on Mac OS X: 複数の転送用に DMA バッファを繰り返し使用する際に発生する OS のクラッシュの問題を修正 (v10.20 からの問題)
- PCI on Linux 2.6.x: 連続 DMA バッファの割り当ての際に発生する可能性があるカーネル パニックの問題を修正
- PCI on Mac OS X: Plug-and-Play / power-management PCI イベントの登録を解除する際に発生する OS クラッシュの問題を修正 (v10.20 からの問題)
- USB on 64-bit Linux:
WDU_Transfer() の INFINITE (無限) タイムアウトの問題を修正
- PCI on Mac OS X: ハードウェアの割り込みが発生していない際のユーザー割り込みハンドラーへの呼び出しで発生する問題を修正
- PCI on Mac OS X: 連続 DMA バッファまたは共有バッファの割り当て用の
WDC_DMAContigBufLock()、WDC_SharedBufferAlloc()、および WD_DMALock()
で返す仮想カーネルモードのマップ アドレスの値の問題を修正。
これで、データ転送で返した値を使用する際に発生する OS クラッシュの問題を解決
- PCI on Mac OS X: デバイスのメモリ領域の検出の問題を修正
- PCI on Mac OS X and Windows CE: WinDriver のアプリケーション クリーンナップの一部として、
アプリケーションで明示的にクローズしていないデバイスに対する割り込みリソースのクリーンナップを追加
- PCI:
WDC_ReadXXX() または WDC_WriteXXX() へ不正なデバイス ハンドルを渡す際に発生するアプリケーション クラッシュの問題を修正
- Windows Mobile ARMV4I: WinDriver のサンプルおよび WinDriver の Driver Wizard で生成された Platform Builder のプロジェクトの WinDriver API のライブラリへのパスが不正なためプロジェクトのビルドに失敗する問題を修正 (v7.01 からの問題)
- PCI on 64-bit OSs: 32-bit アプリケーションを起動する際にカーネルモードからユーザーモードのメモリ スペースのマップの解除を無視して発生するメモリ リークの問題を修正
- ISA/PCMCIA on Windows Vista and higher: ISA/PCMCIA デバイスに対して
WDC_IntDisable() を呼び出す際に発生する OS クラッシュの問題を修正 (v9.20 からの問題)
- PCI on Mac OS X: 64-bit DMA アドレスの処理の問題を修正
WinDriver 10.21 の新機能 (2010/9/9)
新機能
- Windows Embedded Standard 7 のサポートを追加
- Linux: Linux カーネル 2.6.30 - 2.6.35 のサポートを追加
強化
- Windows: Microsoft Visual Studio 2010 IDE のサポートを追加
- Windows: ddk_make.bat ビルド スクリプト、および MS Visual Studio Kernel PlugIn のサンプルと DriverWizard で生成されるプロジェクトを強化:
- Windows 7 用のビルド環境を追加
- WDK (Windows Driver Kit) の versions 7600.x のビルド オプションのサポートを追加
- PCI:
WDC_PciDeviceOpen() のパフォーマンスを改良
修正
- DriverWizard (Windows): 64-bit Windows 版の DriverWizard を使用して生成した 32-bit アプリケーションのコンパイルの問題を修正
- PCI on Linux PPC: Linux PPC カーネル 2.6.23 およびそれ以降で PCI カードのスキャンの問題を修正。WinDriver のユーティリティを使用して、接続されているすべての PCI カードを検出し、そのカードを開く問題がありました (v9.10 からの問題)
- Windows 64-bit: 64-bit Windows プラットフォームで 32-bit アプリケーションを実行する際に (アプリケーションの実行中に USB デバイスの電源を OFF にする場合も含む)、OS クラッシュが発生する場合など、内部競合の問題を修正
WinDriver 10.20 修正版 (2010/7/15)
修正
- Windows、Linux および Mac: windrvr.h ファイルの
WD_DEFAULT_DRIVER_NAME_BASE の定義を変更。
WinDriver のドライバ名を Windows と Linux では "windrvr6" へ、Mac では "WinDriver" へ参照を修正 (v10.20 の問題)。
注意: 修正版の WinDriver では、カーネル モジュールのビルド日付が 7月 15日になっています。
Debug Monitor を起動して、Build Date: Jul 15 2010 と表示されることをご確認ください。
WinDriver 10.20 の新機能 (2010/7/7)
強化
- WinDriver PCI: Mac OS X 10.5.x - 10.6.x での PCI および PCI Express のサポートを追加。
修正
- Kernel PlugIn (Linux): Linux で DriverWizard を使用してプロジェクト名に大文字が含まれる Kernel PlugIn プロジェクトのコードを生成する際に発生する問題を修正。
- Windows USB: .NET および Delphi 用の WinDriver USB API で、
USB_ISOCH_RESET のフラグの定義を追加。
- DMA (Linux PCI): Linux で Scatter/Gather DMA アドレスの計算を修正 (v9.21 からの問題)。
- Windows: コールバックの完了を適切に示さない際に、
ThreadWait で発生する可能性があるデッドロックの問題を修正。
- Windows: Windows Server 2008 と Windows 7 用にドライバの署名を追加。
WinDriver 10.11 の新機能 (2010/1/26)
強化
- Kernel PlugIn (Linux): Linux Kernel PlugIn ドライバの配布方法を変更、これによって、ソースコードなしでドライバの配布が可能になりました。
- Kernel PlugIn (Linux): kbuild framework を使用した Kernel PlugIn ドライバのビルドのサポートを追加。
- PCI: 新しい
WDC_PciScanRegisteredDevices() 関数を追加し、WinDriver と動作するように登録したデバイスのみを PCI バスのスキャンをします。
修正
- USB: usb_diag.c サンプルと usb_diag.c ライブラリを修正し、multi-interface を持つデバイスで、アクティブでないインターフェイスのパイプの読み込み、書き込みおよびリセットをサポート。
- USB ストリーミング: USB ストリーミング API と usb_diag サンプルを修正し、コントロール パイプでのストリーム転送の実行を防止。
- Linux: WinDriver のカーネル モジュールのビルド用に
--enable-usb-support=no 設定オプションのサポートを修正 (v10.00 からの問題)。
- Linux と Windows のインストール: ACPI テーブルの不正利用によって、発生する可能性がある WinDriver のインストールのクラッシュの問題を修正。
- Windows USB:
WDU_Transfer() を使用して、non-NULL セットアップ パケットで data-pipe 転送を実行する際に発生する可能性のある OS のクラッシュの問題を修正 (v9.22 からの問題)。
- Windows USB:
bRequest=0x09 で Vendor または Class USB コントロール転送を発行する際に発生する OS のクラッシュの問題を修正 (v10.00 からの問題)。
- Windows USB: high-speed USB デバイスへ full-speed の maximum-URB 転送サイズを割り当てる問題を修正。
- PCI: 誤動作を起こす PCI デバイスに対して、
WDC_PciScanDevicesByTopology() を呼んだ際に発生する OS クラッシュの問題を修正 (v8.00 からの問題)。
- PCI/PCMCIA/ISA:
WDC_DBG_DBM_FILE_ERR と WDC_DBG_DBM_FILE_TRACE macro の定義を修正。
- USB ストリーミング API: デバイスからのデータ読み込みのサイズが、ストリームのデータ バッファの残りのスペースよりも大きい場合に、ブロッキング ストリームに対して、
WDU_StreamRead() への呼び出しが失敗する問題を修正 (v9.01 からの問題)。
- Windows: 外部 DLL から
ThreadWait() を呼び出す際に発生する可能性があるハングの問題を修正 (v7.00 からの問題)。
- Windows USB ストリーミング API: ストリーム バッファのリリース時にストリーム タイマーをリセット (v9.01 からの問題)。
WinDriver 10.10 の新機能 (2009/9/29)
新規
- Windows: Windows 7 (32-bit と 64-bit) のサポートを追加。
修正
- Windows USB: USB_ISOCH_NOASAP フラグを設定しない場合にアイソクロノス転送でパケット ロスを生じる問題を修正 (v10.02 からの問題)。
- Linux USB: Linux 64-bit プラットフォームで WinDriver USB 32-bit アプリケーションを実行する際に生じる問題を修正 (v9.21 からの問題)。
WinDriver 10.02 の新機能 (2009/8/7)
新規
- Linux: Linux カーネル 2.6.29 のサポートを追加。
強化
- Delphi (Windows USB): WDU_StreamXXX() USB streaming API 用に wd_utils.pas に Delphi の定義を追加。
- PCI/PCMCIA/ISA: wdc_defs.h から status_strings.h ヘッダ ファイルの定義を削除、代わりに関連するソース ファイルから明示的に status_strings.h の定義を追加。
修正
- DriverWizard (Windows PCI/PCMCIA/ISA): Windows で保存した DriverWizard の PCI/PCMCIA/ISA プロジェクトを使用してコードを生成する際に、生成された INF ファイルに対象のデバイスの Vendor ID と Product ID が含まれない問題を修正 (v9.0.1 からの問題)。
- C# のサンプル コードと DriverWizard で生成された USB のコード (Windows): WDU_Init() 処理中に DeviceDetach() を呼ぶ際に発生した競合条件の問題を修正。
- DMA (Linux PCI): Linux カーネル 2.6.25 およびそれ以降で、DMA 処理の問題を修正、システム クラッシュが発生する場合がありました (v10.0.1 からの問題)。
- DriverWizard (PCI/ISA): DriverWizard で ISA と Virtual PCI Device の Resource の編集でアクセス違反の問題を修正、DriverWizard がハングする場合がありました (v9.0.1 からの問題)。
- 割り込み: 割り込みロスのカウンターによる問題を修正、割り込みが生成されなかった場合でも、ユーザーの割り込みハンドラーを繰り返し呼び出す場合がありました。
- USB (Windows): タイムアウトによってシングル ブロッキング USB 転送を返す際に Windows OS がクラッシュする問題を修正 (v10.0.1 からの問題)。
- USB (Windows CE): Windows CE で、WDU_StreamStop() と WDU_StreamClose() のリターンの遅延を修正 (v10.0.1 からの問題)。
- DriverWizard (ISA): 以前は、ISA カードで I/O BAR と他のタイプのリソース (Memory BAR や割り込みなど) の両方を持つ場合、DriverWizard で生成されたコードの I/O リソースの情報が他のリソースの情報に上書きされていた問題を修正。
- Linux: `make install` で WinDriver のカーネル モジュールのロードに失敗する問題を修正、モジュールを正しい場所にインストールしない Linux のディストリビューションがありました (v9.0.1 からの問題)。
- DriverWizard: WinDriver のカーネル ドライバがロードされていない状態で DriverWizard を使用するとエラー メッセージの表示を追加 (v9.0.1 からの問題)。
WinDriver 10.01 Minor 1 の新機能 (2009/7/14)
修正
- Windows (USB): Windows x86 32-bit および x64 64-bit OS で、USB データ転送時に BSOD が発生する問題を修正 (v10.01 の問題)。
WinDriver 10.01 の新機能 (2009/4/15)
新規
- Linux: Linux カーネル 2.6.28 のサポートを追加。
- USB (Windows CE): Windows CE で USB ストリーミングのサポートを追加。
強化
- Linux: windrvr6 ドライバのインストールで、ドライバのバージョンとインストール済みの windrvr6_usb ドライバのバージョンが一致するか確認。
- Windows USB: Selective Suspend のサポートを usb_diag サンプルと DriverWizard で生成された USB コードに追加。
- Debug Monitor (Windows CE): Windows CE で wddebug Debug Monitor ユーティリティの GUI 版のサポートを追加、これでコマンドライン インターフェイスをサポートしない Windows CE プラットフォームでも Debug Monitor ユーティリティの使用が可能
- USB ストリーミング API (Windows CE): Windows CE で、WDU_StreamOpen() へ新しい USB_STREAM_MAX_TRANSFER_SIZE_OVERRIDE フラグを追加し、読み込みストリームのデフォルトの最大転送サイズをオーバーライド
修正
- DriverWizard (PCI/PCMCIA/ISA): Interrupt Request (IRQ) 番号を 10 進法で DriverWizard に表示し、Driver Wizard で生成されたコートとサンプル コードと一致 (v9.0.0 からの問題)。
- 割り込み (Linux): MSI-X (Message-Signaled Interrupts) の有効に失敗すると、WinDriver が代わりに MSI (Message-Signaled Interrupts) を有効にする問題を修正 (v9.1.0 からの問題)。
- Windows CE: Windows CE ARMV4I プラットフォーム用に wdreg.exe の問題を修正 (v9.0.0 からの問題)。
- DMA (Windows): DMA 転送完了後、DMA バッファの不正なデータの問題を修正 (v9.2.1 からの問題)。
- DriverWizard (Linux USB): 特定の Linux ディストリビューション (新しい Ubuntu ディストリビューションなど) で、DriverWizard の USB デバイスの認証の問題を修正。
- Windows: wdreg で -compat オプションを使用して、同じハードウェア ID を持つ複数のデバイスのドライバをインストールする際に、ドライバのインストールの冗長の問題を修正。
- Windows: メモ帳 (Windows アプリケーション) を使用して正しく参照できるように windrvr6.inf を修正 (v10.0.0 からの問題)。
- Linux: root の WinDriver ディレクトリから ''make install'' を実行する際に、WinDriver Linux ドライバのインストールの問題を修正 (v10.0.0 からの問題)。
- PCI/PCMCIA/ISA: WDC_DIAG_ReadWriteAddr() および WDC_DIAG_ReadWriteBlock() wdc_diag_lib 関数を修正して、Cancel 入力を正しく処理。本修正は、pci_diag および pcmcia_diag サンプルと DriverWizard で生成されたコードに反映されます (v7.0.0 からの問題)。
- USB ストリーミング API (Windows): WDU_StreamGetStatus() でタイムアウト時に WD_TIME_OUT_EXPIRED を返すように修正 (v9.0.0 からの問題)。
WinDriver 10.00 の新機能 (2009/1/15)
新規
- Linux: Linux カーネル 2.6.25 - 2.6.27 のサポートを追加。
- Linux USB: Linux 用の WinDriver USB の実装を GPL (GNU General Public License) を持つ別のドライバ モジュール (windrvr6_usb) へ移行。
強化
- Windows: Windows Server 2008 OS の公式サポートを追加。
- Windows Vista: Windows Vista SP1 で WinDriver が正常に動作することを検証。
- Windows XP: Windows XP SP3 で WinDriver が正常に動作することを検証。
- PCI: PLX 6466 Bridge の拡張サポートを追加。ライブラリ API (plx_lib_6466) とサンプルの診断アプリケーション (p6466_diag) が含まれます。
- Windows: Microsoft Visual Studio 2008 IDE のサポートを追加。
- Windows: ddk_make.bat ビルド スクリプト、サンプルの MSDEV の Kernel PlugIn プロジェクトおよび DriverWizard で生成したコードの強化:
- Windows Vista x64 用のビルド環境を追加。
- WDK (Windows Development Kit) のバージョン 6001 (およびそれ以降) のビルド オプションのサポートを追加。
修正
- USB: multi-interface の USB デバイスで DriverWizard および usb_diag サンプルを使用した際に発生するクラッシュの問題を修正 (v9.21 からの問題)。
- PCI Express (Linux 64-bit): Virtex 5 のサンプルの診断アプリケーション (virtex5_diag) の問題を修正: 以前は、Linux 64-bit で、サンプルでは、ユーザーの入力に関わらず、常に DMA バッファ サイズに 0 を設定してました (v9.20 からの問題)。
- 割り込み (Windows CE): Windows CE で割り込みを有効/無効にする際に発生したメモリ リークの問題を修正 (v9.00 かのの問題)。
- DriverWizard (Linux PPC 64-bit): Linux PPC 64-bit プラットフォームで保存した DriverWizard のプロジェクトを開く際の問題を修正。
- PCI: WinDriver PCI のサンプルの診断アプリケーション (pci_diag) で、複数の Kernel PlugIn WDC デバイス ハンドルの同時オープンをサポート。
- Windows: Windows の WinDriver カーネル ドライバ (windrvr6.sys) をインストール/アンインストールする際に、カーネル ドライバへの開いてるハンドルがある場合に、wdreg が Warning を返す問題を修正 (v9.00 からの問題)。
- Windows: wdreg (WinDriver のインストール ユーティリティ) のメモリ リークの問題を修正。
- DriverWizard PCI/PCMCIA/ISA: DriverWizard のプロジェクトで Register Access モードの問題を修正:
以前は、保存した DriverWizard のプロジェクトを開く際に、最初に定義した Access モードに関わらず、定義した Register の Access モードを Read/Write に設定してました。
終息
- Windows 98/Me: WinDriver の配布モジュールから Windows 98/Me 用のファイルを削除 (Windows 98/Me のサポートは、v9.21 で終了しました)。
WinDriver 9.21 の新機能 (2008/7/9)
新規
- Linux: Linux カーネル 2.6.24 のサポートを追加。
強化
- Debug Monitor (Windows Vista): Windows Vista 上で Debug Monitor (wddebug_gui / wddebug) を使用して、Kernel Debugger メッセージのログを取得するサポートを追加。
- Kernel PlugIn (Windows Vista): Windows Vista 用に WinDriver の Kernel PlugIn のプロジェクトにビルド環境を追加。
修正
- Windows Vista: Windows Vista で WinDriver ツールキットをアンインストールした際に、Windows スタート メニューから WinDriver のエントリを削除しなかった問題を修正。
- サンプル (Windows): MSDEV 6.0 IDE を使用して、WinDriver のサンプルのコンパイルの問題を修正。
- Kernel PlugIn (Windows XP): Windows XP で Kernel PlugIn のサンプルのロードの問題を修正 (v9.20 からの問題)。
- Windows XP Embedded: XP Embedded で、OS のドライバの後に WinDriver がロードされるように XP Embedded の WinDriver のコンポーネント (windriver.sld) を使用する WinDriver のインストールを修正。
- USB (Windows): USB デバイスを接続後すぐに USB デバイスを取り外した際に発生するドライバ クラッシュの問題を修正。
- USB (Windows CE): Windows CE で multi-interface の USB デバイスの処理の問題を修正。
- Windows: wdreg を使用して、複数のデバイス用の INF ファイル (15 個以上のデバイス) をインストールする際にハングする問題を修正。
- 64-bit プラットフォームで 32-bit アプリケーションを実行する際の問題を修正 (v9.10 からの問題)。
- Windows: wdreg install コマンドで、複数のデバイス用の INF ファイルをインストールする際に、既に二つ以上のデバイスがホストに接続されている状態でも pre-install となる問題を修正。
- DriverWizard (Windows): DriverWizard で生成された Virtual PCI デバイス用の INF ファイルの Hardware ID の問題を修正 (v9.00 からの問題)。
- 割り込み (Windows): Delphi と VB 6.0 の割り込み API をアップデートし、MSI (Message-Signaled Interrupts) と MSI-X (Extended Message-Signaled Interrupts) をサポート (v9.10 からの問題)。
- Kernel PlugIn: Xilinx Virtex 5 PCI Express のサンプル (kp_vrtx5) のコンパイル エラーを修正 (v9.20 からの問題)。
- Windows: Windows のスタート メニューから Jungo のパートナー ページへのリンクの問題を修正。
終息
- Windows 98/Me のサポートを終了
- Linux Itanium プラットフォームのサポートを終了
- USB: Linux PPC プラットフォームで USB のサポートを終了
WinDriver 9.20 の新機能 (2008/3/5)
強化
- DriverWizard (PCI): MSI (Message-Signaled Interrupts) および MSI-X (Extended Message-Signaled Interrupts) のサポートを追加。GUI の表示、INF ファイルの生成、ユーザーモードおよび Kernel PlugIn のコードの生成を含みます。
- PCI Express: BMD (Bus Mastering DMA Validation Design) ファームウェアを持つ Xilinx Virtex 5 PCI Express チップ用の Kernel PlugIn のサンプル (kp_vrtx5) を追加。新しいサンプルに対応した Virtex 5 BMD ライブラリ (virtex5_lib) を修正。サンプルでは、MSI (Message-Signaled Interrupts) または MSI-X (Extended Message-Signaled Interrupts) の Kernel PlugIn の処理を実装します。
- 割り込み (Linux): Power PC Linux プラットフォームで IRQ 0 のサポートを追加。
- 割り込み (Windows CE): WinDriver の割り込みハンドラを修正して、共有 PCI 割り込みを正しく処理。
- 割り込み: WinDriver の割り込みハンドラを修正して、割り込み転送コマンドに関わらず、非共有割り込みのオーナーシップを要求。
修正
- Kernel PlugIn (Linux): Linux で Kernel PlugIn ドライバをロードする際に発生する問題を修正 (v9.10 からの問題)。
- USB (Linux): Linux で複数の USB 転送リクエストのロードによって、不正な転送タイムアウト エラーが発生する問題を修正 (v9.00 からの問題)。
- USB (Windows): Windows でスタンバイ モード中に USB デバイスを取り外した際に発生するリリースの問題を修正 (v9.10 からの問題)。
- USB (Windows): ストリーミング API を使用してバルク パイプのリッスンをする際に、ユーザーモードの WinDriver USB アプリケーションの異常終了によって Windows クラッシュが発生する問題を修正 (v9.01 からの問題)。
- ISA 割り込み: ISA 割り込みのサポートを復活 (v9.10 からの問題)。
- Linux: WinDriver 64-bit Linux のインストール時のクラッシュの問題を解決 (v9.10 からの問題)。
- Kernel PlugIn (Linux): Kernel PlugIn の malloc() の実装を使用したメソッドと互換性を持つように Linux Kernel PlugIn の free() 関数の実装を修正 (v9.10 からの問題)。
WinDriver 9.10 の新機能 (2007/12/28)
新規
- PCI 割り込み: Windows Vista と Linux で、Message-Signaled Interrupts (MSI) と MSI-X のサポートを追加。
- PCI Express: Bus Mastering DMA Validation Design (BMD) ファームウェアを持つ Xilinx Virtex 5 PCI Express チップの拡張サポートを追加。ライブラリ APIs (virtex5_lib) とサンプル アプリケーション (virtex5_diag) が含まれます。サンプルでは、DMA と Message-Signaled Interrupts (MSI) の処理を実行します。
- Linux: Linux カーネル 2.6.22 と 2.6.23 のサポートを追加。
- Windows XP Embedded: Windows XP Embedded プラットフォームで自動ドライバ インストール用の新しい Windows XP Embedded WinDriver コンポーネント (windriver.sld) を追加。
修正
- USB (Linux): Linux でデータのない Control 転送で以前は、invalid parameter error で失敗した問題を修正 (v9.01 からの問題)。
- USB (Linux): Linux で大きいデータ バッファを使用した WDU_Transfer() write (OUT) 転送の問題を修正 (v9.01 からの問題)。
- USB (Windows): recepient 'other' で type 'class' の Control request を以前は vendor request として転送していた問題を修正。
- Linux: wdreg スクリプトを使用して、名前を変更した WinDriver カーネル モジュールのインストールの問題を修正 (v9.00 からの問題)。
- Linux: openSUSE 10.2 Linux distribution での WinDriver の設定の問題を修正。
- Linux: enable-usb-support=no configuration オプションで WinDriver のカーネル モジュールのビルド用に OS_get_device_property のサポートを追加 (v9.00 からの問題)。
- DMA: 32-bit Windows および Linux プラットフォームで WD_DMALock() 64-bit アドレスの処理の問題を修正 (v8.00 からの問題)。
- DMA (Linux): Linux プラットフォームで contiguous DMA バッファをロックする際のメモリ リークの問題を修正 (v8.10 からの問題)。
- Kernel PlugIn (Linux): embedded Linux 2.6 distribution で Kernel PlugIn のメモリ割り当ての問題を修正 (v7.00 からの問題)。
- DriverWizard (Linux): Linux 用の DriverWizard を QT ライブラリに静的にリンクし、対象のプラットフォームに QT ライブラリがインストールされているかに関わらず、これらの OS で Wizard の使用できるように修正 (v9.00 からの問題)。
- PCI (Windows および Windows CE): WDC_PciScanDevicesByTopology() を WinDriver API DLL (wdapi<version>.dll) の export に追加 (v8.00 からの問題)。
- large string を正しくサポートするように CCString::Format class method を修正。その結果、Windows で長い wdreg のログ メッセージの問題を修正。
WinDriver 9.01 の新機能 (2007/6/20)
新規
- Linux: Linux カーネル 2.6.20 と 2.6.21 を含む最新の Linux カーネルのサポートを追加
- USB Streaming API: 新しい WDU_StreamGetStatus() 関数を追加 - Stream のカレント ステータスを取得
強化
- USB: Stream 転送の実行テストを WinDriver USB 診断サンプル (usb_diag) に追加
- DriverWizard PCI: 既存の DriverWizard の PCI プロジェクトを開く際に、デバイスの Plug-and-Play 情報を確認
- DriverWizard GUI: 1024 x 768 以上の解像度のフル スクリーンで DriverWizard を表示 (v9.00 の問題)
- DriverWizard: Windows 英語版以外の OS での DriverWizard の使用をサポート
- DriverWizard: キーボード コマンドのサポートを改良 (v9.00 の問題)
- Kernel PlugIn: サンプルの Windows Kernel PlugIn ドライバ - kp_pci.sys のデジタル署名の追加、これによって、デジタル署名のないドライバのインストールを禁止または制限する Windows プラットフォームへのドライバのインストールをスムーズにします (Vista x64 など)
- USB Streaming API: 新しい WDU_StreamOpen() フラグ - USB_STREAM_OVERWRITE_BUFFER_WHEN_FULL を追加 - 転送を完了するのに Stream のデータ バッファに十分な空き容量がない場合に read stream のデータを上書き
- USB: WDU_Transfer() を拡張し、バッファ サイズを 0 に設定、または NULL バッファ ポインタを渡すことのいずれかで、zero-length 転送の初期化が可能
- DriverWizard: その他、GUI の改良
修正
- Windows 98: Windows 98 プラットフォームへのドライバの配布の問題を修正 (v9.00 の問題)
- Windows: UNICODE プリプロセッサ定義を含むプロジェクトのコンパイルの問題を修正 (v9.00 の問題)
- PCI/PCMCIA/ISA: DriverWizard で生成されたコードに転送コマンドがない場合に発生するコンパイルの問題を修正 (v9.00 の問題)
- DriverWizard PCI/PCMCIA/ISA: DriverWizard で割り込みのないデバイスのコードを生成する際に DriverWizard がクラッシュする問題を修正 (v9.00 の問題)
- Linux PCI: ページ アラインされていないバッファの Scatter/Gather DMA ロックの問題を修正 (v6.20 からの問題)
- PCI/PCMCIA/ISA: WDC_DriverOpen() を呼ぶ前に WDC_Version() を呼び出し可能 (v7.00 の問題)
- USB Steaming API: アプリケーションが以上終了した場合に streaming API の cleanup の問題を修正 (v9.00 の問題)
- USB Steaming API: zero-length 転送のクラッシュの問題を修正 (v9.00 の問題)
- DriverWizard USB: 以前の "write to pipe" で入力データの変更を生じていた問題を修正 (v9.00 の問題)
- DriverWizard USB: multiple-interface デバイスの INF ファイルの生成の問題を修正 (v9.00 の問題)
- PLX: PLX ライブラリでマスター デバイス用に使用したローカル ベース アドレスの問題を修正 (v7.00 からの問題)
- PCI/PCMCIA/ISA 割り込み: WD_IntWait() の戻り値の問題を修正
- 64-bit アーキテクチャで 32-bit アプリケーションの exit cleanup の問題を修正 (v6.00 からの問題)
- USB: 64-bit アーキテクチャで起動する 32-bit アプリケーションから WDU_GetDeviceRegistryProperty()、WDU_GetDeviceAddr() および WD_GetDeviceProperty() の使用を有効
- DriverWizard ISA: DriverWizard のコード生成のクラッシュの問題を修正 (v9.00 の問題)
- Windows: wdreg インストール ユーティリティを修正し、-compat フラグなしでプログラムを起動する場合にのみ Driver Install Frameworks API (DIFxAPI) DLL をロード (v8.10 からの問題)
- Windows: wdreg インストール ユーティリティを修正し、WinDriver のカーネル モジュール (windrvr6.sys またはこのドライバの名前を変更したドライバ) をインストールする際に、新しいハードウェアに自動的に再スキャンするのを回避 (v8.10 からの問題)
- DriverWizard PCI/ISA: WinDriver の以前のバージョンで生成した古い DriverWizard のプロジェクトの Open をサポート (v9.00 の問題)
- Windows Mobile 5: DriverWizard のプロジェクト ファイルのコード生成の問題を修正 (v8.01 からの問題)
- .NET PCI/PCMCIA/ISA: WinDriver .NET API DLL ( wdapi_dotnet<version>.dll ) を修正し、割り込みが有効な際に、割り込み処理のために使用した転送コマンドの転換による garbage collector を回避 (v7.00 からの問題)。
- USB: Silicon Laboratories C8051F320 サンプル ( c8051f320_diag ) を修正し、4KB の倍数ではないバッファ サイズをサポート
- Windows CE 6.0: 割り込みおよびイベントの優先順位の決定の問題を修正 (v9.00 の問題)
WinDriver 9.00 の新機能 (2007/4/3)
新規
- Windows USB: Windows 2000 以降で同期および非同期のストリーム転送をサポートするストリーミング USB API を追加
- Windows CE: Windows CE 6.0 と Windows Mobile 6.0 のサポートを追加
- Linux: Linux カーネル 2.6.18、2.6.1.19 と 2.6.20 を含む最新の Linux カーネルのサポートを追加
- ドライバの配布: Windows、Linux および Solaris で WinDriver カーネル モジュールの名前を変更する機能のサポートを追加
- Windows USB: Ellisys Explorer 200 USB バス アナライザを DriverWizard に統合
- USB on Windows: 新しい WDU_SelectiveSuspend() 関数 - Windows XP SP2 およびそれ以降で selective bus suspend のサポートを追加
- USB on Windows: ポート サイクリングのサポートを追加 - 物理的なリセットなしで再エミュレーション - WDU_ResetDevice() 関数 (新しい CYCLE_PORT フラグ)
- PCI/PCMCIA/ISA: WDC C および .NET ライブラリへ新しい WDC_Version() 関数を追加 - WinDriver のカーネル モジュールのバージョンを取得
強化
- GUI: DriverWizard と Debug Monitor ユーティリティの GUI (Graphical User Interface) を改良
- Windows: 最新バージョンの Driver Install Frameworks API (DIFxAPI) DLL - difxapi.dll 2.1.0.0 を使用するように wdreg インストール ユーティリティをアップグレード
- Windows 2000 およびそれ以降: WinDriver のカーネル ドライバ (windrvr6.sys) を DTM (Microsoft Driver Test Manager) ツールでテスト済み、新しい WHQL 証明書に必要な PREfast 出力ファイルを追加
- Windows: Windows 2000 およびそれ以降には、WHQL 互換の WinDriver のカーネル ドライバ ( windrvr6.sys)、Windows 98/Me およびそれ以降には、WHQL 非互換のドライバを提供
- USB: USB のサンプル (usb_diag) と DriverWizard で生成されるコードを改良
修正
- DMA: 32-bit Windows プラットフォームで 64-bit DMA 転送の処理を改良
- PCI/PCMCIA/ISA: Windows 98/ME で WD_ITEM_DO_NOT_MAP_KERNEL フラグの動作を修正
- Linux: 64-bit Linux プラットフォームで 32-bit アプリケーションを起動する際の大きいメモリ アドレス (> 32-bit) へのアクセスを修正
- .NET (PCI/PCMCIA/ISA): WinDriver API DLL (wdapi_dotnet<version>.dll)、C# PCI サンプル (PCI_Sample) と PLX ライブラリ (plx_lib_dotnet) を修正。割り込みハンドラー ルーティンから割り込み転送コマンドの配列にアクセスするための特定のサポートを提供するため
- Windows USB: 大きい configuration descriptor を持つ USB デバイスの configuration が WD_USB_DESCRIPTOR_ERROR エラーで失敗する問題を修正
- Windows USB: USB 割り込みおよびバルク転送の最大サイズ (Windows Vista) を修正 (以前は 4KB までの制限)
既知の制限
- Windows 98/Me: Windows 98/Me で DriverWizard を使用できません。
ただし、Windows 2000 またはそれ以降で開発したドライバは、Windows 98/Me PC へ配布可能です。
WinDriver 8.11 の新機能 (2006/10/25)
新規
- Linux: Linux カーネル 2.6.x で PowerPC 64 ビットのサポートを追加
- Linux: Linux カーネル 2.6.17 - 2.6.18 および Fedora Core 6 pre-releases のサポートを追加
- USB: Agere USS2828 USB チップの拡張サポートを追加 - ライブラリ API (uss2828_lib および uss2828_diag_lib)
とデバイスのデフォルト ファームウェアのサンプル アプリケーション (default_firmware_sample) を含む
強化
- USB: USB のサンプル (usb_diag) と DriverWizard で生成されるコードを改良
- USB (Windows): バルクおよび割り込みパイプで、USB Request Blocks (URB)
の最大サイズをオーバーライドするための WDU_Transfer() フラグ (USB_BULK_INT_URB_SIZE_OVERRIDE_128K) を追加
- Linux and Solaris: Windows / Windows CE v8.1 で既に追加された強化を実装
- DMA: DMA 同期化関数 (WD_DMASyncCpu() / WD_DMASyncIo() / WDC_DMASyncCpu() / WDC_DMASyncIo()) のパフォーマンスを改良
- PCI Express: 4GB を超えるマップするコンフィグレーション スペースのサポートを追加
- USB (Linux): Cypress EZ-USB API を拡張 - 複数デバイスのサポートと新しい EZ-USB 診断ライブラリ (ezusb_diag_lib)
- 新しい ISA サンプル: Intel 8253/8254 のプログラム可能なタイマー チップ用のサンプルを追加 (IBM PC で利用可能)
修正
- Linux PCI: 32-bit Linux アーキテクチャでの 64-bit メモリ ブロック転送を修正
- Windows PCI: 割り込みのページング可能 (pageable) なメモリの使用を回避
- Linux: 一部の Linux カーネル 2.6.15 で発生していたインストールの問題を修正
- 後方互換性 (PCI): 新しい WinDriver カーネル モジュールと古い WinDriver PCI アプリケーションを使用する場合の問題を修正 (v8.00 以降の問題)
- Windows CE: 拡張した割り込みのオプションを使用するアプリケーションのコンパイルの問題を修正
- DMA: AMCC ライブラリの DMA API (WinDriver/amcc/lib/ amcclib.c) を修正
- VB.NET (Windows): DriverWizard で生成された VB.NET のコードに WinDriver のライセンス コードを自動的に挿入する問題を修正
- Windows USB: USB デバイスを取り外して直ぐに際挿入した際に、発生するクラッシュを修正
- Linux and Solaris: Windows / Windows CE v8.1 の修正を実装
- Kernel PlugIn: Kernel PlugIn の初期化のメモリ リークを修正
- Kernel PlugIn: アプリケーションが異常終了した際に、割り込みを自動的に無効
- DMA: 64 ビット アーキテクチャで起動する 32 ビット アプリケーションの DMA 処理を修正 (Linux AMD64 / Solaris SPARC 64)
WinDriver 8.10 の新機能 (2006/8/22)
新規
- Windows Vista Beta 2 (およびそれ以降) for x86 と x64 のサポートを追加
- Windows: WinDriver のドライバの配布に WinDriver のシンボル ファイル (windrvr6.pdb)
を追加 - マイクロソフト社の WHQL (Windows Hardware Quality Labs) のデジタル署名を取得するのに必要
- WinDriver USB Device (Firmware Development Kit): MCC18 コンパイラ
version 3.04 で Microchip PIC18F4550 ファームウェアのコンパイルのサポートを追加
強化
- DMA: DMA 同期化関数 (WD_DMASyncCpu() / WD_DMASyncIo() / WDC_DMASyncCpu()
/ WDC_DMASyncIo()) のパフォーマンスを改良
- PCI Express: 4GB を超えるマップするコンフィグレーション スペースのサポートを追加
- USB: Cypress EZ-USB API を拡張 - 複数デバイスのサポートと新しい EZ-USB 診断ライブラリ
(ezusb_diag_lib)
- Windows: wdreg.exe インストール ユーティリティを改良し、マイクロソフト社の WHQL
(Windows Hardware Quality Labs) の要件に準拠
- New ISA サンプル: Intel 8253/8254 のプログラム可能なタイマー チップ用のサンプルを追加 (IBM
PC で利用可能)
- .NET: ネイムスペースに "Jungo" プレフィックス を持つように編集
- Windows CE: wdapi<version>.lib WinDriver API
ライブラリの場所を変更
修正
- Kernel PlugIn: Kernel PlugIn の初期化で発生したメモリ リークを修正
- Kernel PlugIn: アプリケーションが異常終了した際に、割り込みを自動的に無効
- Windows USB: 8 バイト以下のバッファのアイソクロノス転送の処理を修正
- Windows USB: 以前はブロックしていた DriverWizard からの no data stage の
read (IN) コントロール コマンドを発行
- Windows CE USB: 他のドライバの共有割り込みの Listen に影響を与えないように、共有割り込みを無効
- Windows CE USB: リセット パイプのトグル ミスマッチの問題を修正
- DMA: 64 ビット アーキテクチャで起動する 32 ビット アプリケーションの DMA 処理を修正 (v8.00 からの問題)
- Windows PCI: 64 ビット アーキテクチャで起動する 32 ビット アプリケーションから呼ばれる際の複数転送関数 (WD_MultiTransfer() / WDC_MultiTransfer()) が MASK コマンド (CMD_MASK) を処理 (v8.00 からの問題)
終息
- Windows 版での Windows NT 4.0 のサポートを終了
WinDriver 8.02 の新機能 (2006/6/14)
新規
- Windows Mobile 5.0 のサポートを追加。
- Linux: Linux カーネル 2.6.14 - 2.6.16 のサポートを追加。
- WinDriver USB Device (Firmaware Development Kit): Silicon Laboratories C8051F340 開発ボードのサポートを追加。
- Windows CE: Platform Builder カタログへ WinDriver コンポーネントを追加し、ドライバ開発を簡素化。
- WinDriver USB Device (Firmware Development Kit): MCC18 コンパイラ version 3.0 で Microchip PIC18F4550 ファームウェアのコンパイルのサポートを追加。
強化
- PCI/PCMCIA/ISA: WD_Transfer() と WD_MultiTransfer() およびこれらの関数を使用する WDC API (WDC_Read/WriteXXX(), WDC_AddrXXX() および WDC_MultiTransfer()) のパフォーマンスを改良。
- USB (Windows): Windows XP および Server 2003 で、高速デバイス用の USB 転送のパフォーマンスを改良。
- PCI (Linux): 最大 contiguous DMA バッファ サイズの制限 128KB を解除。
- 小さい sleep 値の WD_Sleep() の精度を改良。
修正
- PCI/PCMCIA/ISA: clean-up 機能を修正および改良: WD_CardCleanup() / DC_CardCleanupSetup() のパフォーマンスを改良し、WinDriver アプリケーションが終了する際に、最初にこれらの関数を呼ぶように clean-up コマンドが確実に設定。
- DMA: Linux でアラインされていない scatter-gather DMA バッファのロックを修正。
- Windows 64-bit): 64-bit システムで 32-bit アプリケーションを起動時に発生する DMA と割り込みの問題を修正。
WinDriver 8.01 の新機能 (2006/4/27)
強化
- .NET USB (Windows): 同じ USB デバイスで複数のインターフェイスとの同時通信のサポートを追加。
- Windows: 対象のデバイスの INF ファイルがインストールされていない場合でも、PCI Express のコンフィグレーション
スペースにアクセスが可能。
- Windows: INF ファイルまたはフィルタ ドライバでフィルタされたリソースを持つデバイスの処理を改良。
- Solaris: install_windrvr WinDriver インストール スクリプトのすべてのインストール トレースを remove_windrvr WinDriver アンインストール スクリプトで削除。
- Linux: wdreg ドライバ インストール スクリプトに auto オプションを追加し、ターゲット プラットフォームで undev サポートの自動検出を可能。
修正
- DMA: 64-bit カーネル (Windows x64 / Linux x86_64 / Solaris SPARC64) で起動する 32-bit アプリケーションの DMA 同期化関数 (WD_DMASyncIo() / WDC_DMASyncIo() / WD_DMASyncCpu() / WDC_DMASyncCpu()) の使用を修正。
- Linux - 一部の Linux カーネル 2.4 での WinDriver のインストールを修正 (v8.00 の問題)。
- PCMCIA (Windows): WDC_PcmciaSetWindow() の動作を修正 (v7.00 の問題)。
- .NET (Windows): .NET Framework 2.0 の PCI イベントの処理を修正 (v8.00 の問題)。
- .NET (Windows): Fixed the .NET implementation of the WDU_GetLangIDs() と WDU_GetStringDesc() 関数の .NET の実装を修正。
- .NET (Windows): PLX MSDEV 2003 .NET ソリューション ファイルを修正 (v8.00 の問題)。
- .NET (Windows): PCI C# サンプル -- エラーのイベントでの PCI_Device.Open() の動作を修正 (v8.00 の問題)。
WinDriver 8.00 の新機能 (2006/3/8)
新規
- Windows: Intel EM64T および AMD64 アーキテクチャ ("x64") で、Windows XP Pro x64 および Windows Server 2003 x64 をサポート。
- Windows: x86 および EM64T で Visual Studio 2005 をサポート、サンプルおよび Driver Wizard で生成されたコードには、C、C# および Visual Basic .NET プロジェクが含まれます。
注意: このサポートの追加によって、WinDriver C および .NET サンプルと Driver Wizard で生成されたプロジェクトのディレクトリ構造が変更されました。
- Linux: Intel Itanium および Itanium 2 アーキテクチャ (IA64) をサポート。
- Linux: Linux カーネル 2.6.14 をサポート。
- Solaris: Solaris 10 および OpenSolaris のサポート。
- WinDriver USB Device (Firmware Development Kit):Philips PDIUSBD12 用のデバイス ファームウェアの開発をサポート。
- WinDriver USB Device (Firmware Development Kit):Microchip PIC18F4550 開発ボード用の mass storage class をサポート。
- .NET (Windows): Driver Wizard で生成されるコードに C# (USB と PCI) と Visual Basic .NET (USB) を追加。
- .NET (Windows): C# の .NET PCI のサンプルを追加。
- USB: Philips PDIUSBD12 のサンプルを追加。
強化
- Windows USB: 同一の USB デバイスの複数のインターフェイスとの同時通信をサポート。
- DMA: Windows、Linux および Solaris で 64 ビット DMA アドレスをサポート (新しい DMA_ALLOW_64BIT_ADDRESS DMA フラグ)。
- .NET (Windows): .NET アプリケーションからの Kernel PlugIn ドライバとの通信をサポート:
- Kernel PlugIn ドライバへのハンドルを開く新しい WDC_KernelPlugInOpen() 関数。
- Driver Wizard で、Kernel PlugIn ドライバと通信するユーザーモード アプリケーションのコードを生成。
- PLX .NET ライブラリ API を修正し、Kernel PlugIn ドライバとの通信をサポート。
- Driver Wizard: Driver Wizard で生成されたコードで、レジスタの read/write 関数を Kernel PlugIn から呼ぶオプションを追加。
- WinDriver のライブラリ、DLL および共有オブジェクトのバージョニングを追加。
- wd_utils.dll -> wdapi<version>.dll (例, wdapi800.dll)
- libwd_utils.so -> libwdapi<version>.so (例, libwdapi800.so)
- wdapi_dotnet.dll -> wdapi_dotnet<version>.dll (例,wdapi_dotnet800.dll)
- kp_nt.lib -> kp_nt<version>.lib (例, kp_nt800.lib)
- kp_linux.o -> kp_linux<version>.o (例, kp_linux800.o)
- kp_solaris.o -> kp_solaris<version>.o (例, kp_solaris800.o)
- WinDriver のインストール ディレクトリ以下の WinDriver の source ファイル ディレクトリの場所を移動
- WinDriver の C のソース ファイルを src/ ディレクトリから src/wdapi.net/ ディレクトリへ移動。
- WinDriver の .NET のソース ファイルを wdapi.net/ ディレクトリから src/wdapi.net/ ディレクトリへ移動。
- DMA: 双方向の DMA バッファのロックをサポート (新しい DMA_TO_FROM_DEVICE DMA フラグ)。
- PCI: トポロジで PCI バスをスキャンするオプションを追加 (新しい WDC_PciScanCardsByTopology() 関数を追加)。
- USB - Windows CE: Windows CE 5.0 で WDU_ResetDevice() をサポート。
- Solaris: 特定のカードに関連してない contiguous DMA buffer の割り当てをサポート (他の OS では、すでにサポート済み)。
修正
- USB: アクティブな alternate setting だが、異なる interface として、同じ alternate setting number への set interface を修正。
- USB - Windows: WDU_Transfer() および WDU_TransferIsoch() で、isochronous パイプの 0 サイズ転送を禁止。
- USB - Windows: isochronous パイプをリスニング中に休止状態から起動する際に Windows が再起動する問題を修正。
- WinDriver USB Device (Firmware Development Kit): Microchip PIC18F4550 コードのダブル バッファの問題を修正。
- Delphi (Windows): サンプルおよび Driver Wizard で生成された Delphi のコードを修正および改良。
- Linux: Kernel PlugIn ドライバを使用中に Kernel PlugIn ドライバの削除を防止。
- Linux: IOMMU mapped DMA バッファのサポートを改良。
- 割り込み: 遅延した割り込み処理の実行が mask コマンドの結果に依存するように割り込みのマスクを修正 (v7.02 からの問題)。
WinDriver 7.02 の新機能 (2005/11/11)
新規
- WinDriver USB Device (ファームウェア開発キット): Microchip PIC18F4550 開発ボードをサポート
- PCI 割り込み: カーネル モードの割り込み転送コマンドで割り込みマスクを定義するオプションを追加。
- USB Microchip PIC18F4550 開発ボード:
- ファームウェア *.hex をロードおよびデバイスをプログラムする bootloader ファームウェアのサンプル bootloader_demo を追加。
- ボードの WinDriver 診断ライブラリ (pic18f4550_diag_lib) を追加。
- Linux: x86 64-bit プラットフォームで Linux カーネル 2.4.x の後方サポートを追加。
強化
- Linux: Linux カーネル 2.6.13 のサポートを追加。
- WinDriver USB Device: I2C インターフェイスを初期化、アクセス、および Cypress EZ-USB FX2LP CY7C68013A 開発ボードの digit LED をコントロールするための API を追加。
- .NET (Windows): PLX C# ライブラリ (plx_lib_dotnet)、およびサンプル診断アプリケーション (PLX_Sample) を強化。
- PLX: 新しい割り込みマスク機能を使用するために PLX ライブラリ (plx_lib
- C ; plx_lib_dotnet - C#) の割り込み API を修正。
- DriverWizard (Windows): DriverWizard と .wdp ファイルの自動関連付けを追加。
- PCI/PCMCIA/ISA: カードの memory/IO 領域でシェアしていない重複のロックを防止。
- PCI/PCMCIA/ISA (Windows NT 4.0/2k/XP/Server 2003 および CE):
新しい WD_ITEM_ALLOW_CACHE フラグを使用して、物理 PC メモリ (RAM) をキャッシュとしてマップすることが可能に。
- 64-bit Linux および Solaris: 64-bit WinDriver に 32-bit バージョンの wd_utils 共有オブジェクトを追加。
- Linux: SuSE 製品をサポートするように WinDriver の設定ファイルを更新。
- USB: Microchip PIC18F4550 ライブラリ (pic18f4550_lib) と default_firmware_demo サンプルを修正、強化し、場所を library に移動。
- USB (Windows): デバイス列挙の問題、USB デバイスのエンドポイント記述子が不足している問題を修正。
修正
- DriverWizard USB: Windows で、低およびフル スピード デバイスのアイソクロノス パイプの Listen を修正。
- PCI: WDC PCI configuration space API のカーネル プラグイン サポートを追加。
- USB on Linux: WDU_Transfer() にタイムアウト 0 を設定した場合に、すぐにタイムアウトしていたのを無限に変更。
- Linux: WD_Sleep() を使用しての non-busy スリープの CPU 消費を最小に軽減。
- Windows: Microsoft の DriverVerifier ユーティリティ (verifier.exe)
を WinDriver と同時に実行した際にエラーが発生する問題を修正。
- .NET (Windows): wdapi_dotnet.cpp ファイルを wdapi_dotnet
DLL のプロジェクト ファイル (wdapi_dotnet.vcproj) に追加。
- .NET (Windows): C# .NET PLX ライブラリのプロジェクト ファイル (plx_lib.csproj)
が diag_lib.cs ではなく log.cs
にポイントするように修正。
- WDU_Transfer() がバッファ ポインター (pBuffer) が NULL の場合に 0 以外のバッファ
サイズ (dwBufferSize) を指定できないように修正。
- Windows 98/Me: 古い windrvr6.sys ドライバをアンインストールすることなく、古いバージョンの
WinDriver を置き換えることが出来るように wdreg16.exe を修正。
WinDriver 7.01 の新機能 (2005/8/15)
新規
- .NET (Windows):
- C++ WinDriver DLL (wdapi_dotnet.dll)
用の新しい .NET Managed Extension (管理拡張) を追加
- 新しい PLX .NET C# DLL (plx_lib_dotnet.dll)
および GUI サンプル (PLX_Sample) を追加
- 新しい USB .NET C# DLL (usb_lib_dotnet.dll)
を追加
- USB: Microchip PIC18F4550 開発ボード用のサンプルを追加
- WinDriver USB Device (Windows): サンプルと生成されたコードにベンダー コントロール
リクエスト用のフレームワークを追加
- Solaris: CPU および I/O キャッシュの DMA 同期化を行う API を追加
- Kernel PlugIn (PCI/ISA) on Solaris: スピンロック、インターロック操作を含む、シングルおよびマルチ
CPU システム用の同期化 API を追加
強化
- Windows CE: 生成された DriverWizard コードには Platform Builder 5.0
XML プロジェクト ファイルが含まれます
- Solaris/Windows CE: 新しい wd_utils DLL/共用オブジェクト、WDC
API の使用法を含む、Windows および Linux のサンプルおよび DriverWizard で生成されたコードに基いて、サンプルおよび
DriverWizard で生成されたコードを修正および強化
- Linux/Solaris: WinDriver の配布ファイルに wd_utils makefile を追加
- Windows: .NET USB C# と Visual Basic のサンプルを修正および強化。サンプルでは、WinDriver v7.00 の wdnetlib.dll DLL を置き換えた新しい wdapi_dotnet.dll と usb_lib_dotnet.dll DLL を使用します。
- PCI/PCMCIA/ISA: DriverWizard で生成された C のコードは、Wizard で定義したすべてのローカル
レジスタの列挙を定義し、これらのカスタム レジスタをリード/ライトするための関数を含みます。
- PLX: Scatter/Gather DMA の連続使用を可能にするため、PLX_DMAStart() ライブラリ関数を修正
- サポートされる OS 間でコードの移植を容易にするために、サンプル、DriverWizard で生成された C のソース
コード および makefile を改良
修正
- WinDriver USB Device (Windows): バルク データ トグル同期化を修正 (v7.00 の不具合)
- USB on Linux: 高速アイソクロノス転送を修正
- USB on Linux 2.4: 割り込み転送のメカニズムを修正
- USB on Windows: デバイスにリード オンリー データ バッファの書き込みを可能にするために WDU_Transfer()
を修正
- USB on Windows: デバイス記述子が不正な場合の、システムの停止、クラッシュを解消することにより、悪いファームウェアの影響を軽減する。
- Windows CE: プロセスの他のスレッド (割り込み処理を含む) からメイン スレッドのメモリ スペースへアクセスが可能
- PCI/PCMCIA/ISA: 新しい WDC_CardCleanupSetup() 関数を追加し、WDC_xxxDeviceOpen()
の pDeviceCleanup パラメータを予約パラメータに置換 (v7.00 の不具合)
- USB on Linux: マルチ インターフェイスを持つ USB デバイスのサポートを修正
- PCI/PCMCIA/ISA: DriverWizard で生成されたコード、pci_diag
および pcmcia_diag のサンプルでグローバル ハンドルを使用しないように修正
- Windows 2K/XP/Server 2003: すべてのプラットフォームで "Start Device"
メカニズムを有効に修正
- wd_utils: windrvr_hotswap.c
API への依存性を解消 (v7.00 の不具合)
- USB: サンプルと生成された USB コードへのマイナー修正。処理が失敗し失敗した場合に、main() が適切なエラー
コードを返すように修正
- C++ モードでサンプルおよび DriverWizard で生成された C のコードをビルドする際に発生するリンク
エラーを修正
- Windows 98/Me: WinDriver のライセンスの登録を修正 (v7.00 の不具合)
- PCI/PCMCIA/ISA: DriverWizard で生成された C の割り込みコードを修正。以前のコードでは、Wizard
で割り込みに割り当てた最初のレジスタを常に使用していた問題を解消 (v7.00 の不具合)
- USB on Windows: デバイスを接続した後すぐに切断するとクラッシュすることがある問題を修正
- USB on Windows CE: Windows CE が起動する前に、ターゲット プラットフォームに USB
デバイスが接続されていると、デバイスにアクセスできないことがある問題を修正 (v6.23 の不具合)
- USB on Windows: 古い WinDriver の WD_UsbScanDevice() 関数との互換性問題を修正。関数が
WD_SINGLE_INTERFACE を返すべきところを実際のインターフェイス ナンバーを返すという問題。(v7.00
の不具合)
- USB on Windows: 実際の転送が開始される前に転送がタイムアウトした場合にシステムが停止する問題を修正
- Windows CE: レジストリの PCI バス ドライバに登録されていないカードを呼ぶと WD_DMALock()
が失敗するという問題を修正
- USB on Windows: DriverWizard がデバイス リストを作成する時にデバイスが使用されている場合に、DriverWizard
が WinDriver に登録されている USB デバイスを WinDriver と動作しない設定であると認識する問題を修正
- DriverWizard: Wizard で、割り込みに対して、同じレジスタへ複数のアクセス コマンドを割り当てた場合、最後のコマンドのみが
*.wdp DriverWizard プロジェクトに保存されるという問題を修正
- DriverWizard: パラレル ポートのコードの生成を修正 (v7.00 の不具合)
WinDriver 7.00 の新機能 (Windows 2005/3/21, Linux 2005/5/4)
新規
- WinDriver USB Device (Windows): Cypress EZ-USB FX2LP CY7C68013A
開発ボードのデバイス ファムウェアの開発をサポート
- PCI Express の拡張スペースへのアクセスをサポート
- Linux: x86 64 ビット アーキテクチャをサポート: Linux カーネル 2.6.x で AMD64 と
Intel EM64T ("x86_64")
- Linux PowerPC: Linux カーネル 2.6.x をサポート
- WinDriver Card (WDC) Library: PCI、PCMCIA、CardBus、ISA、ISAPnP、EISA、CompactPCI
および PCI Express デバイス ドライバの開発用に新たなラッパー API を追加
- Windows: C# および Visual Basic .NET の .NET USB サンプル プログラムを追加
- PCI/PCMCIA: CPU と I/O キャッシュの DMA 同期化を行う API を追加
- PCMCIA (Windows): PCMCIA バス コントローラの設定を編集するAPI を追加
- Kernel PlugIn (PCI/ISA/PCMCIA): 同期化 API を追加 - シングルおよびマルチ CPU
システム用のスピンロックとインターロック操作
強化
- Windows: WinDriver のインストールおよびアンインストール手順を改良
- サンプルおよび DriverWizard で生成された Linux のプロジェクトと Windows Borland
C++ Builder のプロジェクトで wd_utils DLL を使用 (Windows: wd_utils.dll;
Linux: libwd_utils.so)
- PCI/PCMCIA/ISA 用のサンプルおよび生成されるコードの改良 (新しい WDC API を使用)
- PLX: 拡張サポートの PLX チップセット - 9030, 9050, 9052, 9054, 9056,9080,
9656 用に新しい共有ライブラリ (plx_lib) を追加
およびこれらのチップセット用のサンプルも改良
- PCMCIA 診断サンプル プログラム (pcmcia_diag) を追加
- 共有 PCI/PCMCIA/ISA の C 診断 API (diag_lib, wdc_diag_lib)
を追加
- Kernel PlugIn PCI サンプル プログラム (kp_pci) (以前の Kernel
PlugIn サンプル プログラム kptest と置換) を追加
- DriverWizard で生成される C のコードを改良
- 汎用的な PCI 用の C のサンプル プログラムを編集 (pci_diag, pci_diag, pci_scan,
pci_dump)
- PCI/ISA/PCMCIA: PCI/ISA/PCMCIA のメモリ リソースをカーネルモードへマップするのを回避するオプションを追加
(リソースをユーザーモードの仮想アドレス空間へのみマップする)。これで、システムに負荷を掛けずに、大きいサイズのメモリ範囲の登録が可能。
注意: デフォルトでは、WinDriver は、デバイスのメモリ リソースをユーザーモードとカーネルモードの両方にマップします
(以前のバージョンでは、そのように行っていました)。
- Linux PowerPC: メモリ転送用に、WinDriver の転送 API (WD_Transfer() /
WD_MultiTransfer() / WDC read/write API) が自動バイト オーダー転送を実行 (ビッグ
/ リトル エンディアン)
修正
- Linux: Linux カーネル 2.6.x のサポートを修正および改良
- Linux: メモリ リークを修正
- USB (Windows): WDU_Transfer() / WDU_TransferIsoch() を USB_ISOCH_NOASAP
フラグで呼び出した際に発生した Windows のクラッシュを修正 (v6.23 の不具合)。
- USB (Windows): DriverWizard または usb_diag サンプル プログラム、DriverWizard
で生成されたコードでアイソクロノス パイプの Listen を実行した際に、以前では、特定の USB host controller
および高速デバイスで失敗していたのを修正
- USB: usb_diag サンプル プログラムおよび DriverWizard で生成されたコードの
DeviceAttach() 関数で、接続されたデバイスの有効な代替設定 (alternate setting) を使用するように修正
(以前のバージョンでは、代替設定 (alternate setting) 0 を使用)。
- USB (Linux カーネル 2.4.x): 8 フレーム以下のインターバルで EHCI 割り込み転送で発生するクラッシュを修正
WinDriver 6.23 の新機能 (2004/11/9)
強化
- PCMCIA: PCMCIA attribute space への書き込みの実装を追加
修正
- WinDriver USB for Windows
- SET_INTERFACE コマンド メカニズムを改良
- Windows USB ドライバのアンロード メカニズムを改良
- Windows USB: USB デバイスの列挙中に USB デバイスの切断をサポート
- HID: 時間制限なしで読み込み要求をできるように読み込みメカニズムを改良
- Windows: マイクロソフト社の WHQL テスト メカニズムとの互換性を向上
WinDriver 6.22 for Windows CE の新機能 (2004/8/18)
新規
- Windows CE 5.0 のサポートを追加
- USB 2.0 のサポートを追加
強化
- プラグ アンド プレイ サポートの向上
- サンプル: すべてのサンプルでプラットフォーム ビルダをサポート
- 割り込みレイテンシ (遅延時間) の向上
- USB: USB 1.1 と 2.0 のアイソクロナス転送を飛躍的に向上
- USB: レジストリで USB デバイスの永続的な登録をサポート
WinDriver 6.22 の新機能& (2004/7/28)
新規
- Linux カーネル 2.4 で PowerPC のサポートを追加
- Silicon Laboratories の C8051F320 USB ボードの拡張 USB サポートを追加
- Windows 2000/XP/Server 2003 で PCMCIA カードのサポートを追加
強化
- Linux: ユーザーの選択により、ユーザーが使用している特定のカーネル、またはインストールされている別のカーネル
ソースのいづれかを基に makefile を作成する新しいインストール メカニズム
- デバッグ: ユーザーがすべてのデバッグ セクションをワン クリックでチェック、またはクリアできるように、Debug
Monitor ユーティリティ (wddebug_gui) に All sections チェック ボックスを追加
- デバッグ: ユーザーが PnP セクションを単独でモニタできるように、Debug Monitor ユーティリティ (wddebug_gui)
に Plug-and-Play デバッグ セクションを追加
- PLX: PLX 9054 互換ボードのソフト リセットのサポートを追加
- PLX: PLX 9030、9054、9056、9656 サンプルで VPD メカニズムを通しての EEPROM アクセスのサポートをアップデート
- PLX 9054: サンプルに DMA_LARGE_BUFFER のサポートを追加
- ウィザード (PCI/PCMCIA/ISA): それぞれのレジスタに対してオフセットの表示を追加
- USB: デバイスのサポートする言語 ID および/またはサポートする言語 ID の数を返す新しい API 関数 WDU_GetLangIDs()
を新しく追加
- USB: デバイスからストリング記述子を読み込む新しい API 関数 WDU_GetStringDesc() を追加
- PCI: マップされたメモリ範囲を使用して PCI デバイスにアクセスする際に、リトル/ビッグ エンディアンの問題を解消するエンディアン変換関数を追加。この関数はプラットフォームに依存しないデータの閲覧を可能にします。
修正
- Solaris: WinDriver のハンドルを開いている "ゾンビ" プロセスを検出し、解放
- ウィザード (PCI/PCMCIA/ISA): コード生成に加えて、ウィザードは 64 ビットのレジスタも処理できるように修正
- USB: 以前のクラッシュを解消し、USB 転送を安定化
- PCI: マイナーな下位互換性問題を修正
WinDriver 6.21 の新機能 (2004/5/14)
強化
- PCI/ISA: アプリケーション終了時にカード クリーンナップ操作を有効にするために API を追加
- デバッグ: コンソール モードの WDDEBUG の使用方法を簡素化
- Windows: wdreg.exe インストレーション ユーティリティを強化
- 6月1日: WinDriver ISA/PCI/USB for Linux PowerPC がリリース
修正
- USB: マルチ インターフェイス USB デバイスの INF 生成、および DriverWizard からのインストール/アンインストールを修正
- 64 ビット プラットフォーム: ウィザードが PCI デバイスの I/O リソースを正常に表示するように修正
- Linux: 読み込みの時の DMA のロックにあった問題を修正
- 全プラットフォーム: PCI 設定スペースへのアクセスを改善し、オーバーヘッドを削減
- Windows USB: メモリ リソースが不足した場合にクラッシュする問題を修正し、WinDriver を終了してエラー
メッセージを表示するように変更
- Solaris: Kernel PlugIn と WinDriver のバージョンが一致しない場合にクラッシュする問題を修正
- Linux: 古いバージョンの Linux が WinDriver のグラフィックをサポートしなかった問題を修正
WinDriver 6.20 の新機能 (2004/3/17)
新規
- SPARC 上で 32 ビットおよび 64 ビット Solaris 8-9 をサポート
- x86 上で 32 ビット Solaris 8-9 をサポート
- 64 ビット Solaris kernel上で 32 ビット ユーザー アプリケーションをサポート
- Linux カーネル 2.6 のサポート
- PCI デバイスがまだ完成していない段階でドライバの開発を開始するオプションを追加
- ウィザードに基本の API ロギング機能を追加
- Texas Instruments の TUSB3410、TUSB3210、TUSB2136、TUSB5052 チップ用の拡張
USB サポートを追加 (ファームウェア サンプルをダウンロードしてください。)
強化
- USB: USB 1.1 と 2.0 のアイソクロナス転送を飛躍的に向上
- SPARC Solaris DMA: SPARC プラットフォームでユーザー モードに Scatter/Gather
DMA と連続カーネル バッファのサポートを追加
- x86 Solaris DMA: x86 プラットフォームで Scatter/Gather DMA と 連続バッファ
DMA のサポートを追加
- Windows: パワー管理サポートの向上
- Windows: USB 解除メカニズムの向上
- USB: ウィザードに標準コントロール転送リクエストのサンプルを追加
- Windows: WHQL テストに通過する手助けをする *.sys と INF ファイルを改善
- USB: usb_diag サンプルと生成されたコードはマルチ デバイスを標準サポートします
- PLX サンプル: DMA 転送の実装のサンプル コードを p9054_diag.c に追加
- WDREG/WDREG16 ユーティリティ: INF ファイルへの相対パスの使用が可能
- コード: Kernel PlugIn Wizard の生成したコードは、ウィザードで割り込みに割り当てられたすべてのアクセス
レジスタがメモリ レジスタであるとき、直接メモリ アクセスを実行します。
- コード: Borland C++ Builder の C++ モードでコンパイルした時の生成されたコードとサンプル
コードを改善し、エラー、警告を削減
- USB: WDU_GetDeviceAddr などの特定のデバイス プロパティの取り出しを可能にする、新しい WD_GetDeviceProperty
API 機能を追加 (Windows のみ)
- サンプル: 拡張されたサポート サンプルを含む、MSDEV .NET (7.0) プロジェクト ファイルをすべての
WinDriver サンプルに追加
- MSDEV .NET 環境用にユーザー モード API ラッパー を DLL として提供
- DMA: WinDriver API に新しい DMA フラッグを追加し、データの一貫性を向上
- Wizard: License 登録をキャンセルするオプションを追加し、以前に登録ライセンスが使用されていたマシンで評価が可能
修正
- Solaris: Sun の cc コンパイル警告を削減し、コンパイル エラーを修正
- PLX サンプル EEPROM: EEPROM が誤って通常のメモリ スペースとして扱われていた問題を修正
- INF: ウィザードの INF-create ダイアログが、自動的にマルチ インターフェイスの INF ファイルの作成を提案する問題を修正
- マルチ インターフェイス USB デバイス: ウィザードで登録されていないインターフェイスと登録済みのインターフェイスを表示するように修正
- WDREG ユーティリティ: WDREG ユーティリティでマルチ インターフェイス デバイスをアンインストール/有効/無効にできるように修正
- Windows Delphi USB: 生成されたコードとサンプル コードを改善
- USB 生成/サンプル C コード: 生成されたコードとサンプル コードを改善
- Windows Visual Basic および Delphi の ISA コード: 生成されたコードとサンプル コードを改善
- ウィザード: マイナーな GUI の修正
WinDriver 6.03 の新機能 (2003/8/14)
新規
- Windows CE で ARM ベース CPU のプラットフォームをサポート
- USB リモート ウェイクアップ機能のサポート
強化
- USB: Windows XP と Windows Server 2003 でバルク転送の速度を向上
- USB: デバイスのリセットとウェイクアップ関数の追加
修正
- Visual Basic USB サンプルと生成されたコード: ベンダと製品 ID の値が 32,767 を超える場合、符号なしの値を使用するように修正
(V6.00 以降の問題)
- Visual Basic USB サンプルと生成されたコード: 生成されたコードのデフォルト代替セッティング番号が、以前は選択されたインターフェイス番号に設定された問題を修正
(V6.00 以降の問題)
- Visual Basic USB サンプルと生成されたコード: VB の マルチ スレッドと CreateThread()
の機能不足による ListenToPipe() 関数とそれに関連する関数の欠陥を修正。(特に VB 6.0) ThreadStart/Stop
Visual Basic の関数は VB_ThreadLoopStart/Stop DLL 関数に置き換えられ、Listen
ループはユーザー スレッド関数の中ではなく DLL 内で実行されます。
- Delphi USB: usb_diag_lib.pas サンプルの PrintEndpoints() 関数で、エンドポイント
データが不正確で、ゼロ エンドポイントが存在する場合にアプリケーションが強制終了される問題を修正。(V6.00 以降の問題)
- Delphi USB: DLL スレッド 関数で、Listen to Pipe 関数の問題を修正。(V6.00 以降の問題)
- Linux 2.4: 場合によって PCI カードのメモリ (リード オンリー 0xffffffff) からの読み込みに失敗する問題を、pci_enable_device()
関数を呼ぶことによって解消。
- Windows CE: スピン ロック、イベントの実装を向上。
- PLX サンプル: dwMask の計算ミスによりローカル アドレスからリード/ライトでアプリケーション エラーが発生する問題を修正。
(V6.00 以降の問題)
- VxD ドライバ: Windows 95/98/Me で WDREG を使用してのインストールの問題を解消し、不正確なエラー
メッセージが表示される問題を修正。 (V6.00 以降の問題)
- wdreg16.exe: Windows Me/98 プラットフォームでアプリケーションがクラッシュすることがあった問題を、makefile
のスタック サイズを増加することにより修正。
- WHQL テスト: WHQL テストをパスするために、不正な IOCTL を受け取った場合に未知のバッファへのアクセスを防ぐためにコードを修正。
- WHQL テスト: WHQL テストをパスするために、プラグ アンド プレイ IRP ステータスを初期化。
WinDriver 6.02 の新機能 (2003/5/23)
新規
- Windows Server 2003 のサポート
- Windows CE.NET 4.2 のサポート
- MIPS プロセッサ用の Windows CE サポート
- Delphi: サンプル コードとウィザード コード生成を含む、新しい USB API のサポート
- Linux カーネル 2.4.20 のサポート
強化
- Windows: Debug Monitor (wddegug_gui または wddebug) の [Send
debug messages to kerneldebugger] オプションに新しい機能を追加。この機能を有効にすると、次のブートで
WinDriver が起動中に WinDriver デバッグ メッセージが Kernel デバッガに送信されます。
- Visual Basic PCI、ISA および USB のコード生成を向上。
修正
- 接続されていないデバイスのドライバを更新するときに、wdreg は正常に実行されるがエラー ステータスのコードを返す問題を修正。
- Linux カーネル 2.4.20: コンパイル時の問題を修正。
- Linux: マルチ プロセッサ (SMP) システム Linux Scatter/Gather DMA でインストール時の問題を解消し、HIGHMEM
サポートを正常に実行 (V6.00 以降の問題)。
- Linux: WD_DMALock() コールと小さな連続的 DMA バッファを繰り返し割り当てるとクラッシュする問題を修正。
- Linux: 同じ PC 上で、WinDriver V6.0x と WinDriver V5.22 またはそれ以前のバージョンを同時に使用した時に起こる問題を修正
(V6.00 以降の問題)。
- Wizard USB プロジェクト (*.wdp ファイル): Save (保存) オプションを削除。V6.00 よりこのオプションはサポートされていないが、誤って
V6.00 と V6.01 に残っていたものを削除 (V6.00 以降の問題)。
- USB 生成コード: V5.22 またはそれ以前のバージョンで生成されたコードを V6.0x でリビルドすると、event_register()
のアクティベートに失敗する問題を修正 (V6.00 以降の問題)。
- Windows: 前バージョン (V6.00 以降) で、まれに WD_UsbTransfer() と WD_IntWait()
が不正なエラー ステータスを返し、システム クラッシュを起こす問題を修正。
- Windows: windrvr6.inf が Windows から IRQ を要求しないように修正し、1 バイトを採取するメモリ領域を拡張することにより、WinDriver
のインストールに失敗する問題を修正 (V6.00 以降の問題)。
- Windows: API 機能 WDU_transfer() がキャンセル、またはタイム アウトで終了したときにメモリ
リークが起こる問題を修正 (V6.00 以降の問題)。
- WDREG: 不要なメッセージを削除し、WDREG クラッシュの問題を修正 (V6.00 以降の問題)。
- Visual Basic ISA コード生成: コンパイル時のエラーを修正 (V6.00 以降の問題)。
- Visual Basic USB サンプルおよびコード生成: PrintDeviceConfigurations()
ライブラリ機能で、メモリ リークが起こる可能性があった問題を修正。
- PLX9656 サンプル診断アプリケーション: DMA テストを修正 (V6.00 以降の問題)。
- V6.00 以前のバージョンで生成されたアプリケーションのポートの問題を軽減。
- WINCE.NET: このオプションを有効にすると WinDriver のデバッグ メッセージがすべてのケースで kernel
デバッガに送られるように変更。
WinDriver 6.01 の新機能 (2003/4/11)
新規
- wdreg ソース コードの提供。
- STMicroelectronics USB HID サンプル: USB/Serial ブリッジ (st/rs232u)
および 92163 USB Evaluation Kit (st/92163)。
強化
- INF ファイルをインストールするさいにウィザードがフリーズする問題を修正。
- USB トランスファ ダイアログの File to Pipe オプションで大きなファイルを読めるようにウィザードを強化。
- Visual Basic で生成されたコード、サンプル コードの改善。
修正
- デバイスを装着せずにドライバをアップデートすると、wdreg を正常に動作するがエラー ステータス コードを返すという問題を修正。
- Windows: USB 転送関数で短い USB バルク/割り込み転送が届いたときに、すべてのバッファが満たされるまで待機する問題を修正し、呼び出し元に返すように変更。
- Windows CE: CE のスタート アップ時に誤った dll (windrve6.dll ではなく windrvr.dll)
をロードしようとする問題を修正。
- Windows 98: newdev.dll がユーザーのマシンに存在しない場合に、それをコピーするように修正。(この
DLL は接続された USB デバイスの検知とこれらのデバイスの INF ファイルをインストールするのに必要です。)
- Linux USB: 転送に失敗した場合に、不正なパイプ タイプ検知により、割り込み転送がクラッシュするという問題を修正。
- Linux USB: Linux で時折不正なエラー ステータスを返す問題を修正。
- Linux USB: マルチ インターフェイスのデバイスのハンドリングの修正。
- Visual Basic: C DLL と VB アプリケーション間でのストリング転送のハンドリングを正すために、Stat2Str()
VB 実装 (wd_utils.cls 内) を修正。
- Visual Basic USB: wd_utils.cls の関数宣言を修正。
- Visual Basic PCI: 生成されたコード: 関数に送られるライセンス ストリングの最後に NULL キャラクタを追加することにより、WD_License()
を修正。これによりC DLL によって ANSI ストリングとして解釈されます。
- DriverWizard で USB Delphi コード生成は無効にされています。(v6.00 からサポートされません)
WinDriver 6.00 の新機能 (2003/3/24)
* WinDriver for Solaris、KernelDriver PCI/USB、DriverBuilder for Vxworks、WinDriver/KernelDriver USB for NT はこの度バージョンアップいたしません。
新規
- Linux で USB のサポートを追加。
- WindowsCE.NET で USB と PCI のサポートを追加。
- Visual Basic 6.0 用のコード生成機能を追加。(USB VB サンプルも追加)
- Visual Studio .NET プロジェクト生成のサポートを追加。
- USB HID デバイス用にユーザー モード API を追加。
- 全 OS で USB 用の API を向上。
強化
- エラー ハンドリングを向上するため、すべての WD_xxx() 機能に戻り値を追加。
- Windows CE に DMA API のサポートを追加。
- 標準の配布に QuickLogic ファイルを追加。古い V3 ファイルと置換。
- 実行機能を include/windrvr_int_thread.h から src/ ディレクトリに移動。
- wd_vb.dll を wd_utils.dll と置換。
- WD_DMA 構造体に pKernelAddr を追加。連続バッファ DMA では、WD_DMALock() は dma.pKernelAddr
に割り当てられたバッファのカーネル マッピングを返します。
修正
- WDM Windows での windrvr.sys のインストール/アンインストール方法を変更。これにより、すべての
OS で windrvr が windrvr6 に変更されました。windrvr6 は windrvr とバイナリ互換性がありません。
- Windows スタンドバイの状態から回復した後に、USB デバイスのインターフェイスの自動初期化を有効になるようにパワー変更操作を修正。
- Linux でウィザードと wddebug_GUI アイコンを修正。
- デバイスの登録に失敗したときに、Visual Basic のパラレル ポート サンプルが無限にメッセージ ボックスを表示する問題を修正。
- 範囲チェックが有効になっているときに Delphi のコンパイラ エラーが発生する問題を修正。
- 待機されていない semaphore_release で 0x8000000 割り込みが発生した後に winnt クラッシュが発生する問題を修正。
WinDriver 5.22 の新機能 (2002/12/5)
新規
- gcc 3.x (例: RedHat 8.0) でコンパイルされた Linux カーネル のサポートを追加。
- 割り込みハンドラにユーザーがコードを追加できるように、windrvr_isr() hook を VxWorks に追加。
- BIOS によって PCI バスマスタをネイティブにサポートしない問題を解決するため、Linux 上で PCI バスマスタ機能を追加。
強化
- USB 複合デバイスのコントロール転送機能のサポートを向上。
- WinDriver および KernelDriver のドキュメントの内容を修正、追加および再編集。
修正
Windows
- Windows 95 でエラーが発生する WDREG ユーティリティのバグを修正。
Linux
- "make install" で間違ったファイルがインストールされる問題を解決するため、Linux
上で生成された Kernel PlugIn makefile を修正。これにより、makefile はインストール時に数々の問題を識別し、自動的にこれらを修正します。
USB
- アイソクロナス転送を行っているときに、USB デバイスを抜き取るとブルースクリーンが発生する問題を修正。
- USB デバイスでブルースクリーンが発生する同期化の問題を修正。
KernelDriver
- Win32 プラットフォームで KernelDriver の機能、kd.lib の KD_OpenWinDriver()
のバグを修正。この機能への最初の呼び出しのみ成功し、その後の呼び出しには失敗するという問題がありました。
WinDriver 5.21 の新機能 (2002/10/24)
強化
- 割り込みを通知する転送コマンド、および割り込み通知のための転送コマンドを DriverWizard から設定が可能。
- デバッグ モニタ バッファ オーバーフローの強化。
- WD_DMALock に DMA_ALLOW_CACHE オプションを追加。Windows NT、2000、XP でロック
メモリを CPU にキャッシュできるようにすることにより、DMA スピードを大幅に向上。(このオプションを使用するとデータが破壊される可能性があります)
- WinDriver はコンピュータに接続されていないデバイスの INF ファイルを自動的にインストールすることが可能。
- WINDRVR.SYS をロードする前に KernelDriver を起動することが可能。
修正
共通
- Windows 2000、XP でDMA を継続して実行したり、WD_DMAUnlock を呼ぶとメモリ破壊と BSOD
が引き起こされる問題を修正。
- KernelDriver が 高い IRQL から WD_IntCount を 呼ぶと BSOD が引き起こされる問題を修正。
- 割り込み (2^31) が生成され、それを処理する登録されたアプリケーション/ドライバがない場合に BSOD が起こる問題を修正。
- Kernel PlugIn へのそれぞれの呼び出しが BSOD を引き起こす可能性があるバグを修正。(特に、Microsoft
の Driver Verifier を使用してデバッグビルドしている場合)
- Cypress の EZ-USB ファームウェアのダウンロードが失敗する問題を修正。(特に再コンパイルの場合)
- Visual Basic および Delphi を使用している場合にコンパイル エラーが発生する問題を修正。
- Linux で誤ったバイト カウントを最初と最後のページに与える Scatter/Gather DMA 操作を修正。
- USB の生成されたコードで XXX_CountDevices 関数が失敗する問題を修正。
- Kernel PlugIn のインストールで、再起動後に Kernel PlugIn が起動に失敗する問題を修正。
WinDriver 5.20 の新機能 (2002/9/6)
新規
- カーネルおよびユーザー レベルでプラグ アンド プレイとパワー通知イベント ハンドリングをサポート。これにより、標準の
Windows Driver Model (WDM) 機能性に準拠します。
- x86 マシンでの 64ビット データ転送をサポート。この機能により、既存の 32 ビット Windows と Linux
OS で新しい 64 ビット バスを利用することを可能にし、高機能のドライバを作成します。
- PLX Technology の新製品ライン、PCI 9656 I/O Accelerator チップのサポート。このサポートには
PLX 9656 アクセスとコントロールを導入する特別な API セット、および skeletal ドライバとして使用できるサンプル
アプリケーションを含みます。
- KernelDriver はすべての Windows OS 用の DDK を使用してのドライバの作成をサポート。また、Visual
C++ 用のサポートを拡張。
- KernelDriver で Windows 98/ME/2000/XP 上の WDM を完全にサポート。
- ユーザー ドライバのコード作成で、コードのヘッダと関数本体のドキュメントを生成。
強化
- wdpnp.sys と windrvr.sys を一体化し、一つのドライバ ファイル (windrvr.sys)
を作成することにより、より容易な操作性と配布。
- 評価版と登録版を一体化することにより、登録版への更新の簡易化。
- Linux 上で、デュアル プロセッサと SMP をサポート。
- Linux 2.4 で 分散/集束 DMA をサポート。
- USB オペレーションにステータス情報を追加。
- マルチ インターフェイス USB デバイス用の API を追加。
- Windows OS で DriverWizard から INF ファイルを自動的に生成、およびインストール。以前必要だったマニュアルのステップを削除。
- Borland C++ Builder 6 のコードを生成するオプションを追加。
- 生成された INF ファイルに機能性を追加。
修正
共通
- 使いやすさを念頭においた、様々な DriverWizard の変更。
Windows
- すべての USB 2.0 HC と マルチ インターフェイス デバイスをサポートする USB スキャン プロセスを再実装。
- ファイルからデータを USB パイプに転送できるように USB file to pipe オプションを修正。
- ハイ スピード デバイスを認識するために、usb_scan ユーティリティを修正。
Linux
- CTRL-Z を押すとファントム インターラプトになる問題を修正。
Solaris
- Solaris 2.6 で存在しない Kernel PlugIn を開こうとするとシステムがクラッシュする問題を修正。
WinDriver 5.05b の新機能 (2002/8/6)
修正
- Windows 2000 の Service Pack 3 をインストールしたマシンで、STOP 50 Blue Screen
が発生する問題の修正。
WinDriver 5.05 の新機能 (2002/5/6)
- 新規: PLX Technologies 新製品 PCI 9056 I/O アクセラレータ チップをサポート。このサポートは、PLX
9056 アクセスおよびコントロールを実行する API 関数および雛型として仕様できるサンプル アプリケーションを含みます。
- 強化: APIC (Advanced Programmable Interrupt Controller) チップを実装した
Windows NT マシン上の割り込み処理をハードウェアから直接読み込む代わりに OS から PC I関連データを読み込むように強化。
修正
共通
- 誤った環境で警告メッセージ "The resource is overlapped with another
resource (リソースが他のリソースと重複しています)" が表示される DriverWizard のバグを修正。
- Kernel PlugIn を使用するとき、割り込みがイネーブルされた直後発生した場合 Kernel PlugIn
の DPC ルーチンで割り込みが処理されないことがあるバグを修正。
Windows
- DriverWizard が生成した INF ファイルを特定の PCI デバイスで使用するとき BSOD を引き起こすバグを修正
(v5.04 からのバグ)。
- Windows 95 で Kernel PlugIn プロジェクトをコンパイルするために必要な KP_95.lib
が見つからないバグを修正 (v5.04 からのバグ)
Linux
- DriverWizard により いくつかの Unix 環境変数が上書きされるバグを修正。
WinDriver 5.04 の新機能 (2002/2/25)
- 新規: Windows 2000、Windows XP で USB 2.0 サポートの追加。
- 新規: WinDriver Hardware Debugger が OS のカーネル デバッガにデバッグ メッセージを送信する機能を追加。
- 新規: ファイルのプロパティで表示されるバージョン情報を wdpnp.sys に追加。
- 強化: WinDriver for USB - 新しい API: WD_UsbResetDeviceEx() を使用して無効になっていないデバイスのリセットが可能。
- 強化: WinDriver for USB - WD_UsbTransfer() に USB_SHORT_TRANSFER
のオプションを追加。このオプションを設定すると、ショート パケット (最大パケット サイズ以下) がトランスファーされた時に、データ
バッファが満たされたかどうかに関係なく、その関数はリターンします。
- 強化: WinDriver for USB - WD_USBTransfer() に USB_FULL_TRANSFER
のオプションを追加。このオプションを設定すると、リクエストされたすべてのデータがトランスファーされた時に、その関数はリターンします。
- 強化: Warning level 4 で DriverWizard によって生成されたコードをコンパイルするときの、Warning
(警告) メッセージの数を削減。
- 強化: DriverWizard によって生成されたコードに埋め込まれる説明や注釈の改善。
修正
PCI - 共通
- PLX 9030、9054、IOP480 チップセットの EEPROM へのアクセスの改善。これらのチップセットの
EEPROM へのアクセスに失敗すると、WinDriver はすべてのアクセス プロセスを再試行します。
- DriverWizard による割り込み操作の改善。ユーザーによって定義されたすべてのパラメータをインプリメントせずに割り込みを操作するバグを修正。
- 割り込みトランスファー コマンドの実行方法の改善。割り込みが無効にされるたびに割り込みトランスファー コマンドが実行されるバグが修正され、割り込みトランスファー
コマンドは、アプリケーション操作の割り込みが不正終了する場合にのみ実行されます。
- Windows 2000 checked-build の環境下で、WinDriver がアプリケーション アサーションを発行するバグを修正。
- WD_MultiTransfer() を修正し、Delphi をサポート。
- PCI デバイスに I/O または メモリ リソースがない場合に、XXX_AccessRanges(hXXX) 機能を無効にするように
DriverWizard を修正。このバグにより、I/O または メモリ リソースがないデバイスの生成されたコードをコンパイルする時に、コンパイル
エラーが発生していました。
Windows NT 4.0 - PCI
- デュアル CPU プラットフォームでの割り込み操作のサポートの修正。割り込みラインとデバイスのリソース情報は、ハードウェアから直接ではなく、OS
から読み取ります。
Windows 9x - PCI
- 共有不可の割り込みに対して Auto Masking を設定。共有可能な割り込みを使用している時に、WD_IntDisable()
が他の割り込みも無効にする場合があるバグを修正。
Linux - 共通
- Linux の環境で、連続する DMA の WD_DMALock() の操作を修正。アロケーションがページ単位の場合に余分な
1ページが作成され、kfree の内でカーネル パニックが発生 (以下の順序で実行された場合:lock、lock、free、free)
するバグを修正。
- RedHat Linux 7.0 またはそれ以上でコンパイルのために user makefiles の修正。
Windows - 共通
- windrvr.sys と wdpnp.sys 間の依存問題の修正。wdpnp.sys が windrvr.sys/vxd
の前にロードされると、windrvr がエラー コード 37 (STATUS_INTERNAL_ERROR) を発生するバグを修正。このバグの修正でリソース管理は
windrvr.sys/vxd の代わりに wdpnp.sys が操作するので、wdpnp.sys の後に windrvr.sys/vxd
がロードされると、wdpnp.sys の代わりに windrvr.sys/vxd がカード リソースのトランスファーを行います。また
wdpnp.sys は windrvr.sys がロードされていると仮定し、二つのファイルがコミュニケーション パスを開いて短い操作を行って、そしてそのパスを閉じるということを行いません。これによりファイル間の依存性を削除し、安定性を強化します。
- wdpnp.sys がPCI デバイスのバス ナンバーを読み取る方法の修正。OS は常に 0 を返すため、Windows
OS から収集する代わりに、PCI デバイスから直接バス ナンバーを読み取ります。
- Windows のプラットフォームでコンボ ボックス作用が呼び出される問題を修正。デフォルトで呼び出す IDE が
"none" に設定されるバグを修正。この修正で呼び出す IDE は、プロジェクト ファイルを生成するためにユーザーによって選択された
IDE に設定されます。デフォルトの設定は MS Visual C++ 6.0 です。
USB
- DriverWizard の "send to pipe" 操作でロング データ ストリング (1024
文字以上) が入力できるように修正。ロング データ ストリングが送られたときに、DriverWizard がアプリケーション
エラーを発生するバグを修正。
- USB デバイスがシステムに接続されていない場合に、BSOD を回避するようにタイムアウトの期限を修正。
- WinDriver は OS の Pointer to Device Object (PDO) を使用する代わりに、OS
の DeviceAddress を USB uniqueld として使用します。WinDriver は WD_GetConfiguration()
と WD_DeviceRegister() のステージで USB デバイスと通信するための目的でのみ PDO を使用します。
- アイソクロナス データ転送では、WinDriver は最後のパケットを別々のトランザクションとして送ります。ある環境では、OS
USBD が最後のパケットを2回送ることがありました。
KernelDriver
- Debug Monitor GUI が Linux でも実行できるように DriverWizard を修正。
- WD_License() を実行するために IOCTL を使用してコードを生成するように DriverWizard
を修正。
WinDriver 5.03 の新機能 (2001/9/13)
- 新規: WinDriver と KernelDriver は、Windows XP (RC1) をサポート
- 新規: WinDriver は、Windows CE 3.0 をサポート
- 新規: WinDriver と KernelDriver は、Linux カーネル 2.4.x をサポート
- 強化: Windows 版でのみ提供されていた Debug Monitor (wddebug_gui.exe) が
Linux 版と Solaris 版でも利用可能
- 強化: WD_DevugAdd() の新 API 追加 : デバッグメッセージを印刷可能なデバッグログに送ることができます。
- 強化: Linux、Solaris、VxWorks および CE 版の評価版での連続稼動時間制限を 30分から 1
時間に延長。
- 強化: USB デバイスのユニーク ID がデバイス オブジェクトへのポインタ (Windows 98/200/XP(RC1)
から受け取る)になります。
- 強化: DriverWizardの Quick Start Info ウィンドウの表示
- 修正: (V5.00 以降) DriverWizard によるレベル依存割り込みの認識。修正前はレベル依存割り込みの認識時にシステム
がハングすることがありました。
- 修正: PLX9030 ライブラリの割り込み認識レジスタ(INTSCR)の修正。これレジスタは、16bitではな く32bitとしてアクセスされていました。
WinDriver Windows 2000
- 修正: デュアルCPUでの割り込みハンドリング。割り込み値を読み込むため PnP WDM 関数を実行します。
- 修正: デバイスを取り外したときにポップアップした"Unsafe removal of device"メッセージを削除。
WinDriver Linux および Solaris
- 修正: pthread 使用時のメモリリーク。オープンされたthreadが正しくクローズされず、新規thread のオープンを妨害する可能性がありました。
WinDriver Linux
- 修正: (V5.00以降) Kernel PlugIn 関数の funcIntAtDpc を"top half"
ではなく"bottom half"で実行するように修正。
WinDriver VxWorks
- 修正: InterruptThreadEnable() で作成されたthreadからのメッセージをprint。デバイスのターミナルに代わってコ
ーリング shell で表示。
WinDriver 5.02 の新機能 (2001/6/26)
- 強化: Wizard が INF/KDF ファイルを生成する際に選択された名前の有効性をチェックします。
- 強化: 追加で割り込み/メモリ/IO を作成するときに既存のリソースと重複する場合は警告します。
- 強化: PCI ベンダ ID および デバイス ID リストの説明が最新情報に更新されました。
- 強化: USB read/write ダイアログボックスに [add pipe to file] と [save
input] が追加されました。
- 強化: すべての read/write ダイアログボックスに [close] ボタンが追加されました。
DriverWizard
- 修正: license string ダイアログで入力ストリングが 60 文字以上の場合、"Invalid
license"となる不具合を修正。
- 修正: リソースを定義した内容によって、read または write 操作を許可するように修正。
- 修正: wddebug メッセージに選択された debug level と scetion を追加。
- 修正: 生成された Delphi コードの xxx_RegisterWinDriver() をコンパイルの不具合を修正。
- 修正: USB デバイスの登録は1つのアプリケーションのみ許可するように修正。
- その他、若干のマイナーバグを修正。
ドキュメント
- 修正: いくつかのスペルミスを修正。
- 新機能: 記述もれの WD_UsbResetDevice() を追加。
WinDriver 5.01 の新機能 (2001/5/8)
- 新規:リモート pci_dump (rpci_dump)サンプルの追加
- 強化:Webダウンロード版でもフル機能を装備(ドキュメント類の一部は含まれません)。KernelDriver のWebダウンロード版はクラスおよびコンパイル済みのデバッグライブラリのソースを含んでいません。
- 強化:DriverWizardの機能強化
ドキュメント
- 新規:WinDriver と KernelDriverのヘルプファイルの起動
- 新規:マニュアルにリモートドライバ開発手順の追加
- 強化:1MB以上のバッファの Scatter Gather DMA の説明を修正
DriverWizard
- 修正:DriverWizardのいくつかのマイナーな不具合を修正
- 修正:Wizardで生成された PCI INF ファイルは、wdpnp.sys を %WINDIR%\system32\drivers
にコピーします。
WinDriver
- 修正:Registered 版の WinDriver for USB コード生成で USB デバイスをスキャンする前に
WinDriver registration をコールするように修正(以前は、コードが Usb_scan で失敗しました)。
- 修正:WinDriver for USB で、USB パイプへの Writeで ASCII データでなく HEX データを
Writeするように修正。
- 修正:Windows Net.lib に Remote Access 機能で必要なすべての関数を含めました。
- 修正:Solaris (Sparc)で、PCI メモリ空間から読み込むときのバイト順を修正。
WinDriver 5.0 の新機能 (2001/4/12)
WinDriver 5.0 マルチ プラットフォーム ウィザード
- 豊富な APIを使ってドライバ コードの自動生成と、ハードウェアの検出やデバッグを可能とするハードウェア アクセスをグラフィカルなユーザー
インターフェイスでUnixユーザーにも提供
- 強力なグラフィカル ツールを使ってすばやく簡単にハードウェアの分析をすることによって、ハードウェアのアクセスとドライバの開発のプロセスを簡単にし、ドライバのコード生成過程を自動化する便利な
DriverWizard をLinux と Solaris ユーザーに提供
リモート WinDriver
- この新しい機能は開発者がホスト マシンからネットワーク接続 (LAN、 WAN、ダイヤルアップなど) を通して埋め込みシステムを含むリモート
ターゲット マシン上のハードウェアをアクセスすることを可能にします
- リモート ターゲット マシンに接続されたハードウェア (USBデバイスを含む) を自動的に検出し、ホスト マシンからそれをテストおよび診断し、自動的にターゲット
デバイスのドライバ ソース コードを生成することができます
WinDriver 4.32 の新機能 (2000/4/15)
- 新機能: 複数のインターフェイスを持つ USB デバイスをサポート
- WinDriver Solaris の大幅な改良。PCI スキャンがより高速に実行できます。
- Windows 95/98/ME での非共有エッジトリガー割り込みが、一度しか受け取れないことがあるのを修正。
- Windows および Solaris でリソースが異常終了時に解放されないのを修正。
- WinDriver USB でインストール後に、"duplicate object name" メッセージが表示されるのを修正。
WinDriver 4.31 の新機能 (2000/3/7)
- USB サポート等時性転送とバルク転送のパフォーマンス改善
- Visual Basic での割り込み処理改善
- Visual Basic での割り込み処理サンプル添付
- パラレルポートアクセス用の Visual Basic によるグラフィカルサンプル添付
- KernelDriver または "WinDriver Kernel PlugIn" で生成された VxD ファイルが Windows 98上 の windrvr.sys と通信可能
- Windows 98、Windows NT/2000 での割り込み処理の修正 (V4.30 だけの不具合)
- Windows 98、Windows NT/2000 での WD_DMAUnlock の修正 (V4.30 だけの不具合)
- Windows 2000 上で USB INF ファイルのインストール時のエラーメッセージ修正
WinDriver 4.30 の新機能 (2000/3/1)
- WinDriver での USB サポート (WinDriver USB は別売です)
- Wizard で USB デバイスの検出と設定の選択が可能
- Wizard で USB ハードウェアのテストが可能 (パイプのリード、ライト、取り込み)
- Wizard で C/C++ または Delphi でUSB ドライバ ソースコードを生成
- Wizard で Windows 98/2000 用の USB デバイスのための .INF ファイルを生成 (PCI デバイス同様)
- WinDriver の Kernel PlugIn は、すべての WinDriver USB API をサポート
- WinDriver の Kernel PlugIn は、Solaris と Linux もサポート。サポートしているすべてのオペレーティング システム用に最適なパフォーマンスとオペレーティング システム間でのコードの互換性を提供。
- バージョン 4.30 の WinDriver と KernelDriver で、1つのドライバ開発スイートに統合
- KernelDriver で Windows 95/98/ME (VxD ドライバ) をサポート
- KernelDriver で Linux をサポート
- KernelDriver で Windows 2000 用に USB をサポート
- KernelDriver で Windows NT/2000 用の KernelDriver API は、C でも利用可能 (以前は、C++のみ)
- GUI の強化: レジスタを自動読み込みとして定義
- Wizard にポートへのクイックアクセスを可能にするパラレル ポート用の定義済みリソースを追加
- KERNEL_BUFFER_ALLOC を使用する WD_DMAUnlock() を修正 (Windows NT と Linux)
- WD_IntWait() : マシンをロックすることなしに IntWait で待っているアプリケーションを停止可能
WinDriver 4.20 の新機能 (99/12/29)
- Wizard で Delphi 用のドライバコードを生成可能
- infファイルの生成
- Altera PCIコアのサポート
- PLX IOP480 のサポート
- Windows 95/98/ME 用の INFファイルを自動生成
- ユーザー環境に応じたメイクファイルを生成
- サンプルには各種IDE用のメイクファイルを添付
- Debug Monitor を Driver Wizard に統合
- Driver Wizard の GUI強化
- ISA割り込みの新規追加で、共有割り込みをデフォルト設定
- Linux 2.2でも連続DMAサポート(2.0ではサポート済み)
- Windows 98でのScatter gather DMA修正
- Unix メイクファイルでのDOS スラッシュ修正
WinDriver 4.14 の新機能 (99/10)
ISAプラグアンドプレイ サポート
- Wizardによるカーネルコード生成 (新製品のKernelDriverによりサポート)
- Borland C++ Builder ver3とver4用のメイクファイルの生成
- PLX IOP480、9052サポート
- DMA完了を待つnon-busyを有効にするDMA機能をPLX 9054と9080に追加
- VB用に変数のアドレスを取得するためWD_VB_GetAddress()を追加
- Windows NTが物理メモリの最後(???-0xffffffff)でアドレスをマッピングできない障害に対処
- 9054と9080 EEPROMアクセス障害修復およびレジスタ名の修正
- Windows 98でのWD_PciGetCardInfo()の障害修復
- 割り込み無効後のWizard停止を修復
- Windows CEでの割り込み処理修正
- DelphiのWD_VERSION構造体修正
注意: Ver 4.14からは「DiskID」によるコピープロテクトが適用されました。
使用するマシンにインストールした後、Wizardを起動したときに表示される Your Computer IDを受け取ってからライセンスを発行することになります。
WinDriver 4.10 - 4.12 の新機能 (99/3-7)
- Linux、Windows CE、Alpha NT をサポート
- グラフィカルな KernelTracer 追加
- Delphi、Visual Basicサポート
- Galileo GT64 チップセットサポート
- WinDriver Wizardの機能強化
- ベンダー/デバイスの自動検出
- レベル依存割り込みの自動処理とコード生成
- 複数のレジスタおよびメモリダイアログ実行許可
- 改良されたユーザーインターフェイス
WinDriver 4.0 の新機能 (99/1)
- WinDriver Kernel PlugIn - ドライバコードをカーネルモードから実行可能
- スリープ機能 - 遅いハードウェアアクセス用
- ISA プラグアンドプレイ サポート
- Debug Monitor - WinDriverカーネルモジュールからエラーをトレース
- ダイナミック ドライバ ローダー - 再起動なしでドライバのロードとアンロード
- 割り込みのソースコード生成強化
- PLX 9050 ライブラリ拡張 - EEPROMのリード/ライト機能、割り込み処理
|