diff options
author | Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com> | 2014-07-25 00:11:56 +0530 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2014-07-25 14:10:52 +1000 |
commit | e03044b4922179e61b5ff3d38e11ed302e16f18a (patch) | |
tree | 12cad60b7c1f2048497d78f9678d452f3c87ffef /core/hmi.c | |
parent | 91f1712faaa1b8774bb2198e580d1d210ae473cb (diff) | |
download | skiboot-e03044b4922179e61b5ff3d38e11ed302e16f18a.zip skiboot-e03044b4922179e61b5ff3d38e11ed302e16f18a.tar.gz skiboot-e03044b4922179e61b5ff3d38e11ed302e16f18a.tar.bz2 |
opal: Recover from TOD sync check error.
This patch implements basic framework for TOD error recovery. To start
with, this patch implements TOD sync check error recovery as an example.
Currently this patch recover from sync check error on non-master chip.
We can use same framework and recover from more TOD errors.
Signed-off-by: Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'core/hmi.c')
-rw-r--r-- | core/hmi.c | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -8,6 +8,7 @@ #include <opal.h> #include <opal-msg.h> #include <processor.h> +#include <chiptod.h> /* * HMER register layout: @@ -193,7 +194,7 @@ int handle_hmi_exception(uint64_t hmer, struct OpalHMIEvent *hmi_evt) hmi_evt->type = OpalHMI_ERROR_TFAC; hmi_evt->tfmr = mfspr(SPR_TFMR); } - recover = 0; + recover = chiptod_recover_tb_errors(); } if (hmer & SPR_HMER_TFMR_PARITY_ERROR) { hmer &= ~SPR_HMER_TFMR_PARITY_ERROR; |