On Sat, Feb 27, 2016 at 12:38 AM, Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx> wrote: > On Sat, Feb 27, 2016 at 12:10:03AM -0800, dbasehore . wrote: >> A device is not able to use direct complete if its children do not >> also use direct complete. Even though the SCSI layer leaves devices >> runtime suspended, the way it does it still prevents its parent from >> using direct complete. > > Okay. > > Do you need to provide ->complete() hook that then resumes the device > when system is resumed (since the device resume hook is never called > when direct_complete is set)? Along the lines of > pm_complete_with_resume_check(). That's an interesting question. Part of direct complete is to leave the device runtime suspended even after the system resumes if possible. The comments in pm_complete_with_resume_check indicate that the firmware may resume a device. I could see this happening with some kind of SCSI device. If this is possible, are we able to put the device back into a consistent state (runtime suspended) by calling suspend for the scsi device? If not, we might need to use pm_complete_with_resume_check for the complete callback. -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html