diff options
author | Tyler Miller <tyler.miller@airbusus.com> | 2023-12-21 15:16:48 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2024-01-15 10:33:34 +0100 |
commit | 2bbacdb557c74a513ecc6f3b2f581ac6b6344c4e (patch) | |
tree | c95fa06e1f9efde1c131ef25b045e0582759dc19 /bsps/arm/tms570/start/init_esm.c | |
parent | bsp/tms570: Add errata SSWF021#45 handling (diff) | |
download | rtems-2bbacdb557c74a513ecc6f3b2f581ac6b6344c4e.tar.bz2 |
bsp/tms570: TMS570LC4x Errata DEVICE#60
Update #4982.
Diffstat (limited to 'bsps/arm/tms570/start/init_esm.c')
-rw-r--r-- | bsps/arm/tms570/start/init_esm.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/bsps/arm/tms570/start/init_esm.c b/bsps/arm/tms570/start/init_esm.c index 794bf156cb..35fd1c8eab 100644 --- a/bsps/arm/tms570/start/init_esm.c +++ b/bsps/arm/tms570/start/init_esm.c @@ -9,6 +9,7 @@ */ /* + * Copyright (C) 2022 Airbus U.S. Space & Defense, Inc * Copyright (C) 2016 Pavel Pisa <pisa@cmp.felk.cvut.cz> * * Czech Technical University in Prague @@ -68,8 +69,12 @@ void tms570_esm_init( void ) /** - Reset error pin */ if (TMS570_ESM.EPSR == 0U) { - TMS570_ESM.EKR = 0x00000005U; - } else { + /* + * Per TMS570LC4x Errata DEVICE#60, the error pin cannot be cleared with a + * normal EKR write upon system reset. Put in diagnostic followed by + * normal mode instead. This sequence works also on other chip variants. + */ + TMS570_ESM.EKR = 0x0000000AU; TMS570_ESM.EKR = 0x00000000U; } |