NHS31xx SW API
pmu_nss.h
1 /*
2  * Copyright 2014-2020 NXP
3  * This software is owned or controlled by NXP and may only be used strictly
4  * in accordance with the applicable license terms. By expressly accepting
5  * such terms or by downloading, installing, activating and/or otherwise using
6  * the software, you are agreeing that you have read, and that you agree to
7  * comply with and are bound by, such license terms. If you do not agree to
8  * be bound by the applicable license terms, then you may not retain, install,
9  * activate or otherwise use the software.
10  */
11 
12 #ifndef __PMU_NSS_H_
13 #define __PMU_NSS_H_
14 
273 typedef struct NSS_PMU_S {
274  __IO uint32_t PCON;
275  __IO uint32_t GPREG[5];
276  __I uint32_t PSTAT;
277  __I uint32_t RESERVED1; /* next field at offset 0x020 */
278  __I uint32_t ACCSTAT;
279  __IO uint32_t LDO1V6;
280  __I uint32_t RESERVED2; /* next field at offset 0x02C */
281  __IO uint32_t TMRCLKCTRL;
282  __IO uint32_t IMSC;
283  __I uint32_t RIS;
284  __I uint32_t MIS;
285  __O uint32_t ICR;
286 } NSS_PMU_T;
287 
289 typedef enum PMU_DPD_WAKEUPREASON {
296 
298 typedef enum PMU_RTC_CLOCKSOURCE {
302 
304 typedef enum PMU_INT {
305  PMU_INT_BROWNOUT = (1 << 0),
306  PMU_INT_NFCPOWER = (1 << 1),
308  PMU_INT_ALL = 0x3
309 } PMU_INT_T;
310 
312 typedef enum PMU_STATUS {
313  PMU_STATUS_BROWNOUT = (1 << 5),
314  PMU_STATUS_VDD_NFC = (1 << 7),
315 } PMU_STATUS_T;
316 
326 
339 
354 void Chip_PMU_PowerMode_EnterDeepPowerDown(bool enableSwitching);
355 
368 
374 bool Chip_PMU_Switch_GetVDDBat(void);
375 
381 bool Chip_PMU_Switch_GetVNFC(void);
382 
389 void Chip_PMU_Switch_OpenVDDBat(void);
390 
395 void Chip_PMU_SetBODEnabled(bool enabled);
396 
401 bool Chip_PMU_GetBODEnabled(void);
402 
408 void Chip_PMU_SetWakeupPinEnabled(bool enabled);
409 
416 
428 
435 
446 void Chip_PMU_SetRetainedData(uint32_t *pData, int offset, int size);
447 
456 void Chip_PMU_GetRetainedData(uint32_t *pData, int offset, int size);
457 
466 
472 
478 
485 
491 
497 void Chip_PMU_SetAutoPowerEnabled(bool enabled);
498 
504 
505 #endif
Definition: pmu_nss.h:291
Definition: pmu_nss.h:300
Definition: pmu_nss.h:273
void Chip_PMU_SetBODEnabled(bool enabled)
#define __IO
Definition: core_cm0plus.h:167
Definition: pmu_nss.h:314
void Chip_PMU_PowerMode_EnterDeepSleep(void)
#define __I
Definition: core_cm0plus.h:164
PMU_INT_T Chip_PMU_Int_GetRawStatus(void)
Definition: pmu_nss.h:306
void Chip_PMU_SetAutoPowerEnabled(bool enabled)
PMU_DPD_WAKEUPREASON_T Chip_PMU_PowerMode_GetDPDWakeupReason(void)
PMU_INT_T Chip_PMU_Int_GetEnabledMask(void)
Definition: pmu_nss.h:307
__IO uint32_t IMSC
Definition: pmu_nss.h:282
bool Chip_PMU_Switch_GetVNFC(void)
__IO uint32_t PCON
Definition: pmu_nss.h:274
__O uint32_t ICR
Definition: pmu_nss.h:285
PMU_RTC_CLOCKSOURCE_T
Definition: pmu_nss.h:298
__I uint32_t PSTAT
Definition: pmu_nss.h:276
bool Chip_PMU_GetAutoPowerEnabled(void)
__IO uint32_t LDO1V6
Definition: pmu_nss.h:279
__IO uint32_t TMRCLKCTRL
Definition: pmu_nss.h:281
Definition: pmu_nss.h:308
PMU_STATUS_T
Definition: pmu_nss.h:312
__I uint32_t RIS
Definition: pmu_nss.h:283
PMU_INT_T
Definition: pmu_nss.h:304
void Chip_PMU_GetRetainedData(uint32_t *pData, int offset, int size)
__I uint32_t ACCSTAT
Definition: pmu_nss.h:278
void Chip_PMU_SetWakeupPinEnabled(bool enabled)
void Chip_PMU_Int_ClearRawStatus(PMU_INT_T flags)
void Chip_PMU_Switch_OpenVDDBat(void)
Definition: pmu_nss.h:293
__I uint32_t MIS
Definition: pmu_nss.h:284
PMU_DPD_WAKEUPREASON_T
Definition: pmu_nss.h:289
Definition: pmu_nss.h:313
bool Chip_PMU_GetBODEnabled(void)
Definition: pmu_nss.h:299
bool Chip_PMU_Switch_GetVDDBat(void)
#define __O
Definition: core_cm0plus.h:166
void Chip_PMU_SetRTCClockSource(PMU_RTC_CLOCKSOURCE_T source)
PMU_STATUS_T Chip_PMU_GetStatus(void)
PMU_RTC_CLOCKSOURCE_T Chip_PMU_GetRTCClockSource(void)
bool Chip_PMU_GetWakeupPinEnabled(void)
Definition: pmu_nss.h:305
void Chip_PMU_SetRetainedData(uint32_t *pData, int offset, int size)
Definition: pmu_nss.h:290
void Chip_PMU_PowerMode_EnterDeepPowerDown(bool enableSwitching)
void Chip_PMU_Int_SetEnabledMask(PMU_INT_T mask)
void Chip_PMU_PowerMode_EnterSleep(void)
Definition: pmu_nss.h:292