summaryrefslogtreecommitdiffstats
path: root/bsps/arm/xilinx-zynq/start/bspreset.c
diff options
context:
space:
mode:
Diffstat (limited to 'bsps/arm/xilinx-zynq/start/bspreset.c')
-rw-r--r--bsps/arm/xilinx-zynq/start/bspreset.c20
1 files changed, 15 insertions, 5 deletions
diff --git a/bsps/arm/xilinx-zynq/start/bspreset.c b/bsps/arm/xilinx-zynq/start/bspreset.c
index 3e797a137e..b6cf09ba02 100644
--- a/bsps/arm/xilinx-zynq/start/bspreset.c
+++ b/bsps/arm/xilinx-zynq/start/bspreset.c
@@ -1,7 +1,15 @@
-/*
- * SPDX-License-Identifier: BSD-2-Clause
+/* SPDX-License-Identifier: BSD-2-Clause */
+
+/**
+ * @file
+ *
+ * @ingroup RTEMSBSPsARMZynq
*
- * Copyright (C) 2013 embedded brains GmbH
+ * @brief This source file contains the implementation of bsp_reset().
+ */
+
+/*
+ * Copyright (C) 2013 embedded brains GmbH & Co. KG
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
@@ -27,14 +35,16 @@
#include <bsp.h>
#include <bsp/bootcard.h>
-#include <dev/serial/zynq-uart.h>
+#include <dev/serial/zynq-uart-regs.h>
void bsp_reset(void)
{
+ volatile zynq_uart *regs =
+ (volatile zynq_uart *) ZYNQ_UART_KERNEL_IO_BASE_ADDR;
volatile uint32_t *slcr_unlock = (volatile uint32_t *) 0xf8000008;
volatile uint32_t *pss_rst_ctrl = (volatile uint32_t *) 0xf8000200;
- zynq_uart_reset_tx_flush(&zynq_uart_instances[BSP_CONSOLE_MINOR]);
+ zynq_uart_reset_tx_flush(regs);
while (true) {
*slcr_unlock = 0xdf0d;