On Tuesday, 20 of November 2007, Alan Stern wrote: > On Tue, 20 Nov 2007, Huang, Ying wrote: > > > - What is the difference between PMSG_SUSPEND and PMSG_FREEZE? > > SUSPEND means that the system is about to go into a low-power state, so > the driver should take the appropriate action to reduce the device's > power consumption. It should also stop all I/O and DMA to the device. > Interrupts can remain enabled if the device is supposed to be a wakeup > source; otherwise they should be disabled. > > FREEZE means that the system is going to hibernate, and devices need to > be quiescent (no I/O, no DMA, and no interrupts) so that an atomic > memory snapshot can be captured. The driver should take the > appropriate action to quiesce the device but the power level doesn't > need to change. > > PRETHAW means that the system is going to resume from hibernation by > loading a previously-saved memory snapshot. The driver should take the > appropriate action to quiesce the device (no I/O, no DMA, and no > interrupts) so that the snapshot can be safely restored, but the power > level doesn't need to change. The driver may also want to put the > device into a special state so that the saved kernel's resume method > will recognize the device has undergone a hibernation cycle and needs > to be reinitialized. Exactly. For this reason, PMSG_SUSPEND should be used right before calling hibernation_ops->enter() . Greetings, Rafael _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm