I am working on power consumption in imx8mm and trying to reduce dram and cpu frequency.
Ex:
U-Boot SPL 2021.04-imx_v2021.04_5.15.5-1.0.0+gf7b43f8b4c (Mar 01 2022 - 07:31:56 +0000)
DDRINFO: start DRAM init
DDRINFO: DRAM rate 3000MTS
DDRINFO:ddrphy calibration done
DDRINFO: ddrmix config done
Need to reduce DRAM rate 3000MTS To 1500MTS
Ex:
U-Boot 2021.04-imx_v2021.04_5.15.5-1.0.0+gf7b43f8b4c (Mar 01 2022 - 07:31:56 +0000)
CPU: i.MX8MMQ rev1.0 1600 MHz (running at 1200 MHz)
CPU: Industrial temperature grade (-40C to 105C) at 34C
Need to reduce CPU frequency 1200 MHZ to 800 MHZ
is there anyone knows about how to decrease this?
Thanks in advance
1.For new frequency of DRAM:
You need refer below guide to do stress test and generate new lprddr4_timing.c in this folder board/freescale/imx8mm_evk
2.For new CPU frequency
Line 544 in this arch/arm/mach-imx/imx8m/clock_imx8mm.c
Hello Zhiming,
The generated timming.c file gives the error while booting as mentioned above, However I have modified the .drate = 400 in the lpddr4_timming.c file and commented the remaining drates in the dram_fsp_msg struct.
While booting I got :
DDRINFO: DRAM rate 800MTS.
But there is very negligible change in the power, current reduced is 10mA.
Also, as you said I modified the intpll_configure(ANATOP_ARM_PLL, MHZ(800)); in clock_imx8mm.c file and enabled the powersaving mode in the menu configuration. But no considerable change in the power.
Can you please guide what else could be done in order to reduce the power consumption.
You need generate correct timing.c with ddr tool.
For reducing the power consumption, you can try to disable useless hardware driver on your board.
we have generated the lpddr4_timing.c file. the issue is that ddr tool is genrerating old version of ddr tool like u-boot imx_v2018.03_4.14.78_1.0.0_ga but we are using version 2021 u-boot.
or
we required #include <asm/arch/imx8m_ddr.h> this file we can not able to find this file in my u-boot or any other resources
note : /* please replace #include <asm/arch/ddr.h> with #include <asm/arch/imx8m_ddr.h> */
we need updated ddr tool for u-boot-imx
* Generated code from MX8M_DDR_tool
*
* Align with uboot version:
* imx_v2019.04_5.4.x and above version
* For imx_v2018.03_4.14.78_1.0.0_ga ~ imx_v2018.04_4.19.35_1.1.0_ga:
* please replace #include <asm/arch/ddr.h> with #include <asm/arch/imx8m_ddr.h>