Changes

Jump to: navigation, search

DESK-MX9-L/Deployment/Power Manager

2,363 bytes removed, 5 April
no edit summary
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white"|Notes
|-
!|style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#ededededf8fb; padding:5px; color:#000000"|2024/04/02!|style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#ededededf8fb; padding:5px; color:#000000"|Power Manager documentation
|-
|}
== Operational characteristics ==
The measurement of power consumption of the <code>measurements for [[AURA SOM | AURA SOM</code> ]] are executed with <code>3.3 V</code> power supply.
== Power consumption ==
 
There are various operating modes available.
'''Attention''': the SOC used does not support the DVFS and therefore the use of the <code>governor</code> present in the Linux kernel, instead of this functionality to scale the performance to have lower consumption by the SOC there is a new technology the <code>Low Drive mode</code>.
* [https://www.nxp.com/docs/en/data-sheet/IMX93CEC.pdf i.MX93 datasheet]
* [https://docs.nxp.com/bundle/AN13917/page/topics/introductionreducing_power_consumption_0.html AN13917: i.MX 93 Reducing the power Consumption]* [https://docs.nxp.com/bundle/AN13917/page/topics/overview_of_imx_93_power_architecture.html AN13917: i.MX 93 Power Consumption MeasurementArchitecture]
There are four operating modes(Not all present by default on <code>Aura SOM</code>):
| -
|-
| Low drive (LD Mode) (1)
| 0.8 V
| 933 MHz
| (3)
|-
| Low drive (LD Mode) (2)
| 0.8 V
| 933 MHz
Note:
* (1): <code>Over drive</code> is the default operating mode.* (2): <code>Over drive</code> can be disabled, see [[#Disable Over drive Mode Device Tree | here]].* (3): <code>Low drive</code> need to activate be activated from <code>device tree</code> by default these are not present, see [[#Enable Low drive Mode Device Tree | here]]. 
==== Device Tree ====
To enable/disable and configure the driver must use the device tree, must used: by default the node <code>lpm</code> present on <code>arch/arm64/boot/dts/freescale/imx93.dtsi</code> are is disabled, then the <code>Low Drive Mode</code> are disableis disabled.
By default , on <code>Aura SOM</code> the support are enable is enabled with minimal configuration to have:
* <code>Over drive Mode</code>
* <code>Nominal drive Mode</code>
</pre>
The node <code>lpm</code> to change the SOC voltage supply need needs the <code>PMIC buck regulator reference</code> on <code>Aura SOM</code> the PMIC Buck used to power the SOC are the is <code>Buck1</code>.
===== Enable Low drive Mode =====
To enable the two modality modalities <code>Low drive Mode</code> add the property <code>ld-mode-enabled</code> on <code>lpm</code> node of the device tree.
By default on <code>Aura SOM</code> this these modalities are disabled.
'''Attention''': if you want to add this these modalities , properly check if you must change the <code>clock rate</code> of for the other peripherals like:* <code>flexspi1</code> to <code>266000000</code>.* <code>usdhc1</code> to <code>266000000</code>.* <code>usdhc2</code> to <code>266000000</code>.* <code>usdhc3</code> to <code>266000000</code>.
See also the <code>NXP EVK</code> here <code>arch/arm64/boot/dts/freescale/imx93-11x11-evk-ld.dts</code>
The measurements were performed with follow device connected to the board (Only the most energy-intensive devices are listed).
* Eth0 interface up.* Eth1 interface up.* uSD.* DSI-HDMI converter and HDMI display up.
===== Quiet =====
On quiet the core not nt have any additional process/task.
===== Stressed =====
To simulate high consumption, the following energy-intensive operations were performed:
* configured the both eth interface interfaces are configured and execute an endless iperf3 - with an external server support- is executed* use the camera and stream it streaming a video to the HDMI display* execute the <code>sat</code>, is a specialized executable to stress for stressing the SOC and the RAM memory
Then there are four energy-intensive operations.
 
==== Power state ====
 
The power state of kernel can be obtain with follow command:
<pre>
root@desk-mx93-rev0:~# cat /sys/power/state
freeze mem
</pre>
 
In this case are present:
* <code>mem</code> (Suspend)
* <code>freeze</code>
 
To use <code>mem</code> & <code>freeze</code> there are need setup a wake up source, on example the console UART as a wake up source
<pre>
echo enabled > /sys/class/tty/ttyLP0/power/wakeup
</pre>
 
Change the power status like the follow command:
<pre>
echo mem > /sys/power/state
</pre>
 
<pre>
root@desk-mx93-rev0:~# echo mem > /sys/power/state
[ 485.684754] PM: suspend entry (deep)
[ 485.764566] Filesystems sync: 0.076 seconds
[ 485.769692] Freezing user space processes
[ 485.775189] Freezing user space processes completed (elapsed 0.001 seconds)
[ 485.782180] OOM killer disabled.
[ 485.785418] Freezing remaining freezable tasks
[ 485.791072] Freezing remaining freezable tasks completed (elapsed 0.001 seconds)
[ 485.798472] printk: Suspending console(s) (use no_console_suspend to debug)
</pre>
 
write something on console:
<pre>
...
[ 485.842439] imx-dwmac 428a0000.ethernet eth1: Link is Down
[ 485.842745] imx-dwmac 428a0000.ethernet eth1: FPE workqueue stop
[ 485.857765] fec 42890000.ethernet eth0: Link is Down
[ 485.858356] PM: suspend devices took 0.052 seconds
[ 485.860465] Disabling non-boot CPUs ...
[ 485.860876] psci: CPU1 killed (polled 0 ms)
[ 485.862050] Enabling non-boot CPUs ...
[ 485.862201] Detected VIPT I-cache on CPU1
[ 485.862246] cacheinfo: Unable to detect cache hierarchy for CPU 1
[ 485.862255] GICv3: CPU1: found redistributor 100 region 0:0x0000000048060000
[ 485.862291] CPU1: Booted secondary processor 0x0000000100 [0x412fd050]
[ 485.862564] CPU1 is up
[ 485.926184] imx-dwmac 428a0000.ethernet eth1: configuring for phy/rgmii-id link mode
[ 485.936472] imx-dwmac 428a0000.ethernet eth1: No Safety Features support found
[ 485.936488] imx-dwmac 428a0000.ethernet eth1: IEEE 1588-2008 Advanced Timestamp supported
[ 485.936676] imx-dwmac 428a0000.ethernet eth1: FPE workqueue start
[ 486.027552] PM: resume devices took 0.164 seconds
[ 486.028522] remoteproc remoteproc0: releasing imx-rproc
[ 486.125601] OOM killer enabled.
[ 486.128751] Restarting tasks ... done.
[ 486.135997] random: crng reseeded on system resumption
[ 486.141289] PM: suspend exit
root@desk-mx93-rev0:~# [ 488.996995] fec 42890000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[ 488.998759] imx-dwmac 428a0000.ethernet eth1: Link is Up - 1Gbps/Full - flow control rx/tx
[ 489.004784] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 489.021014] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
</pre>
==== Measurements ====
!Current
!Power
!DiffNormal!Diff Stress
|-
| '''Quiet-normal (LPM: Over drive)'''
| 0,5 A
| 1.65 W
| Normal reference| -50% (Reference: <code>Stressed-normal (LPM: Over drive)</code>)
|-
| '''Quiet-nominal (LPM: Nominal drive)'''
| 1.55 W
| -6 %
| -32% (Reference: <code>Stressed-nominal (LPM: Nominal drive)</code>)
|-
| '''Stressed-normal (LPM: Over drive)'''
| 2.475 W
| +50%
| Stress reference
|-
| '''Stressed-nominal (LPM: Nominal drive)'''
| 1.55 W
| +24%
| -17 %
|-
| '''Suspend'''
| 0.152 W
| -91 %
| -93 %
|-
|'''Freeze'''
|0.59 W
| -64 %
| -76 %
|}
8,157
edits

Navigation menu