The I2C device is a mag3110 which reads magnetic fields. It does have an interrupt pin that tells me when new data has arrived, but new data arrives all the time!
I can set the mag's reading interval down to 1 sample every 2 seconds, but the resolution i need has to be at least 10 samples per second. I have to monitor the data coming from the MAG3110 over the I2C line, and that means being awake for it. I'd love to go to sleep, but accuracy to the nearest second is required. That means polling the MAG for 10 samples a second data loss is not an option!