xive: Don't try to find a target EQ for prio 0xff
Otherwise we get warnings when masking interrupts
@@ -2229,9 +2229,10 @@ static int64_t xive_set_irq_targetting(uint32_t isn, uint32_t target,
bitmap_set_bit(*x->int_enabled_map, GIRQ_TO_IDX(isn));
}
- /* Re-target the IVE. First find the EQ
+ /* If prio isn't 0xff, re-target the IVE. First find the EQ
* correponding to the target
*/
+ if (prio != 0xff) {
if (!xive_eq_for_target(target, prio, &eq_blk, &eq_idx)) {
xive_err(x, "Can't find EQ for target/prio 0x%x/%d\n",
target, prio);
@@ -2244,6 +2245,7 @@ static int64_t xive_set_irq_targetting(uint32_t isn, uint32_t target,
*/
new_ive = SETFIELD(IVE_EQ_BLOCK, new_ive, eq_blk);
new_ive = SETFIELD(IVE_EQ_INDEX, new_ive, eq_idx);
+ }
new_ive = SETFIELD(IVE_EQ_DATA, new_ive, lirq);
xive_vdbg(x,"ISN %x routed to eq %x/%x lirq=%08x IVE=%016llx !\n",
