Oracle® Solaris 11.2 デバイスドライバの記述

印刷ビューの終了

更新: 2014 年 9 月
 
 

デフォルトパイプ

各 USB デバイスは、デフォルトエンドポイントと呼ばれる特殊な制御エンドポイントを持ちます。その通信チャネルはデフォルトパイプと呼ばれます。すべてではないにしろ、ほとんどのデバイス設定がこのパイプ経由で行われます。多くの USB デバイスは、自身の唯一の制御パイプとしてこのパイプを持ちます。

usb_get_dev_data(9F) 関数は、デフォルト制御パイプをクライアントドライバに提供します。このパイプは、ほかのパイプを開く前に必要とされるどのような特殊な設定にも対応できるよう、事前に開かれています。このデフォルト制御パイプは次の点で特殊です。

  • このパイプは共有されます。同じデバイスのほかのインタフェースを操作しているドライバも、同じデフォルト制御パイプを使用します。USBA 2.0 フレームワーク はこのパイプを複数のドライバ間で調停します。

  • このパイプのオープン、クローズ、またはリセットをクライアントドライバから行うことはできません。この制限が設けられているのは、このパイプが共有されるからです。

  • このパイプは例外発生時に自動的にクリアされます。

その他の制御パイプを含むほかのパイプは、明示的に開く必要があり、排他的にしか開くことができません。