Operational Modes¶
.
Introduction¶
The VAR-SOM-MX91 supports several operating modes that allow for reduced power usage::
| Mode | VDD_SOC |
A55 Max Frequency
|
DRAM Max Frequency |
|---|---|---|---|
| Low Drive (LDM) | 0.8V | 933 MHz | 933 MHz (1866 MT/s) |
| Nominal Drive (NDM) | 0.85V | 1.4 GHz | 1400 MHz (2800 MT/s) |
| Overdrive (ODM) |
0.9V
|
1.7 GHz | 1866 MHz (3733 MT/s) |
The Variscite release, based on NXP's Linux BSP GA release, configures the system to run in Overdrive mode (ODM) by default. This Overdrive mode and associated performance are not necessary for some user applications. Users can transition to Nominal or Low-drive mode as defined in the i.MX 91 data sheet instead.
For more information, please refer to:
- i.MX 91 Datasheet
- IMX Reference Manual
- AN14506: Reducing Power Consumption
- AN14506: i.MX 91 Power Consumption Measurement
Changing Modes¶
Boot low drive device tree¶
The default device tree supports ODM. A special device tree imx91-var-som-symphony-ld.dtb must be booted to support NDM and LDM:
This device tree enables low drive mode and reduces the speed of the flexspi and usdhc peripherals so they can operate at the lower CPU and DRAM frequencies.
Change between modes¶
The driver/imx/soc/imx93_lpm.c driver uses imx-atf to manage the operating mode and can be controlled using a sysfs interface.
Read the current mode:
root@imx91-var-som:~# cat /sys/devices/platform/imx93-lpm/mode
System is in OD mode with DDR 3733 MTS!
Change to NDM (1866 MT/s):
root@imx91-var-som:~# echo 1 > /sys/devices/platform/imx93-lpm/mode
System switching to ND mode...
root@imx91-var-som:~# cat /sys/devices/platform/imx93-lpm/mode
System is in ND mode with DDR 1866 MTS!
Change to LDM (1866 MT/s):
root@imx91-var-som:~# echo 2 > /sys/devices/platform/imx93-lpm/mode
System switching to LD/SWFFC mode...
root@imx91-var-som:~# cat /sys/devices/platform/imx93-lpm/mode
System is in LD mode with DDR 1866 MTS!
Change to LDM (625 MT/s):
root@imx91-var-som:~# echo 3 > /sys/devices/platform/imx93-lpm/mode
System switching to LD/SWFFC mode...
root@imx91-var-som:~# cat /sys/devices/platform/imx93-lpm/mode
System is in LD mode with DDR 625 MTS!
Change to ODM (3733 MT/s):
root@imx91-var-som:~# echo 0 > /sys/devices/platform/imx93-lpm/mode
System switching to OD mode...
root@imx91-var-som:~# cat /sys/devices/platform/imx93-lpm/mode
System is in LD mode with DDR 3733 MTS!
Simple Memory Bandwidth Test¶
The iperf3 utility can be used to run a simple test that will report bitrates relative to the system speed.
Start an iperf3 server:
Switch to the preferred mode, and run an iperf3 client:
root@imx91-var-som:~# iperf3 -c localhost
Connecting to host localhost, port 5201
[ 5] local ::1 port 57608 connected to ::1 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 526 MBytes 4.41 Gbits/sec 0 1.44 MBytes
[ 5] 1.00-2.00 sec 528 MBytes 4.42 Gbits/sec 0 1.44 MBytes
[ 5] 2.00-3.00 sec 526 MBytes 4.42 Gbits/sec 0 1.44 MBytes
[ 5] 3.00-4.00 sec 529 MBytes 4.44 Gbits/sec 0 1.87 MBytes
[ 5] 4.00-5.00 sec 530 MBytes 4.44 Gbits/sec 0 1.87 MBytes
[ 5] 5.00-6.00 sec 530 MBytes 4.45 Gbits/sec 0 1.87 MBytes
[ 5] 6.00-7.00 sec 532 MBytes 4.47 Gbits/sec 0 1.87 MBytes
[ 5] 7.00-8.00 sec 528 MBytes 4.43 Gbits/sec 0 1.87 MBytes
[ 5] 8.00-9.00 sec 531 MBytes 4.45 Gbits/sec 0 1.87 MBytes
[ 5] 9.00-10.00 sec 529 MBytes 4.44 Gbits/sec 0 1.87 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 5.16 GBytes 4.44 Gbits/sec 0 sender
[ 5] 0.00-10.00 sec 5.16 GBytes 4.44 Gbits/sec receiver
Below are the results performed using Yocto Scarthgap with the 6.6.52 kernel:
| Mode | VDD_SOC | MT/s | iperf3 Speed (Mbps) |
|---|---|---|---|
| Low Drive | 0.8V | 625 | 1150 |
| Low Drive | 0.8V | 1866 | 3100 |
| Nominal Drive | 0.85V | 1866 | 3500 |
| Overdrive | 0.9V |
3733
|
6350 |