15#define SDRV_RSTGEN_CORE 1
16#define SDRV_RSTGEN_LATENT 2
17#define SDRV_RSTGEN_MISSION 3
18#define SDRV_RSTGEN_MODULE 4
19#define SDRV_RSTGEN_IST 5
20#define SDRV_RSTGEN_DEBUG 6
22#define SDRV_RSTGEN_TYPE_SHIFT 24
24#define SDRV_RSTGEN_SIG_ID(type, idx) \
25 ((uint32_t)((((uint32_t)(type)) << ((uint32_t)SDRV_RSTGEN_TYPE_SHIFT)) | ((uint32_t)(idx))))
27#define SDRV_RSTGEN_TYPE(id) ((uint32_t)(((uint32_t)(id)) >> ((uint32_t)SDRV_RSTGEN_TYPE_SHIFT)))
28#define SDRV_RSTGEN_INDEX(id) ((uint32_t)(((uint32_t)(id)) & BIT_MASK(SDRV_RSTGEN_TYPE_SHIFT)))
30#define SDRV_RSTGEN_GENERAL_REG_NUM 8
317 uint8_t start, uint8_t
width, uint32_t val);
unsigned int width
Definition: logo_rgb565.h:32912
SemiDrive driver common header file.
@ SDRV_STATUS_GROUP_RESET
Definition: sdrv_common.h:23
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
status_t sdrv_rstgen_global_status_clear(sdrv_rstgen_glb_t *rst_glb_ctl)
clear global reset status.
status_t sdrv_rstgen_status(sdrv_rstgen_sig_t *rst_sig)
Check reset signal status.
status_t sdrv_rstgen_global_reset(sdrv_rstgen_glb_t *rst_glb_ctl)
Global reset.
struct sdrv_recovery_etimer sdrv_recovery_etimer_t
struct sdrv_recovery_epwm sdrv_recovery_epwm_t
uint32_t sdrv_rstgen_current_global_status(sdrv_rstgen_glb_t *rst_glb_ctl)
Check current global reset status.
uint32_t sdrv_rstgen_read_general(sdrv_rstgen_general_reg_t *rst_gen_reg)
Read reset general reg.
reset_core_id
Definition: sdrv_rstgen.h:58
@ RESET_CORE_SP1
Definition: sdrv_rstgen.h:61
@ RESET_CORE_SF
Definition: sdrv_rstgen.h:59
@ RESET_CORE_SX0
Definition: sdrv_rstgen.h:62
@ RESET_CORE_SP0
Definition: sdrv_rstgen.h:60
@ RESET_CORE_SX1
Definition: sdrv_rstgen.h:63
sdrv_reset_error
RESET status error code.
Definition: sdrv_rstgen.h:36
@ SDRV_RESET_STATUS_WRONG_SIGNAL
Definition: sdrv_rstgen.h:40
@ SDRV_RESET_STATUS_TIMEOUT
Definition: sdrv_rstgen.h:39
@ SDRV_RESET_STATUS_LOCK
Definition: sdrv_rstgen.h:38
@ SDRV_RESET_STATUS_SIGNAL_ASSERT
Definition: sdrv_rstgen.h:37
struct sdrv_rstgen_sig sdrv_rstgen_sig_t
SDRV rstgen signal.
struct sdrv_recovery_btm sdrv_recovery_btm_t
semidrive recovery device.
uint32_t sdrv_rstgen_global_status(sdrv_rstgen_glb_t *rst_glb_ctl)
Check global reset status.
status_t sdrv_rstgen_write_general_bit(sdrv_rstgen_general_reg_t *rst_gen_reg, uint8_t start, uint8_t width, uint32_t val)
Write reset general reg bit.
enum reset_wdt_id reset_wdt_id_e
struct sdrv_recovery_module sdrv_recovery_module_t
reset_lowpower_mode
Definition: sdrv_rstgen.h:44
@ RESET_LP_SLEEP
Definition: sdrv_rstgen.h:46
@ RESET_LP_HIB
Definition: sdrv_rstgen.h:45
status_t sdrv_rstgen_reset(sdrv_rstgen_sig_t *rst_sig)
Reset a reset signal.
status_t sdrv_rstgen_lowpower_set(sdrv_rstgen_sig_t *rst_sig, enum reset_lowpower_mode mode, uint32_t val)
Config reset signal assert/deassert in lowpower mode.
struct sdrv_rstgen sdrv_rstgen_t
SDRV rstgen controller.
void(* sdrv_rstgen_sig_handler)(uint32_t rstgen_sig_id)
semidrive reset sig handler.
Definition: sdrv_rstgen.h:72
enum reset_core_id reset_core_id_e
status_t sdrv_rstgen_assert(sdrv_rstgen_sig_t *rst_sig)
Assert a reset signal.
struct sdrv_rstgen_general_reg sdrv_rstgen_general_reg_t
SDRV rstgen general register.
status_t sdrv_rstgen_wdt_reset_enable(reset_wdt_id_e wdt, bool enable)
Config wdt cause global reset enable.
status_t sdrv_recovery_module(sdrv_recovery_module_t *recovery_module)
sdrv recovery latent module.
struct sdrv_rstgen_glb_ctl sdrv_rstgen_glb_t
SDRV rstgen global reset controller.
status_t sdrv_rstgen_deassert(sdrv_rstgen_sig_t *rst_sig)
Deassert a reset signal.
reset_wdt_id
Definition: sdrv_rstgen.h:49
@ RESET_WDT6
Definition: sdrv_rstgen.h:55
@ RESET_WDT4
Definition: sdrv_rstgen.h:53
@ RESET_WDT3
Definition: sdrv_rstgen.h:52
@ RESET_WDT2
Definition: sdrv_rstgen.h:51
@ RESET_WDT5
Definition: sdrv_rstgen.h:54
@ RESET_WDT1
Definition: sdrv_rstgen.h:50
status_t sdrv_rstgen_wdt_core_reset_enable(reset_wdt_id_e wdt, reset_core_id_e core, bool enable)
Config wdt cause single core reset enable.
status_t sdrv_rstgen_write_general(sdrv_rstgen_general_reg_t *rst_gen_reg, uint32_t val)
Write reset general reg.
semidrive recovery device.
Definition: sdrv_rstgen.h:111
uint32_t btm_num
Definition: sdrv_rstgen.h:112
uint32_t btm_base[]
Definition: sdrv_rstgen.h:113
Definition: sdrv_rstgen.h:121
uint32_t epwm_num
Definition: sdrv_rstgen.h:122
uint32_t epwm_base[]
Definition: sdrv_rstgen.h:123
Definition: sdrv_rstgen.h:116
uint32_t etimer_num
Definition: sdrv_rstgen.h:117
uint32_t etimer_base[]
Definition: sdrv_rstgen.h:118
Definition: sdrv_rstgen.h:127
sdrv_recovery_btm_t const * btm_list
Definition: sdrv_rstgen.h:128
sdrv_recovery_epwm_t const * epwm_list
Definition: sdrv_rstgen.h:130
sdrv_recovery_etimer_t const * etimer_list
Definition: sdrv_rstgen.h:129
SDRV rstgen general register.
Definition: sdrv_rstgen.h:95
sdrv_rstgen_t * rst_ctl
Definition: sdrv_rstgen.h:96
uint32_t id
Definition: sdrv_rstgen.h:97
SDRV rstgen global reset controller.
Definition: sdrv_rstgen.h:103
sdrv_rstgen_t * rst_ap_ctl
Definition: sdrv_rstgen.h:105
sdrv_rstgen_t * rst_sf_ctl
Definition: sdrv_rstgen.h:104
SDRV rstgen signal.
Definition: sdrv_rstgen.h:84
sdrv_rstgen_t * rst_ctl
Definition: sdrv_rstgen.h:85
uint32_t id
Definition: sdrv_rstgen.h:86
bool need_clr_rst
Definition: sdrv_rstgen.h:87
sdrv_rstgen_sig_handler pre_handler
Definition: sdrv_rstgen.h:88
sdrv_rstgen_sig_handler post_handler
Definition: sdrv_rstgen.h:89
SDRV rstgen controller.
Definition: sdrv_rstgen.h:77
paddr_t base
Definition: sdrv_rstgen.h:78