30 lines
688 B
C
30 lines
688 B
C
#ifndef __HARDWARE_WATCHDOG_REG_H__
|
|
#define __HARDWARE_WATCHDOG_REG_H__
|
|
|
|
#define WATCHDOG_TICK_CYCLES_POS (0U)
|
|
#define WATCHDOG_TICK_CYCLES_MASK (0x1FF << WATCHDOG_TICK_CYCLES_POS)
|
|
#define WATCHDOG_TICK_ENABLE (1 << 9U)
|
|
#define WATCHDOG_TICK_RUNNING (1 << 10U)
|
|
#define WATCHDOG_TICK_COUNT_POS (11U)
|
|
#define WATCHDOG_TICK_COUNT_MASK (0x1FF << WATCHDOG_TICK_COUNT_POS)
|
|
|
|
typedef struct {
|
|
io_rw_32 ctrl;
|
|
io_wo_32 load;
|
|
io_ro_32 reason;
|
|
io_rw_32 scratch[8];
|
|
io_rw_32 tick;
|
|
} watchdog_hw_t;
|
|
|
|
#define watchdog_hw ((watchdog_hw_t *const)WATCHDOG_BASE)
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* __HARDWARE_WATCHDOG_REG_H__ */
|