Me gustaría mantener la fuente de alimentación de una unidad con alimentación USB cuando el sistema entra en modo de suspensión (AKA S3 o "suspender a RAM").
Normalmente, la energía se corta mientras la máquina está suspendida, lo que hace que se desmonte y luego se vuelva a montar cuando se reanude el sistema. Esto no es realmente bueno, especialmente si la unidad en sí es compatible con la administración de energía.
Aunque podría ejecutarlo en una fuente de alimentación separada, preferiría evitar asignar más cableado para algo que, al menos en teoría, se pueda hacer con mi hardware existente.
¿Cómo puedo determinar si es posible hacer esto con mi sistema y cómo puedo organizar un dispositivo USB en particular, es decir, este gabinete, para que siempre sea tratado de esta manera?
Estoy ejecutando ubuntu 10.10.
actualizar
Descubrí este hilo de ubuntuforums que sugiere usar acpitool -w
para determinar el nivel de activación disponible para el controlador USB.
Ejecutar esto en mi sistema muestra S1 para los controladores USB:
$ 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
Lo que parece indicarme que la capacidad de activación solo se puede habilitar para USB en el estado S1.
No estoy seguro de cuán útil es esto, ya que proporcionar potencia completa y permitir el despertar puede ser una preocupación ortogonal. Es posible que habilitar la activación solo proporcione poca energía, por lo que puede haber una forma diferente de habilitar la energía completa.
Si encender el despertador equivale a proporcionar potencia completa, parece que puedo hacer lo que quiero colocando una tarjeta USB en la ranura de expansión (¿supongo que eso PCIE
es lo que es?). Aunque creo que me gustaría saber un poco más sobre esto antes de intentar excavar una tarjeta de PC USB2.
Respuestas:
Habilitar la activación en un bus no equivale a darle a ese bus la máxima potencia mientras está en suspensión. Simplemente significa que el sistema escuchará la señal de activación en las líneas que corresponden a ese dispositivo. El bus apropiado proporciona la energía de reserva, pero esta energía es mucho menor que la potencia total para el funcionamiento normal. Agregar una tarjeta USB PCI / PCIe puede o no permitir la activación por USB, pero definitivamente no proporcionará energía completa a los puertos USB mientras la máquina esté en S3. En cambio, proporcionará lo suficiente para mantener el chipset en funcionamiento, aproximadamente 200 mA a 3,3 V de lo que deduzco de esta página de Intel sobre sus adaptadores de red.
Creo que esta es una característica que será específica para una placa base y solo se podrá controlar a través del BIOS. Tengo un Thinkpad y una placa base Gigabyte que permiten alimentar dispositivos USB mientras la máquina no está despierta, y en ambos casos es una configuración en el BIOS en lugar de algo que puede cambiar mientras el sistema se inicia por completo. Ahora que lo pienso, es posible que Thinkpad configure eso mientras se ejecuta, pero los Thinkpads son conocidos por tener extensiones ACPI especiales para administrar las opciones de energía. De todos modos, para ambos sistemas es una propuesta de todo o nada: no hay opción para la configuración por puerto o por dispositivo. Estoy bastante seguro de que el USB de máxima potencia en suspensión es algo que no es estándar en las PC, y como tal, no hay una forma portátil de verificar si está disponible.
Aunque es hardware adicional, creo que la solución más simple y más universal es usar un concentrador con alimentación.
fuente
El kernel tiene soporte para la función de ahorro de energía USB 2.0
Para deshabilitarlo después de haber iniciado, puede intentar
echo 1> / sys / bus / usb / devices / your-USB-device / power / autosuspend
echo "on"> / sys / bus / usb / devices / your-USB-device / power / level
Para más detalles mira en esta página de lesswatts.org
fuente