Power and Energy Management

Battery Services

The reference expansion board does not provide any battery management hardware and thus the Ref-OS-IoT does not bundle any services for managing energy sources.

PM Overview

Ref-OS-IoT supports standard Linux power management features to save energy.

Device runtime power management controls the device’s auto-suspend feature by changing device power state according to activity.

CPU governor controls the CPU's operating frequency according to specified rules. Read more from https://www.kernel.org/doc/Documentation/cpu-freq/governors.txt.

 

Device Power Management

Each device’s runtime power management can be controlled by a power/control entry. Control value “auto” indicates that runtime power management is enabled for the device while value “on” indicates that device is always powered on without runtime power management functionality.

Examples:

To check XHCI PCI device runtime power management activation state:

cat /sys/devices/pci0000:00/0000:00:15.0/power/control

To enable XHCI PCI device runtime power management:

echo auto > /sys/devices/pci0000:00/0000:00:15.0/power/control

Each device power state can be checked from telemetry soc_states info:

cat /sys/kernel/debug/telemetry/soc_states

CPU governors

Linux kernel supports several CPUFreq governors giving different algorithms for CPU frequency control. The default governor in Ref-OS-IoT is “ondemand” governor.

Available governors can be seen:

cat /sys/devices/system/cpu/cpufreq/policy0/scaling_available_governors

Thermal Management

See Debug Thermal  and the Thermal Management Guide for more information on Thermal Management.

For more complete information about compiler optimizations, see our Optimization Notice.