Hi,
I am working on imx8ulp power optimization.
I am interested to know more on the dram_enter_retention mode and dram_exit_retention mode.
1) Other than observing the current usage, How to know that it is already in retention mode?
2) Is the retention mode only work in shared ram?
3) If calling the retention mode causing the system hang, what would be the culprit?
4) If calling the dram_exit_retention mode causing the current a bit higher (than before calling it), what is the reason?
Thanks!
Hi,
If the system I'm working on using lpddr. How can I make this work?
Hello,
The functions in plat/imx/imx8ulp/dram.c(imx-atf) have been done for different DRAMs, LPDDR4 & LPDDR3. There are still some spaces to optimize power consumption, please refer AN13951
Best Regards,
Zhiming
Hello,
To test Dram retention and exit, please use power_mode_switch demo and refer the api in power_mode_switch.c.
Best Regards,
Zhiming
Hello,
Q1: Other than observing the current usage, How to know that it is already in retention mode?
-->There is no other way to make observations, these functions are tested and there is no need to worry about it not being triggered correctly.
Q2: Is the retention mode only work in shared ram?
-->Yes
Q3: If calling the retention mode causing the system hang, what would be the culprit?
-->Have you made any changes to the code for this feature?
Q4 : If calling the dram_exit_retention mode causing the current a bit higher (than before calling it), what is the reason?
-->dram_exit_retention will recover DDR clocks and enable DDR PHY, so the current going to high is reasonable
Best Regards,
Zhiming