64 #include <inc/hw_types.h>
65 #include <inc/hw_memmap.h>
66 #include <inc/hw_ints.h>
67 #include <inc/hw_aon_wuc.h>
68 #include <inc/hw_aon_rtc.h>
86 #define AONWUCAuxReset NOROM_AONWUCAuxReset
87 #define AONWUCRechargeCtrlConfigSet NOROM_AONWUCRechargeCtrlConfigSet
88 #define AONWUCOscConfig NOROM_AONWUCOscConfig
96 #define AONWUC_CLOCK_SRC_HF 0x00000003 // System clock high frequency -
98 #define AONWUC_CLOCK_SRC_LF 0x00000001 // System clock low frequency -
100 #define AONWUC_NO_CLOCK 0x00000000 // System clock low frequency -
124 #define MCU_VIRT_PWOFF_DISABLE 0x00000000
125 #define MCU_VIRT_PWOFF_ENABLE 0x00020000
126 #define MCU_IMM_WAKE_UP 0x00000000
127 #define MCU_FIXED_WAKE_UP 0x00010000
128 #define AUX_VIRT_PWOFF_DISABLE 0x00000000
129 #define AUX_VIRT_PWOFF_ENABLE 0x00020000
130 #define AUX_IMM_WAKE_UP 0x00000000
131 #define AUX_FIXED_WAKE_UP 0x00010000
139 #define MCU_RAM0_RETENTION 0x00000001
140 #define MCU_RAM1_RETENTION 0x00000002
141 #define MCU_RAM2_RETENTION 0x00000004
142 #define MCU_RAM3_RETENTION 0x00000008
143 #define MCU_RAM_BLOCK_RETENTION 0x0000000F
144 #define MCU_AUX_RET_ENABLE 0x00000001
152 #define AONWUC_AUX_WAKEUP 0x00000001
153 #define AONWUC_AUX_ALLOW_SLEEP 0x00000000
161 #define AONWUC_OSC_GBIAS_REQ 0x00400000 // OSC is requesting GBias
162 #define AONWUC_AUX_GBIAS_REQ 0x00200000 // AUX is requesting GBias
163 #define AONWUC_MCU_GBIAS_REQ 0x00100000 // MCU is requesting GBias
164 #define AONWUC_OSC_BGAP_REQ 0x00040000 // OSC is requesting BGap
165 #define AONWUC_AUX_BGAP_REQ 0x00020000 // AUX is requesting BGap
166 #define AONWUC_MCU_BGAP_REQ 0x00010000 // MCU is requesting BGap
167 #define AONWUC_GBIAS_ON 0x00002000 // Global Bias is on
168 #define AONWUC_BGAP_ON 0x00001000 // Band Gap is on
169 #define AONWUC_AUX_POWER_DOWN 0x00000200 // AUX is in powerdown mode
170 #define AONWUC_MCU_POWER_DOWN 0x00000100 // MCU is in powerdown mode
171 #define AONWUC_JTAG_POWER_ON 0x00000040 // JTAG is powered on
172 #define AONWUC_AUX_POWER_ON 0x00000020 // AUX is powered on
173 #define AONWUC_MCU_POWER_ON 0x00000010 // MCU is powered on
174 #define AONWUC_SPLY_POWER_DOWN 0x00000001 // Power supply is in power down
182 #define MCU_RAMREPAIR_DONE 0x00000001
183 #define AUX_RAMREPAIR_DONE 0x00000002
188 #define RC_RATE_MAX 768 // Maximum recharge rate for the
190 #define RC_RATE_MIN 2 // Minimum recharge rate for the
194 #define AONWUC_MCU_RESET_SRC 0x00000002 // MCU reset source can be SW or
196 #define AONWUC_MCU_WARM_RESET 0x00000001 // MCU reset type and can be warm
339 ASSERT(!(ui32Retention & ~MCU_RAM_BLOCK_RETENTION));
345 ui32Reg |= ui32Retention;
370 __STATIC_INLINE uint32_t
555 __STATIC_INLINE uint32_t
679 __STATIC_INLINE uint32_t
742 uint32_t ui32AdaptRate,
744 uint32_t ui32MaxPeriod);
755 __STATIC_INLINE uint32_t
831 #if !defined(DRIVERLIB_NOROM) && !defined(DOXYGEN)
833 #ifdef ROM_AONWUCAuxReset
834 #undef AONWUCAuxReset
835 #define AONWUCAuxReset ROM_AONWUCAuxReset
837 #ifdef ROM_AONWUCRechargeCtrlConfigSet
838 #undef AONWUCRechargeCtrlConfigSet
839 #define AONWUCRechargeCtrlConfigSet ROM_AONWUCRechargeCtrlConfigSet
841 #ifdef ROM_AONWUCOscConfig
842 #undef AONWUCOscConfig
843 #define AONWUCOscConfig ROM_AONWUCOscConfig
856 #endif // __AON_WUC_H__
static void AONWUCAuxWakeupEvent(uint32_t ui32Mode)
Control the wake up procedure of the AUX domain.
static uint32_t AONWUCPowerStatusGet(void)
Get the power status of the device.
#define AONWUC_MCU_WARM_RESET
#define MCU_VIRT_PWOFF_ENABLE
static void AONWUCAuxSRamConfig(uint32_t ui32Retention)
Configure the retention on the AUX SRAM.
void AONWUCOscConfig(uint32_t ui32Period)
Configure the interval for oscillator amplitude calibration.
void AONWUCAuxReset(void)
Reset the AUX domain.
#define AONWUC_CLOCK_SRC_LF
static void AONWUCAuxImageInvalid(void)
Tells the Sensor Controller that the image in memory is invalid.
static void AONWUCMcuPowerDownConfig(uint32_t ui32ClkSrc)
Configure the power down clock for the MCU domain.
void AONWUCRechargeCtrlConfigSet(bool bAdaptEnable, uint32_t ui32AdaptRate, uint32_t ui32Period, uint32_t ui32MaxPeriod)
Configure the recharge controller.
#define MCU_FIXED_WAKE_UP
static void AONWUCMcuResetClear(uint32_t ui32Status)
Use this function to clear specific status bits.
#define AONWUC_MCU_RESET_SRC
static void AONWUCDomainPowerDownEnable(void)
Enable power down mode on AUX and MCU domain.
#define AONWUC_AUX_ALLOW_SLEEP
#define AONWUC_AUX_WAKEUP
static void AONWUCDomainPowerDownDisable(void)
Use this function to disable power down mode of the MCU and AUX domain.
static void AONWUCAuxImageValid(void)
Tells the Sensor Controller that the image in memory is valid.
static void AONWUCShutDownEnable(void)
Enable shut-down of the device.
#define MCU_RAM_BLOCK_RETENTION
static uint32_t AONWUCRechargeCtrlConfigGet(void)
Get the current configuration of the recharge controller.
static void AONWUCAuxPowerDownConfig(uint32_t ui32ClkSrc)
Configure the power down mode for the AUX domain.
#define MCU_VIRT_PWOFF_DISABLE
static uint32_t AONWUCAuxClockConfigGet(void)
Return the clock configuration for the AUX domain.
static uint32_t AONWUCMcuResetStatusGet(void)
Return the reset status.
static void AONWUCMcuWakeUpConfig(uint32_t ui32WakeUp)
Configure the wake-up procedure for the MCU domain.
static void AONWUCMcuPowerOffConfig(uint32_t ui32Mode)
Configure the power down mode for the MCU domain.
static void AONWUCJtagPowerOff(void)
Request power off of the JTAG domain.
static void AONWUCMcuSRamConfig(uint32_t ui32Retention)
Configure the retention on the block RAM in the MCU domain.