From: Andre Przywara <osp@andrep.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 2/8] ARM: highbank: add reset support for Calxeda Midway machine
Date: Fri, 5 Jun 2015 00:58:43 +0100 [thread overview]
Message-ID: <1433462329-10680-3-git-send-email-osp@andrep.de> (raw)
In-Reply-To: <1433462329-10680-1-git-send-email-osp@andrep.de>
From: Mark Langsdorf <mark.langsdorf@gmail.com>
The Calxeda Midway part has A15 cores, which do not have the Highbank
A9's SCU used there for resetting the chip.
Add code to distinguish between the A9 and the A15 and invoke the
appropriate register writes to support the newer part.
Andre: rework detection of Highbank vs. Midway
Rob: fix Andre's reworked detection
Signed-off-by: Mark Langsdorf <mark.langsdorf@gmail.com>
Signed-off-by: Andre Przywara <osp@andrep.de>
Signed-off-by: Rob Herring <robh@kernel.org>
---
board/highbank/highbank.c | 15 ++++++++++++++-
1 file changed, 14 insertions(+), 1 deletion(-)
diff --git a/board/highbank/highbank.c b/board/highbank/highbank.c
index ba254b6..e8132b8 100644
--- a/board/highbank/highbank.c
+++ b/board/highbank/highbank.c
@@ -18,6 +18,7 @@
#define HB_SREG_A9_PWR_REQ 0xfff3cf00
#define HB_SREG_A9_BOOT_SRC_STAT 0xfff3cf04
#define HB_SREG_A9_PWRDOM_STAT 0xfff3cf20
+#define HB_SREG_A15_PWR_CTRL 0xfff3c200
#define HB_PWR_SUSPEND 0
#define HB_PWR_SOFT_RESET 1
@@ -116,10 +117,22 @@ int ft_board_setup(void *fdt, bd_t *bd)
}
#endif
+static int is_highbank(void)
+{
+ uint32_t midr;
+
+ asm volatile ("mrc p15, 0, %0, c0, c0, 0\n" : "=r"(midr));
+
+ return (midr & 0xfff0) == 0xc090;
+}
+
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);
+ if (is_highbank())
+ writeb(HB_SCU_A9_PWR_OFF, HB_SCU_A9_PWR_STATUS);
+ else
+ writel(0x1, HB_SREG_A15_PWR_CTRL);
wfi();
}
--
1.8.4
next prev parent reply other threads:[~2015-06-04 23:58 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-04 23:58 [U-Boot] [PATCH 0/8] ARM: highbank: fix Calxeda machines Andre Przywara
2015-06-04 23:58 ` [U-Boot] [PATCH 1/8] ARM: highbank: add missing SCU register setup for reset Andre Przywara
2015-06-13 2:09 ` [U-Boot] [U-Boot, " Tom Rini
2015-06-04 23:58 ` Andre Przywara [this message]
2015-06-13 2:09 ` [U-Boot] [U-Boot, 2/8] ARM: highbank: add reset support for Calxeda Midway machine Tom Rini
2015-06-04 23:58 ` [U-Boot] [PATCH 3/8] cmd_scsi: use lbaint_t for LBA values instead of u32 Andre Przywara
2015-06-13 2:09 ` [U-Boot] [U-Boot, " Tom Rini
2015-06-04 23:58 ` [U-Boot] [PATCH 4/8] ahci: support LBA48 data reads for 2+TB drives Andre Przywara
2015-06-13 2:10 ` [U-Boot] [U-Boot, " Tom Rini
2015-06-25 1:43 ` Bin Meng
2015-06-04 23:58 ` [U-Boot] [PATCH 5/8] ahci: extend data io wait to 10s Andre Przywara
2015-06-13 2:10 ` [U-Boot] [U-Boot,5/8] " Tom Rini
2015-06-04 23:58 ` [U-Boot] [PATCH 6/8] ARM: bootm: allow skipping fdt memory node fixup Andre Przywara
2015-06-05 14:12 ` Simon Glass
2015-06-06 0:14 ` Andre Przywara
2015-06-08 0:57 ` Simon Glass
2015-06-13 10:43 ` [U-Boot] [PATCH] fdt: prevent clearing memory node if there are no banks Andre Przywara
2015-06-15 15:57 ` Rob Herring
2015-06-16 18:07 ` Simon Glass
2015-06-04 23:58 ` [U-Boot] [PATCH 7/8] ARM: highbank: remove DRAM bank setup Andre Przywara
2015-06-13 2:10 ` [U-Boot] [U-Boot,7/8] " Tom Rini
2015-06-13 11:01 ` Andre Przywara
2015-06-15 15:18 ` Tom Rini
2015-06-04 23:58 ` [U-Boot] [PATCH 8/8] highbank: add custom ahci_link_up function Andre Przywara
2015-06-13 2:10 ` [U-Boot] [U-Boot, " Tom Rini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1433462329-10680-3-git-send-email-osp@andrep.de \
--to=osp@andrep.de \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox