summaryrefslogtreecommitdiffstats
path: root/bsps/arm
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2023-12-21 15:16:47 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2024-01-15 10:32:58 +0100
commit849210fff615e78d0f88d6b1359ebf464c5bbd53 (patch)
tree35cd07d22b6034040afca2ce2431b460c5f38f6b /bsps/arm
parentbsp/tms570: Rename tms570_initialize_and_clear() (diff)
downloadrtems-849210fff615e78d0f88d6b1359ebf464c5bbd53.tar.bz2
bsp/tms570: Fix bsp_reset()
Update #4982.
Diffstat (limited to 'bsps/arm')
-rw-r--r--bsps/arm/tms570/start/bspreset.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/bsps/arm/tms570/start/bspreset.c b/bsps/arm/tms570/start/bspreset.c
index 624eeed8ff..67cf96c67c 100644
--- a/bsps/arm/tms570/start/bspreset.c
+++ b/bsps/arm/tms570/start/bspreset.c
@@ -41,6 +41,7 @@
#include <bsp/bootcard.h>
#include <bsp/tms570.h>
+#include <bsp/tms570-pom.h>
static void handle_esm_errors(uint32_t esm_irq_channel)
{
@@ -56,7 +57,14 @@ static void handle_esm_errors(uint32_t esm_irq_channel)
void bsp_reset(void)
{
- uint32_t esm_irq_channel = TMS570_ESM.IOFFHR - 1;
+ rtems_interrupt_level level;
+ uint32_t esm_irq_channel;
+
+ rtems_interrupt_disable(level);
+ (void) level;
+
+ tms570_pom_initialize_and_clear();
+ esm_irq_channel = TMS570_ESM.IOFFHR - 1;
if (esm_irq_channel) {
handle_esm_errors(esm_irq_channel);