挂起计算机时如何避免关闭某些USB设备的电源


8

当系统进入暂停(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卡之前,我想对此有所了解。


1
这个问题似乎几乎是您其他问题的重复部分:unix.stackexchange.com/questions/5343
Stefan

@Stefan:这是对另一篇文章的附带观点的阐述/说明。它也与众不同之处在于,它更多地侧重于系统方面,而这个问题更多地是关于连接设备本身的典型功能。
直觉

@Stefan:不过,感谢您提到..现在我对景观有了更好的了解,对我来说很明显这应该是一个单独的问题,所以我已经编辑了另一个问题。
直觉

Answers:


4

启用总线唤醒功能并不等于在挂起状态下为该总线提供全部电源。这仅意味着系统将在与该设备相对应的线路上监听唤醒信号。备用电源由适当的总线提供,但是此电源比正常操作的全功率小得多。添加PCI / PCIe USB卡可能允许也可能不允许USB唤醒,但是在计算机处于S3状态时,它肯定无法为USB端口提供全部电源。取而代之的是,它将提供足够的能量来保持芯片组的运行,从我从此收集的有关其网络适配器的英特尔网站上获得的数据来看,该芯片组在3.3V电压下约为200mA 。

我认为这是特定于主板的功能,只能通过BIOS进行控制。我有一个Thinkpad和一个技嘉主板,可以在不唤醒计算机的情况下为USB设备供电,在两种情况下,这都是BIOS中的设置,而不是在系统完全启动时可以更改的设置。想一想,Thinkpad可能会在运行时进行配置,但是ThinkPad以其特殊的ACPI扩展来管理电源选项而闻名。无论如何,对于这两个系统,这都是一个全有或全无的提议-没有针对每个端口或每个设备的配置选项。我可以肯定的是,处于暂挂状态的全功率USB在所有PC上都不是标准的,因此,没有便携式的方法来检查它是否可用。

尽管它是额外的硬件,但我认为最简单,最通用的解决方案是仅使用有源集线器。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.