xWRL6432 MMWAVE-L-SDK  05.01.00.04

Introduction

Power manager interface for the 64XX/14xx.

This module defines the power resources, constraints, events, sleep states and transition latencies for 64XX.

A reference power policy is provided which can transition the MCU from the active state to one of two sleep states: Low-Power Deep Sleep (LPDS) or Sleep. The policy looks at the estimated idle time remaining, and the active constraints, and determine which sleep state to transition to. The policy will give first preference to choosing LPDS, but if that is not appropriate (e.g., not enough idle time), it will choose Sleep.

Go to the source code of this file.

Data Structures

struct  Power_ParkInfo
 Used to specify parking of a pin during LPDS. More...
 
struct  Power_ConfigV1
 Power global configuration. More...
 
struct  syncinpadcfg
 
struct  Power_Wakeup
 Specify the wakeup sources for LPDS and Shutdown. More...
 

Macros

#define POWER_RESUMETIMELPDS   2500
 
#define POWER_PERIPH_CAN   0
 
#define POWER_PERIPH_SPI   1
 
#define POWER_PERIPH_QSPI   2
 
#define POWER_PERIPH_TOPSS   3
 
#define POWER_PERIPH_APP_RTI   4
 
#define POWER_PERIPH_WD   5
 
#define POWER_PERIPH_UART0   6
 
#define POWER_PERIPH_UART1   7
 
#define POWER_PERIPH_I2C   8
 
#define POWER_PERIPH_LIN   9
 
#define POWER_PERIPH_ESM   10
 
#define POWER_PERIPH_EDMA   11
 
#define POWER_PERIPH_CRC   12
 
#define POWER_PERIPH_PWM   13
 
#define POWER_PERIPH_GIO   14
 
#define POWER_PERIPH_HWASS   15
 
#define POWER_DISALLOW_LPDS   0
 
#define POWER_DISALLOW_SLEEP   1
 
#define POWER_DISALLOW_IDLE   2
 
#define POWER_ENTERING_LPDS   0x1
 
#define POWER_ENTERING_SLEEP   0x2
 
#define POWER_ENTERING_IDLE   0x4
 
#define POWER_AWAKE_LPDS   0x8
 
#define POWER_AWAKE_SLEEP   0x10
 
#define POWER_AWAKE_IDLE   0x20
 

Enumerations

enum  Power_GPIO_SYNCIO_Wakeup_Enable { POWER_GPIO_WAKEUP_LPDS, POWER_SYNCIN_IO_WAKEUP_LPDS }
 
enum  Power_ParkState {
  POWER_NO_PULL_HIZ, POWER_WEAK_PULL_UP_STD, POWER_WEAK_PULL_DOWN_STD, POWER_DRIVE_LOW,
  POWER_DRIVE_HIGH, POWER_DONT_PARK
}
 Enumeration of states a pin can be parked in. More...
 
enum  Power_Pin {
  POWER_PIN_PAD_AA = PIN_PAD_AA, POWER_PIN_PAD_AB = PIN_PAD_AB, POWER_PIN_PAD_AC = PIN_PAD_AC, POWER_PIN_PAD_AD = PIN_PAD_AD,
  POWER_PIN_PAD_AE = PIN_PAD_AE, POWER_PIN_PAD_AF = PIN_PAD_AF, POWER_PIN_PAD_AG = PIN_PAD_AG, POWER_PIN_PAD_AH = PIN_PAD_AH,
  POWER_PIN_PAD_AI = PIN_PAD_AI, POWER_PIN_PAD_AJ = PIN_PAD_AJ, POWER_PIN_PAD_AK = PIN_PAD_AK, POWER_PIN_PAD_AL = PIN_PAD_AL,
  POWER_PIN_PAD_AM = PIN_PAD_AM, POWER_PIN_PAD_AN = PIN_PAD_AN, POWER_PIN_PAD_AO = PIN_PAD_AO, POWER_PIN_PAD_AP = PIN_PAD_AP,
  POWER_PIN_PAD_AQ = PIN_PAD_AQ, POWER_PIN_PAD_AR = PIN_PAD_AR, POWER_PIN_PAD_AS = PIN_PAD_AS, POWER_PIN_PAD_AT = PIN_PAD_AT,
  POWER_PIN_PAD_AU = PIN_PAD_AU, POWER_PIN_PAD_AV = PIN_PAD_AV, POWER_PIN_PAD_AW = PIN_PAD_AW, POWER_PIN_PAD_AX = PIN_PAD_AX
}
 Enumeration of pins that can be parked. More...
 

Functions

void Power_configureWakeup (Power_Wakeup *wakeup)
 Function configures wakeup for LPDS and shutdown. More...
 
void Power_initPolicy (void)
 
void Power_getWakeup (Power_Wakeup *wakeup)
 Function to get wakeup configuration settings. More...
 
Power_ParkState Power_getParkState (Power_Pin pin)
 
void Power_restoreParkState (Power_Pin pin, Power_ParkState state)
 
void Power_setParkState (Power_Pin pin, uint32_t level)
 
void Power_sleepPolicy (unsigned long long sleepTimeus)
 A reference power policy is provided which can transition the MCU from the active state to one of two sleep states: Low-Power Deep Sleep (LPDS) or Sleep. More...
 
int_fast16_t Power_reset (uint_fast16_t resourceId)
 Software reset of a resource. More...
 
void Power_Idle3 ()
 Device Idle mode. More...
 
void Power_afterLPDS (void)