Functions | |
static void | AONPMCTLMcuSRamRetConfig (uint32_t ui32Retention) |
Configure the retention on the block SRAM in the MCU BUS domain. More... | |
static uint32_t | AONPMCTLPowerStatusGet (void) |
Get the power status of the Always On (AON) domain. More... | |
static void | AONPMCTLJtagPowerOff (void) |
Request power off of the JTAG domain. More... | |
This API provides a set of functions for using the AON Power Management Controller module (AON_PMCTL).
The AON_PMCTL module contains the following functional options:
The main clock for the AON_PMCTL module is the 2 MHz SCLK MF clock.
AON_PMCTL supports the MCU_voltage domain with a 48 MHz clock (SCLK_HF) that is divided and gated by the PRCM module before being distributed to all modules in the MCU voltage domain.
The AON_PMCTL controls the SCLK_HF clock to ensure that it is available in the Active and Idle power modes, and disabled for all other modes. SCLK_HF is not allowed in uLDO state since it uses too much power. The SCLK_HF clock is also available for the AUX module in the Active and Idle power modes.
The AON_PMCTL selects the clock source for the AUX domain in the different power modes.
Main functionality to control power management of the JTAG power domain is supported. Note that no clock control is supported, as the JTAG is clocked on the TCK clock.
The API functions can be grouped like this:
Functions to perform status report:
Functions to perform device configuration:
Please note that due to legacy software compatibility some functionalities controlled by the AON Power Management Controller module are supported through the APIs of the System Controller and Power Controller. Relevant functions are:
|
inlinestatic |
Request power off of the JTAG domain.
The JTAG domain is automatically powered up on if a debugger is connected. If a debugger is not connected this function can be used to power off the JTAG domain.
|
inlinestatic |
Configure the retention on the block SRAM in the MCU BUS domain.
MCU SRAM is partitioned into 5 banks of 16 KB each. The SRAM supports retention on all 5 banks during MCU BUS domain power off. The retention on the SRAM can be turned on and off. Use this function to enable the retention on the banks.
If a group of banks is not represented in the parameter ui32Retention
then the retention will be disabled for that bank group during MCU BUS domain power off.
ui32Retention | defines which groups of SRAM banks to enable/disable retention on:
|
|
inlinestatic |
Get the power status of the Always On (AON) domain.
This function reports the power management status in AON.
#define AONPMCTL_JTAG_POWER_ON AON_PMCTL_PWRSTAT_JTAG_PD_ON |
#define MCU_RAM_RET_FULL AON_PMCTL_RAMCFG_BUS_SRAM_RET_EN_RET_FULL |
Referenced by AONPMCTLMcuSRamRetConfig().
#define MCU_RAM_RET_LVL1 AON_PMCTL_RAMCFG_BUS_SRAM_RET_EN_RET_LEVEL1 |
Referenced by AONPMCTLMcuSRamRetConfig().
#define MCU_RAM_RET_LVL2 AON_PMCTL_RAMCFG_BUS_SRAM_RET_EN_RET_LEVEL2 |
Referenced by AONPMCTLMcuSRamRetConfig().
#define MCU_RAM_RET_LVL3 AON_PMCTL_RAMCFG_BUS_SRAM_RET_EN_RET_LEVEL3 |
Referenced by AONPMCTLMcuSRamRetConfig().
#define MCU_RAM_RET_NONE AON_PMCTL_RAMCFG_BUS_SRAM_RET_EN_RET_NONE |
Referenced by AONPMCTLMcuSRamRetConfig().