module ti.sysbios.family.c66.vayu.Power |
|
Power Module
This module is used to reduce power consumption of the DSP subsystem.
[
more ... ]
#include <ti/sysbios/family/c66/vayu/Power.h>
Functions |
UInt | |
Functions common to all target modules |
|
|
Typedefs |
typedef enum | |
Constants |
extern const Ptr | |
extern const Ptr | |
DETAILS
This module is used to reduce power consumption of the DSP subsystem.
Suspend/Resume with Hibernation: The DSP subsystem context is saved to
external RAM, and GEM is put into standby. Upon the standby transition,
PRCM will transition the power domain to off. Upon release from reset, the
CPU will start executing from reset; a reset hook function will hijack the
boot process, restore CPU state, return back into the Power_suspend() API,
which will restore the remaining DSP subsystem context, and then return
to its caller, to resume the application.
The application must explicitly call to Power_suspend() for Suspend/Resume
functionality.
Suspend/Resume can be invoked from Task, Swi, or Idle loop context.
It cannot be invoked from Hwi context.
enum Power_Suspend |
|
Suspend Level
typedef enum Power_Suspend {
Power_Suspend_HIBERNATE
// Suspend to HIBERNATE state
} Power_Suspend;
config Power_systemRegs // module-wide |
|
Base address of SYSC registers
extern const Ptr Power_systemRegs;
config Power_tpccRegs // module-wide |
|
Base address of EDMA TPCC registers
extern const Ptr Power_tpccRegs;
Power_suspend() // module-wide |
|
Function used for suspend/resume of the DSP subsystem
DETAILS
This function will save DSP subsystem context and then put GEM into
standby, as the final steps for a transition to
hibernate (also referred to as off-mode).
Prior to invoking this function the application software must prepare
for suspend, which includes: configuring PRCM for the appropriate
transition once GEM goes to standby; disabling unintended wakeup
interrupts, and configuring intended wakeups; taking care of any
required notifications to software components; and 'quieting' of the
DSP application (e.g., ensuring that all in-progress EDMA activity
completes).
Module-Wide Built-Ins |
|
// Get this module's unique id
Bool Power_Module_startupDone();
// Test if this module has completed startup
// The heap from which this module allocates memory
Bool Power_Module_hasMask();
// Test whether this module has a diagnostics mask
Bits16 Power_Module_getMask();
// Returns the diagnostics mask for this module
Void Power_Module_setMask(Bits16 mask);
// Set the diagnostics mask for this module
var Power = xdc.useModule('ti.sysbios.family.c66.vayu.Power');
module-wide constants & types
module-wide config parameters
generated on Thu, 25 May 2017 22:09:22 GMT