iowrite32(0, gsi->virt + GSI_CNTXT_SRC_CH_IRQ_MSK_OFFSET);
 }
 
-static void gsi_irq_ieob_enable(struct gsi *gsi, u32 evt_ring_id)
+static void gsi_irq_ieob_enable_one(struct gsi *gsi, u32 evt_ring_id)
 {
        bool enable_ieob = !gsi->ieob_enabled_bitmap;
        u32 val;
                gsi_irq_type_enable(gsi, GSI_IEOB);
 }
 
-static void gsi_irq_ieob_disable(struct gsi *gsi, u32 evt_ring_id)
+static void gsi_irq_ieob_disable(struct gsi *gsi, u32 event_mask)
 {
        u32 val;
 
-       gsi->ieob_enabled_bitmap &= ~BIT(evt_ring_id);
+       gsi->ieob_enabled_bitmap &= ~event_mask;
 
        /* Disable the interrupt type if this was the last enabled channel */
        if (!gsi->ieob_enabled_bitmap)
        iowrite32(val, gsi->virt + GSI_CNTXT_SRC_IEOB_IRQ_MSK_OFFSET);
 }
 
+static void gsi_irq_ieob_disable_one(struct gsi *gsi, u32 evt_ring_id)
+{
+       gsi_irq_ieob_disable(gsi, BIT(evt_ring_id));
+}
+
 /* Enable all GSI_interrupt types */
 static void gsi_irq_enable(struct gsi *gsi)
 {
 
        napi_disable(&channel->napi);
 
-       gsi_irq_ieob_disable(channel->gsi, channel->evt_ring_id);
+       gsi_irq_ieob_disable_one(channel->gsi, channel->evt_ring_id);
 }
 
 /* Allow transactions to be used on the channel again. */
 static void gsi_channel_thaw(struct gsi_channel *channel)
 {
-       gsi_irq_ieob_enable(channel->gsi, channel->evt_ring_id);
+       gsi_irq_ieob_enable_one(channel->gsi, channel->evt_ring_id);
 
        napi_enable(&channel->napi);
 }
 
                event_mask ^= BIT(evt_ring_id);
 
-               gsi_irq_ieob_disable(gsi, evt_ring_id);
+               gsi_irq_ieob_disable_one(gsi, evt_ring_id);
                napi_schedule(&gsi->evt_ring[evt_ring_id].channel->napi);
        }
 }
        }
 
        if (count < budget && napi_complete(napi))
-               gsi_irq_ieob_enable(channel->gsi, channel->evt_ring_id);
+               gsi_irq_ieob_enable_one(channel->gsi, channel->evt_ring_id);
 
        return count;
 }