12 #include "hpm_soc_ip_feature.h"
22 #define LOBS_UNLOCK_KEY 0xc5acce55u
24 #define LOBS_PIN_DO(x) (x * 3)
25 #define LOBS_PIN_OE(x) (x * 3 + 1)
26 #define LOBS_PIN_DI(x) (x * 3 + 2)
132 uint8_t sample_sig_bit[4];
133 bool sample_sig_en[4];
146 uint8_t cmp_sig_bit[4];
148 bool cmp_golden_value[4];
lobs_next_state_t
next state
Definition: hpm_lobs_drv.h:105
lobs_burst_t
burst selection
Definition: hpm_lobs_drv.h:51
void lobs_deinit(LOBS_Type *lobs)
lobs deinit
Definition: hpm_lobs_drv.c:11
lobs_state_sel_t
state selection
Definition: hpm_lobs_drv.h:70
static bool lobs_is_trace_finish(LOBS_Type *lobs)
check lobs trace finish
Definition: hpm_lobs_drv.h:228
static void lobs_set_enable(LOBS_Type *lobs, bool enable)
set lobs enable or disable
Definition: hpm_lobs_drv.h:181
static void lobs_set_pre_trig_enable(LOBS_Type *lobs, bool enable)
set lobs pre-trig enable or disable
Definition: hpm_lobs_drv.h:192
lobs_cmp_mode_t
compare mode
Definition: hpm_lobs_drv.h:82
lobs_two_group_sel_t
two group selection
Definition: hpm_lobs_drv.h:61
void lobs_two_group_mode_config(LOBS_Type *lobs, lobs_two_group_sel_t group, lobs_two_group_mode_config_t *config)
lobs two group mode config
Definition: hpm_lobs_drv.c:43
void lobs_state_config(LOBS_Type *lobs, lobs_state_sel_t state, lobs_state_config_t *config)
lobs state config
Definition: hpm_lobs_drv.c:68
static void lobs_set_state_enable(LOBS_Type *lobs, lobs_state_sel_t state, bool enable)
set lobs state enable or disable
Definition: hpm_lobs_drv.h:204
lobs_sample_rate_t
sample rate selection
Definition: hpm_lobs_drv.h:41
lobs_state_chg_condition_t
compare condition
Definition: hpm_lobs_drv.h:91
lobs_group_mode_t
group mode selection
Definition: hpm_lobs_drv.h:32
void lobs_ctrl_config(LOBS_Type *lobs, lobs_ctrl_config_t *config)
lobs control config
Definition: hpm_lobs_drv.c:22
static uint32_t lobs_get_final_address(LOBS_Type *lobs)
get lobs final address
Definition: hpm_lobs_drv.h:216
static void lobs_clear_fifo_overflow_flag(LOBS_Type *lobs)
clear lobs fifo overflow flag
Definition: hpm_lobs_drv.h:239
#define LOBS_UNLOCK_KEY
Definition: hpm_lobs_drv.h:22
static void lobs_unlock(LOBS_Type *lobs)
set lobs unlock
Definition: hpm_lobs_drv.h:160
static void lobs_lock(LOBS_Type *lobs)
set lobs lock
Definition: hpm_lobs_drv.h:170
@ lobs_next_state_finish
Definition: hpm_lobs_drv.h:106
@ lobs_next_state_4
Definition: hpm_lobs_drv.h:111
@ lobs_next_state_0
Definition: hpm_lobs_drv.h:107
@ lobs_next_state_1
Definition: hpm_lobs_drv.h:108
@ lobs_next_state_2
Definition: hpm_lobs_drv.h:109
@ lobs_next_state_3
Definition: hpm_lobs_drv.h:110
@ lobs_burst_8
Definition: hpm_lobs_drv.h:53
@ lobs_burst_4
Definition: hpm_lobs_drv.h:52
@ lobs_burst_16
Definition: hpm_lobs_drv.h:54
@ lobs_state_2
Definition: hpm_lobs_drv.h:73
@ lobs_state_3
Definition: hpm_lobs_drv.h:74
@ lobs_state_0
Definition: hpm_lobs_drv.h:71
@ lobs_state_4
Definition: hpm_lobs_drv.h:75
@ lobs_state_1
Definition: hpm_lobs_drv.h:72
@ lobs_sig_cmp_mode
Definition: hpm_lobs_drv.h:83
@ lobs_cnt_cmp_mode
Definition: hpm_lobs_drv.h:84
@ lobs_two_group_1
Definition: hpm_lobs_drv.h:62
@ lobs_two_group_2
Definition: hpm_lobs_drv.h:63
@ lobs_sample_1_per_6
Definition: hpm_lobs_drv.h:43
@ lobs_sample_1_per_5
Definition: hpm_lobs_drv.h:42
@ lobs_sample_1_per_7
Definition: hpm_lobs_drv.h:44
@ lobs_sig_greater_equal_golden
Definition: hpm_lobs_drv.h:95
@ lobs_sig_less_golden
Definition: hpm_lobs_drv.h:97
@ lobs_sig_not_equal_golden
Definition: hpm_lobs_drv.h:96
@ lobs_sig_equal_golden
Definition: hpm_lobs_drv.h:93
@ lobs_sig_greater_golden
Definition: hpm_lobs_drv.h:94
@ lobs_sig_less_equal_golden
Definition: hpm_lobs_drv.h:98
@ lobs_cnt_matched
Definition: hpm_lobs_drv.h:92
@ lobs_two_group_8_bits
Definition: hpm_lobs_drv.h:34
@ lobs_one_group_128_bits
Definition: hpm_lobs_drv.h:33
#define LOBS_STREAMCTRL_FULL_CLEAR_MASK
Definition: hpm_lobs_regs.h:91
#define LOBS_CTRL_RUN_MASK
Definition: hpm_lobs_regs.h:68
#define LOBS_CTSR_FINALSTATE_GET(x)
Definition: hpm_lobs_regs.h:165
#define LOBS_PTACTION_TRACE_MASK
Definition: hpm_lobs_regs.h:128
#define LOBS_STATE_ACTION_TRACE_MASK
Definition: hpm_lobs_regs.h:467
#define LOBS_STATE_ACTION_TRACE_SET(x)
Definition: hpm_lobs_regs.h:469
#define LOBS_CTRL_RUN_SET(x)
Definition: hpm_lobs_regs.h:70
#define LOBS_PTACTION_TRACE_SET(x)
Definition: hpm_lobs_regs.h:130
Definition: hpm_lobs_regs.h:12
__RW uint32_t LAR
Definition: hpm_lobs_regs.h:56
__RW uint32_t FINALADDR
Definition: hpm_lobs_regs.h:25
struct LOBS_Type::@672 STATE[5]
__R uint32_t CTSR
Definition: hpm_lobs_regs.h:20
__RW uint32_t PTACTION
Definition: hpm_lobs_regs.h:16
__RW uint32_t CTRL
Definition: hpm_lobs_regs.h:13
__RW uint32_t ACTION
Definition: hpm_lobs_regs.h:39
__RW uint32_t STREAMCTRL
Definition: hpm_lobs_regs.h:15
ctrl config structure
Definition: hpm_lobs_drv.h:118
uint32_t start_addr
Definition: hpm_lobs_drv.h:121
lobs_sample_rate_t sample_rate
Definition: hpm_lobs_drv.h:120
uint32_t end_addr
Definition: hpm_lobs_drv.h:122
lobs_group_mode_t group_mode
Definition: hpm_lobs_drv.h:119
two group mode config structure
Definition: hpm_lobs_drv.h:140
lobs_state_chg_condition_t state_chg_condition
Definition: hpm_lobs_drv.h:143
uint32_t cmp_counter
Definition: hpm_lobs_drv.h:145
uint8_t sig_group_num
Definition: hpm_lobs_drv.h:141
lobs_cmp_mode_t cmp_mode
Definition: hpm_lobs_drv.h:142
lobs_next_state_t next_state
Definition: hpm_lobs_drv.h:144
two group mode config structure
Definition: hpm_lobs_drv.h:129
bool group_enable
Definition: hpm_lobs_drv.h:130
uint8_t sig_group_num
Definition: hpm_lobs_drv.h:131