u32 irq_idx, struct dpu_encoder_wait_info *info);
 
 int dpu_encoder_helper_wait_for_irq(struct dpu_encoder_phys *phys_enc,
-               int irq,
+               int irq_idx,
                void (*func)(void *arg),
                struct dpu_encoder_wait_info *wait_info)
 {
 
        /* return EWOULDBLOCK since we know the wait isn't necessary */
        if (phys_enc->enable_state == DPU_ENC_DISABLED) {
-               DRM_ERROR("encoder is disabled id=%u, callback=%ps, irq=%d\n",
+               DRM_ERROR("encoder is disabled id=%u, callback=%ps, IRQ=[%d, %d]\n",
                          DRMID(phys_enc->parent), func,
-                         irq);
+                         DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx));
                return -EWOULDBLOCK;
        }
 
-       if (irq < 0) {
+       if (irq_idx < 0) {
                DRM_DEBUG_KMS("skip irq wait id=%u, callback=%ps\n",
                              DRMID(phys_enc->parent), func);
                return 0;
        }
 
-       DRM_DEBUG_KMS("id=%u, callback=%ps, irq=%d, pp=%d, pending_cnt=%d\n",
+       DRM_DEBUG_KMS("id=%u, callback=%ps, IRQ=[%d, %d], pp=%d, pending_cnt=%d\n",
                      DRMID(phys_enc->parent), func,
-                     irq, phys_enc->hw_pp->idx - PINGPONG_0,
+                     DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx), phys_enc->hw_pp->idx - PINGPONG_0,
                      atomic_read(wait_info->atomic_cnt));
 
        ret = dpu_encoder_helper_wait_event_timeout(
                        DRMID(phys_enc->parent),
-                       irq,
+                       irq_idx,
                        wait_info);
 
        if (ret <= 0) {
-               irq_status = dpu_core_irq_read(phys_enc->dpu_kms, irq);
+               irq_status = dpu_core_irq_read(phys_enc->dpu_kms, irq_idx);
                if (irq_status) {
                        unsigned long flags;
 
-                       DRM_DEBUG_KMS("irq not triggered id=%u, callback=%ps, irq=%d, pp=%d, atomic_cnt=%d\n",
+                       DRM_DEBUG_KMS("IRQ=[%d, %d] not triggered id=%u, callback=%ps, pp=%d, atomic_cnt=%d\n",
+                                     DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx),
                                      DRMID(phys_enc->parent), func,
-                                     irq,
                                      phys_enc->hw_pp->idx - PINGPONG_0,
                                      atomic_read(wait_info->atomic_cnt));
                        local_irq_save(flags);
                        ret = 0;
                } else {
                        ret = -ETIMEDOUT;
-                       DRM_DEBUG_KMS("irq timeout id=%u, callback=%ps, irq=%d, pp=%d, atomic_cnt=%d\n",
+                       DRM_DEBUG_KMS("IRQ=[%d, %d] timeout id=%u, callback=%ps, pp=%d, atomic_cnt=%d\n",
+                                     DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx),
                                      DRMID(phys_enc->parent), func,
-                                     irq,
                                      phys_enc->hw_pp->idx - PINGPONG_0,
                                      atomic_read(wait_info->atomic_cnt));
                }
        } else {
                ret = 0;
                trace_dpu_enc_irq_wait_success(DRMID(phys_enc->parent),
-                       func, irq,
+                       func, irq_idx,
                        phys_enc->hw_pp->idx - PINGPONG_0,
                        atomic_read(wait_info->atomic_cnt));
        }
 
        },
 };
 
-#define DPU_IRQ_REG(irq_idx)   (irq_idx / 32)
-#define DPU_IRQ_MASK(irq_idx)  (BIT(irq_idx % 32))
+#define DPU_IRQ_MASK(irq_idx)  (BIT(DPU_IRQ_BIT(irq_idx)))
 
 static inline bool dpu_core_irq_is_valid(int irq_idx)
 {
 {
        struct dpu_hw_intr_entry *irq_entry = dpu_core_irq_get_entry(dpu_kms->hw_intr, irq_idx);
 
-       VERB("irq_idx=%d\n", irq_idx);
+       VERB("IRQ=[%d, %d]\n", DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx));
 
        if (!irq_entry->cb)
-               DRM_ERROR("no registered cb, idx:%d\n", irq_idx);
+               DRM_ERROR("no registered cb, IRQ=[%d, %d]\n",
+                         DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx));
 
        atomic_inc(&irq_entry->count);
 
                return -EINVAL;
 
        if (!dpu_core_irq_is_valid(irq_idx)) {
-               pr_err("invalid IRQ index: [%d]\n", irq_idx);
+               pr_err("invalid IRQ=[%d, %d]\n",
+                      DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx));
                return -EINVAL;
        }
 
                intr->cache_irq_mask[reg_idx] = cache_irq_mask;
        }
 
-       pr_debug("DPU IRQ %d %senabled: MASK:0x%.8lx, CACHE-MASK:0x%.8x\n", irq_idx, dbgstr,
+       pr_debug("DPU IRQ=[%d, %d] %senabled: MASK:0x%.8lx, CACHE-MASK:0x%.8x\n",
+                DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx), dbgstr,
                        DPU_IRQ_MASK(irq_idx), cache_irq_mask);
 
        return 0;
                return -EINVAL;
 
        if (!dpu_core_irq_is_valid(irq_idx)) {
-               pr_err("invalid IRQ index: [%d]\n", irq_idx);
+               pr_err("invalid IRQ=[%d, %d]\n",
+                      DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx));
                return -EINVAL;
        }
 
                intr->cache_irq_mask[reg_idx] = cache_irq_mask;
        }
 
-       pr_debug("DPU IRQ %d %sdisabled: MASK:0x%.8lx, CACHE-MASK:0x%.8x\n", irq_idx, dbgstr,
+       pr_debug("DPU IRQ=[%d, %d] %sdisabled: MASK:0x%.8lx, CACHE-MASK:0x%.8x\n",
+                DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx), dbgstr,
                        DPU_IRQ_MASK(irq_idx), cache_irq_mask);
 
        return 0;
                return 0;
 
        if (!dpu_core_irq_is_valid(irq_idx)) {
-               pr_err("invalid IRQ index: [%d]\n", irq_idx);
+               pr_err("invalid IRQ=[%d, %d]\n", DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx));
                return 0;
        }
 
        int ret;
 
        if (!irq_cb) {
-               DPU_ERROR("invalid ird_idx:%d irq_cb:%ps\n", irq_idx, irq_cb);
+               DPU_ERROR("invalid IRQ=[%d, %d] irq_cb:%ps\n",
+                         DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx), irq_cb);
                return -EINVAL;
        }
 
        if (!dpu_core_irq_is_valid(irq_idx)) {
-               DPU_ERROR("invalid IRQ index: [%d]\n", irq_idx);
+               DPU_ERROR("invalid IRQ=[%d, %d]\n",
+                         DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx));
                return -EINVAL;
        }
 
-       VERB("[%pS] irq_idx=%d\n", __builtin_return_address(0), irq_idx);
+       VERB("[%pS] IRQ=[%d, %d]\n", __builtin_return_address(0),
+            DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx));
 
        spin_lock_irqsave(&dpu_kms->hw_intr->irq_lock, irq_flags);
 
                                dpu_kms->hw_intr,
                                irq_idx);
        if (ret)
-               DPU_ERROR("Fail to enable IRQ for irq_idx:%d\n",
-                                       irq_idx);
+               DPU_ERROR("Failed/ to enable IRQ=[%d, %d]\n",
+                         DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx));
        spin_unlock_irqrestore(&dpu_kms->hw_intr->irq_lock, irq_flags);
 
        trace_dpu_irq_register_success(irq_idx);
        int ret;
 
        if (!dpu_core_irq_is_valid(irq_idx)) {
-               DPU_ERROR("invalid IRQ index: [%d]\n", irq_idx);
+               DPU_ERROR("invalid IRQ=[%d, %d]\n",
+                         DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx));
                return -EINVAL;
        }
 
-       VERB("[%pS] irq_idx=%d\n", __builtin_return_address(0), irq_idx);
+       VERB("[%pS] IRQ=[%d, %d]\n", __builtin_return_address(0),
+            DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx));
 
        spin_lock_irqsave(&dpu_kms->hw_intr->irq_lock, irq_flags);
        trace_dpu_core_irq_unregister_callback(irq_idx);
 
        ret = dpu_hw_intr_disable_irq_locked(dpu_kms->hw_intr, irq_idx);
        if (ret)
-               DPU_ERROR("Fail to disable IRQ for irq_idx:%d: %d\n",
-                                       irq_idx, ret);
+               DPU_ERROR("Failed to disable IRQ=[%d, %d]: %d\n",
+                         DPU_IRQ_REG(irq_idx), DPU_IRQ_BIT(irq_idx), ret);
 
        irq_entry = dpu_core_irq_get_entry(dpu_kms->hw_intr, irq_idx);
        irq_entry->cb = NULL;
                spin_unlock_irqrestore(&dpu_kms->hw_intr->irq_lock, irq_flags);
 
                if (irq_count || cb)
-                       seq_printf(s, "idx:%d irq:%d cb:%ps\n", i, irq_count, cb);
+                       seq_printf(s, "IRQ=[%d, %d] count:%d cb:%ps\n",
+                                  DPU_IRQ_REG(i), DPU_IRQ_BIT(i), irq_count, cb);
        }
 
        return 0;
        for (i = 0; i < DPU_NUM_IRQS; i++) {
                irq_entry = dpu_core_irq_get_entry(dpu_kms->hw_intr, i);
                if (irq_entry->cb)
-                       DPU_ERROR("irq_idx=%d still enabled/registered\n", i);
+                       DPU_ERROR("IRQ=[%d, %d] still enabled/registered\n",
+                                 DPU_IRQ_REG(i), DPU_IRQ_BIT(i));
        }
 
        dpu_clear_irqs(dpu_kms);