Logo Search packages:      
Sourcecode: linux version File versions  Download package

pm_ext_ops Struct Reference

#include <pm.h>

List of all members.


Detailed Description

struct pm_ext_ops - extended device PM callbacks

Some devices require certain operations related to suspend and hibernation to be carried out with interrupts disabled. Thus, 'struct pm_ext_ops' below is defined, adding callbacks to be executed with interrupts disabled to 'struct pm_ops'.

The following callbacks included in 'struct pm_ext_ops' are executed with the nonboot CPUs switched off and with interrupts disabled on the only functional CPU. They also are executed with the PM core list of devices locked, so they must NOT unregister any devices.

: Complete the operations of ->suspend() by carrying out any actions required for suspending the device that need interrupts to be disabled

: Prepare for the execution of ->resume() by carrying out any actions required for resuming the device that need interrupts to be disabled

: Complete the operations of ->freeze() by carrying out any actions required for freezing the device that need interrupts to be disabled

: Prepare for the execution of ->thaw() by carrying out any actions required for thawing the device that need interrupts to be disabled

: Complete the operations of ->poweroff() by carrying out any actions required for handling the device that need interrupts to be disabled

: Prepare for the execution of ->restore() by carrying out any actions required for restoring the operations of the device that need interrupts to be disabled

All of the above callbacks return error codes, but the error codes returned by the resume operations, (), (), and (), do not cause the PM core to abort the resume transition during which they are returned. The error codes returned in that cases are only printed by the PM core to the system logs for debugging purposes. Still, as stated above, it is recommended that drivers only return error codes from their resume methods if the device being handled fails to resume and is not usable any more.

Definition at line 203 of file pm.h.


Public Attributes

struct pm_ops base
int(* freeze_noirq )(struct device *dev)
int(* poweroff_noirq )(struct device *dev)
int(* restore_noirq )(struct device *dev)
int(* resume_noirq )(struct device *dev)
int(* suspend_noirq )(struct device *dev)
int(* thaw_noirq )(struct device *dev)

The documentation for this struct was generated from the following file:

Generated by  Doxygen 1.6.0   Back to index