summaryrefslogtreecommitdiff
path: root/board/highbank/highbank.c
diff options
context:
space:
mode:
authorRob Herring <robh@kernel.org>2015-06-05 00:58:42 +0100
committerTom Rini <trini@konsulko.com>2015-06-12 13:02:07 -0400
commit083ffd65cb46e76a0db95403f894dbfcde2daca8 (patch)
treed9332aba9989c3e55929b8b42099a9b0b030b2f4 /board/highbank/highbank.c
parent8f6c80b96650e4acf1cf6555343a4df089cb36ff (diff)
ARM: highbank: add missing SCU register setup for reset
Andre: assign names to the magic values Signed-off-by: Rob Herring <robh@kernel.org> Signed-off-by: Andre Przywara <osp@andrep.de>
Diffstat (limited to 'board/highbank/highbank.c')
-rw-r--r--board/highbank/highbank.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/board/highbank/highbank.c b/board/highbank/highbank.c
index ba1beb5bbc9..ba254b63526 100644
--- a/board/highbank/highbank.c
+++ b/board/highbank/highbank.c
@@ -14,6 +14,7 @@
#define HB_AHCI_BASE 0xffe08000
+#define HB_SCU_A9_PWR_STATUS 0xfff10008
#define HB_SREG_A9_PWR_REQ 0xfff3cf00
#define HB_SREG_A9_BOOT_SRC_STAT 0xfff3cf04
#define HB_SREG_A9_PWRDOM_STAT 0xfff3cf20
@@ -27,6 +28,10 @@
#define PWRDOM_STAT_PCI 0x40000000
#define PWRDOM_STAT_EMMC 0x20000000
+#define HB_SCU_A9_PWR_NORMAL 0
+#define HB_SCU_A9_PWR_DORMANT 2
+#define HB_SCU_A9_PWR_OFF 3
+
DECLARE_GLOBAL_DATA_PTR;
/*
@@ -114,6 +119,7 @@ int ft_board_setup(void *fdt, bd_t *bd)
void reset_cpu(ulong addr)
{
writel(HB_PWR_HARD_RESET, HB_SREG_A9_PWR_REQ);
+ writeb(HB_SCU_A9_PWR_OFF, HB_SCU_A9_PWR_STATUS);
wfi();
}