[Skiboot] [PATCH v3 2/2] xive: Fix ability to clear some EQ flags

Benjamin Herrenschmidt benh at kernel.crashing.org
Wed Nov 1 16:59:44 AEDT 2017


We could never clear "unconditional notify" and "escalate"

Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
---
 hw/xive.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/hw/xive.c b/hw/xive.c
index 352ad3be..bb17b38a 100644
--- a/hw/xive.c
+++ b/hw/xive.c
@@ -4013,10 +4013,14 @@ static int64_t opal_xive_set_queue_info(uint64_t vp, uint32_t prio,
 	/* Always notify flag */
 	if (qflags & OPAL_XIVE_EQ_ALWAYS_NOTIFY)
 		eq.w0 |= EQ_W0_UCOND_NOTIFY;
+	else
+		eq.w0 &= ~EQ_W0_UCOND_NOTIFY;
 
 	/* Escalation flag */
 	if (qflags & OPAL_XIVE_EQ_ESCALATE)
 		eq.w0 |= EQ_W0_ESCALATE_CTL;
+	else
+		eq.w0 &= ~EQ_W0_ESCALATE_CTL;
 
 	/* Unconditionally clear the current queue pointer, set
 	 * generation to 1 and disable escalation interrupts.
-- 
2.13.6



More information about the Skiboot mailing list