You are not logged in.

#26 2014-05-15 13:48:10

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 712
Website

Re: Indicator-powersave & throttle

My initial fork of indicator-cpufreq is ready.

It works, but it's not as pretty as the mockup.

I actually don't know much about python, pygtk, etc. and this is the first work I've ever done with them.

Screenshot_from_2014_05_15_23_14_07.jpg

Last edited by quequotion (2015-01-03 03:51:16)

Offline

#27 2014-12-17 21:13:44

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 712
Website

Re: Indicator-powersave & throttle

This diff shows the output of throttle check after toggling System Throttle > cut and System Throttle > full:

--- cut	2014-12-28 00:22:18.596549936 +0900
+++ full	2014-12-28 00:23:16.282610414 +0900
@@ -1,65 +1,73 @@
 CPU Governor
 /sys/bus/cpu/drivers/processor/cpu0/cpufreq/scaling_governor
-powersave
+performance
 /sys/bus/cpu/drivers/processor/cpu1/cpufreq/scaling_governor
-powersave
+performance
 /sys/bus/cpu/drivers/processor/cpu2/cpufreq/scaling_governor
-powersave
+performance
 /sys/bus/cpu/drivers/processor/cpu3/cpufreq/scaling_governor
-powersave
+performance
+/sys/bus/cpu/drivers/processor/cpu4/cpufreq/scaling_governor
+performance
+/sys/bus/cpu/drivers/processor/cpu5/cpufreq/scaling_governor
+performance
+/sys/bus/cpu/drivers/processor/cpu6/cpufreq/scaling_governor
+performance
+/sys/bus/cpu/drivers/processor/cpu7/cpufreq/scaling_governor
+performance
 Disable Intel P-State Turbo
 /sys/devices/system/cpu/intel_pstate/no_turbo
-1
+0
 Hyperthreads
 /sys/devices/system/cpu/cpu4/online
-0
+1
 /sys/devices/system/cpu/cpu5/online
-0
+1
 /sys/devices/system/cpu/cpu6/online
-0
+1
 /sys/devices/system/cpu/cpu7/online
-0
+1
 Virtual Memory (Swap)
 /proc/sys/vm/laptop_mode
-5
+0
 /proc/sys/vm/dirty_writeback_centisecs
-1500
+500
 /proc/sys/vm/dirty_expire_centisecs
-1500
+500
 SATA link power management
 /sys/class/scsi_host/host0/link_power_management_policy
-min_power
+max_performance
 /sys/class/scsi_host/host1/link_power_management_policy
-min_power
+max_performance
 /sys/class/scsi_host/host2/link_power_management_policy
-min_power
+max_performance
 /sys/class/scsi_host/host3/link_power_management_policy
-min_power
+max_performance
 /sys/class/scsi_host/host4/link_power_management_policy
-min_power
+max_performance
 /sys/class/scsi_host/host5/link_power_management_policy
-min_power
+max_performance
 /sys/class/scsi_host/host6/link_power_management_policy
-min_power
+max_performance
 /sys/class/scsi_host/host7/link_power_management_policy
-min_power
+max_performance
 Hard drives
 
 /dev/sda:
- APM_level	= 1
- acoustic      = 128 (128=quiet ... 254=fast)
+ APM_level	= off
+ acoustic      = 254 (128=quiet ... 254=fast)
 
 /dev/sdb:
- APM_level	= 1
- acoustic      = 128 (128=quiet ... 254=fast)
+ APM_level	= off
+ acoustic      = 254 (128=quiet ... 254=fast)
 
 /dev/sdc:
- APM_level	= 1
- acoustic      = 128 (128=quiet ... 254=fast)
+ APM_level	= off
+ acoustic      = 254 (128=quiet ... 254=fast)
 
 /dev/sdd:
- APM_level	= 1
- acoustic      = 128 (128=quiet ... 254=fast)
+ APM_level	= off
+ acoustic      = 254 (128=quiet ... 254=fast)
 
 /dev/sde:
  APM_level	= not supported
@@ -78,1729 +86,1745 @@
  acoustic      = not supported
 Runtime power management for devices (by class)
 /sys/class/ata_device/dev1.0/power/control
-auto
+on
 /sys/class/ata_device/dev2.0/power/control
-auto
+on
 /sys/class/ata_device/dev3.0/power/control
-auto
+on
 /sys/class/ata_device/dev4.0/power/control
-auto
+on
 /sys/class/ata_device/dev5.0/power/control
-auto
+on
 /sys/class/ata_device/dev6.0/power/control
-auto
+on
 /sys/class/ata_device/dev7.0/power/control
-auto
+on
 /sys/class/ata_device/dev8.0/power/control
-auto
+on
 /sys/class/ata_link/link1/power/control
-auto
+on
 /sys/class/ata_link/link2/power/control
-auto
+on
 /sys/class/ata_link/link3/power/control
-auto
+on
 /sys/class/ata_link/link4/power/control
-auto
+on
 /sys/class/ata_link/link5/power/control
-auto
+on
 /sys/class/ata_link/link6/power/control
-auto
+on
 /sys/class/ata_link/link7/power/control
-auto
+on
 /sys/class/ata_link/link8/power/control
-auto
+on
 /sys/class/ata_port/ata1/power/control
-auto
+on
 /sys/class/ata_port/ata2/power/control
-auto
+on
 /sys/class/ata_port/ata3/power/control
-auto
+on
 /sys/class/ata_port/ata4/power/control
-auto
+on
 /sys/class/ata_port/ata5/power/control
-auto
+on
 /sys/class/ata_port/ata6/power/control
-auto
+on
 /sys/class/ata_port/ata7/power/control
-auto
+on
 /sys/class/ata_port/ata8/power/control
-auto
+on
 /sys/class/bdi/0:40/power/control
-auto
+on
 /sys/class/bdi/11:0/power/control
-auto
+on
 /sys/class/bdi/11:1/power/control
-auto
+on
 /sys/class/bdi/11:2/power/control
-auto
+on
 /sys/class/bdi/8:0/power/control
-auto
+on
 /sys/class/bdi/8:112/power/control
-auto
+on
 /sys/class/bdi/8:16/power/control
-auto
+on
 /sys/class/bdi/8:32/power/control
-auto
+on
 /sys/class/bdi/8:48/power/control
-auto
+on
 /sys/class/bdi/8:64/power/control
-auto
+on
 /sys/class/bdi/8:80/power/control
-auto
+on
 /sys/class/bdi/8:96/power/control
-auto
+on
 /sys/class/bdi/9:126/power/control
-auto
+on
 /sys/class/bdi/9:127/power/control
-auto
+on
 /sys/class/bdi/default/power/control
-auto
+on
 /sys/class/block/md126p1/power/control
-auto
+on
 /sys/class/block/md126p2/power/control
-auto
+on
 /sys/class/block/md126p3/power/control
-auto
+on
 /sys/class/block/md126/power/control
-auto
+on
 /sys/class/block/md127/power/control
-auto
+on
 /sys/class/block/sda/power/control
-auto
+on
 /sys/class/block/sdb/power/control
-auto
+on
 /sys/class/block/sdc/power/control
-auto
+on
 /sys/class/block/sdd/power/control
-auto
+on
 /sys/class/block/sde/power/control
-auto
+on
 /sys/class/block/sdf/power/control
-auto
+on
 /sys/class/block/sdg/power/control
-auto
+on
 /sys/class/block/sdh/power/control
-auto
+on
 /sys/class/block/sr0/power/control
-auto
+on
 /sys/class/block/sr1/power/control
-auto
+on
 /sys/class/block/sr2/power/control
-auto
+on
 /sys/class/bluetooth/hci0/power/control
-auto
+on
 /sys/class/bsg/0:0:0:0/power/control
-auto
+on
 /sys/class/bsg/2:0:0:0/power/control
-auto
+on
 /sys/class/bsg/3:0:0:0/power/control
-auto
+on
 /sys/class/bsg/4:0:0:0/power/control
-auto
+on
 /sys/class/bsg/5:0:0:0/power/control
-auto
+on
 /sys/class/bsg/8:0:0:0/power/control
-auto
+on
 /sys/class/bsg/8:0:0:1/power/control
-auto
+on
 /sys/class/bsg/8:0:0:2/power/control
-auto
+on
 /sys/class/bsg/8:0:0:3/power/control
-auto
+on
 /sys/class/bsg/9:0:0:0/power/control
-auto
+on
 /sys/class/bsg/9:0:1:0/power/control
-auto
+on
 /sys/class/dmi/id/power/control
-auto
+on
 /sys/class/drm/card0/power/control
-auto
+on
 /sys/class/dvb/dvb0.demux0/power/control
-auto
+on
 /sys/class/dvb/dvb0.dvr0/power/control
-auto
+on
 /sys/class/dvb/dvb0.frontend0/power/control
-auto
+on
 /sys/class/dvb/dvb1.demux0/power/control
-auto
+on
 /sys/class/dvb/dvb1.dvr0/power/control
-auto
+on
 /sys/class/dvb/dvb1.frontend0/power/control
-auto
+on
 /sys/class/dvb/dvb2.demux0/power/control
-auto
+on
 /sys/class/dvb/dvb2.dvr0/power/control
-auto
+on
 /sys/class/dvb/dvb2.frontend0/power/control
-auto
+on
 /sys/class/dvb/dvb3.demux0/power/control
-auto
+on
 /sys/class/dvb/dvb3.dvr0/power/control
-auto
+on
 /sys/class/dvb/dvb3.frontend0/power/control
-auto
+on
 /sys/class/graphics/fb0/power/control
-auto
+on
 /sys/class/graphics/fbcon/power/control
-auto
+on
 /sys/class/hidraw/hidraw0/power/control
-auto
+on
 /sys/class/hidraw/hidraw1/power/control
-auto
+on
 /sys/class/hidraw/hidraw2/power/control
-auto
+on
 /sys/class/hidraw/hidraw3/power/control
-auto
+on
 /sys/class/hidraw/hidraw4/power/control
-auto
+on
 /sys/class/hidraw/hidraw5/power/control
-auto
+on
 /sys/class/hidraw/hidraw6/power/control
-auto
+on
 /sys/class/hwmon/hwmon0/power/control
-auto
+on
 /sys/class/hwmon/hwmon1/power/control
-auto
+on
 /sys/class/i2c-adapter/i2c-0/power/control
-auto
+on
 /sys/class/i2c-adapter/i2c-1/power/control
-auto
+on
 /sys/class/i2c-adapter/i2c-2/power/control
-auto
+on
 /sys/class/i2c-adapter/i2c-3/power/control
-auto
+on
 /sys/class/i2c-adapter/i2c-4/power/control
-auto
+on
 /sys/class/input/event0/power/control
-auto
+on
 /sys/class/input/event10/power/control
-auto
+on
 /sys/class/input/event11/power/control
-auto
+on
 /sys/class/input/event12/power/control
-auto
+on
 /sys/class/input/event13/power/control
-auto
+on
 /sys/class/input/event14/power/control
-auto
+on
 /sys/class/input/event15/power/control
-auto
+on
 /sys/class/input/event16/power/control
-auto
+on
 /sys/class/input/event17/power/control
-auto
+on
 /sys/class/input/event1/power/control
-auto
+on
 /sys/class/input/event2/power/control
-auto
+on
 /sys/class/input/event3/power/control
-auto
+on
 /sys/class/input/event4/power/control
-auto
+on
 /sys/class/input/event5/power/control
-auto
+on
 /sys/class/input/event6/power/control
-auto
+on
 /sys/class/input/event7/power/control
-auto
+on
 /sys/class/input/event8/power/control
-auto
+on
 /sys/class/input/event9/power/control
-auto
+on
 /sys/class/input/input11/power/control
-auto
+on
 /sys/class/input/input12/power/control
-auto
+on
 /sys/class/input/input13/power/control
-auto
+on
 /sys/class/input/input14/power/control
-auto
+on
 /sys/class/input/input15/power/control
-auto
+on
 /sys/class/input/input16/power/control
-auto
+on
 /sys/class/input/input17/power/control
-auto
+on
 /sys/class/input/input18/power/control
-auto
+on
 /sys/class/input/input19/power/control
-auto
+on
 /sys/class/input/input20/power/control
-auto
+on
 /sys/class/input/input2/power/control
-auto
+on
 /sys/class/input/input3/power/control
-auto
+on
 /sys/class/input/input4/power/control
-auto
+on
 /sys/class/input/input5/power/control
-auto
+on
 /sys/class/input/input6/power/control
-auto
+on
 /sys/class/input/input7/power/control
-auto
+on
 /sys/class/input/input8/power/control
-auto
+on
 /sys/class/input/input9/power/control
-auto
+on
 /sys/class/input/js0/power/control
-auto
+on
 /sys/class/input/js1/power/control
-auto
+on
 /sys/class/input/js2/power/control
-auto
+on
 /sys/class/input/js3/power/control
-auto
+on
 /sys/class/input/mice/power/control
-auto
+on
 /sys/class/input/mouse0/power/control
-auto
+on
 /sys/class/leds/0003:054C:0268.0006::sony1/power/control
-auto
+on
 /sys/class/leds/0003:054C:0268.0006::sony2/power/control
-auto
+on
 /sys/class/leds/0003:054C:0268.0006::sony3/power/control
-auto
+on
 /sys/class/leds/0003:054C:0268.0006::sony4/power/control
-auto
+on
 /sys/class/leds/0003:054C:0268.0007::sony1/power/control
-auto
+on
 /sys/class/leds/0003:054C:0268.0007::sony2/power/control
-auto
+on
 /sys/class/leds/0003:054C:0268.0007::sony3/power/control
-auto
+on
 /sys/class/leds/0003:054C:0268.0007::sony4/power/control
-auto
+on
 /sys/class/leds/0003:054C:0268.0008::sony1/power/control
-auto
+on
 /sys/class/leds/0003:054C:0268.0008::sony2/power/control
-auto
+on
 /sys/class/leds/0003:054C:0268.0008::sony3/power/control
-auto
+on
 /sys/class/leds/0003:054C:0268.0008::sony4/power/control
-auto
+on
 /sys/class/leds/0003:054C:0268.0009::sony1/power/control
-auto
+on
 /sys/class/leds/0003:054C:0268.0009::sony2/power/control
-auto
+on
 /sys/class/leds/0003:054C:0268.0009::sony3/power/control
-auto
+on
 /sys/class/leds/0003:054C:0268.0009::sony4/power/control
-auto
+on
 /sys/class/mem/full/power/control
-auto
+on
 /sys/class/mem/kmsg/power/control
-auto
+on
 /sys/class/mem/mem/power/control
-auto
+on
 /sys/class/mem/null/power/control
-auto
+on
 /sys/class/mem/port/power/control
-auto
+on
 /sys/class/mem/random/power/control
-auto
+on
 /sys/class/mem/urandom/power/control
-auto
+on
 /sys/class/mem/zero/power/control
-auto
+on
 /sys/class/misc/autofs/power/control
-auto
+on
 /sys/class/misc/cpu_dma_latency/power/control
-auto
+on
 /sys/class/misc/fuse/power/control
-auto
+on
 /sys/class/misc/hpet/power/control
-auto
+on
 /sys/class/misc/kvm/power/control
-auto
+on
 /sys/class/misc/mcelog/power/control
-auto
+on
 /sys/class/misc/microcode/power/control
-auto
+on
 /sys/class/misc/network_latency/power/control
-auto
+on
 /sys/class/misc/network_throughput/power/control
-auto
+on
 /sys/class/misc/psaux/power/control
-auto
+on
 /sys/class/misc/rfkill/power/control
-auto
+on
 /sys/class/misc/snapshot/power/control
-auto
+on
 /sys/class/misc/vga_arbiter/power/control
-auto
+on
 /sys/class/misc/vhba_ctl/power/control
-auto
+on
 /sys/class/msr/msr0/power/control
-auto
+on
 /sys/class/msr/msr1/power/control
-auto
+on
 /sys/class/msr/msr2/power/control
-auto
+on
 /sys/class/msr/msr3/power/control
+on
+/sys/class/msr/msr4/power/control
 auto
-/sys/class/net/enp12s0/power/control
+/sys/class/msr/msr5/power/control
 auto
-/sys/class/net/lo/power/control
+/sys/class/msr/msr6/power/control
 auto
-/sys/class/pci_bus/0000:00/power/control
+/sys/class/msr/msr7/power/control
 auto
+/sys/class/net/enp12s0/power/control
+on
+/sys/class/net/lo/power/control
+on
+/sys/class/pci_bus/0000:00/power/control
+on
 /sys/class/pci_bus/0000:01/power/control
-auto
+on
 /sys/class/pci_bus/0000:02/power/control
-auto
+on
 /sys/class/pci_bus/0000:03/power/control
-auto
+on
 /sys/class/pci_bus/0000:04/power/control
-auto
+on
 /sys/class/pci_bus/0000:05/power/control
-auto
+on
 /sys/class/pci_bus/0000:06/power/control
-auto
+on
 /sys/class/pci_bus/0000:07/power/control
-auto
+on
 /sys/class/pci_bus/0000:08/power/control
-auto
+on
 /sys/class/pci_bus/0000:09/power/control
-auto
+on
 /sys/class/pci_bus/0000:0a/power/control
-auto
+on
 /sys/class/pci_bus/0000:0b/power/control
-auto
+on
 /sys/class/pci_bus/0000:0c/power/control
-auto
+on
 /sys/class/pci_bus/0000:0d/power/control
-auto
+on
 /sys/class/pci_bus/0000:0e/power/control
-auto
+on
 /sys/class/pci_bus/0000:0f/power/control
-auto
+on
 /sys/class/powercap/intel-rapl:0:0/power/control
-auto
+on
 /sys/class/powercap/intel-rapl:0:1/power/control
-auto
+on
 /sys/class/powercap/intel-rapl:0/power/control
-auto
+on
 /sys/class/powercap/intel-rapl/power/control
-auto
+on
 /sys/class/power_supply/sony_controller_battery_00:07:04:57:cc:d7/power/control
-auto
+on
 /sys/class/power_supply/sony_controller_battery_00:07:04:5b:62:61/power/control
-auto
+on
 /sys/class/power_supply/sony_controller_battery_00:19:c1:01:1a:20/power/control
-auto
+on
 /sys/class/power_supply/sony_controller_battery_00:19:c1:04:3b:06/power/control
-auto
+on
 /sys/class/rfkill/rfkill0/power/control
-auto
+on
 /sys/class/rtc/rtc0/power/control
-auto
+on
 /sys/class/scsi_device/0:0:0:0/power/control
-auto
+on
 /sys/class/scsi_device/2:0:0:0/power/control
-auto
+on
 /sys/class/scsi_device/3:0:0:0/power/control
-auto
+on
 /sys/class/scsi_device/4:0:0:0/power/control
-auto
+on
 /sys/class/scsi_device/5:0:0:0/power/control
-auto
+on
 /sys/class/scsi_device/8:0:0:0/power/control
-auto
+on
 /sys/class/scsi_device/8:0:0:1/power/control
-auto
+on
 /sys/class/scsi_device/8:0:0:2/power/control
-auto
+on
 /sys/class/scsi_device/8:0:0:3/power/control
-auto
+on
 /sys/class/scsi_device/9:0:0:0/power/control
-auto
+on
 /sys/class/scsi_device/9:0:1:0/power/control
-auto
+on
 /sys/class/scsi_disk/2:0:0:0/power/control
-auto
+on
 /sys/class/scsi_disk/3:0:0:0/power/control
-auto
+on
 /sys/class/scsi_disk/4:0:0:0/power/control
-auto
+on
 /sys/class/scsi_disk/5:0:0:0/power/control
-auto
+on
 /sys/class/scsi_disk/8:0:0:0/power/control
-auto
+on
 /sys/class/scsi_disk/8:0:0:1/power/control
-auto
+on
 /sys/class/scsi_disk/8:0:0:2/power/control
-auto
+on
 /sys/class/scsi_disk/8:0:0:3/power/control
-auto
+on
 /sys/class/scsi_host/host0/power/control
-auto
+on
 /sys/class/scsi_host/host1/power/control
-auto
+on
 /sys/class/scsi_host/host2/power/control
-auto
+on
 /sys/class/scsi_host/host3/power/control
-auto
+on
 /sys/class/scsi_host/host4/power/control
-auto
+on
 /sys/class/scsi_host/host5/power/control
-auto
+on
 /sys/class/scsi_host/host6/power/control
-auto
+on
 /sys/class/scsi_host/host7/power/control
-auto
+on
 /sys/class/scsi_host/host8/power/control
-auto
+on
 /sys/class/scsi_host/host9/power/control
-auto
+on
 /sys/class/sound/card0/power/control
-auto
+on
 /sys/class/sound/card1/power/control
-auto
+on
 /sys/class/sound/card2/power/control
-auto
+on
 /sys/class/sound/controlC0/power/control
-auto
+on
 /sys/class/sound/controlC1/power/control
-auto
+on
 /sys/class/sound/controlC2/power/control
-auto
+on
 /sys/class/sound/hdaudioC0D0/power/control
-auto
+on
 /sys/class/sound/hdaudioC1D0/power/control
-auto
+on
 /sys/class/sound/hwC0D0/power/control
-auto
+on
 /sys/class/sound/hwC1D0/power/control
-auto
+on
 /sys/class/sound/pcmC0D0c/power/control
-auto
+on
 /sys/class/sound/pcmC0D0p/power/control
-auto
+on
 /sys/class/sound/pcmC0D1p/power/control
-auto
+on
 /sys/class/sound/pcmC0D2c/power/control
-auto
+on
 /sys/class/sound/pcmC1D3p/power/control
-auto
+on
 /sys/class/sound/pcmC1D7p/power/control
-auto
+on
 /sys/class/sound/pcmC2D0c/power/control
-auto
+on
 /sys/class/sound/seq/power/control
-auto
+on
 /sys/class/sound/timer/power/control
-auto
+on
 /sys/class/thermal/cooling_device0/power/control
-auto
+on
 /sys/class/thermal/cooling_device1/power/control
-auto
+on
 /sys/class/thermal/cooling_device2/power/control
-auto
+on
 /sys/class/thermal/cooling_device3/power/control
-auto
+on
 /sys/class/thermal/cooling_device4/power/control
-auto
+on
 /sys/class/thermal/cooling_device5/power/control
-auto
+on
 /sys/class/thermal/cooling_device6/power/control
-auto
+on
 /sys/class/thermal/cooling_device7/power/control
-auto
+on
 /sys/class/thermal/cooling_device8/power/control
-auto
+on
 /sys/class/thermal/thermal_zone0/power/control
-auto
+on
 /sys/class/tty/console/power/control
-auto
+on
 /sys/class/tty/ptmx/power/control
-auto
+on
 /sys/class/tty/tty0/power/control
-auto
+on
 /sys/class/tty/tty10/power/control
-auto
+on
 /sys/class/tty/tty11/power/control
-auto
+on
 /sys/class/tty/tty12/power/control
-auto
+on
 /sys/class/tty/tty13/power/control
-auto
+on
 /sys/class/tty/tty14/power/control
-auto
+on
 /sys/class/tty/tty15/power/control
-auto
+on
 /sys/class/tty/tty16/power/control
-auto
+on
 /sys/class/tty/tty17/power/control
-auto
+on
 /sys/class/tty/tty18/power/control
-auto
+on
 /sys/class/tty/tty19/power/control
-auto
+on
 /sys/class/tty/tty1/power/control
-auto
+on
 /sys/class/tty/tty20/power/control
-auto
+on
 /sys/class/tty/tty21/power/control
-auto
+on
 /sys/class/tty/tty22/power/control
-auto
+on
 /sys/class/tty/tty23/power/control
-auto
+on
 /sys/class/tty/tty24/power/control
-auto
+on
 /sys/class/tty/tty25/power/control
-auto
+on
 /sys/class/tty/tty26/power/control
-auto
+on
 /sys/class/tty/tty27/power/control
-auto
+on
 /sys/class/tty/tty28/power/control
-auto
+on
 /sys/class/tty/tty29/power/control
-auto
+on
 /sys/class/tty/tty2/power/control
-auto
+on
 /sys/class/tty/tty30/power/control
-auto
+on
 /sys/class/tty/tty31/power/control
-auto
+on
 /sys/class/tty/tty32/power/control
-auto
+on
 /sys/class/tty/tty33/power/control
-auto
+on
 /sys/class/tty/tty34/power/control
-auto
+on
 /sys/class/tty/tty35/power/control
-auto
+on
 /sys/class/tty/tty36/power/control
-auto
+on
 /sys/class/tty/tty37/power/control
-auto
+on
 /sys/class/tty/tty38/power/control
-auto
+on
 /sys/class/tty/tty39/power/control
-auto
+on
 /sys/class/tty/tty3/power/control
-auto
+on
 /sys/class/tty/tty40/power/control
-auto
+on
 /sys/class/tty/tty41/power/control
-auto
+on
 /sys/class/tty/tty42/power/control
-auto
+on
 /sys/class/tty/tty43/power/control
-auto
+on
 /sys/class/tty/tty44/power/control
-auto
+on
 /sys/class/tty/tty45/power/control
-auto
+on
 /sys/class/tty/tty46/power/control
-auto
+on
 /sys/class/tty/tty47/power/control
-auto
+on
 /sys/class/tty/tty48/power/control
-auto
+on
 /sys/class/tty/tty49/power/control
-auto
+on
 /sys/class/tty/tty4/power/control
-auto
+on
 /sys/class/tty/tty50/power/control
-auto
+on
 /sys/class/tty/tty51/power/control
-auto
+on
 /sys/class/tty/tty52/power/control
-auto
+on
 /sys/class/tty/tty53/power/control
-auto
+on
 /sys/class/tty/tty54/power/control
-auto
+on
 /sys/class/tty/tty55/power/control
-auto
+on
 /sys/class/tty/tty56/power/control
-auto
+on
 /sys/class/tty/tty57/power/control
-auto
+on
 /sys/class/tty/tty58/power/control
-auto
+on
 /sys/class/tty/tty59/power/control
-auto
+on
 /sys/class/tty/tty5/power/control
-auto
+on
 /sys/class/tty/tty60/power/control
-auto
+on
 /sys/class/tty/tty61/power/control
-auto
+on
 /sys/class/tty/tty62/power/control
-auto
+on
 /sys/class/tty/tty63/power/control
-auto
+on
 /sys/class/tty/tty6/power/control
-auto
+on
 /sys/class/tty/tty7/power/control
-auto
+on
 /sys/class/tty/tty8/power/control
-auto
+on
 /sys/class/tty/tty9/power/control
-auto
+on
 /sys/class/tty/tty/power/control
-auto
+on
 /sys/class/tty/ttyS0/power/control
-auto
+on
 /sys/class/tty/ttyS1/power/control
-auto
+on
 /sys/class/tty/ttyS2/power/control
-auto
+on
 /sys/class/tty/ttyS3/power/control
-auto
+on
 /sys/class/usbmisc/hiddev0/power/control
-auto
+on
 /sys/class/usbmisc/hiddev1/power/control
-auto
+on
 /sys/class/usbmisc/hiddev2/power/control
-auto
+on
 /sys/class/usbmisc/hiddev3/power/control
-auto
+on
 /sys/class/usbmisc/hiddev4/power/control
-auto
+on
 /sys/class/vc/vcs1/power/control
-auto
+on
 /sys/class/vc/vcs2/power/control
-auto
+on
 /sys/class/vc/vcs3/power/control
-auto
+on
 /sys/class/vc/vcs4/power/control
-auto
+on
 /sys/class/vc/vcs5/power/control
-auto
+on
 /sys/class/vc/vcs6/power/control
-auto
+on
 /sys/class/vc/vcsa1/power/control
-auto
+on
 /sys/class/vc/vcsa2/power/control
-auto
+on
 /sys/class/vc/vcsa3/power/control
-auto
+on
 /sys/class/vc/vcsa4/power/control
-auto
+on
 /sys/class/vc/vcsa5/power/control
-auto
+on
 /sys/class/vc/vcsa6/power/control
-auto
+on
 /sys/class/vc/vcsa/power/control
-auto
+on
 /sys/class/vc/vcs/power/control
-auto
+on
 /sys/class/video4linux/vbi0/power/control
-auto
+on
 /sys/class/video4linux/video0/power/control
-auto
+on
 /sys/class/video4linux/video24/power/control
-auto
+on
 /sys/class/video4linux/video32/power/control
-auto
+on
 /sys/class/vtconsole/vtcon0/power/control
-auto
+on
 /sys/class/vtconsole/vtcon1/power/control
-auto
+on
 /sys/class/wmi/F6CB5C3C-9CAE-4EBD-B577-931EA32A2CC0/power/control
-auto
+on
 Runtime power management for devices (by bus)
 /sys/bus/acpi/devices/ABCDEFGH:00/power/control
-auto
+on
 /sys/bus/acpi/devices/device:00/power/control
-auto
+on
 /sys/bus/acpi/devices/device:01/power/control
-auto
+on
 /sys/bus/acpi/devices/device:02/power/control
-auto
+on
 /sys/bus/acpi/devices/device:03/power/control
-auto
+on
 /sys/bus/acpi/devices/device:04/power/control
-auto
+on
 /sys/bus/acpi/devices/device:05/power/control
-auto
+on
 /sys/bus/acpi/devices/device:06/power/control
-auto
+on
 /sys/bus/acpi/devices/device:07/power/control
-auto
+on
 /sys/bus/acpi/devices/device:08/power/control
-auto
+on
 /sys/bus/acpi/devices/device:09/power/control
-auto
+on
 /sys/bus/acpi/devices/device:0a/power/control
-auto
+on
 /sys/bus/acpi/devices/device:0b/power/control
-auto
+on
 /sys/bus/acpi/devices/device:0c/power/control
-auto
+on
 /sys/bus/acpi/devices/device:0d/power/control
-auto
+on
 /sys/bus/acpi/devices/device:0e/power/control
-auto
+on
 /sys/bus/acpi/devices/device:0f/power/control
-auto
+on
 /sys/bus/acpi/devices/device:10/power/control
-auto
+on
 /sys/bus/acpi/devices/device:11/power/control
-auto
+on
 /sys/bus/acpi/devices/device:12/power/control
-auto
+on
 /sys/bus/acpi/devices/device:13/power/control
-auto
+on
 /sys/bus/acpi/devices/device:14/power/control
-auto
+on
 /sys/bus/acpi/devices/device:15/power/control
-auto
+on
 /sys/bus/acpi/devices/device:16/power/control
-auto
+on
 /sys/bus/acpi/devices/device:17/power/control
-auto
+on
 /sys/bus/acpi/devices/device:18/power/control
-auto
+on
 /sys/bus/acpi/devices/device:19/power/control
-auto
+on
 /sys/bus/acpi/devices/device:1a/power/control
-auto
+on
 /sys/bus/acpi/devices/device:1b/power/control
-auto
+on
 /sys/bus/acpi/devices/device:1c/power/control
-auto
+on
 /sys/bus/acpi/devices/device:1d/power/control
-auto
+on
 /sys/bus/acpi/devices/device:1e/power/control
-auto
+on
 /sys/bus/acpi/devices/device:1f/power/control
-auto
+on
 /sys/bus/acpi/devices/device:20/power/control
-auto
+on
 /sys/bus/acpi/devices/device:21/power/control
-auto
+on
 /sys/bus/acpi/devices/device:22/power/control
-auto
+on
 /sys/bus/acpi/devices/device:23/power/control
-auto
+on
 /sys/bus/acpi/devices/device:24/power/control
-auto
+on
 /sys/bus/acpi/devices/device:25/power/control
-auto
+on
 /sys/bus/acpi/devices/device:26/power/control
-auto
+on
 /sys/bus/acpi/devices/device:27/power/control
-auto
+on
 /sys/bus/acpi/devices/device:28/power/control
-auto
+on
 /sys/bus/acpi/devices/device:29/power/control
-auto
+on
 /sys/bus/acpi/devices/device:2a/power/control
-auto
+on
 /sys/bus/acpi/devices/device:2b/power/control
-auto
+on
 /sys/bus/acpi/devices/device:2c/power/control
-auto
+on
 /sys/bus/acpi/devices/device:2d/power/control
-auto
+on
 /sys/bus/acpi/devices/device:2e/power/control
-auto
+on
 /sys/bus/acpi/devices/device:2f/power/control
-auto
+on
 /sys/bus/acpi/devices/device:30/power/control
-auto
+on
 /sys/bus/acpi/devices/device:31/power/control
-auto
+on
 /sys/bus/acpi/devices/device:32/power/control
-auto
+on
 /sys/bus/acpi/devices/device:33/power/control
-auto
+on
 /sys/bus/acpi/devices/device:34/power/control
-auto
+on
 /sys/bus/acpi/devices/device:35/power/control
-auto
+on
 /sys/bus/acpi/devices/device:36/power/control
-auto
+on
 /sys/bus/acpi/devices/device:37/power/control
-auto
+on
 /sys/bus/acpi/devices/device:38/power/control
-auto
+on
 /sys/bus/acpi/devices/device:39/power/control
-auto
+on
 /sys/bus/acpi/devices/device:3a/power/control
-auto
+on
 /sys/bus/acpi/devices/device:3b/power/control
-auto
+on
 /sys/bus/acpi/devices/device:3c/power/control
-auto
+on
 /sys/bus/acpi/devices/device:3d/power/control
-auto
+on
 /sys/bus/acpi/devices/device:3e/power/control
-auto
+on
 /sys/bus/acpi/devices/device:3f/power/control
-auto
+on
 /sys/bus/acpi/devices/device:40/power/control
-auto
+on
 /sys/bus/acpi/devices/device:41/power/control
-auto
+on
 /sys/bus/acpi/devices/device:42/power/control
-auto
+on
 /sys/bus/acpi/devices/device:43/power/control
-auto
+on
 /sys/bus/acpi/devices/device:44/power/control
-auto
+on
 /sys/bus/acpi/devices/device:45/power/control
-auto
+on
 /sys/bus/acpi/devices/device:46/power/control
-auto
+on
 /sys/bus/acpi/devices/device:47/power/control
-auto
+on
 /sys/bus/acpi/devices/device:48/power/control
-auto
+on
 /sys/bus/acpi/devices/device:49/power/control
-auto
+on
 /sys/bus/acpi/devices/device:4a/power/control
-auto
+on
 /sys/bus/acpi/devices/device:4b/power/control
-auto
+on
 /sys/bus/acpi/devices/device:4c/power/control
-auto
+on
 /sys/bus/acpi/devices/device:4d/power/control
-auto
+on
 /sys/bus/acpi/devices/device:4e/power/control
-auto
+on
 /sys/bus/acpi/devices/device:4f/power/control
-auto
+on
 /sys/bus/acpi/devices/device:50/power/control
-auto
+on
 /sys/bus/acpi/devices/INT0800:00/power/control
-auto
+on
 /sys/bus/acpi/devices/INT33A0:00/power/control
-auto
+on
 /sys/bus/acpi/devices/INT3F0D:00/power/control
-auto
+on
 /sys/bus/acpi/devices/INTC0102:00/power/control
-auto
+on
 /sys/bus/acpi/devices/LNXCPU:00/power/control
-auto
+on
 /sys/bus/acpi/devices/LNXCPU:01/power/control
-auto
+on
 /sys/bus/acpi/devices/LNXCPU:02/power/control
-auto
+on
 /sys/bus/acpi/devices/LNXCPU:03/power/control
-auto
+on
 /sys/bus/acpi/devices/LNXCPU:04/power/control
-auto
+on
 /sys/bus/acpi/devices/LNXCPU:05/power/control
-auto
+on
 /sys/bus/acpi/devices/LNXCPU:06/power/control
-auto
+on
 /sys/bus/acpi/devices/LNXCPU:07/power/control
-auto
+on
 /sys/bus/acpi/devices/LNXPWRBN:00/power/control
-auto
+on
 /sys/bus/acpi/devices/LNXSYBUS:00/power/control
-auto
+on
 /sys/bus/acpi/devices/LNXSYBUS:01/power/control
-auto
+on
 /sys/bus/acpi/devices/LNXSYSTM:00/power/control
-auto
+on
 /sys/bus/acpi/devices/LNXVIDEO:00/power/control
-auto
+on
 /sys/bus/acpi/devices/NTN0530:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0000:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0100:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0103:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0200:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0303:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0501:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0510:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0700:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0A08:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0B00:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C01:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C01:01/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C02:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C02:01/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C02:02/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C02:03/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C04:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C09:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C0A:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C0A:01/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C0A:02/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C0C:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C0D:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C0F:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C0F:01/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C0F:02/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C0F:03/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C0F:04/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C0F:05/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C0F:06/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C0F:07/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C14:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0C31:00/power/control
-auto
+on
 /sys/bus/acpi/devices/PNP0F03:00/power/control
-auto
+on
 /sys/bus/clockevents/devices/broadcast/power/control
-auto
+on
 /sys/bus/clockevents/devices/clockevent0/power/control
-auto
+on
 /sys/bus/clockevents/devices/clockevent1/power/control
-auto
+on
 /sys/bus/clockevents/devices/clockevent2/power/control
-auto
+on
 /sys/bus/clockevents/devices/clockevent3/power/control
-auto
+on
 /sys/bus/clockevents/devices/clockevent4/power/control
-auto
+on
 /sys/bus/clockevents/devices/clockevent5/power/control
-auto
+on
 /sys/bus/clockevents/devices/clockevent6/power/control
-auto
+on
 /sys/bus/clockevents/devices/clockevent7/power/control
-auto
+on
 /sys/bus/clocksource/devices/clocksource0/power/control
-auto
+on
 /sys/bus/cpu/devices/cpu0/power/control
-auto
+on
 /sys/bus/cpu/devices/cpu1/power/control
-auto
+on
 /sys/bus/cpu/devices/cpu2/power/control
-auto
+on
 /sys/bus/cpu/devices/cpu3/power/control
-auto
+on
 /sys/bus/cpu/devices/cpu4/power/control
-auto
+on
 /sys/bus/cpu/devices/cpu5/power/control
-auto
+on
 /sys/bus/cpu/devices/cpu6/power/control
-auto
+on
 /sys/bus/cpu/devices/cpu7/power/control
-auto
+on
 /sys/bus/event_source/devices/breakpoint/power/control
-auto
+on
 /sys/bus/event_source/devices/cpu/power/control
-auto
+on
 /sys/bus/event_source/devices/power/power/control
-auto
+on
 /sys/bus/event_source/devices/software/power/control
-auto
+on
 /sys/bus/event_source/devices/tracepoint/power/control
-auto
+on
 /sys/bus/event_source/devices/uncore_cbox_0/power/control
-auto
+on
 /sys/bus/event_source/devices/uncore_cbox_1/power/control
-auto
+on
 /sys/bus/event_source/devices/uncore_cbox_2/power/control
-auto
+on
 /sys/bus/event_source/devices/uncore_cbox_3/power/control
-auto
+on
 /sys/bus/event_source/devices/uncore_imc/power/control
-auto
+on
 /sys/bus/hid/devices/0003:046D:C52B.0001/power/control
-auto
+on
 /sys/bus/hid/devices/0003:046D:C52B.0002/power/control
-auto
+on
 /sys/bus/hid/devices/0003:046D:C52B.0003/power/control
-auto
+on
 /sys/bus/hid/devices/0003:046D:C52B.0004/power/control
-auto
+on
 /sys/bus/hid/devices/0003:046D:C52B.0005/power/control
-auto
+on
 /sys/bus/hid/devices/0003:054C:0268.0006/power/control
-auto
+on
 /sys/bus/hid/devices/0003:054C:0268.0007/power/control
-auto
+on
 /sys/bus/hid/devices/0003:054C:0268.0008/power/control
-auto
+on
 /sys/bus/hid/devices/0003:054C:0268.0009/power/control
-auto
+on
 /sys/bus/i2c/devices/1-0012/power/control
-auto
+on
 /sys/bus/i2c/devices/1-001a/power/control
-auto
+on
 /sys/bus/i2c/devices/1-0021/power/control
-auto
+on
 /sys/bus/i2c/devices/1-0043/power/control
-auto
+on
 /sys/bus/i2c/devices/1-005b/power/control
-auto
+on
 /sys/bus/i2c/devices/1-005c/power/control
-auto
+on
 /sys/bus/i2c/devices/1-0060/power/control
-auto
+on
 /sys/bus/i2c/devices/i2c-0/power/control
-auto
+on
 /sys/bus/i2c/devices/i2c-1/power/control
-auto
+on
 /sys/bus/i2c/devices/i2c-2/power/control
-auto
+on
 /sys/bus/i2c/devices/i2c-3/power/control
-auto
+on
 /sys/bus/i2c/devices/i2c-4/power/control
-auto
+on
 /sys/bus/machinecheck/devices/machinecheck0/power/control
-auto
+on
 /sys/bus/machinecheck/devices/machinecheck1/power/control
-auto
+on
 /sys/bus/machinecheck/devices/machinecheck2/power/control
-auto
+on
 /sys/bus/machinecheck/devices/machinecheck3/power/control
+on
+/sys/bus/machinecheck/devices/machinecheck4/power/control
 auto
-/sys/bus/memory/devices/memory0/power/control
+/sys/bus/machinecheck/devices/machinecheck5/power/control
 auto
-/sys/bus/memory/devices/memory100/power/control
+/sys/bus/machinecheck/devices/machinecheck6/power/control
 auto
-/sys/bus/memory/devices/memory101/power/control
+/sys/bus/machinecheck/devices/machinecheck7/power/control
 auto
+/sys/bus/memory/devices/memory0/power/control
+on
+/sys/bus/memory/devices/memory100/power/control
+on
+/sys/bus/memory/devices/memory101/power/control
+on
 /sys/bus/memory/devices/memory102/power/control
-auto
+on
 /sys/bus/memory/devices/memory103/power/control
-auto
+on
 /sys/bus/memory/devices/memory104/power/control
-auto
+on
 /sys/bus/memory/devices/memory105/power/control
-auto
+on
 /sys/bus/memory/devices/memory106/power/control
-auto
+on
 /sys/bus/memory/devices/memory107/power/control
-auto
+on
 /sys/bus/memory/devices/memory108/power/control
-auto
+on
 /sys/bus/memory/devices/memory109/power/control
-auto
+on
 /sys/bus/memory/devices/memory10/power/control
-auto
+on
 /sys/bus/memory/devices/memory110/power/control
-auto
+on
 /sys/bus/memory/devices/memory111/power/control
-auto
+on
 /sys/bus/memory/devices/memory112/power/control
-auto
+on
 /sys/bus/memory/devices/memory113/power/control
-auto
+on
 /sys/bus/memory/devices/memory114/power/control
-auto
+on
 /sys/bus/memory/devices/memory115/power/control
-auto
+on
 /sys/bus/memory/devices/memory116/power/control
-auto
+on
 /sys/bus/memory/devices/memory117/power/control
-auto
+on
 /sys/bus/memory/devices/memory118/power/control
-auto
+on
 /sys/bus/memory/devices/memory119/power/control
-auto
+on
 /sys/bus/memory/devices/memory11/power/control
-auto
+on
 /sys/bus/memory/devices/memory120/power/control
-auto
+on
 /sys/bus/memory/devices/memory121/power/control
-auto
+on
 /sys/bus/memory/devices/memory122/power/control
-auto
+on
 /sys/bus/memory/devices/memory123/power/control
-auto
+on
 /sys/bus/memory/devices/memory124/power/control
-auto
+on
 /sys/bus/memory/devices/memory125/power/control
-auto
+on
 /sys/bus/memory/devices/memory126/power/control
-auto
+on
 /sys/bus/memory/devices/memory127/power/control
-auto
+on
 /sys/bus/memory/devices/memory128/power/control
-auto
+on
 /sys/bus/memory/devices/memory129/power/control
-auto
+on
 /sys/bus/memory/devices/memory12/power/control
-auto
+on
 /sys/bus/memory/devices/memory130/power/control
-auto
+on
 /sys/bus/memory/devices/memory131/power/control
-auto
+on
 /sys/bus/memory/devices/memory13/power/control
-auto
+on
 /sys/bus/memory/devices/memory14/power/control
-auto
+on
 /sys/bus/memory/devices/memory15/power/control
-auto
+on
 /sys/bus/memory/devices/memory16/power/control
-auto
+on
 /sys/bus/memory/devices/memory17/power/control
-auto
+on
 /sys/bus/memory/devices/memory18/power/control
-auto
+on
 /sys/bus/memory/devices/memory19/power/control
-auto
+on
 /sys/bus/memory/devices/memory1/power/control
-auto
+on
 /sys/bus/memory/devices/memory20/power/control
-auto
+on
 /sys/bus/memory/devices/memory21/power/control
-auto
+on
 /sys/bus/memory/devices/memory22/power/control
-auto
+on
 /sys/bus/memory/devices/memory23/power/control
-auto
+on
 /sys/bus/memory/devices/memory24/power/control
-auto
+on
 /sys/bus/memory/devices/memory25/power/control
-auto
+on
 /sys/bus/memory/devices/memory26/power/control
-auto
+on
 /sys/bus/memory/devices/memory27/power/control
-auto
+on
 /sys/bus/memory/devices/memory2/power/control
-auto
+on
 /sys/bus/memory/devices/memory32/power/control
-auto
+on
 /sys/bus/memory/devices/memory33/power/control
-auto
+on
 /sys/bus/memory/devices/memory34/power/control
-auto
+on
 /sys/bus/memory/devices/memory35/power/control
-auto
+on
 /sys/bus/memory/devices/memory36/power/control
-auto
+on
 /sys/bus/memory/devices/memory37/power/control
-auto
+on
 /sys/bus/memory/devices/memory38/power/control
-auto
+on
 /sys/bus/memory/devices/memory39/power/control
-auto
+on
 /sys/bus/memory/devices/memory3/power/control
-auto
+on
 /sys/bus/memory/devices/memory40/power/control
-auto
+on
 /sys/bus/memory/devices/memory41/power/control
-auto
+on
 /sys/bus/memory/devices/memory42/power/control
-auto
+on
 /sys/bus/memory/devices/memory43/power/control
-auto
+on
 /sys/bus/memory/devices/memory44/power/control
-auto
+on
 /sys/bus/memory/devices/memory45/power/control
-auto
+on
 /sys/bus/memory/devices/memory46/power/control
-auto
+on
 /sys/bus/memory/devices/memory47/power/control
-auto
+on
 /sys/bus/memory/devices/memory48/power/control
-auto
+on
 /sys/bus/memory/devices/memory49/power/control
-auto
+on
 /sys/bus/memory/devices/memory4/power/control
-auto
+on
 /sys/bus/memory/devices/memory50/power/control
-auto
+on
 /sys/bus/memory/devices/memory51/power/control
-auto
+on
 /sys/bus/memory/devices/memory52/power/control
-auto
+on
 /sys/bus/memory/devices/memory53/power/control
-auto
+on
 /sys/bus/memory/devices/memory54/power/control
-auto
+on
 /sys/bus/memory/devices/memory55/power/control
-auto
+on
 /sys/bus/memory/devices/memory56/power/control
-auto
+on
 /sys/bus/memory/devices/memory57/power/control
-auto
+on
 /sys/bus/memory/devices/memory58/power/control
-auto
+on
 /sys/bus/memory/devices/memory59/power/control
-auto
+on
 /sys/bus/memory/devices/memory5/power/control
-auto
+on
 /sys/bus/memory/devices/memory60/power/control
-auto
+on
 /sys/bus/memory/devices/memory61/power/control
-auto
+on
 /sys/bus/memory/devices/memory62/power/control
-auto
+on
 /sys/bus/memory/devices/memory63/power/control
-auto
+on
 /sys/bus/memory/devices/memory64/power/control
-auto
+on
 /sys/bus/memory/devices/memory65/power/control
-auto
+on
 /sys/bus/memory/devices/memory66/power/control
-auto
+on
 /sys/bus/memory/devices/memory67/power/control
-auto
+on
 /sys/bus/memory/devices/memory68/power/control
-auto
+on
 /sys/bus/memory/devices/memory69/power/control
-auto
+on
 /sys/bus/memory/devices/memory6/power/control
-auto
+on
 /sys/bus/memory/devices/memory70/power/control
-auto
+on
 /sys/bus/memory/devices/memory71/power/control
-auto
+on
 /sys/bus/memory/devices/memory72/power/control
-auto
+on
 /sys/bus/memory/devices/memory73/power/control
-auto
+on
 /sys/bus/memory/devices/memory74/power/control
-auto
+on
 /sys/bus/memory/devices/memory75/power/control
-auto
+on
 /sys/bus/memory/devices/memory76/power/control
-auto
+on
 /sys/bus/memory/devices/memory77/power/control
-auto
+on
 /sys/bus/memory/devices/memory78/power/control
-auto
+on
 /sys/bus/memory/devices/memory79/power/control
-auto
+on
 /sys/bus/memory/devices/memory7/power/control
-auto
+on
 /sys/bus/memory/devices/memory80/power/control
-auto
+on
 /sys/bus/memory/devices/memory81/power/control
-auto
+on
 /sys/bus/memory/devices/memory82/power/control
-auto
+on
 /sys/bus/memory/devices/memory83/power/control
-auto
+on
 /sys/bus/memory/devices/memory84/power/control
-auto
+on
 /sys/bus/memory/devices/memory85/power/control
-auto
+on
 /sys/bus/memory/devices/memory86/power/control
-auto
+on
 /sys/bus/memory/devices/memory87/power/control
-auto
+on
 /sys/bus/memory/devices/memory88/power/control
-auto
+on
 /sys/bus/memory/devices/memory89/power/control
-auto
+on
 /sys/bus/memory/devices/memory8/power/control
-auto
+on
 /sys/bus/memory/devices/memory90/power/control
-auto
+on
 /sys/bus/memory/devices/memory91/power/control
-auto
+on
 /sys/bus/memory/devices/memory92/power/control
-auto
+on
 /sys/bus/memory/devices/memory93/power/control
-auto
+on
 /sys/bus/memory/devices/memory94/power/control
-auto
+on
 /sys/bus/memory/devices/memory95/power/control
-auto
+on
 /sys/bus/memory/devices/memory96/power/control
-auto
+on
 /sys/bus/memory/devices/memory97/power/control
-auto
+on
 /sys/bus/memory/devices/memory98/power/control
-auto
+on
 /sys/bus/memory/devices/memory99/power/control
-auto
+on
 /sys/bus/memory/devices/memory9/power/control
-auto
+on
 /sys/bus/pci/devices/0000:00:00.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:00:01.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:00:16.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:00:1a.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:00:1b.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:00:1c.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:00:1c.4/power/control
-auto
+on
 /sys/bus/pci/devices/0000:00:1c.5/power/control
-auto
+on
 /sys/bus/pci/devices/0000:00:1c.6/power/control
-auto
+on
 /sys/bus/pci/devices/0000:00:1c.7/power/control
-auto
+on
 /sys/bus/pci/devices/0000:00:1d.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:00:1f.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:00:1f.2/power/control
-auto
+on
 /sys/bus/pci/devices/0000:00:1f.3/power/control
-auto
+on
 /sys/bus/pci/devices/0000:01:00.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:01:00.1/power/control
-auto
+on
 /sys/bus/pci/devices/0000:03:00.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:04:00.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:05:00.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:06:00.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:07:01.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:07:04.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:07:05.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:07:06.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:07:07.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:07:08.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:07:09.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:09:00.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:0a:00.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:0a:01.0/power/control
-auto
+on
 /sys/bus/pci/devices/0000:0c:00.0/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:00:01.0:pcie01/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:00:01.0:pcie08/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:00:1c.0:pcie01/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:00:1c.4:pcie01/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:00:1c.5:pcie01/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:00:1c.6:pcie01/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:00:1c.7:pcie01/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:06:00.0:pcie12/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:06:00.0:pcie18/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:07:01.0:pcie22/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:07:01.0:pcie28/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:07:04.0:pcie22/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:07:04.0:pcie28/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:07:05.0:pcie22/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:07:05.0:pcie28/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:07:06.0:pcie22/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:07:06.0:pcie28/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:07:07.0:pcie22/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:07:07.0:pcie28/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:07:08.0:pcie22/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:07:08.0:pcie28/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:07:09.0:pcie22/power/control
-auto
+on
 /sys/bus/pci_express/devices/0000:07:09.0:pcie28/power/control
-auto
+on
 /sys/bus/platform/devices/alarmtimer/power/control
-auto
+on
 /sys/bus/platform/devices/coretemp.0/power/control
-auto
+on
 /sys/bus/platform/devices/efi-framebuffer.0/power/control
-auto
+on
 /sys/bus/platform/devices/i8042/power/control
-auto
+on
 /sys/bus/platform/devices/INT0800:00/power/control
-auto
+on
 /sys/bus/platform/devices/INT33A0:00/power/control
-auto
+on
 /sys/bus/platform/devices/iTCO_wdt/power/control
-auto
+on
 /sys/bus/platform/devices/microcode/power/control
-auto
+on
 /sys/bus/platform/devices/nct6775.656/power/control
-auto
+on
 /sys/bus/platform/devices/pcspkr/power/control
-auto
+on
 /sys/bus/platform/devices/PNP0103:00/power/control
-auto
+on
 /sys/bus/platform/devices/PNP0C04:00/power/control
-auto
+on
 /sys/bus/platform/devices/PNP0C0C:00/power/control
-auto
+on
 /sys/bus/platform/devices/PNP0C14:00/power/control
-auto
+on
 /sys/bus/platform/devices/regulatory.0/power/control
-auto
+on
 /sys/bus/platform/devices/serial8250/power/control
-auto
+on
 /sys/bus/platform/devices/vhba/power/control
-auto
+on
 /sys/bus/pnp/devices/00:00/power/control
-auto
+on
 /sys/bus/pnp/devices/00:01/power/control
-auto
+on
 /sys/bus/pnp/devices/00:02/power/control
-auto
+on
 /sys/bus/pnp/devices/00:03/power/control
-auto
+on
 /sys/bus/pnp/devices/00:04/power/control
-auto
+on
 /sys/bus/pnp/devices/00:05/power/control
-auto
+on
 /sys/bus/pnp/devices/00:06/power/control
-auto
+on
 /sys/bus/scsi/devices/0:0:0:0/power/control
-auto
+on
 /sys/bus/scsi/devices/2:0:0:0/power/control
-auto
+on
 /sys/bus/scsi/devices/3:0:0:0/power/control
-auto
+on
 /sys/bus/scsi/devices/4:0:0:0/power/control
-auto
+on
 /sys/bus/scsi/devices/5:0:0:0/power/control
-auto
+on
 /sys/bus/scsi/devices/8:0:0:0/power/control
-auto
+on
 /sys/bus/scsi/devices/8:0:0:1/power/control
-auto
+on
 /sys/bus/scsi/devices/8:0:0:2/power/control
-auto
+on
 /sys/bus/scsi/devices/8:0:0:3/power/control
-auto
+on
 /sys/bus/scsi/devices/9:0:0:0/power/control
-auto
+on
 /sys/bus/scsi/devices/9:0:1:0/power/control
-auto
+on
 /sys/bus/scsi/devices/host0/power/control
-auto
+on
 /sys/bus/scsi/devices/host1/power/control
-auto
+on
 /sys/bus/scsi/devices/host2/power/control
-auto
+on
 /sys/bus/scsi/devices/host3/power/control
-auto
+on
 /sys/bus/scsi/devices/host4/power/control
-auto
+on
 /sys/bus/scsi/devices/host5/power/control
-auto
+on
 /sys/bus/scsi/devices/host6/power/control
-auto
+on
 /sys/bus/scsi/devices/host7/power/control
-auto
+on
 /sys/bus/scsi/devices/host8/power/control
-auto
+on
 /sys/bus/scsi/devices/host9/power/control
-auto
+on
 /sys/bus/scsi/devices/target0:0:0/power/control
-auto
+on
 /sys/bus/scsi/devices/target2:0:0/power/control
-auto
+on
 /sys/bus/scsi/devices/target3:0:0/power/control
-auto
+on
 /sys/bus/scsi/devices/target4:0:0/power/control
-auto
+on
 /sys/bus/scsi/devices/target5:0:0/power/control
-auto
+on
 /sys/bus/scsi/devices/target8:0:0/power/control
-auto
+on
 /sys/bus/scsi/devices/target9:0:0/power/control
-auto
+on
 /sys/bus/scsi/devices/target9:0:1/power/control
-auto
+on
 /sys/bus/serio/devices/serio0/power/control
-auto
+on
 /sys/bus/serio/devices/serio1/power/control
-auto
+on
 /sys/bus/usb/devices/1-1.4/power/control
-auto
+on
 /sys/bus/usb/devices/1-1/power/control
-auto
+on
 /sys/bus/usb/devices/2-1/power/control
-auto
+on
 /sys/bus/usb/devices/4-1.1/power/control
-auto
+on
 /sys/bus/usb/devices/4-1.2/power/control
-auto
+on
 /sys/bus/usb/devices/4-1.7.1/power/control
-auto
+on
 /sys/bus/usb/devices/4-1.7.2/power/control
-auto
+on
 /sys/bus/usb/devices/4-1.7.3/power/control
-auto
+on
 /sys/bus/usb/devices/4-1.7.4/power/control
-auto
+on
 /sys/bus/usb/devices/4-1.7/power/control
-auto
+on
 /sys/bus/usb/devices/4-1/power/control
-auto
+on
 /sys/bus/usb/devices/usb1/power/control
-auto
+on
 /sys/bus/usb/devices/usb2/power/control
-auto
+on
 /sys/bus/usb/devices/usb3/power/control
-auto
+on
 /sys/bus/usb/devices/usb4/power/control
-auto
+on
 /sys/bus/usb/devices/usb5/power/control
-auto
+on
 /sys/bus/usb/devices/usb6/power/control
-auto
+on
 /sys/bus/workqueue/devices/writeback/power/control
-auto
+on
 USB Autosuspend (may disable some older devices!)
 /sys/bus/usb/devices/1-1.4/power/autosuspend
-0
+-1
 /sys/bus/usb/devices/1-1/power/autosuspend
-0
+-1
 /sys/bus/usb/devices/2-1/power/autosuspend
-0
+-1
 /sys/bus/usb/devices/4-1.1/power/autosuspend
-1
+-1
 /sys/bus/usb/devices/4-1.2/power/autosuspend
-0
+-1
 /sys/bus/usb/devices/4-1.7.1/power/autosuspend
-0
+-1
 /sys/bus/usb/devices/4-1.7.2/power/autosuspend
-1
+-1
 /sys/bus/usb/devices/4-1.7.3/power/autosuspend
-0
+-1
 /sys/bus/usb/devices/4-1.7.4/power/autosuspend
-0
+-1
 /sys/bus/usb/devices/4-1.7/power/autosuspend
-0
+-1
 /sys/bus/usb/devices/4-1/power/autosuspend
-0
+-1
 /sys/bus/usb/devices/usb1/power/autosuspend
-0
+-1
 /sys/bus/usb/devices/usb2/power/autosuspend
-0
+-1
 /sys/bus/usb/devices/usb3/power/autosuspend
-0
+-1
 /sys/bus/usb/devices/usb4/power/autosuspend
-0
+-1
 /sys/bus/usb/devices/usb5/power/autosuspend
-0
+-1
 /sys/bus/usb/devices/usb6/power/autosuspend
-0
+-1
 /sys/bus/usb/devices/1-1.4/power/autosuspend_delay_ms
-1
+-1000
 /sys/bus/usb/devices/1-1/power/autosuspend_delay_ms
-1
+-1000
 /sys/bus/usb/devices/2-1/power/autosuspend_delay_ms
-1
+-1000
 /sys/bus/usb/devices/4-1.1/power/autosuspend_delay_ms
-1000
+-1000
 /sys/bus/usb/devices/4-1.2/power/autosuspend_delay_ms
-1
+-1000
 /sys/bus/usb/devices/4-1.7.1/power/autosuspend_delay_ms
-1
+-1000
 /sys/bus/usb/devices/4-1.7.2/power/autosuspend_delay_ms
-1000
+-1000
 /sys/bus/usb/devices/4-1.7.3/power/autosuspend_delay_ms
-1
+-1000
 /sys/bus/usb/devices/4-1.7.4/power/autosuspend_delay_ms
-1
+-1000
 /sys/bus/usb/devices/4-1.7/power/autosuspend_delay_ms
-1
+-1000
 /sys/bus/usb/devices/4-1/power/autosuspend_delay_ms
-1
+-1000
 /sys/bus/usb/devices/usb1/power/autosuspend_delay_ms
-1
+-1000
 /sys/bus/usb/devices/usb2/power/autosuspend_delay_ms
-1
+-1000
 /sys/bus/usb/devices/usb3/power/autosuspend_delay_ms
-1
+-1000
 /sys/bus/usb/devices/usb4/power/autosuspend_delay_ms
-1
+-1000
 /sys/bus/usb/devices/usb5/power/autosuspend_delay_ms
-1
+-1000
 /sys/bus/usb/devices/usb6/power/autosuspend_delay_ms
-1
+-1000
 Power saving for modules
 /sys/module/snd_hda_intel/parameters/power_save
-1
+0
 Network powersaving
 /sys/class/net/enp12s0
 	Supports Wake-on: g
-	Wake-on: d/sys/class/net/enp12s0/device/power/wakeup
-disabled
+	Wake-on: g/sys/class/net/enp12s0/device/power/wakeup
+enabled
 LEDs
 /sys/class/leds/0003:054C:0268.0006::sony1/brightness
-0
+1
 /sys/class/leds/0003:054C:0268.0006::sony2/brightness
-0
+255
 /sys/class/leds/0003:054C:0268.0006::sony3/brightness
-0
+255
 /sys/class/leds/0003:054C:0268.0006::sony4/brightness
-0
+255
 /sys/class/leds/0003:054C:0268.0007::sony1/brightness
-0
+1
 /sys/class/leds/0003:054C:0268.0007::sony2/brightness
-0
+255
 /sys/class/leds/0003:054C:0268.0007::sony3/brightness
-0
+255
 /sys/class/leds/0003:054C:0268.0007::sony4/brightness
-0
+255
 /sys/class/leds/0003:054C:0268.0008::sony1/brightness
-0
+1
 /sys/class/leds/0003:054C:0268.0008::sony2/brightness
-0
+255
 /sys/class/leds/0003:054C:0268.0008::sony3/brightness
-0
+255
 /sys/class/leds/0003:054C:0268.0008::sony4/brightness
-0
+255
 /sys/class/leds/0003:054C:0268.0009::sony1/brightness
-0
+1
 /sys/class/leds/0003:054C:0268.0009::sony2/brightness
-0
+255
 /sys/class/leds/0003:054C:0268.0009::sony3/brightness
-0
+255
 /sys/class/leds/0003:054C:0268.0009::sony4/brightness
-0
+255
 NMI watchdog
 N/A
 Nvidia PowerMizer
-  Attribute 'GPUPowerMizerMode' (Shiroko:0[gpu:0]): 0.
+  Attribute 'GPUPowerMizerMode' (Shiroko:0[gpu:0]): 1.

Last edited by quequotion (2014-12-27 17:38:47)

Offline

#28 2014-12-18 08:29:24

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 712
Website

Re: Indicator-powersave & throttle

Updated!

powersave-indicator depends on libappindicator-gtk3, available from the AUR and polkit-gnome, available from the community repo.

Anyone know to hide a PyGtk submenu when it has no items?

Todo (in no particular order):
::throttle (backend)::
-GPU runtime pm features (nvidia, fglrx, intel, etc?)
::indicator-powersave (frontend)::
-Hide empty menus
-Menu:
: GPU Power: ->
:: GPU Throttle -> Cut/Full[
:: GPU Overclock -> On/Off
-GUI for `throttle check`
-Rebranding and officially fork indicator-cpufreq on launchpad.
-Test on ARM/AMD/PowerPC/etc.
-make translatable?

Last edited by quequotion (2016-05-19 03:19:02)

Offline

#29 2014-12-26 06:03:04

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 712
Website

Re: Indicator-powersave & throttle

GPU Runtime PM support (for nvidia) has landed.

    gpu*)
      case "$1" in \
        gpu-full) NVPM="1" ;; \
        gpu-cut) NVPM="0" ;; esac
      [[ -z $NVPM ]] && \
        case "$2" in \
          full|performance) NVPM="1"; SHIFT="2" ;; \
          cut|powersave) NVPM="0"; SHIFT="2" ;; esac
      [[ -z $NVPM ]] && \
        printf "$0 gpu {cut,full} - GPU runtime powersaving (only Nvidia ATM)\n" || \
      [[ -z "$(command -v nvidia-settings)" ]] && \
        printf "nvidia-settings not found; only nvidia currently supported" || \
      DISPLAY=":0.0" nvidia-settings -a [gpu:0]/GPUPowerMizerMode=$NVPM > /dev/null &
      shift $SHIFT
      wait
      unset NVPM SHIFT
    ;;

Also considering adding GPU Overclocking to the menu, but:
1. There is no recommendable safe setting other than "off".
2. Requires modifications to xorg.conf
3. Repeatedly toggling OC, even at a "stable" setting, could cause instability

nvidia-settings -a "[gpu:0]/GPUGraphicsClockOffset[1]=$NVCLOFFSET" -a "[gpu:0]/GPUMemoryTransferRateOffset[1]=$NVTROFFSET" > /dev/null &

Also, I'd prefer to avoid feature creep, and I feel like the number of toggles could grow infinitely.

Indicator-powersave's primary objective is to provide one big button to switch the system in and out of low-power mode.

Last edited by quequotion (2015-02-22 21:36:12)

Offline

#30 2014-12-27 07:37:27

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 712
Website

Re: Indicator-powersave & throttle

Good idea or bad idea: universally enable D3 Cold?

Good idea:
1. A lower powerstate is a better powerstate (for sleep, hibernation, etc).
2. Let's find drivers with bugs (and unsupported hardware)! Yay!

Bad idea:
1. Does this actually work? Will it cause failure to resuscitate from hibernation?
2. Drivers with bugs and unsupported hardware.


Would this udev rule do it?

# D3 Cold Blanket
SUBSYSTEMS=="*", ATTR{d3cold_allowed}=="0", ATTR{d3cold_allowed}="1"

Preemptive Edit: code blocks should not begin with

[cold]

::EDIT::
The udev rule works and D3 Cold seems to have no adverse affects on my system.

Last edited by quequotion (2015-02-22 21:47:52)

Offline

#31 2014-12-31 18:07:08

firekage
Member
From: Eastern Europe, Poland
Registered: 2013-06-30
Posts: 569

Re: Indicator-powersave & throttle

Sorry for stupid question - how to enable ability of change settings by user? I have to type root password for any change when i right click at powersave applet indicator. I think it is something with policy, but don't know what to change.

Offline

#32 2015-01-01 05:07:51

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 712
Website

Re: Indicator-powersave & throttle

firekage wrote:

Sorry for stupid question - how to enable ability of change settings by user? I have to type root password for any change when i right click at powersave applet indicator. I think it is something with policy, but don't know what to change.

I've updated the polkit rules; locally active users will not have to enter a password to toggle switches.

Last edited by quequotion (2015-01-13 18:21:03)

Offline

#33 2015-01-13 18:40:09

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 712
Website

Re: Indicator-powersave & throttle

My keyboard and mouse are connected by a Logicool Unifying transceiver, which is one of the USB devices that does not properly recover from powersave mode. So I added an exception in throttle to keep the tranciever on, filtering the device by "idVendor:idProduct" (EDIT: simplified method):

      # Runtime power management for devices (with exception for Logitec Unifying Tranciever)
      for i in /sys/{class/*,bus/*/devices}/*/power/control; do [[ -f "${i}" ]]  && \
      [[ "${CONTROL}" == "auto" && \
      -n "$(ls "$(printf "${i}" | sed 's|power.*||g')"/*/ | grep "046D:C52B")" ]] && \
        continue; printf "${CONTROL}" > "${i}" & done &

      # USB Autosuspend (with exception for Logitec Unifying Tranciever)
      for i in /sys/bus/usb/devices/*/power/autosuspend{,_delay_ms}; do [[ -f "${i}" ]] && \
      [[ "${AUTOSUSPEND}" == "1" && \
      -n "$(ls "$(printf "${i}" | sed 's|power.*||g')"/*/ | grep "046D:C52B")" ]] && \
        continue; echo "${AUTOSUSPEND}" > "${i}" & done &

In addition, I keep a USB hub (EDIT: doesn't have it's own directory, old method) and the PS3 controllers it charges on full-power:

      # Runtime power management for devices (with exceptions for devices by VID:PID)
      for i in /sys/{class/*,bus/*/devices}/*/power/control; do [[ -f "${i}" ]]  && \
      [[ "${CONTROL}" == "auto" && \
      -n "$(ls "$(printf "${i}" | sed 's|power.*||g')"/*/ | grep "046D:C52B")" || \
      -n "$(ls "$(printf "${i}" | sed 's|power.*||g')"/*/ | grep "054C:0268")" || \
      -f "$(printf "${i}" | sed 's|/power.*|/id|g')"* && \
      "$(cat "$(printf "${i}" | sed 's|/power.*|/idVendor|g')")" == "0424" && \
      "$(cat "$(printf "${i}" | sed 's|/power.*|/idProduct|g')")" == "a700" ]] && \
        continue; printf "${CONTROL}" > "${i}" & done &

      # USB Autosuspend (with exceptions for devices by VID:PID)
      for i in /sys/bus/usb/devices/*/power/autosuspend{,_delay_ms}; do [[ -f "${i}" ]] && \
      [[ "${AUTOSUSPEND}" == "1" && \
      -n "$(ls "$(printf "${i}" | sed 's|power.*||g')"/*/ | grep "046D:C52B")" || \
      -n "$(ls "$(printf "${i}" | sed 's|power.*||g')"/*/ | grep "054C:0268")" || \
      -f "$(printf "${i}" | sed 's|/power.*|/id|g')"* && \
      "$(cat "$(printf "${i}" | sed 's|/power.*|/idVendor|g')")" == "0424" && \
      "$(cat "$(printf "${i}" | sed 's|/power.*|/idProduct|g')")" == "a700" ]] && \
        continue; echo $AUTOSUSPEND > ${i} & done &

By the way, if you make customizations to throttle, save it in /usr/local/sbin/throttle. The AUR package will not install the default script if you have your own there.

Off-topic: What gives with the "-z" condition? I've read the documentation. It always seems like scripts I write with "-z" conditions work at first, but then have to be rerwitten some time after. It's the only case I've ever known of code to function inconsistently over time.

Last edited by quequotion (2015-09-01 07:04:20)

Offline

#34 2015-02-04 04:51:57

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 712
Website

Re: Indicator-powersave & throttle

New stuff!

Looks like this is not new, but despite the phoronix article I never heard about it until recently.

I'd like to know how ENERGY_PERF_BIAS is set to "normal" at boot.
There doesn't seem to be a sysfs interface, but this is done without the external tool, xf86_energy_perf_policy.

dmesg | grep ENERGY_PERF_BIAS
[    0.020521] ENERGY_PERF_BIAS: Set to 'normal', was 'performance'
ENERGY_PERF_BIAS: View and update with x86_energy_perf_policy(8)

x86_energy_perf_policy can be installed from the [community] repo.

Checking the current setting, x86_energy_perf_policy -r, requires SUID (I'd rather not have throttle check require sudo).

This has already been added to throttle and released with indicator-powersave.

Last edited by quequotion (2015-09-01 07:13:13)

Offline

#35 2015-02-21 18:23:06

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 712
Website

Re: Indicator-powersave & throttle

Debugging powersaving with throttle:

Because throttle toggles nearly all powersaving settings available, it also makes for a handy way to test what powersaving settings cause problems, like the poppy audio I was getting in Youtube.

At first, I thought it must be caused by powersaving on snd-hda-intel (Realtek ALC892), so I disabled that

# Powersaving for modules
for i in /sys/module/*/parameters/power_save; do [[ \
! "$(printf "${i}" | sed 's|/sys/module/||g;s|/parameters.*||g')" == "snd_hda_intel" \
]] && echo $POWERSAVE > ${i} & done &
for i in /sys/module/*/parameters/power_save_controller; do [[ \
! "$(printf "${i}" | sed 's|/sys/module/||g;s|/parameters.*||g')" == "snd_hda_intel" \
]] &&  echo $CONTROLLER > ${i} & done &

Yet the pops persisted, so I tested the overlapping class and bus powersaving settings

# Runtime power management for devices (by class and bus)
for i in /sys/{class/*,bus/*/devices}/*/power/control; do [[ -f "${i}" ]] && [[ \
! "$(printf "${i}" | grep "sound")" \
]] && echo $CONTROL > ${i} & done &

I tested "card", "control", "hdaudio", "hw", "pcm", "seq", and "timer" individually, then skipped the entire "sound" class; yet the pops persisted.

Out of soundcard specific options, I had no choice but to go for something more obtuse.

It was the Intel P-States "powersave" CPU governor!

EDIT: That said, interaction between flash videos and pulseaudio is a miserable magical mystery that is not subject to diagnosis through the scientific method. It can be the cpu governor that causes trouble on one machine, and powersaving the soundcard on another, or the combination of the two, or intermittently one and then the other, or pulseaudio's configuration.

Last edited by quequotion (2015-09-01 04:03:43)

Offline

#36 2015-09-06 06:00:09

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 712
Website

Re: Indicator-powersave & throttle

Anybody using this? Happy to see it's still in the AUR.

I'd love some data on your powersavings! boot to poweroff, with / without throttle systemd service (or other invocation, by indicator, etc.)? anyone equipped to measure the socket? I am not sad

Last edited by quequotion (2015-09-06 06:00:50)

Offline

Board footer

Powered by FluxBB