52 #ifndef ___LL_SLEEP_TIMER_H__
53 #define ___LL_SLEEP_TIMER_H__
62 #if defined(SLP_TIMER0)
79 #define SLP_TIMER_CFG_CNT_SLP_ONLY (0x1U << SLP_TIMER_CFG_COUNT_MODE_POS)
80 #define SLP_TIMER_CFG_CNT_ANY_CONDITION (0x0U << SLP_TIMER_CFG_COUNT_MODE_POS)
81 #define SLP_TIMER_CFG_SINGLE_MODE (0x1U << SLP_TIMER_CFG_MODE_POS)
82 #define SLP_TIMER_CFG_AUTO_RELOAD (0x0U << SLP_TIMER_CFG_MODE_POS)
83 #define LL_SLEEP_TIMER_SINGLE_MODE_0 (SLP_TIMER_CFG_SINGLE_MODE | SLP_TIMER_CFG_CNT_SLP_ONLY)
84 #define LL_SLEEP_TIMER_SINGLE_MODE_1 (SLP_TIMER_CFG_SINGLE_MODE | SLP_TIMER_CFG_CNT_ANY_CONDITION)
85 #define LL_SLEEP_TIMER_AUTO_MODE (SLP_TIMER_CFG_AUTO_RELOAD | SLP_TIMER_CFG_CNT_ANY_CONDITION)
107 #define LL_SLP_TIMER_WriteReg(__instance__, __REG__, __VALUE__) WRITE_REG(__instance__->__REG__, (__VALUE__))
115 #define LL_SLP_TIMER_ReadReg(__instance__, __REG__) READ_REG(__instance__->__REG__)
149 WRITE_REG(SLP_TIMERx->CFG, (SLP_TIMER_CFG_EN | SLP_TIMER_CFG_VAL_SET | SLP_TIMER_CFG_WEN | mode));
164 MODIFY_REG(SLP_TIMERx->CFG, (SLP_TIMER_CFG_EN), (SLP_TIMER_CFG_EN | SLP_TIMER_CFG_WEN));
179 MODIFY_REG(SLP_TIMERx->CFG, (SLP_TIMER_CFG_EN), (SLP_TIMER_CFG_WEN));
194 MODIFY_REG(SLP_TIMERx->CFG, (SLP_TIMER_CFG_VAL_SET), (SLP_TIMER_CFG_VAL_SET | SLP_TIMER_CFG_WEN));
214 MODIFY_REG(SLP_TIMERx->CFG, (SLP_TIMER_CFG_MODE | SLP_TIMER_CFG_COUNT_MODE), (mode | SLP_TIMER_CFG_WEN));
233 return (uint32_t)(READ_BITS(SLP_TIMERx->CFG, (SLP_TIMER_CFG_MODE | SLP_TIMER_CFG_COUNT_MODE)));
248 return (uint32_t)(READ_BITS(SLP_TIMERx->STAT, SLP_TIMER_STAT_RUNNING) == SLP_TIMER_STAT_RUNNING);
263 return (uint32_t)(READ_BITS(SLP_TIMERx->STAT, SLP_TIMER_STAT_BUSY) == SLP_TIMER_STAT_BUSY);
278 return (uint32_t)(READ_BITS(SLP_TIMERx->STAT, SLP_TIMER_STAT_COUNTING) == SLP_TIMER_STAT_COUNTING);
294 WRITE_REG(SLP_TIMERx->TIMER_W, value);
309 return (uint32_t)READ_REG(SLP_TIMERx->TIMER_W);
325 return (uint32_t)READ_REG(SLP_TIMERx->TIMER_R);
339 WRITE_REG(
AON_CTL->AON_SLP_EVENT, ~(AON_CTL_SLP_EVENT_SLP_TIMER));