From a10f1502a20b5fae6d38e262de3729619a3f886d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= Date: Tue, 1 Oct 2019 08:59:52 +0200 Subject: [PATCH] xive/p9: obsolete OPAL_XIVE_IRQ_*_VIA_FW flags MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 Signed-off-by: Oliver O'Halloran --- hw/xive.c | 12 ------------ include/opal-api.h | 4 ++-- 2 files changed, 2 insertions(+), 14 deletions(-) diff --git a/hw/xive.c b/hw/xive.c index 39b1199d0125..4a2b0df7b042 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 ad913bfa382d..e7156f36a756 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 */