diff options
author | Rob Herring <rob.herring@calxeda.com> | 2012-02-01 16:57:55 +0000 |
---|---|---|
committer | Albert ARIBAUD <albert.u.boot@aribaud.net> | 2012-03-28 23:31:23 +0200 |
commit | 0c34e69f57ad94e0ba66ace657eda2fb80bc5847 (patch) | |
tree | 7bc4a2a27bcd91a363c38aca031d449eb161ecd4 /board/highbank | |
parent | 877012df309329a9264e6e9558d4f71bfa0cddbe (diff) |
ARM: highbank: add reset support
Implement reset for highbank platform. Reset is triggered via a wfi
instruction, so enabling armv7 for the compiler is necessary.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Diffstat (limited to 'board/highbank')
-rw-r--r-- | board/highbank/highbank.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/board/highbank/highbank.c b/board/highbank/highbank.c index 096e2f63727..1e2da783c64 100644 --- a/board/highbank/highbank.c +++ b/board/highbank/highbank.c @@ -23,6 +23,12 @@ #include <asm/sizes.h> #include <asm/io.h> +#define HB_SREG_A9_PWR_REQ 0xfff3cf00 +#define HB_PWR_SUSPEND 0 +#define HB_PWR_SOFT_RESET 1 +#define HB_PWR_HARD_RESET 2 +#define HB_PWR_SHUTDOWN 3 + DECLARE_GLOBAL_DATA_PTR; /* @@ -68,4 +74,6 @@ void dram_init_banksize(void) void reset_cpu(ulong addr) { + writel(HB_PWR_HARD_RESET, HB_SREG_A9_PWR_REQ); + asm(" wfi"); } |