## HAL Power Modes Macro Definition Documentation

### POWER_MODES_BLE_NOT_PRESENT

#define POWER_MODES_BLE_NOT_PRESENT (false)

Options to set if the application makes use of Bluetooth.

These constants can be used to set the ble_present field of the configuration structure (

Location: power_modes.h:94

LowPowerModeCfg_t). By selecting POWER_MODES_BLE_PRESENT, certain RF and baseband registers will be saved before entering a low-power mode and restored after waking up. By selecting POWER_MODES_BLE_NOT_PRESENT, the RF and baseband registers will not be saved and restored.

### POWER_MODES_BLE_PRESENT

#define POWER_MODES_BLE_PRESENT (true)

Location: power_modes.h:95

### VDDT_RETENTION_DISABLE

#define VDDT_RETENTION_DISABLE (0x0U)

VDDT baseband retention regulator options.

These preset values can be used to set if the VDDT retention (ACS_VDDRET_CTRL->VDDTRET_ENABLE) should be enabled or disabled by setting the vddret_ctrl.vddt_ret field of the configuration structure (

Location: power_modes.h:105

LowPowerModeCfg_t) accordingly. When enabled, the baseband timer retention supply is powered.

### VDDT_RETENTION_ENABLE

#define VDDT_RETENTION_ENABLE (0x1U)

Location: power_modes.h:106

### VDDC_RETENTION_DISABLE

#define VDDC_RETENTION_DISABLE (0x0U)

VDDC core digital retention regulator options.

These preset values can be used to set if the VDDC retention (ACS_VDDRET_CTRL->VDDCRET_ENABLE) should be enabled or disabled by setting the vddret_ctrl.vddc_ret_en field of the configuration structure (

Location: power_modes.h:119

LowPowerModeCfg_t) accordingly. When enabled, the core digital retention supply is powered. By default, this setting is enabled for Sleep Mode with Core Retention, and disabled for Sleep Mode with Memory Retention or No Retention.

### VDDC_RETENTION_ENABLE

#define VDDC_RETENTION_ENABLE (0x1U)

Location: power_modes.h:120

### VDDM_RETENTION_TRIM_PRESET

#define VDDM_RETENTION_TRIM_PRESET (0x01)

Sleep retention regulator configuration presets.

These preset values are used by the vddret_ctrl field of the

Location: power_modes.h:147

LowPowerModeCfg_t structure to configure the following retention regulators:

- VDDM retention regulator trim (ACS_VDDRET_CTRL->VDDMRET_VTRIM)
- VDDT baseband retention regulator enable (ACS_VDDRET_CTRL->VDDTRET_ENABLE)
- VDDC retention regulator trim (ACS_VDDRET_CTRL->VDDCRET_VTRIM)
- VDDACS retention regulator trim (ACS_VDDRET_CTRL->VDDACS_VTRIM)

The preset values are selected based on the chosen product variant (automotive or industrial). The automotive variant requires greater preset values to support operation across its extended temperature range.

NOTE: If the baseband is not utilized in the application (e.g. Bluetooth is not used and the kernel timer is not used), the VDDT baseband retention regulator can be disabled to reduce power consumption by setting VDDT_RETENTION_ENABLE_PRESET to VDDT_RETENTION_DISABLE.

### VDDT_RETENTION_ENABLE_PRESET

#define VDDT_RETENTION_ENABLE_PRESET VDDT_RETENTION_ENABLE

Location: power_modes.h:148

### VDDC_RETENTION_TRIM_PRESET

#define VDDC_RETENTION_TRIM_PRESET (0x01)

Location: power_modes.h:149

### VDDACS_RETENTION_TRIM_PRESET

#define VDDACS_RETENTION_TRIM_PRESET (0x03)

Location: power_modes.h:150

### VCC_RETENTION_TRIM

#define VCC_RETENTION_TRIM (0xA << ACS_VCC_CTRL_VTRIM_Pos)

Location: power_modes.h:153

### WAKEUP_CTRL_FLAGS_TO_CLEAR_BITS

#define WAKEUP_CTRL_FLAGS_TO_CLEAR_BITS ( (((x) >> 16) & 0x1F) \ | (((x) >> 21) & 0x0F) \ | (((x) >> 25) & 0x07) )

Convert wakeup flags to clear bits.

Converts the sticky flags of the ACS_WAKEUP_CTRL register into their respective clear bits for the register.

Location: power_modes.h:168

Parameters

Direction | Name | Description
--- | --- | ---
in | x | (uint32_t) The ACS_WAKEUP_CTRL wakeup flags to be converted.

Return

(uint32_t) The ACS_WAKEUP_CTRL clear flag bits.

### WAKEUP_ALL_FLAGS_CLEAR

#define WAKEUP_ALL_FLAGS_CLEAR Sys_ACS_WriteRegister( \ &ACS->WAKEUP_CTRL, \ (uint32_t)(0xFFFF))

Clear all of the sticky wakeup flags.

A macro function to clear the sticky wakeup flags, for all of the wakeup event types, in the wakeup control register.

Location: power_modes.h:177

### WAKEUP_GPIO0_FLAG_CLEAR

#define WAKEUP_GPIO0_FLAG_CLEAR Sys_ACS_WriteRegister( \ &ACS->WAKEUP_CTRL, \ WAKEUP_GPIO0_EVENT_CLEAR)

Clear sticky wakeup flags.

A set of macro functions for clearing specific sticky wakeup event flags in the wakeup control register.

Location: power_modes.h:186

### WAKEUP_GPIO1_FLAG_CLEAR

#define WAKEUP_GPIO1_FLAG_CLEAR Sys_ACS_WriteRegister( \ &ACS->WAKEUP_CTRL, \ WAKEUP_GPIO1_EVENT_CLEAR)

Location: power_modes.h:189

### WAKEUP_GPIO2_FLAG_CLEAR

#define WAKEUP_GPIO2_FLAG_CLEAR Sys_ACS_WriteRegister( \ &ACS->WAKEUP_CTRL, \ WAKEUP_GPIO2_EVENT_CLEAR)

Location: power_modes.h:192

### WAKEUP_GPIO3_FLAG_CLEAR

#define WAKEUP_GPIO3_FLAG_CLEAR Sys_ACS_WriteRegister( \ &ACS->WAKEUP_CTRL, \ WAKEUP_GPIO3_EVENT_CLEAR)

Location: power_modes.h:195

### WAKEUP_BB_TIMER_FLAG_CLEAR

#define WAKEUP_BB_TIMER_FLAG_CLEAR Sys_ACS_WriteRegister( \ &ACS->WAKEUP_CTRL, \ WAKEUP_BB_TIMER_CLEAR)

Location: power_modes.h:198

### WAKEUP_RTC_ALARM_FLAG_CLEAR

#define WAKEUP_RTC_ALARM_FLAG_CLEAR Sys_ACS_WriteRegister( \ &ACS->WAKEUP_CTRL, \ WAKEUP_RTC_ALARM_EVENT_CLEAR)

Location: power_modes.h:201

### WAKEUP_RTC_CLOCK_FLAG_CLEAR

#define WAKEUP_RTC_CLOCK_FLAG_CLEAR Sys_ACS_WriteRegister( \ &ACS->WAKEUP_CTRL, \ WAKEUP_RTC_CLOCK_EVENT_CLEAR)

Location: power_modes.h:204

### WAKEUP_RTC_OVERFLOW_FLAG_CLEAR

#define WAKEUP_RTC_OVERFLOW_FLAG_CLEAR Sys_ACS_WriteRegister( \ &ACS->WAKEUP_CTRL, \ WAKEUP_RTC_OVERFLOW_EVENT_CLEAR)

Location: power_modes.h:207

### WAKEUP_DCDC_OVERLOAD_FLAG_CLEAR

#define WAKEUP_DCDC_OVERLOAD_FLAG_CLEAR Sys_ACS_WriteRegister( \ &ACS->WAKEUP_CTRL, \ WAKEUP_DCDC_OVERLOAD_EVENT_CLEAR)

Location: power_modes.h:210

### WAKEUP_ACOMP_FLAG_CLEAR

#define WAKEUP_ACOMP_FLAG_CLEAR Sys_ACS_WriteRegister( \ &ACS->WAKEUP_CTRL, \ WAKEUP_ACOMP_EVENT_CLEAR)

Location: power_modes.h:213

### WAKEUP_FIFO_FULL_FLAG_CLEAR

#define WAKEUP_FIFO_FULL_FLAG_CLEAR Sys_ACS_WriteRegister( \ &ACS->WAKEUP_CTRL, \ WAKEUP_FIFO_FULL_EVENT_CLEAR)

Location: power_modes.h:216

### WAKEUP_THRESHOLD_FULL_FLAG_CLEAR

#define WAKEUP_THRESHOLD_FULL_FLAG_CLEAR Sys_ACS_WriteRegister( \ &ACS->WAKEUP_CTRL, \ THRESHOLD_FULL_EVENT_CLEAR)

Location: power_modes.h:219