From eee4c6990a9cae17daf818675e23cdbdbbc336b5 Mon Sep 17 00:00:00 2001 From: Russell Currey Date: Wed, 19 Apr 2017 15:14:06 +1000 Subject: phb4: Implement fence check Fence detection is missing in PHB4, so implement it. The mechanism is the exact same as in PHB3. Acked-by: Benjamin Herrenschmidt Signed-off-by: Russell Currey Signed-off-by: Michael Neuling --- hw/phb4.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'hw') diff --git a/hw/phb4.c b/hw/phb4.c index ece042b..e865d0d 100644 --- a/hw/phb4.c +++ b/hw/phb4.c @@ -157,7 +157,14 @@ static inline void phb4_ioda_sel(struct phb4 *p, uint32_t table, /* Check if AIB is fenced via PBCQ NFIR */ static bool phb4_fenced(struct phb4 *p) { - // FIXME + uint64_t nfir; + + xscom_read(p->chip_id, p->pe_stk_xscom + 0x0, &nfir); + if (nfir & PPC_BIT(16)) { + p->flags |= PHB4_AIB_FENCED; + p->state = PHB4_STATE_FENCED; + return true; + } return false; } -- cgit v1.1