aboutsummaryrefslogtreecommitdiff
path: root/hw/chiptod.c
AgeCommit message (Collapse)AuthorFilesLines
2014-07-30chiptod: Improvement to make quicker recovery from TOD errors.Mahesh Salgaonkar1-1/+15
When we get an HMI for TOD errors, chip TOD is generally not in running state. Before we fix TOD state we need to do a quick check whether it is running or not. But in current implementation instead of doing a quick check we do a poll check for TOD running. This delays the process of fixing TOD state and on a system with more cores per chip we may see soft lockup's even after successful recovery. This patch fixes this issue by introducing a quick check for TOD running state and provides quicker/faster recovery from TOD errors. Signed-off-by: Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2014-07-25opal: Recover from TOD sync check error on master chip.Mahesh Salgaonkar1-7/+28
To recover from sync check error on master TOD, switch the topology to make backup master as active new master. After the switch request for TOD value from new master and sync local TOD. This patch also recovers from following TOD errors: bit22: internal path: delay, step check components: parity error bit18: PSS Hamming Distance bit32: Reg 0x10 data parity error bit33: TOD Sync Check error bit34: FSM state parity error bit35: Time register parity error (Note: Above Bits are from TOD error register (xscom addr 00040020)) Signed-off-by: Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2014-07-25opal: Recover from TOD sync check error.Mahesh Salgaonkar1-3/+114
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>
2014-07-02Initial commit of Open Source releaseBenjamin Herrenschmidt1-0/+685
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>