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. Alan Stern