Hi:
At present, I am testing the "poweroff" function, but after executing the "poweoff" command, the system will automatically restart.Can you give me some suggestions?
Solved! Go to Solution.
Hi:
I have solved this problem.There are some bugs in the latest ATF. Make the following modifications:
diff --git a/plat/imx/imx8m/imx8m_psci_common.c b/plat/imx/imx8m/imx8m_psci_common.c
index 018ec3f3e..17933e661 100644
--- a/plat/imx/imx8m/imx8m_psci_common.c
+++ b/plat/imx/imx8m/imx8m_psci_common.c
@@ -203,8 +203,10 @@ void __dead2 imx_system_reset(void)
void __dead2 imx_system_off(void)
{
mmio_write_32(IMX_SNVS_BASE + SNVS_LPCR, SNVS_LPCR_SRTC_ENV |
- SNVS_LPCR_DP_EN | SNVS_LPCR_TOP | SNVS_LPCR_LPTA_EN | SNVS_LPCR_LPWUI_EN);
+ SNVS_LPCR_DP_EN | SNVS_LPCR_TOP);
+ //SNVS_LPCR_DP_EN | SNVS_LPCR_TOP | SNVS_LPCR_LPTA_EN | SNVS_LPCR_LPWUI_EN);
+ INFO("poweroff\n");
while (1)
;
}
Hello!
Same problem in the latest lf_v2.6 branch with the IMX8MP. This commit is to blame: https://github.com/nxp-imx/imx-atf/commit/cc5f3575c801897eeda40e486de3f9a517a1b460
Could perhaps someone from NXP take care of this?
Thanks!
Regards,
Ian
Hi:
I have solved this problem.There are some bugs in the latest ATF. Make the following modifications:
diff --git a/plat/imx/imx8m/imx8m_psci_common.c b/plat/imx/imx8m/imx8m_psci_common.c
index 018ec3f3e..17933e661 100644
--- a/plat/imx/imx8m/imx8m_psci_common.c
+++ b/plat/imx/imx8m/imx8m_psci_common.c
@@ -203,8 +203,10 @@ void __dead2 imx_system_reset(void)
void __dead2 imx_system_off(void)
{
mmio_write_32(IMX_SNVS_BASE + SNVS_LPCR, SNVS_LPCR_SRTC_ENV |
- SNVS_LPCR_DP_EN | SNVS_LPCR_TOP | SNVS_LPCR_LPTA_EN | SNVS_LPCR_LPWUI_EN);
+ SNVS_LPCR_DP_EN | SNVS_LPCR_TOP);
+ //SNVS_LPCR_DP_EN | SNVS_LPCR_TOP | SNVS_LPCR_LPTA_EN | SNVS_LPCR_LPWUI_EN);
+ INFO("poweroff\n");
while (1)
;
}
Hi!
It's work for u-boot-imx but when I trying to use the poweroff from linux console it doesn't work. The system still reboot.
Any idea how to fix it?
Thanks in advance.