Hi, the driver takes a PM reference in open(), yet it marks the device busy in pegasus_irq(). These approaches contradict each other. There is no point in marking a device as busy while its PM count is elevated. It will not be runtime suspended anyway. Did you mean for the device to be subjected to runtime PM while in use? If so, could you test the attached patch? Regards Oliver