Mainline BSP¶
Note
This guide refers to Images built with Yocto Mainline BSP.
Our Yocto Images support different features of the module.
General¶
Sleep Mode / Low Power¶
With the STM32MP1 processor you have different modes for suspending/resuming the device.
You can suspend the system to Standy or Stop mode. The mode the system suspends to, depends on the defined wakeup sources.
Mode |
Available wakeup sources |
---|---|
CStop |
BOR, PVD, AVD, Vbat mon, Temp mon, LSE CSS, RTC, TAMP, USB, CEC, ETH, USART, I²C, SPI, LPTIM, IWDG, GPIO, Wakeup pins (from PWR) |
CStandby |
BOR, Vbat mon, Temp mon, LSE CSS, RTC, TAMP, IWDG, Wakeup pins (from PWR) |
The official ST Wiki gives a detailed overview: https://wiki.st.com/stm32mpu/wiki/Power_overview#Low-power_modes_available_on_the_device
Known Issues
USB-OHCI:
Suspend/resume only working when defined as Wakeup-Source, meaning CStandby mode not supported when active.
Suspend fails with hang-up when not defined as Wakeup-Source.
If CStandby desired you have to modify devicetree:
&usbh_ohci { status = "disabled"; };
LCD:
Suspend/resume to CStandby destroys display. Display does not come back when resuming (only LCD, DSI displays work fine).
Wakeup
To wake up the system after suspend, different wakeup sources can be defined.
To find all possible wakeup properties run:
find /sys/devices -name wakeup
EXAMPLE - Enabling Serial UART as wakeup source:
echo enabled > /sys/devices/platform/soc/40010000.serial/tty/ttySTM0/power/wakeup
echo enabled > /sys/devices/platform/soc/40010000.serial/power/wakeup
Suspending the System
This command suspends the device:
echo mem > /sys/power/state
Hint
If no_console_suspend
is set on kernel-commandline, the trusted firmware will tell you which mode is entered:
NOTICE: Entering CStop Mode.
EXAMPLE - Waking up after 15 seconds using RTC wakealarm:
echo +15 > /sys/class/rtc/rtc0/wakealarm; echo mem > /sys/power/state
karo-image-weston¶
Test the GPU¶
GLmark2 will only run smooth on processors having a GPU.
glmark2-es2-wayland --fullscreen
Play a Video¶
Run the test screen of gstreamer:
gst-launch-1.0 videotestsrc ! waylandsink