aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCédric Le Goater <clg@kaod.org>2019-10-01 08:59:52 +0200
committerOliver O'Halloran <oohall@gmail.com>2019-11-04 10:52:47 +1100
commita10f1502a20b5fae6d38e262de3729619a3f886d (patch)
tree8b04ef31f9d7766e28b54f440348a57fcb01da72
parent1f269bc0b71c79570043f17adc9ac1b812bcc5ba (diff)
downloadskiboot-a10f1502a20b5fae6d38e262de3729619a3f886d.zip
skiboot-a10f1502a20b5fae6d38e262de3729619a3f886d.tar.gz
skiboot-a10f1502a20b5fae6d38e262de3729619a3f886d.tar.bz2
xive/p9: obsolete OPAL_XIVE_IRQ_*_VIA_FW flags
These were needed to workaround HW bugs in PHB4 LSIs of POWER9 DD1.0 processors. Keep the flags in case of a similar issue in the next generation of the XIVE logic and keep it also for Linux which still has handlers in its XIVE layer. However, there is no need to keep the code in POWER9 XIVE driver. Signed-off-by: Cédric Le Goater <clg@kaod.org> Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
-rw-r--r--hw/xive.c12
-rw-r--r--include/opal-api.h4
2 files changed, 2 insertions, 14 deletions
diff --git a/hw/xive.c b/hw/xive.c
index 39b1199..4a2b0df 100644
--- a/hw/xive.c
+++ b/hw/xive.c
@@ -3629,18 +3629,6 @@ static int64_t opal_xive_get_irq_info(uint32_t girq,
if (out_flags)
*out_flags = xive_convert_irq_flags(s->flags);
- /*
- * If the orig source has a set_xive callback, then set
- * OPAL_XIVE_IRQ_MASK_VIA_FW as masking/unmasking requires
- * source specific workarounds. Same with EOI.
- */
- if (out_flags && s->orig_ops) {
- if (s->orig_ops->set_xive)
- *out_flags |= OPAL_XIVE_IRQ_MASK_VIA_FW;
- if (s->orig_ops->eoi)
- *out_flags |= OPAL_XIVE_IRQ_EOI_VIA_FW;
- }
-
idx = girq - s->esb_base;
if (out_esb_shift)
diff --git a/include/opal-api.h b/include/opal-api.h
index ad913bf..e7156f3 100644
--- a/include/opal-api.h
+++ b/include/opal-api.h
@@ -1149,8 +1149,8 @@ enum {
OPAL_XIVE_IRQ_STORE_EOI = 0x00000002,
OPAL_XIVE_IRQ_LSI = 0x00000004,
OPAL_XIVE_IRQ_SHIFT_BUG = 0x00000008,
- OPAL_XIVE_IRQ_MASK_VIA_FW = 0x00000010,
- OPAL_XIVE_IRQ_EOI_VIA_FW = 0x00000020,
+ OPAL_XIVE_IRQ_MASK_VIA_FW = 0x00000010, /* DD1.0 workaround */
+ OPAL_XIVE_IRQ_EOI_VIA_FW = 0x00000020, /* DD1.0 workaround */
};
/* Flags for OPAL_XIVE_GET/SET_QUEUE_INFO */