52 #ifndef ti_drivers_power_PowerCC26XX_    53 #define ti_drivers_power_PowerCC26XX_    59 #include <ti/drivers/dpl/HwiP.h>    60 #include <ti/drivers/dpl/ClockP.h>    64 typedef uint8_t PowerCC26XX_Resource; 
    68 #define PowerCC26XX_RESUMETIMESTANDBY  750    71 #define PowerCC26XX_TOTALTIMESTANDBY   1000    74 #define PowerCC26XX_WAKEDELAYSTANDBY   240    77 #define PowerCC26XX_INITIALWAITRCOSC_LF 1000    80 #define PowerCC26XX_RETRYWAITRCOSC_LF   1000    83 #define PowerCC26XX_INITIALWAITXOSC_HF  50    86 #define PowerCC26XX_RETRYWAITXOSC_HF    50    89 #define PowerCC26XX_INITIALWAITXOSC_LF  10000    92 #define PowerCC26XX_RETRYWAITXOSC_LF    5000    95 #define PowerCC26XX_PERIPH_GPT0    0    98 #define PowerCC26XX_PERIPH_GPT1    1   101 #define PowerCC26XX_PERIPH_GPT2    2   104 #define PowerCC26XX_PERIPH_GPT3    3   107 #define PowerCC26XX_PERIPH_SSI0    4   110 #define PowerCC26XX_PERIPH_SSI1    5   113 #define PowerCC26XX_PERIPH_UART0   6     115 #define PowerCC26XX_PERIPH_I2C0    7     117 #define PowerCC26XX_PERIPH_TRNG    8   120 #define PowerCC26XX_PERIPH_GPIO    9     122 #define PowerCC26XX_PERIPH_UDMA    10    124 #define PowerCC26XX_PERIPH_CRYPTO  11    126 #define PowerCC26XX_PERIPH_I2S     12    128 #define PowerCC26XX_PERIPH_RFCORE  13    130 #define PowerCC26XX_XOSC_HF        14   133 #define PowerCC26XX_DOMAIN_PERIPH  15   136 #define PowerCC26XX_DOMAIN_SERIAL  16   139 #define PowerCC26XX_DOMAIN_RFCORE  17   142 #define PowerCC26XX_DOMAIN_SYSBUS  18   146 #define PowerCC26XX_NUMRESOURCES   19    151 #define PowerCC26XX_PERIPH          0x80    152 #define PowerCC26XX_SPECIAL         0x40    153 #define PowerCC26XX_DOMAIN          0x00    154 #define PowerCC26XX_PARENTMASK      0x3F    155 #define PowerCC26XX_NOPARENT        0x3F    158 #define PowerCC26XX_STANDBY         0x1    161 #define PowerCC26XX_ENABLE          1   162 #define PowerCC26XX_DISABLE         0   166 #define PowerCC26XX_SB_VIMS_CACHE_RETAIN  0   169 #define PowerCC26XX_SD_DISALLOW  1   172 #define PowerCC26XX_SB_DISALLOW  2   175 #define PowerCC26XX_IDLE_PD_DISALLOW  3   178 #define PowerCC26XX_NEED_FLASH_IN_IDLE  4   181 #define PowerCC26XX_SWITCH_XOSC_HF_MANUALLY 5   194 #define PowerCC26XX_XOSC_HF_SWITCHING_DISALLOW 6   204 #define PowerCC26XX_NUMCONSTRAINTS  7    213 #define PowerCC26XX_ENTERING_STANDBY    0x1   216 #define PowerCC26XX_ENTERING_SHUTDOWN   0x2   219 #define PowerCC26XX_AWAKE_STANDBY       0x4   222 #define PowerCC26XX_AWAKE_STANDBY_LATE  0x8   225 #define PowerCC26XX_XOSC_HF_SWITCHED    0x10   228 #define PowerCC26XX_JTAG_PD_TURNED_ON   0x20   299 #define PowerCC26XX_NUMEVENTS           6     306 #define PowerCC26XX_SETUP_CALIBRATE     1   307 #define PowerCC26XX_INITIATE_CALIBRATE  2   308 #define PowerCC26XX_DO_CALIBRATE        3   313 typedef struct PowerCC26XX_ResourceRecord {
   315     uint16_t driverlibID;   
   316 } PowerCC26XX_ResourceRecord;
   361     bool (*calibrateFxn)(
unsigned int);
   484 #if defined(DeviceFamily_CC26X0R2)   485     bool emulatorAttached;      
   487     uint8_t constraintCounts[PowerCC26XX_NUMCONSTRAINTS];
   489     uint8_t resourceCounts[PowerCC26XX_NUMRESOURCES];
   491     unsigned int (*resourceHandlers[3])(
unsigned int);
   634 #define Power_getPerformanceLevel(void)   0   635 #define Power_setPerformanceLevel(level)  Power_EFAIL bool calLF
Definition: PowerCC26XX.h:477
void PowerCC26XX_doWFI(void)
The Wait for interrupt (WFI) policy. 
int32_t nDeltaFreqNew
Definition: PowerCC26XX.h:473
bool xoscPending
Definition: PowerCC26XX.h:476
struct PowerCC26XX_Config PowerCC26XX_Config
Global configuration structure. 
bool bRefine
Definition: PowerCC26XX.h:474
bool PowerCC26XX_calibrate(unsigned int arg)
The RC Oscillator (RCOSC) calibration function. 
uint32_t constraintMask
Definition: PowerCC26XX.h:460
bool calibrateRCOSC_LF
Boolean specifying whether the low frequency RC oscillator (RCOSC_LF) should be calibrated. 
Definition: PowerCC26XX.h:440
struct PowerCC26XX_ModuleState PowerCC26XX_ModuleState
PowerCC26XX_ModuleState. 
bool enableMaxStandbyDuration
Boolean that enables limiting the duration spent in standby. 
Definition: PowerCC26XX.h:418
Power_PolicyInitFxn policyInitFxn
The Power Policy's initialization function. 
Definition: PowerCC26XX.h:327
void(* Power_PolicyInitFxn)(void)
Power policy initialization function pointer. 
Definition: Power.h:94
uint16_t vddrRechargeMargin
Margin in SCLK_LF periods subtracted from previous longest VDDR recharge period. 
Definition: PowerCC26XX.h:405
HwiP_Struct hwiStruct
Definition: PowerCC26XX.h:465
uint32_t maxStandbyDuration
Time in system ticks that specifies the maximum duration the device may spend in standby. 
Definition: PowerCC26XX.h:388
bool enablePolicy
Boolean specifying if the Power Policy function is enabled. 
Definition: PowerCC26XX.h:431
int32_t nCtrimFractNew
Definition: PowerCC26XX.h:470
Power_PolicyFxn policyFxn
The Power Policy function. 
Definition: PowerCC26XX.h:349
bool initialized
Definition: PowerCC26XX.h:483
int32_t nRtrimNew
Definition: PowerCC26XX.h:471
int32_t nCtrimNew
Definition: PowerCC26XX.h:469
void PowerCC26XX_schedulerDisable(void)
ClockP_Handle PowerCC26XX_getClockHandle(void)
Get the handle of the Clock object used for scheduling device wakeups. 
void(* Power_PolicyFxn)(void)
Power policy function pointer. 
Definition: Power.h:99
uint32_t state
Definition: PowerCC26XX.h:475
bool busyCal
Definition: PowerCC26XX.h:479
void PowerCC26XX_standbyPolicy(void)
The STANDBY Power Policy. 
void PowerCC26XX_switchXOSC_HF(void)
Switch the HF clock source to XOSC_HF. 
bool calibrateRCOSC_HF
Boolean specifying whether the high frequency RC oscillator (RCOSC_HF) should be calibrated. 
Definition: PowerCC26XX.h:449
Power_PolicyFxn policyFxn
Definition: PowerCC26XX.h:493
uint32_t PowerCC26XX_getXoscStartupTime(uint32_t timeUntilWakeupInMs)
Get the estimated HF crystal oscillator (XOSC_HF) startup delay, for a given delay from now...
int32_t nCtrimCurr
Definition: PowerCC26XX.h:467
PowerCC26XX_ModuleState. 
Definition: PowerCC26XX.h:458
uint8_t calStep
Definition: PowerCC26XX.h:480
ClockP_Struct calClockStruct
Definition: PowerCC26XX.h:464
Global configuration structure. 
Definition: PowerCC26XX.h:320
bool PowerCC26XX_injectCalibration(void)
Explicitly trigger RC oscillator calibration. 
int32_t nCtrimFractCurr
Definition: PowerCC26XX.h:468
int32_t nDeltaFreqCurr
Definition: PowerCC26XX.h:466
bool PowerCC26XX_noCalibrate(unsigned int arg)
Function to specify when RCOSC calibration is to be disabled. 
bool firstLF
Definition: PowerCC26XX.h:481
int32_t nRtrimCurr
Definition: PowerCC26XX.h:472
ClockP_Struct xoscClockObj
Definition: PowerCC26XX.h:462
ClockP_Struct clockObj
Definition: PowerCC26XX.h:461
bool enablePolicy
Definition: PowerCC26XX.h:482
ClockP_Struct lfClockObj
Definition: PowerCC26XX.h:463
void PowerCC26XX_schedulerRestore(void)
uint8_t hwiState
Definition: PowerCC26XX.h:478
List_List notifyList
Definition: PowerCC26XX.h:459
bool PowerCC26XX_isStableXOSC_HF(void)
Check if the XOSC_HF is stable and ready to be switched to.