Skip to content

Commit

Permalink
xive/p9: obsolete OPAL_XIVE_IRQ_*_VIA_FW flags
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
legoater authored and oohal committed Nov 3, 2019
1 parent 1f269bc commit a10f150
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 14 deletions.
12 changes: 0 additions & 12 deletions hw/xive.c
Expand Up @@ -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)
Expand Down
4 changes: 2 additions & 2 deletions include/opal-api.h
Expand Up @@ -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 */
Expand Down

0 comments on commit a10f150

Please sign in to comment.