aboutsummaryrefslogtreecommitdiffstats
path: root/plat
diff options
context:
space:
mode:
authorDimitris Papastamos <dimitris.papastamos@arm.com>2018-03-29 11:26:10 +0100
committerGitHub <noreply@github.com>2018-03-29 11:26:10 +0100
commitbd79727c93dec36153451b4c85b0c79172df7d40 (patch)
tree6e1fd09b0f887c0094b027b55081b8b967178707 /plat
parent469744e6c2aa3553f16beccf1ba888915847dc00 (diff)
parent7dcef5ebbbb969ebf6397b640c0b81dc6dc2ef75 (diff)
downloadplatform_external_arm-trusted-firmware-bd79727c93dec36153451b4c85b0c79172df7d40.tar.gz
platform_external_arm-trusted-firmware-bd79727c93dec36153451b4c85b0c79172df7d40.tar.bz2
platform_external_arm-trusted-firmware-bd79727c93dec36153451b4c85b0c79172df7d40.zip
Merge pull request #1331 from hzhuang1/reboot_delay
hikey960: add delay before reset
Diffstat (limited to 'plat')
-rw-r--r--plat/hisilicon/hikey960/hikey960_pm.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/plat/hisilicon/hikey960/hikey960_pm.c b/plat/hisilicon/hikey960/hikey960_pm.c
index 22963c4f5..ffe7fcf87 100644
--- a/plat/hisilicon/hikey960/hikey960_pm.c
+++ b/plat/hisilicon/hikey960/hikey960_pm.c
@@ -9,6 +9,7 @@
#include <cci.h>
#include <console.h>
#include <debug.h>
+#include <delay_timer.h>
#include <gicv2.h>
#include <hi3660.h>
#include <hi3660_crg.h>
@@ -114,6 +115,9 @@ void hikey960_pwr_domain_off(const psci_power_state_t *target_state)
static void __dead2 hikey960_system_reset(void)
{
+ dsb();
+ isb();
+ mdelay(2000);
mmio_write_32(SCTRL_SCPEREN1_REG,
SCPEREN1_WAIT_DDR_SELFREFRESH_DONE_BYPASS);
mmio_write_32(SCTRL_SCSYSSTAT_REG, 0xdeadbeef);