summaryrefslogtreecommitdiff
path: root/arch/arm/mach-omap2/omap5/dra7xx_iodelay.c
diff options
context:
space:
mode:
authorLokesh Vutla <lokeshvutla@ti.com>2019-10-01 10:41:01 +0530
committerTom Rini <trini@konsulko.com>2019-10-11 13:32:40 -0400
commit5c6e497eaaf2c76344f82e823c2a0aad3cc26167 (patch)
treee8ff78640a9b892bd1026d4b1bead169f8c95fed /arch/arm/mach-omap2/omap5/dra7xx_iodelay.c
parent60e3d43a26d0334dd09521220e0312d50679b1c7 (diff)
arm: dra7xx: Hang on any failure during IOdelay recalibration
If there is any failure during IOdelay recalibration sequence, IOs are not guaranteed to behave as expected. So hang on any failure during the sequence. Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Diffstat (limited to 'arch/arm/mach-omap2/omap5/dra7xx_iodelay.c')
-rw-r--r--arch/arm/mach-omap2/omap5/dra7xx_iodelay.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/omap5/dra7xx_iodelay.c b/arch/arm/mach-omap2/omap5/dra7xx_iodelay.c
index 9bd7051786..9eda57c450 100644
--- a/arch/arm/mach-omap2/omap5/dra7xx_iodelay.c
+++ b/arch/arm/mach-omap2/omap5/dra7xx_iodelay.c
@@ -241,6 +241,12 @@ void __recalibrate_iodelay_end(int ret)
debug("IODELAY: IO delay recalibration successfully completed\n");
}
+ /* If there is an error during iodelay recalibration, SoC is in a bad
+ * state. Do not progress any further.
+ */
+ if (ret)
+ hang();
+
return;
}