Dear sir,
We have observed a 20% increase in power consumption during idle mode when comparing Yocto 4.0 (kernel 5.15.71-2.2.2) to Yocto 5.0 (kernel 6.6.52-2.2.0) on the NXP i.MX 8M Plus EVK.
Specifically, the measured power consumption during idle mode is as follows:
Yocto 4.0(kernel 5.15.71-2.2.2) | Yocto 5.0(kernel 5.15.71-2.2.2) | |
Idle, Power consumption (measured on power-supply) | 5V, 413 mA | 5V, 510 mA |
Both tests were conducted using the prebuilt images downloaded from the NXP official website without any modifications:
This increase in power consumption might lead to a temperature difference of approximately 6-7 degrees Celsius on our custom board.
We have noted that the CPU usage and frequency remain similar between the two versions.
Could you please assist us in identifying the cause of this power consumption difference? Your insights would be greatly appreciated.
BR,
Richard
Solved! Go to Solution.
Hi @richard_hu :
This power consumption increase is resulted from the new drivers were introduced in the new version: --PCIe / HDMI. If I disable the two device in dtb file, the power consumption will be close to that in BSP 5.4.70.
Regards
Daniel
Sorry. There is typo in kernel version in the table.
It should be corrected as below:
Yocto 4.0(kernel 5.15.71-2.2.2) | Yocto 5.0(kernel 6.6.52-2.2.0) | |
Idle, Power consumption (measured on power-supply) | 5V, 413 mA | 5V, 510 mA |
HI @richard_hu
could you please send me the scripts you are using in version 6.6.52 to me for reproduce the issue?
Regards
Daniel
@danielchen
Thanks for the reply.
It doesn't need additional script.
We observe this phenomenon when the system is in idle.
Just need to boot the board with linux 6.6.52 and check the output power from power supply.
BR,
Richard
Hi @richard_hu :
Please refer to the result on my side.
BSP 5.4.70:
BSP 6.6.52
Please let me know the detailed steps to reproduce this issue .
Regards
Daniel
Thank you for your great assistance.
I have summarized the PMIC output measurements for average power consumption and have prepared a comparison table below:
Location | Yocto 4.0 (5.4) Avg Power (mW) | Yocto 5.0 (6.6) Avg Power (mW) | Difference (mW) | Change |
A vdd_arm | 9.36 | 24.19 | 14.83 | Increased |
B nvcc_dram_1v1 | 31.39 | 73.78 | 42.39 | Increased |
C vsys_5v | 616.06 | 1791.75 | 1175.69 | Increased |
D vdd_soc | 196.95 | 1044.86 | 847.91 | Increased |
E lpdd4_vddq | 2.34 | 0.75 | -1.59 | Reduced |
lpdd4_vdd2 | 5.54 | 1.78 | -3.76 | Reduced |
nvcc_sd2 | 2.31 | 2.31 | 0.00 | - |
vdd_lvds_1v8 | 0.02 | 0.02 | 0.00 | - |
vdd_hdmi_1v8 | 0.00 | 12.61 | 12.61 | Increased |
I nvcc_snvs_1v8 | 0.20 | 0.4 | 0.20 | Increased |
vdd_earc_1v8 | 0.00 | 0.01 | 0.01 | Increased |
vdd_usb_1v8 | 0.32 | 3.42 | 3.10 | Increased |
vdd_pci_1v8 | 0.00 | 80.68 | 80.68 | Increased |
vdd_mipi_1v8 | 0.14 | 0.15 | 0.01 | Increased |
O vdd_pll_ana_1v8 | 15.72 | 15.57 | -0.15 | Reduced |
nvcc_sd1 | 1.74 | 1.71 | -0.03 | Reduced |
lpdd4_vdd1 | 3.03 | 2.96 | -0.07 | Reduced |
cpu_vdd_1v8 | 4.02 | 0.82 | -3.20 | Reduced |
bb_vdd_1v8 | 41.23 | 43.82 | 2.59 | Increased |
vdd_pll_ana_0v8 | 2.34 | 3.09 | 0.75 | Increased |
vdd_pci_0v8 | 2.60 | 51.7 | 49.10 | Increased |
vdd_mipi_0v8 | 0.24 | 0.63 | 0.39 | Increased |
vdd_hdmi_0v8 | 1.19 | 37.58 | 36.39 | Increased |
vdd_usb_3v3 | 13.17 | 81.48 | 68.31 | Increased |
vdd_usb_0v8 | 2.55 | 20.44 | 17.89 | Increased |
vdd_sd1_3v3 | -1.14 | 0.68 | 1.82 | Increased |
bb_vdd_3v3 | 215.53 | 45.06 | -170.47 | Reduced |
**Totals** | **2358.42** | **Increased** | ||
**-179.27** | **Reduced** | |||
**Net Difference** |
It appears that vsys_5v and vdd_soc have increased by approximately 2022 mW in the Linux 6.6 kernel.
Could you provide any insights into the possible causes of this increase?
Additionally, could you measure the total power consumption for the entire NXP i.MX 8M Plus EVK using the power adapter output?
Thank you for your attention to this matter.
BR,
Richard
Hi @richard_hu
The power consumption is highly dependent on the application.
Since there is a big change between the two BSP versions. the device tree are also different. It is hard to make a simple comparison. Please refer to the total power consumption I tested on BSP 6.6.52, idle.
I will update if I have new findings.
Regards
Daniel
Regards
Daniel
@danielchen
Thanks for your help.
It looks the latest measurement, the vdd_soc values have returned to a level similar to that of Linux 5.4.7. However, the current vsys_5v value (1004mW) remains higher than the baseline measurement under Linux 5.4.7 (616mW).
Looking forward to your analysis, and thank you for your expertise in resolving this.
BR,
Richard
Hi @richard_hu :
This power consumption increase is resulted from the new drivers were introduced in the new version: --PCIe / HDMI. If I disable the two device in dtb file, the power consumption will be close to that in BSP 5.4.70.
Regards
Daniel
@danielchen
Thanks for the excellent support and thoughtful input
We can confirm that the issue is attributable to the PCIe interface. Below are the key findings from our analysis:
PCIe Disabled:
When PCIe is disabled, the power consumption difference between Linux kernel versions 5.15.71-2.2.2 and 6.6.52-2.2.0 is minimal (only 15 mA at 12V).
NVMe SSD Read/Write Testing:
Under active workloads (NVMe SSD read/write operations), the power consumption remains consistent across both kernel versions when PCIe is enabled.
As you suggested, this discrepancy may stem from the migration to the mainline kernel-based PCIe driver. Our investigation indicates that the issue arises specifically when:
This suggests that the power consumption increase is tied to residual activity in the PCIe subsystem under these conditions.
BR,
Richard
Hi Richard:
Thanks for letting us know that, I will setup an environment to test it on my side, will keep you updated.
Regards
Daniel