Overview
This document intends to provide one reference how to emulate i.MX8QM 1.3GHz part running on i.MX8QM MEK with 1.6GHz part based on i.MX Linux BSP release.
You can find i.MX8QM/QP processors datasheet on NXP web:
Key differences between 1.3GHz part and 1.6GHz part is as follows:
Key Differences |
1.6GHz part |
1.3GHz part |
8QM/8QP A72 core max frequency |
1600MHz |
1296MHz |
8QM GPU max frequency |
core 800MHz shader 1000MHz |
core 650MHz shader 700MHz |
8QM VDD_GPU mode |
Overdrive mode |
Remove overdrive mode, only nominal |
8QM VDD_GPU nominal operation range |
Min 0.95V Typ 1.0 V Max 1.1V |
Min 0.98V Typ 1.03125V Max 1.14V |
Software Changes
Since Linux 6.6.23_2.0.0 BSP release, i.MX8QM/8QP 1.3GHz part is supported into i.MX Linux release by identifying the fuse of 1.3GHz part and configuring frequency and voltage automatically.
If you have i.MX8QM MEK board with 1.6GHz part, before revision E, you can apply software changes to emulate 1.3GHz part configurations explicitly.
The following software reference patches are built based on Linux 6.6.52-2.2.0 release:
Component |
Patch Name |
Description |
Linux Kernel |
0001-arm64-dts-imx8qm-remove-A72-core-1.6GHz-operating-po.patch |
Used to remove Cortex-A72 core 1.6GHz operating-points |
0002-arm64-dts-imx8qm-set-GPU-operating-points-at-nominal.patch |
Used to remove GPU overdrive operating-points and set GPU core frequency as 650MHz, GPU shader frequency as 700MHz. |
|
SCFW |
0001-Increase-VDD-of-GPU.patch |
Used to increase GPU voltage |
ATF |
0001-plat-imx8-make-ATF-kick-off-A72-core-freq-at-1.3GHz.patch |
Used to kickoff A72 core and set its frequency as 1.3GHz in ATF |
Validation Test
Apply patch into Linux kernel, SCFW porting kit, ATF, follow 6.6.52_2.2.0 release document(www.nxp.com/design/design-center/software/embedded-software/i-mx-software/embedded-linux-for-i-mx-ap...) to build and deploy image.
After Linux OS boot up, run below command to check A72 and GPU frequency, for example:
#cat /sys/kernel/debug/gc/clk
gpu0 mc clock: 647981058 HZ.
gpu0 sh clock: 695997687 HZ.
gpu1 mc clock: 647990370 HZ.
gpu1 sh clock: 695987994 HZ
#cat /sys/devices/system/cpu/cpu4/cpufreq/cpuinfo_max_freq
1296000
Measure VDD_GPU voltage from i.MX8QM MEK board TP53 and TP42