.debugfs_reg_access = adis_debugfs_reg_access,
 };
 
-static int adis16460_enable_irq(struct adis *adis, bool enable)
-{
-       /*
-        * There is no way to gate the data-ready signal internally inside the
-        * ADIS16460 :(
-        */
-       if (enable)
-               enable_irq(adis->spi->irq);
-       else
-               disable_irq(adis->spi->irq);
-
-       return 0;
-}
-
 #define ADIS16460_DIAG_STAT_IN_CLK_OOS 7
 #define ADIS16460_DIAG_STAT_FLASH_MEM  6
 #define ADIS16460_DIAG_STAT_SELF_TEST  5
                BIT(ADIS16460_DIAG_STAT_OVERRANGE) |
                BIT(ADIS16460_DIAG_STAT_SPI_COMM) |
                BIT(ADIS16460_DIAG_STAT_FLASH_UPT),
-       .enable_irq = adis16460_enable_irq,
+       .unmasked_drdy = true,
        .timeouts = &adis16460_timeouts,
 };
 
        if (ret)
                return ret;
 
-       /* We cannot mask the interrupt, so ensure it isn't auto enabled */
-       st->adis.irq_flag |= IRQF_NO_AUTOEN;
        ret = devm_adis_setup_buffer_and_trigger(&st->adis, indio_dev, NULL);
        if (ret)
                return ret;