Enable RWDT reset on Reset Controller so that it can be used as
reset trigger source for V3U Falcon.
Reviewed-by: Marek Vasut <[email protected]>
Signed-off-by: Hai Pham <[email protected]>
Signed-off-by: Marek Vasut <[email protected]> # Use one current_el() in board_init
+#define RST_BASE 0xE6160000 /* Domain0 */
+#define RST_SRESCR0 (RST_BASE + 0x18)
+#define RST_SPRES 0x5AA58000
+#define RST_WDTRSTCR (RST_BASE + 0x10)
+#define RST_RWDT 0xA55A8002
+
int board_init(void)
{
/* address of boot parameters */
gd->bd->bi_boot_params = CONFIG_TEXT_BASE + 0x50000;
int board_init(void)
{
/* address of boot parameters */
gd->bd->bi_boot_params = CONFIG_TEXT_BASE + 0x50000;
+ if (current_el() == 3) {
+ /* Enable RWDT reset */
+ writel(RST_RWDT, RST_WDTRSTCR);
+ }
+
-#define RST_BASE 0xE6160000 /* Domain0 */
-#define RST_SRESCR0 (RST_BASE + 0x18)
-#define RST_SPRES 0x5AA58000
-
void reset_cpu(void)
{
writel(RST_SPRES, RST_SRESCR0);
void reset_cpu(void)
{
writel(RST_SPRES, RST_SRESCR0);