以前の出版物 [1]の1つで、「USB 3.0でUSBフラッシュドライブが動作することを確認する方法」という一見明らかな質問を提起しました。それから、まるで彼ら自身のエゴを怖がらせるかのように、私たちの意識からこの考えを消しました。
しかし、この考えはすでに実験者の脆弱な心を傷つけました。 オペレーティングシステムが起動する前の起動段階(UEFIシェルなど)で、接続されたデバイスのUSB 3.0の可用性を確認したいという要望がありました。
最初に、小さなユーティリティ
CheckUSBが作成されました(ただし、これは、これまでのところ、Intelチップセットの第8バージョンの一部の実装でのみ動作するように設計されています)。
図1 。
ASUS T300LAラップトップでCheckUSBユーティリティを使用した実験モバイルプラットフォームに近づくと、場合によっては、再起動時にラップトップのUEFIファームウェアがUSBサブシステムを完全に初期化せず、オペレーティングシステムの一部が動作しないことが判明しました。
図2 。
ASUS T300LAラップトップのUEFIファームウェア設定のXHCI Pre-Boot Modeオプションたとえば、xHCI Pre-Boot Modeオプションの初期状態がCMOSセットアップで無効に設定されている場合、Smart Autoに置き換え、オペレーティングシステムをロードせずにCheckUSBユーティリティを実行すると、xHCIコントローラーに接続されているデバイスのリストが空であることがわかります。 これは、EHCIコントローラーが接続されたUSBデバイスのサービスに使用されることを意味します。
図3 。
Windowsが起動する前にUSBデバイスをASUS N750JKラップトップの拡張ホストコントローラーインターフェイスに接続するそのため、Windowsを起動せずにUEFIへのブートをオンに切り替えた直後に、次の結果が得られます。
- USB 2.0ポートルーティング= 0、EHCIに接続された14個のUSB2接続
- USB 3.0ポートSuperSpeed Enable = 0、4 USB3接続が無効
同時に、マスク値は、オペレーティングシステムがxHCIサービスへの接続を切り替える権利を持っていることを示します。
- USB 2.0ポートルーティングマスク= 00003FFFh
- USB 3.0ポートルーティングマスク= 0000000Fh
xHCIレジスタのみを表示し、RMHを使用してデバイスがEHCIサービスに切り替えられるため、デバイスのリストは空です。 ビットフィールドの説明は、記事「診断ユーティリティCheckUSB」[2]、[3]に記載されています。
オペレーティングシステムの再起動後に再起動すると、すべてのデバイスがxHCIコントローラーに正しく接続されます。
図4 。
Windows後の起動時にUSBデバイスをASUS N750JKラップトップのeXtensible Host Controller Interfaceに接続するポートアクセス制御ロジックは、再起動前に発生した状態を「記憶」します。
- USB 2.0ポートルーティング= 03FFFh、xHCI USB2サブシステムに接続された14個のUSB2接続
- USB 3.0ポートSuperSpeed Enable = 0Fh、4 USB3接続でSuperSpeedモードを使用可能
。
検討中のASUS N750JKプラットフォームの外部USB3ポートの数は4であることを思い出してください。
参照資料
- USBフラッシュドライブがUSB 3.0で機能することを確認する方法は?
- 診断ユーティリティCheckUSB
- USB3モードを確認する方法は?