web-dev-qa-db-ja.com

マシンがサスペンドされているときに特定のUSBデバイスの電源を切るのを避ける方法

システムがサスペンド(AKA S3または「suspend-to-RAM」)モードになったときに、USB電源ドライブへの電源供給を維持したいのですが。

通常、マシンが停止しているときに電源が切断されます。これにより、マシンがマウント解除され、システムが再開したときに再びマウントされます。ドライブ自体が電源管理をサポートしている場合は特に、これは実際には素晴らしいことではありません。

別の電源で実行することもできますが、少なくとも理論的には既存のハードウェアで実行できるものには、より多くの配線を割り当てないようにする必要があります。

私のシステムでこれが可能かどうかをどのように判断できますか?また、このエンクロージャーなどの特定のUSBデバイスが常にこのように扱われるようにするにはどうすればよいですか?

私はubuntu 10.10を実行しています。

更新

発見 このubuntuforumsスレッド は、acpitool -wを使用して、USBコントローラーで利用可能なウェイクアップレベルを決定することを提案しています。

これを私のシステムで実行すると、USBコントローラーのS1が表示されます。

$ acpitool -w
   Device   S-state   Status   Sysfs node
  ---------------------------------------
  1. LID      S3    *enabled   
  2. PBTN     S4    *enabled   
  3. PCI0     S3    *disabled  no-bus:pci0000:00
  4. USB0     S1    *disabled  pci:0000:00:1d.0
  5. USB1     S1    *disabled  pci:0000:00:1d.1
  6. USB2     S1    *disabled  pci:0000:00:1d.2
  7. USB3     S1    *disabled  pci:0000:00:1d.7
  8. MODM     S3    *disabled  
  9. PCIE     S4    *disabled  pci:0000:00:1e.0

これは、ウェイクアップ機能はS1状態のUSBに対してのみ有効にできることを教えてくれているようです。

フルパワーを提供し、ウェイクアップを許可することは、直交する問題になる可能性があるため、これがどれほど有用かはわかりません。ウェイクアップを有効にすると低電力しか提供されない可能性があるため、フルパワーを有効にする別の方法がある場合があります。

ウェイクアップをオンにすることがフルパワーの提供と同等である場合、拡張スロットにUSBカードを挿入することで、私がやりたいことができるように見えるかもしれません(それがPCIEだと思いますか?)。 USB2 PCカードを発掘する前に、これについてもう少し知りたいと思います。

8
intuited

バスでウェイクアップを有効にすることは、サスペンド中にそのバスにフルパワーを与えることと同じではありません。これは、システムがそのデバイスに対応するラインでウェイクアップ信号をリッスンすることを意味します。スタンバイ電力は適切なバスによって提供されますが、この電力は通常の動作の全電力よりはるかに少なくなります。 PCI/PCIe USBカードを追加すると、USBウェイクオンが可能になる場合とできない場合がありますが、マシンがS3にある間は、USBポートに完全な電力が供給されません。代わりに、チップセットを実行し続けるのに十分なだけで、ネットワークアダプターについてIntelから このページ から収集したものから約200mA @ 3.3Vを提供します。

これはマザーボード固有の機能であり、BIOSを介してのみ制御できる機能だと思います。私はThinkpadとギガバイトのマザーボードを持っていますが、マシンが起動していないときにUSBデバイスに電力を供給できます。どちらの場合も、システムが完全に起動している間に変更できるものではなく、BIOSの設定です。考えてみると、Thinkpadを実行中に構成する方法があるかもしれませんが、Thinkpadには電源オプションを管理するための特別なACPI拡張機能があることが知られています。とにかく、どちらのシステムでも、それはオールオアナッシングの命題です-ポートごとまたはデバイスごとの構成のオプションはありません。サスペンド時のフルパワーUSBは、PC全体で標準的ではないものであり、そのため、それが利用可能かどうかを確認するポータブルな方法はありません。

これは追加のハードウェアですが、最も単純で最も一般的なソリューションは、電源付きハブを使用することです。

4
Miles Strombach

カーネルはUSB 2.0省電力機能をサポートしています

起動後に無効にするには、

echo 1>/sys/bus/usb/devices /your-USB-device/ power/autosuspend

echo "on">/sys/bus/usb/devices /your-USB-device/ power/level

詳細については、こちらをご覧ください lesswatts.orgページ

3
rajaganesh87