}
 
        /* setup interrupt control */
-       /* XXX this should actually be a bus address, not an MC address. same on older asics */
-       WREG32(INTERRUPT_CNTL2, rdev->ih.gpu_addr >> 8);
+       /* set dummy read address to dummy page address */
+       WREG32(INTERRUPT_CNTL2, rdev->dummy_page.addr >> 8);
        interrupt_cntl = RREG32(INTERRUPT_CNTL);
        /* IH_DUMMY_RD_OVERRIDE=0 - dummy read disabled with msi, enabled without msi
         * IH_DUMMY_RD_OVERRIDE=1 - dummy read controlled by IH_DUMMY_RD_EN
 
        }
 
        /* setup interrupt control */
-       /* set dummy read address to ring address */
-       WREG32(INTERRUPT_CNTL2, rdev->ih.gpu_addr >> 8);
+       /* set dummy read address to dummy page address */
+       WREG32(INTERRUPT_CNTL2, rdev->dummy_page.addr >> 8);
        interrupt_cntl = RREG32(INTERRUPT_CNTL);
        /* IH_DUMMY_RD_OVERRIDE=0 - dummy read disabled with msi, enabled without msi
         * IH_DUMMY_RD_OVERRIDE=1 - dummy read controlled by IH_DUMMY_RD_EN
 
        }
 
        /* setup interrupt control */
-       /* set dummy read address to ring address */
-       WREG32(INTERRUPT_CNTL2, rdev->ih.gpu_addr >> 8);
+       /* set dummy read address to dummy page address */
+       WREG32(INTERRUPT_CNTL2, rdev->dummy_page.addr >> 8);
        interrupt_cntl = RREG32(INTERRUPT_CNTL);
        /* IH_DUMMY_RD_OVERRIDE=0 - dummy read disabled with msi, enabled without msi
         * IH_DUMMY_RD_OVERRIDE=1 - dummy read controlled by IH_DUMMY_RD_EN