10#define SDRV_PMU_DRV_H_
16#define SDRV_PMU_WAKEUP_PIN0_MASK (0X1U)
17#define SDRV_PMU_WAKEUP_PIN1_MASK (0X2U)
18#define SDRV_PMU_WAKEUP_RTC_MASK (0X4U)
19#define SDRV_PMU_WAKEUP_BC_MASK (0X8U)
32#if CONFIG_E3 || CONFIG_D3
74 SRCS_SCR_CFG_LATCH_EN = 17U,
82 SRCS_SADC1_CVEN33 = 26U,
83 SRCS_SACMP1_CVEN33 = 27U,
84 SRCS_APAD_CVEN33_B0_B1 = 28U,
85 SRCS_APAD_CVEN33_B2_B8 = 29U,
86 SRCS_OTHER_CVEN33 = 30U,
SemiDrive driver common header file.
@ SDRV_STATUS_GROUP_PMU
Definition: sdrv_common.h:50
int32_t status_t
Type used for all status and error return values.
Definition: sdrv_common.h:82
#define SDRV_ERROR_STATUS(group, code)
Construct a status code value from a group and code number. All the error statuses are negetive numbe...
Definition: sdrv_common.h:17
uint32_t sdrv_pmu_get_power_down_reason(void)
Get system power down reason.
status_t sdrv_pmu_wakeup_pin_enable(sdrv_pmu_wakeup_pin_e wakeup_pin, bool enable)
Enable or Disable specific system wakeup pin.
sdrv_pmu_power_down_reason
Definition for power down reason.
Definition: sdrv_pmu.h:269
@ SDRV_PMU_POWER_DOWN_SF_PT_SENSOR_INT
Definition: sdrv_pmu.h:277
@ SDRV_PMU_POWER_DOWN_SOFTWARE
Definition: sdrv_pmu.h:280
@ SDRV_PMU_POWER_DOWN_SMC_CHECK_FAIL
Definition: sdrv_pmu.h:270
@ SDRV_PMU_POWER_DOWN_BC
Definition: sdrv_pmu.h:281
@ SDRV_PMU_POWER_DOWN_RESERVED_1
Definition: sdrv_pmu.h:273
@ SDRV_PMU_POWER_DOWN_RESERVED
Definition: sdrv_pmu.h:271
@ SDRV_PMU_POWER_DOWN_VD_AP_INT
Definition: sdrv_pmu.h:276
@ SDRV_PMU_POWER_DOWN_VD_SF_INT
Definition: sdrv_pmu.h:275
@ SDRV_PMU_POWER_DOWN_FS32K_LVPG
Definition: sdrv_pmu.h:274
@ SDRV_PMU_POWER_DOWN_SEM_INT
Definition: sdrv_pmu.h:272
@ SDRV_PMU_POWER_DOWN_EFUSE_VIO
Definition: sdrv_pmu.h:279
@ SDRV_PMU_POWER_DOWN_AP_PT_SENSOR_INT
Definition: sdrv_pmu.h:278
sdrv_pmu_error
PMU status error code.
Definition: sdrv_pmu.h:24
@ SDRV_PMU_CONFIG_NOT_SUPPORT
Definition: sdrv_pmu.h:26
@ SDRV_PMU_CONFIG_TYPE_WRONG
Definition: sdrv_pmu.h:25
struct sdrv_pmu_level_filter_enable sdrv_pmu_level_filter_enable_t
Definition for PMU BC level filter enable config.
struct sdrv_pmu_pwrctrl_min_delay_config sdrv_pmu_pwrctrl_min_delay_config_t
Definition for setting for pwrctrl0-3 minimal delay enable config.
status_t sdrv_pmu_wakeup_latch_set(sdrv_pmu_wakeup_in_rtc_e latch)
Config pmu action when receive wakeup event during rtc state.
struct sdrv_pmu_bc_config sdrv_pmu_bc_config_t
Definition for button config active level or pulse to enter/exit rtc mode.
status_t sdrv_pmu_analog_cven33_enable(bool enable)
Enable or disable analog IP power.
status_t sdrv_pmu_rc24m_enable(bool enable)
Enable or disable analog IP power.
status_t sdrv_pmu_ana_sf_analog_enable(bool enable)
Enable or disable analog IP power.
status_t sdrv_pmu_wakeup_pins_config(sdrv_pmu_wakeuppins_config_t *config)
Config Wake pin 0 and 1 enable and active level.
status_t sdrv_pmu_pt_sns_enable(bool enable)
Enable or disable analog IP power.
status_t sdrv_pmu_vd_ap_enable(bool enable)
Enable or disable analog IP power.
enum sdrv_pmu_polarity sdrv_pmu_polarity_e
Definition for pmu wakeup pin and button control active level or pulse.
status_t sdrv_pmu_ap_domain_power_good_monitor(sdrv_pmu_pg_e cfg)
Config ap domain 3.3v and 0.8v power good monitor.
enum sdrv_pmu_wakeup_src sdrv_pmu_wakeup_src_e
Definition for wakeup source.
sdrv_pmu_edge_filter_enum
Definition for pmu select which edge needs to apply the filter.
Definition: sdrv_pmu.h:104
@ SDRV_PMU_FILTER_FALLING
Definition: sdrv_pmu.h:106
@ SDRV_PMU_FILTER_BOTH_EDGE
Definition: sdrv_pmu.h:107
@ SDRV_PMU_FILTER_RISING
Definition: sdrv_pmu.h:105
enum sdrv_pmu_wakeup_pin_logic sdrv_pmu_wakeup_pin_logic_e
Definition for pmu wakeup pin logic.
status_t sdrv_pmu_vd_sf_ana_enable(bool enable)
Enable or disable analog IP power.
sdrv_pmu_delay_period
Definition for config pwrctrl and pwron delay setting in different period.
Definition: sdrv_pmu.h:160
@ SDRV_PMU_PWRUP_DELAY
Definition: sdrv_pmu.h:161
@ SDRV_PMU_SLEEP_DELAY
Definition: sdrv_pmu.h:163
@ SDRV_PMU_RTC_DELAY
Definition: sdrv_pmu.h:165
@ SDRV_PMU_HIB_DELAY
Definition: sdrv_pmu.h:164
@ SDRV_PMU_RUN_DELAY
Definition: sdrv_pmu.h:162
struct sdrv_pmu_level_filter sdrv_pmu_level_filter_t
Definition for PMU BC level filter config.
enum sdrv_pmu_pg sdrv_pmu_pg_e
Definition for pmu power good config.
uint32_t sdrv_pmu_get_state(void)
Get PMU internal state.
status_t sdrv_pmu_button_control_level_filter_config(sdrv_pmu_level_filter_enable_t *filter_config)
Enable level filter for button control.
sdrv_pmu_wakeup_in_rtc
Definition for pmu action when receive wakeup during rtc state.
Definition: sdrv_pmu.h:142
@ SDRV_PMU_WAKEUP_IN_RTC_IGNORE
Definition: sdrv_pmu.h:143
@ SDRV_PMU_WAKEUP_IN_RTC_LATCH
Definition: sdrv_pmu.h:144
sdrv_pmu_hw_power_down_req
Definition for hardware power down request.
Definition: sdrv_pmu.h:255
@ SDRV_PMU_VD_SF_INT_POWER_DOWN_REQ
Definition: sdrv_pmu.h:259
@ SDRV_PMU_AP_PT_SENSOR_INT_POWER_DOWN_REQ
Definition: sdrv_pmu.h:262
@ SDRV_PMU_VD_AP_INT_POWER_DOWN_REQ
Definition: sdrv_pmu.h:260
@ SDRV_PMU_EFUSE_VIO_POWER_DOWN_REQ
Definition: sdrv_pmu.h:263
@ SDRV_PMU_RESERVED_POWER_DOWN_REQ
Definition: sdrv_pmu.h:257
@ SDRV_PMU_SF_PT_SENSOR_INT_POWER_DOWN_REQ
Definition: sdrv_pmu.h:261
@ SDRV_PMU_FS32K_LVPG_POWER_DOWN_REQ
Definition: sdrv_pmu.h:258
@ SDRV_PMU_SEM_INT_POWER_DOWN_REQ
Definition: sdrv_pmu.h:256
status_t sdrv_pmu_pwron_watchdog_enable(sdrv_pmu_pwr_on_e pwron, sdrv_pmu_pwron_wdt_enable_t *enable_config)
Enable power good watchdog counter for specific pwron.
status_t sdrv_pmu_wakeup_pin_init(sdrv_pmu_wakeup_pin_e wakeup_pin, sdrv_pmu_wakeup_pin_config_t *pin_config)
Config specific wakeup pin.
status_t sdrv_pmu_bgr_sf_enable(bool enable)
Enable or disable analog IP power.
status_t sdrv_pmu_saf_domain_power_good_monitor(sdrv_pmu_pg_e cfg)
Config saf domain 3.3v and 0.8v power good monitor.
sdrv_pmu_pg
Definition for pmu power good config.
Definition: sdrv_pmu.h:237
@ SDRV_PMU_POWER_GOOD_DISABLE
Definition: sdrv_pmu.h:239
@ SDRV_PMU_POWER_GOOD_ENABLE
Definition: sdrv_pmu.h:238
status_t sdrv_pmu_hardware_power_down_request_enable(uint32_t enable_bitmap, bool enable)
Config hardware power down request enable.
status_t sdrv_pmu_clear_power_down_reason(void)
Clear system power down reason.
struct sdrv_pmu_pwron_config sdrv_pmu_pwron_config_t
Definition for pmu pwr on config.
sdrv_pmu_wakeup_pin
Definition for pmu wakeup pin.
Definition: sdrv_pmu.h:113
@ SDRV_PMU_WAKEUP_PIN_0
Definition: sdrv_pmu.h:114
@ SDRV_PMU_WAKEUP_PIN_1
Definition: sdrv_pmu.h:115
status_t sdrv_pmu_wakeup_pin_logic_set(sdrv_pmu_wakeup_pin_logic_e logic)
Config wakeup pin 0/1 generate wakeup event logic.
status_t sdrv_pmu_pwrctrl_delay_config(sdrv_pmu_delay_period_e period, sdrv_pmu_pwr_ctrl_e ctrl, uint8_t delay, uint8_t delay_adj)
Config pwrctrl delay setting in different period.
enum sdrv_pmu_pwr_ctrl_polarity sdrv_pmu_pwr_ctrl_polarity_e
Definition for PWRCTRL active level.
status_t sdrv_pmu_button_control_level_filter_para(sdrv_pmu_level_filter_t *filter_config)
Config level filter parameters for button control.
status_t sdrv_pmu_bgr_disp_enable(bool enable)
Enable or disable analog IP power.
status_t sdrv_pmu_clear_wakeup_source(void)
Clear system wakeup source.
enum sdrv_pmu_operate sdrv_pmu_operate_e
Definition for pmu pwr_ctrl and pwr_on operate by hardware or software override.
status_t sdrv_pmu_pwrctrl_min_delay_config(sdrv_pmu_pwrctrl_min_delay_config_t *config)
Config pwrctrl0-3 minimal delay enable config during pwrup/sleep/hibernate to run mode.
status_t sdrv_pmu_rtc_to_off_saf_domain_power_good(sdrv_pmu_pg_e cfg)
Config saf domain power good consider or ignore when switching from RTC state to OFF state.
status_t sdrv_pmu_por_sf_enable(bool enable)
Enable or disable analog IP power.
sdrv_pmu_wakeup_src
Definition for wakeup source.
Definition: sdrv_pmu.h:245
@ SDRV_PMU_WAKEUP_BY_RTC
Definition: sdrv_pmu.h:247
@ SDRV_PMU_WAKEUP_BY_PIN
Definition: sdrv_pmu.h:248
@ SDRV_PMU_WAKEUP_BY_BC
Definition: sdrv_pmu.h:246
@ SDRV_PMU_WAKEUP_BY_HW_RESET
Definition: sdrv_pmu.h:249
struct sdrv_pmu_pwrctrl_config sdrv_pmu_pwrctrl_config_t
Definition for pmu pwr ctrl config.
sdrv_pmu_mode
Definition for PMU work mode.
Definition: sdrv_pmu.h:150
@ SDRV_PMU_RTC
Definition: sdrv_pmu.h:154
@ SDRV_PMU_RUN
Definition: sdrv_pmu.h:151
@ SDRV_PMU_SLEEP
Definition: sdrv_pmu.h:152
@ SDRV_PMU_HIBERNATE
Definition: sdrv_pmu.h:153
status_t sdrv_pmu_pwrctrl_polarity_config(sdrv_pmu_pwr_ctrl_e ctrl, sdrv_pmu_pwr_ctrl_polarity_e pol)
Config pwrctrl0-3 active level.
struct sdrv_pmu_edge_filter sdrv_pmu_edge_filter_t
Definition for PMU Wakeup pin and BC edge filter config. filter time = 32K cycle * (2 ^ sample interv...
status_t sdrv_pmu_button_control_config(sdrv_pmu_buttonctrl_config_t *config)
Initialize button control parameter config.
status_t sdrv_pmu_rtc_to_off_ap_domain_power_good(sdrv_pmu_pg_e cfg)
Config ap domain power good consider or ignore when switching from RTC state to OFF state.
enum sdrv_pmu_delay_period sdrv_pmu_delay_period_e
Definition for config pwrctrl and pwron delay setting in different period.
enum sdrv_pmu_edge_filter_enum sdrv_pmu_edge_filter_e
Definition for pmu select which edge needs to apply the filter.
uint32_t sdrv_pmu_get_wakeup_source(void)
Get system wakeup source.
status_t sdrv_pmu_button_control_edge_filter_config(sdrv_pmu_edge_filter_t *filter_config)
Config edge filter for button control.
enum sdrv_pmu_wakeup_pin sdrv_pmu_wakeup_pin_e
Definition for pmu wakeup pin.
status_t sdrv_pmu_bgr_ap_enable(bool enable)
Enable or disable analog IP power.
status_t sdrv_pmu_pwron_delay_config(sdrv_pmu_delay_period_e period, sdrv_pmu_pwr_on_e ctrl, uint8_t delay, uint8_t delay_adj)
Config pwron delay setting in different period.
status_t sdrv_pmu_interrupt_enable(uint32_t bitmap, bool enable)
Enable PMU internal interrupt.
struct sdrv_pmu_pwron_wdt_enable sdrv_pmu_pwron_wdt_enable_t
Definition for WDT counter and enable config.
status_t sdrv_pmu_bgr_ldo_auto_disable(bool enable)
Config bgr_ldo auto-disable.
status_t sdrv_pmu_pwron_software_override_enable(sdrv_pmu_pwr_on_e ctrl, bool enable)
Enable software override pwron.
enum sdrv_pmu_int_type sdrv_pmu_int_type_e
Definition for PMU interrupt type.
enum sdrv_pmu_wakeup_glitch sdrv_pmu_wakeup_glitch_e
Definition for wakeup pin glitch, glitch is enable if wakeup edge < 32K cycle.
enum sdrv_pmu_power_down_reason sdrv_pmu_power_down_reason_e
Definition for power down reason.
enum sdrv_pmu_wakeup_in_rtc sdrv_pmu_wakeup_in_rtc_e
Definition for pmu action when receive wakeup during rtc state.
status_t sdrv_pmu_wakeup_disable(uint32_t disable_bitmap)
Disable wakeup source when in RTC mode.
sdrv_pmu_ctrl
Definition for pmu pwr_ctrl and pwr_on enable or disable.
Definition: sdrv_pmu.h:181
@ SDRV_PMU_CTRL_ON
Definition: sdrv_pmu.h:183
@ SDRV_PMU_CTRL_OFF
Definition: sdrv_pmu.h:182
status_t sdrv_pmu_wakeup_pin_filter_config(sdrv_pmu_wakeup_pin_e wakeup_pin, sdrv_pmu_edge_filter_t *filter_config)
Config edge filter for wakeup pin.
sdrv_pmu_target
Definition for pmu pwr_on control target. It use for hardware power on sequence.
Definition: sdrv_pmu.h:228
@ SDRV_PMU_OTHER
Definition: sdrv_pmu.h:231
@ SDRV_PMU_SAF
Definition: sdrv_pmu.h:229
@ SDRV_PMU_AP
Definition: sdrv_pmu.h:230
status_t sdrv_pmu_bgr_sf_auto_disable(bool enable)
Config bgr_sf auto-disable.
struct sdrv_pmu_buttonctrl_config sdrv_pmu_buttonctrl_config_t
Definition for button control config parameters.
enum sdrv_pmu_ctrl sdrv_pmu_ctrl_e
Definition for pmu pwr_ctrl and pwr_on enable or disable.
sdrv_pmu_wakeup_glitch
Definition for wakeup pin glitch, glitch is enable if wakeup edge < 32K cycle.
Definition: sdrv_pmu.h:121
@ SDRV_PMU_GLITCH_FALLING
Definition: sdrv_pmu.h:124
@ SDRV_PMU_GLITCH_RISING
Definition: sdrv_pmu.h:123
@ SDRV_PMU_GLITCH_NONE
Definition: sdrv_pmu.h:122
@ SDRV_PMU_GLITCH_BOTH
Definition: sdrv_pmu.h:125
status_t sdrv_pmu_button_control_enable(bool enable)
Enable or Disable button control function.
status_t sdrv_pmu_button_control_init(sdrv_pmu_bc_config_t *bc_config)
Config button control register.
sdrv_pmu_wakeup_pin_logic
Definition for pmu wakeup pin logic.
Definition: sdrv_pmu.h:131
@ SDRV_PMU_WAKEUP_PIN_OR
Definition: sdrv_pmu.h:132
@ SDRV_PMU_WAKEUP_PIN_AND
Definition: sdrv_pmu.h:133
status_t sdrv_pmu_pwrctrl_software_override_enable(sdrv_pmu_pwr_ctrl_e ctrl, bool enable)
Enable software override pwrctrl.
uint32_t sdrv_pmu_get_interrupt_status(void)
Get PMU internal interrupt status.
status_t sdrv_pmu_clear_interrupt_status(uint32_t bitmap)
Clear PMU internal interrupt status.
enum sdrv_pmu_pwr_on sdrv_pmu_pwr_on_e
Definition for pmu pwr_on, now pwr_on_0 use for internal DCDC, pwr_on_2 use for internal LDO.
enum sdrv_pmu_hw_power_down_req sdrv_pmu_hw_power_down_req_e
Definition for hardware power down request.
status_t sdrv_pmu_pwron_target_config(sdrv_pmu_pwr_on_e ctrl, sdrv_pmu_target_e target)
Config internal DCDC/LDO power supply.
status_t sdrv_pmu_target_power_on_config(sdrv_pmu_target_e target, sdrv_pmu_mode_e mode, bool powered)
Config SAF/AP domain whether powered under different mode.
sdrv_pmu_state
Definition for config minimal delay for state transition.
Definition: sdrv_pmu.h:171
@ SDRV_PMU_STATE_HIBERNATE_RUN
Definition: sdrv_pmu.h:175
@ SDRV_PMU_STATE_PWRUP_RUN
Definition: sdrv_pmu.h:173
@ SDRV_PMU_STATE_PWR_ON
Definition: sdrv_pmu.h:172
@ SDRV_PMU_STATE_SLEEP_RUN
Definition: sdrv_pmu.h:174
enum sdrv_pmu_target sdrv_pmu_target_e
Definition for pmu pwr_on control target. It use for hardware power on sequence.
sdrv_pmu_polarity
Definition for pmu wakeup pin and button control active level or pulse.
Definition: sdrv_pmu.h:94
@ SDRV_PMU_HIGH_LEVEL
Definition: sdrv_pmu.h:95
@ SDRV_PMU_RISING_EDGE
Definition: sdrv_pmu.h:97
@ SDRV_PMU_LOW_LEVEL
Definition: sdrv_pmu.h:96
@ SDRV_PMU_FALLING_EDGE
Definition: sdrv_pmu.h:98
status_t sdrv_pmu_bgr_ldo_enable(bool enable)
Enable or disable analog IP power.
status_t sdrv_pmu_minimal_delay_for_state_transition(sdrv_pmu_state_e state, uint8_t delay, uint8_t delay_adj)
Config minimal delay for pmu state transition.
srcs_bit
Description for SRCS_BITS each bit.
Definition: sdrv_pmu.h:33
@ SRCS_ANA_SF_ANALOG_IP_CVEN33_FORCE_OFF
Definition: sdrv_pmu.h:43
@ SRCS_LDO_ISO_EN_B
Definition: sdrv_pmu.h:45
@ SRCS_RSTGEN_SF_I_IST_EN_RTC_OVVAL
Definition: sdrv_pmu.h:35
@ SRCS_BGR_DISP_PU33_B
Definition: sdrv_pmu.h:58
@ SRCS_BGR_LDO_PU33_B
Definition: sdrv_pmu.h:54
@ SRCS_BGR_SF_PU33_B
Definition: sdrv_pmu.h:53
@ SRCS_ISTC_POWER_CFG_POST_EN_OVRD
Definition: sdrv_pmu.h:41
@ SRCS_RC24M_PU33_B
Definition: sdrv_pmu.h:50
@ SRCS_WAKEUP0_RISE_EDGE_TO_PULSE_EN
Definition: sdrv_pmu.h:59
@ SRCS_ISTC_RTC_SS_POST_EN_OVRD
Definition: sdrv_pmu.h:37
@ SRCS_BGR_LDO_AUTO_DISABLE_BY_PMU_EN
Definition: sdrv_pmu.h:46
@ SRCS_BGR_ANA_PU33_B
Definition: sdrv_pmu.h:52
@ SRCS_ISTC_POWER_CFG_POST_EN_OVVAL
Definition: sdrv_pmu.h:40
@ SRCS_PT_SNS_SF_PT_SNS_AP_CVEN33_FORCE_OFF
Definition: sdrv_pmu.h:42
@ SRCS_VD_SF_PU33_B
Definition: sdrv_pmu.h:51
@ SRCS_DCDC_ISO_EN_B
Definition: sdrv_pmu.h:44
@ SRCS_ISTC_PLL_CFG_POST_EN_OVVAL
Definition: sdrv_pmu.h:38
@ SRCS_WAKEUP0_FALL_EDGE_TO_PULSE_EN
Definition: sdrv_pmu.h:48
@ SRCS_POR_SF_PU33_B
Definition: sdrv_pmu.h:49
@ SRCS_RSTGEN_SF_I_IST_EN_RTC_OVRD
Definition: sdrv_pmu.h:34
@ SRCS_ISTC_RTC_SS_POST_EN_OVVAL
Definition: sdrv_pmu.h:36
@ SRCS_POR_AP_PU33_B
Definition: sdrv_pmu.h:55
@ SRCS_BGR_SF_AUTO_DISABLE_BY_SMC_EN
Definition: sdrv_pmu.h:47
@ SRCS_ISTC_PLL_CFG_POST_EN_OVRD
Definition: sdrv_pmu.h:39
@ SRCS_BGR_AP_PU33_B
Definition: sdrv_pmu.h:57
@ SRCS_VD_AP_PU33_B
Definition: sdrv_pmu.h:56
status_t sdrv_pmu_wakeup_enable(uint32_t enable_bitmap)
Enable wakeup source when in RTC mode.
status_t sdrv_pmu_pwron_watchdog_config(sdrv_pmu_pwron_wdt_config_t *wdt_config)
Config power good watchdog parameters for pwron.
enum sdrv_pmu_state sdrv_pmu_state_e
Definition for config minimal delay for state transition.
enum sdrv_pmu_pwr_ctrl sdrv_pmu_pwr_ctrl_e
Definition for pmu pwr_ctrl.
status_t sdrv_pmu_power_down(void)
Software trigger power down.
status_t sdrv_pmu_wakeup0_glitch_enable(uint32_t mask)
Enable glitch circle for wakeup pin 0.
status_t sdrv_pmu_pwrctrl_software_override_value(sdrv_pmu_pwr_ctrl_e ctrl, bool value)
Software override pwrctrl value.
status_t sdrv_pmu_pwron_config(sdrv_pmu_pwr_on_e ctrl, sdrv_pmu_mode_e mode, sdrv_pmu_pwron_config_t *config)
Config pwr on whether work for different mode.
status_t sdrv_pmu_pwron_target_config_with_mode(sdrv_pmu_pwr_on_e ctrl, sdrv_pmu_mode_e mode, sdrv_pmu_target_e target)
Config pwron power supply target under different mode.
sdrv_pmu_int_type
Definition for PMU interrupt type.
Definition: sdrv_pmu.h:287
@ SDRV_PMU_INT_PWRUP_TO_RUN_TIMEOUT
Definition: sdrv_pmu.h:290
@ SDRV_PMU_INT_POWER_DOWN_REQ
Definition: sdrv_pmu.h:296
@ SDRV_PMU_INT_SLEEP_TO_RUN_TIMEOUT
Definition: sdrv_pmu.h:291
@ SDRV_PMU_INT_HIBERNATE_TO_RUN_TIMEOUT
Definition: sdrv_pmu.h:292
@ SDRV_PMU_INT_SWM_WARN
Definition: sdrv_pmu.h:294
@ SDRV_PMU_INT_SWM_FATAL
Definition: sdrv_pmu.h:295
@ SDRV_PMU_INT_PWRON0_RDY_TIMEOUT
Definition: sdrv_pmu.h:288
@ SDRV_PMU_INT_LOCKSTEP_ERR
Definition: sdrv_pmu.h:293
@ SDRV_PMU_INT_PWRON2_RDY_TIMEOUT
Definition: sdrv_pmu.h:289
enum sdrv_pmu_mode sdrv_pmu_mode_e
Definition for PMU work mode.
status_t sdrv_pmu_wakeup0_glitch_disable(uint32_t mask)
Disable glitch circle for wakeup pin 0.
status_t sdrv_pmu_bgr_ana_sf1_sf2_enable(bool enable)
Enable or disable analog IP power.
status_t sdrv_pmu_pwron_software_override_value(sdrv_pmu_pwr_on_e ctrl, bool value)
Software override pwron value.
status_t sdrv_pmu_srcs_clear(uint32_t bitmap)
Clear corresponding bit to 0 for 32bit state retention bits register.
sdrv_pmu_operate
Definition for pmu pwr_ctrl and pwr_on operate by hardware or software override.
Definition: sdrv_pmu.h:190
@ SDRV_PMU_AUTO
Definition: sdrv_pmu.h:192
@ SDRV_PMU_MANUAL
Definition: sdrv_pmu.h:191
struct sdrv_pmu_pwron_wdt_config sdrv_pmu_pwron_wdt_config_t
Definition for power good watchdog on pwron.
struct sdrv_pmu_wakeup_pin_config sdrv_pmu_wakeup_pin_config_t
Definition for wakeup pin active level or pulse to wakeup.
status_t sdrv_pmu_pwrctrl_config(sdrv_pmu_pwr_ctrl_e ctrl, sdrv_pmu_mode_e mode, sdrv_pmu_pwrctrl_config_t *config)
Config pwr ctrl output level for different mode.
status_t sdrv_pmu_por_ap_enable(bool enable)
Enable or disable analog IP power.
status_t sdrv_pmu_button_control_fsm_enable(bool enable)
Enable status monitor for button control.
sdrv_pmu_pwr_ctrl
Definition for pmu pwr_ctrl.
Definition: sdrv_pmu.h:206
@ SDRV_PMU_PWR_CTRL_3
Definition: sdrv_pmu.h:210
@ SDRV_PMU_PWR_CTRL_0
Definition: sdrv_pmu.h:207
@ SDRV_PMU_PWR_CTRL_1
Definition: sdrv_pmu.h:208
@ SDRV_PMU_PWR_CTRL_2
Definition: sdrv_pmu.h:209
struct sdrv_pmu_wakeuppins_config sdrv_pmu_wakeuppins_config_t
Definition for wakeup pins config parameters.
status_t sdrv_pmu_srcs_set(uint32_t bitmap)
Set corresponding bit to 1 for 32bit state retention bits register.
sdrv_pmu_pwr_ctrl_polarity
Definition for PWRCTRL active level.
Definition: sdrv_pmu.h:198
@ SDRV_PMU_PWR_CTRL_HIGH_ACTIVE
Definition: sdrv_pmu.h:199
@ SDRV_PMU_PWR_CTRL_LOW_ACTIVE
Definition: sdrv_pmu.h:200
sdrv_pmu_pwr_on
Definition for pmu pwr_on, now pwr_on_0 use for internal DCDC, pwr_on_2 use for internal LDO.
Definition: sdrv_pmu.h:217
@ SDRV_PMU_PWR_ON_0
Definition: sdrv_pmu.h:218
@ SDRV_PMU_PWR_ON_2
Definition: sdrv_pmu.h:220
@ SDRV_PMU_PWR_ON_1
Definition: sdrv_pmu.h:219
@ SDRV_PMU_PWR_ON_3
Definition: sdrv_pmu.h:221
Definition for button config active level or pulse to enter/exit rtc mode.
Definition: sdrv_pmu.h:333
sdrv_pmu_polarity_e bc_off_pol
Definition: sdrv_pmu.h:334
sdrv_pmu_polarity_e bc_on_pol
Definition: sdrv_pmu.h:335
Definition for PMU Wakeup pin and BC edge filter config. filter time = 32K cycle * (2 ^ sample interv...
Definition: sdrv_pmu.h:303
uint8_t filter_sample_interval
Definition: sdrv_pmu.h:305
uint8_t filter_count
Definition: sdrv_pmu.h:306
sdrv_pmu_edge_filter_e filter_type
Definition: sdrv_pmu.h:307
bool enable_filter
Definition: sdrv_pmu.h:304
Definition for PMU BC level filter enable config.
Definition: sdrv_pmu.h:323
bool max_window_for_on_en
Definition: sdrv_pmu.h:326
bool max_window_for_off_en
Definition: sdrv_pmu.h:327
uint8_t bc_cnt_unit
Definition: sdrv_pmu.h:324
Definition for PMU BC level filter config.
Definition: sdrv_pmu.h:313
uint8_t min_window_for_off
Definition: sdrv_pmu.h:316
uint8_t max_window_for_off
Definition: sdrv_pmu.h:317
uint8_t max_window_for_on
Definition: sdrv_pmu.h:315
uint8_t min_window_for_on
Definition: sdrv_pmu.h:314
Definition for pmu pwr ctrl config.
Definition: sdrv_pmu.h:393
sdrv_pmu_ctrl_e ctrl_status
Definition: sdrv_pmu.h:394
sdrv_pmu_operate_e ctrl_operate
Definition: sdrv_pmu.h:395
Definition for setting for pwrctrl0-3 minimal delay enable config.
Definition: sdrv_pmu.h:401
bool hibernate_run_min_delay_en
Definition: sdrv_pmu.h:404
bool pwrup_run_min_delay_en
Definition: sdrv_pmu.h:402
bool sleep_run_min_delay_en
Definition: sdrv_pmu.h:403
Definition for pmu pwr on config.
Definition: sdrv_pmu.h:410
sdrv_pmu_ctrl_e ctrl_status
Definition: sdrv_pmu.h:411
sdrv_pmu_operate_e ctrl_operate
Definition: sdrv_pmu.h:412
Definition for power good watchdog on pwron.
Definition: sdrv_pmu.h:376
uint8_t por_tw
Definition: sdrv_pmu.h:377
uint8_t wdt_div
Definition: sdrv_pmu.h:379
uint8_t por_tw_adj
Definition: sdrv_pmu.h:378
Definition for WDT counter and enable config.
Definition: sdrv_pmu.h:385
bool pwron_wdt_en
Definition: sdrv_pmu.h:386
uint8_t wdt_counter
Definition: sdrv_pmu.h:387
Definition for wakeup pin active level or pulse to wakeup.
Definition: sdrv_pmu.h:341
sdrv_pmu_polarity_e pin_pol
Definition: sdrv_pmu.h:342
Definition for wakeup pins config parameters.
Definition: sdrv_pmu.h:348
bool wakepin0_en
Definition: sdrv_pmu.h:352
sdrv_pmu_polarity_e wakepin0_pol
Definition: sdrv_pmu.h:354
sdrv_pmu_polarity_e wakepin1_pol
Definition: sdrv_pmu.h:358
bool wakepin1_en
Definition: sdrv_pmu.h:357
sdrv_pmu_edge_filter_t wakepin1_filter
Definition: sdrv_pmu.h:359
sdrv_pmu_wakeup_in_rtc_e latch
Definition: sdrv_pmu.h:350
sdrv_pmu_wakeup_glitch_e wakepin0_glitch
Definition: sdrv_pmu.h:353
sdrv_pmu_wakeup_pin_logic_e logic
Definition: sdrv_pmu.h:349
sdrv_pmu_edge_filter_t wakepin0_filter
Definition: sdrv_pmu.h:355