xWRL6432 MMWAVE-L-SDK  05.04.00.01

Introduction

This module contains APIs to program and use the pinmux module.

Files

file  power_xwrLx4xx.h
 Power manager interface for the 64XX/14xx.
 

Data Structures

struct  Power_ParkInfo
 Used to specify parking of a pin during LPDS. More...
 
struct  Power_ConfigV1
 Power global configuration. More...
 
struct  Power_Wakeup
 Specify the wakeup sources for LPDS and Shutdown. 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...
 
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 Idle state. (Sleep will be supported in future releases) More...
 
void Power_Idle3 ()
 Device Idle mode. More...
 

Enumerations

enum  Power_GPIO_SYNCIO_Wakeup_Enable { POWER_GPIO_WAKEUP_LPDS, POWER_SYNCIN_IO_WAKEUP_LPDS }
 Source of Wake-up can be either GPIO (WU_REQIN) or SYNC_IN. More...
 
enum  Power_ParkState { POWER_PARK, POWER_DONT_PARK }
 Enumeration of states a pin can be parked in. More...
 

Macros

#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
 

Macro Definition Documentation

◆ POWER_DISALLOW_LPDS

#define POWER_DISALLOW_LPDS   0

Constraint: Disallow entry to Low Power Deep Sleep (LPDS)

◆ POWER_DISALLOW_SLEEP

#define POWER_DISALLOW_SLEEP   1

Constraint: Disallow entry to Sleep

◆ POWER_DISALLOW_IDLE

#define POWER_DISALLOW_IDLE   2

Constraint: Disallow entry to Idle

◆ POWER_ENTERING_LPDS

#define POWER_ENTERING_LPDS   0x1

Power event: The device is entering the LPDS sleep state

◆ POWER_ENTERING_SLEEP

#define POWER_ENTERING_SLEEP   0x2

Power event: The device is entering the device sleep state

◆ POWER_ENTERING_IDLE

#define POWER_ENTERING_IDLE   0x4

Power event: The device is entering the idle state

◆ POWER_AWAKE_LPDS

#define POWER_AWAKE_LPDS   0x8

Power event: The device is waking from the LPDS sleep state

◆ POWER_AWAKE_SLEEP

#define POWER_AWAKE_SLEEP   0x10

Power event: The device is waking from the device sleep state

◆ POWER_AWAKE_IDLE

#define POWER_AWAKE_IDLE   0x20

Power event: The device is waking from the device idle state

Enumeration Type Documentation

◆ Power_GPIO_SYNCIO_Wakeup_Enable

Source of Wake-up can be either GPIO (WU_REQIN) or SYNC_IN.

Enumerator
POWER_GPIO_WAKEUP_LPDS 
POWER_SYNCIN_IO_WAKEUP_LPDS 

◆ Power_ParkState

Enumeration of states a pin can be parked in.

Enumerator
POWER_PARK 

No pull resistor, leave pin in a HIZ state

POWER_DONT_PARK 

Take no action; do not park the pin

Function Documentation

◆ Power_configureWakeup()

void Power_configureWakeup ( Power_Wakeup wakeup)

Function configures wakeup for LPDS and shutdown.

This function allows the app to configure the type for waking up from LPDS This overwrites any previous wakeup settings.

Parameters
[in]wakeupSettings applied to wakeup configuration

◆ Power_initPolicy()

void Power_initPolicy ( void  )

OS-specific power policy initialization function

◆ Power_getWakeup()

void Power_getWakeup ( Power_Wakeup wakeup)

Function to get wakeup configuration settings.

This function allows an app to query the current LPDS and shutdown wakeup configuration settings.

Parameters
[in]wakeupA Power_Wakeup structure to be written into

◆ Power_sleepPolicy()

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 Idle state. (Sleep will be supported in future releases)

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 time), it will choose Idle.

◆ Power_Idle3()

void Power_Idle3 ( )

Device Idle mode.

This function brings the device to Idle3 mode. Idle3 is TI defined idle state where,

  • All Peripherals are clock gated
  • HWA and Frontend are powered Down
  • Core is kept in Deep Sleep State
  • TOPSS is driven by OSC/16 clock
  • Core is brought out of deep sleep using RTI timer interrupt (mapped to WIC)