HPM SDK
HPMicro Software Development Kit
hpm_lobs_drv.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2024 HPMicro
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  *
6  */
7 
8 #ifndef HPM_LOBS_DRV_H
9 #define HPM_LOBS_DRV_H
10 
11 #include "hpm_common.h"
12 #include "hpm_soc_ip_feature.h"
13 #include "hpm_lobs_regs.h"
14 
22 #define LOBS_UNLOCK_KEY 0xc5acce55u
23 
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)
27 
32 typedef enum {
50 typedef enum {
59 typedef enum {
63 #if defined(HPM_IP_FEATURE_LOBS_SAMPLE_RATE_EXT) && HPM_IP_FEATURE_LOBS_SAMPLE_RATE_EXT
64  lobs_sample_1_per_10 = 9,
65  lobs_sample_1_per_50 = 49,
66  lobs_sample_1_per_100 = 99,
67  lobs_sample_1_per_500 = 499,
68  lobs_sample_1_per_1000 = 999,
69 #endif
76 typedef enum {
80 } lobs_burst_t;
86 typedef enum {
95 typedef enum {
107 typedef enum {
110 } lobs_cmp_mode_t;
116 typedef enum {
130 typedef enum {
139 #if defined(HPM_IP_FEATURE_LOBS_IRQ_CTRL) && (HPM_IP_FEATURE_LOBS_IRQ_CTRL)
144 typedef enum {
145  lobs_irq_final_mask = LOBS_IRQ_EN_FINAL_EN_MASK,
146  lobs_irq_full_mask = LOBS_IRQ_EN_FULL_EN_MASK,
147 } lobs_irq_mask_t;
148 #endif
149 
150 #if defined(HPM_IP_FEATURE_LOBS_COMP_LOGIC) && (HPM_IP_FEATURE_LOBS_COMP_LOGIC)
155 typedef enum {
156  lobs_cmp_logic_and = 0,
157  lobs_cmp_logic_or,
158 } lobs_cmp_logic_t;
159 #endif
160 
161 #if defined(HPM_IP_FEATURE_LOBS_TRIG_ADDR) && (HPM_IP_FEATURE_LOBS_TRIG_ADDR)
166 typedef enum {
167  lobs_trig_addr_idx_1 = 0,
168  lobs_trig_addr_idx_2,
169  lobs_trig_addr_idx_3,
170  lobs_trig_addr_idx_4,
171 } lobs_trig_addr_idx_t;
172 #endif
173 
178 typedef struct {
181  uint32_t start_addr;
182  uint32_t end_addr;
189 typedef struct {
192  uint8_t sample_sig_bit[4];
193  bool sample_sig_en[4];
200 typedef struct {
205  uint32_t cmp_counter;
206  uint8_t cmp_sig_bit[4];
207  bool cmp_sig_en[4];
208  bool cmp_golden_value[4];
209 #if defined(HPM_IP_FEATURE_LOBS_COMP_LOGIC) && (HPM_IP_FEATURE_LOBS_COMP_LOGIC)
210  lobs_cmp_logic_t cmp_logic;
211 #endif
218 typedef struct {
219  uint8_t header;
220  uint8_t cnt_L;
221  uint8_t cnt_M;
222  uint8_t cnt_H;
223  union {
224  uint32_t u32_data[3];
225  struct {
226  uint32_t pin00_do : 1;
227  uint32_t pin00_oe : 1;
228  uint32_t pin00_di : 1;
229  uint32_t pin01_do : 1;
230  uint32_t pin01_oe : 1;
231  uint32_t pin01_di : 1;
232  uint32_t pin02_do : 1;
233  uint32_t pin02_oe : 1;
234  uint32_t pin02_di : 1;
235  uint32_t pin03_do : 1;
236  uint32_t pin03_oe : 1;
237  uint32_t pin03_di : 1;
238  uint32_t pin04_do : 1;
239  uint32_t pin04_oe : 1;
240  uint32_t pin04_di : 1;
241  uint32_t pin05_do : 1;
242  uint32_t pin05_oe : 1;
243  uint32_t pin05_di : 1;
244  uint32_t pin06_do : 1;
245  uint32_t pin06_oe : 1;
246  uint32_t pin06_di : 1;
247  uint32_t pin07_do : 1;
248  uint32_t pin07_oe : 1;
249  uint32_t pin07_di : 1;
250  uint32_t pin08_do : 1;
251  uint32_t pin08_oe : 1;
252  uint32_t pin08_di : 1;
253  uint32_t pin09_do : 1;
254  uint32_t pin09_oe : 1;
255  uint32_t pin09_di : 1;
256  uint32_t pin10_do : 1;
257  uint32_t pin10_oe : 1;
258 
259  uint32_t pin10_di : 1;
260  uint32_t pin11_do : 1;
261  uint32_t pin11_oe : 1;
262  uint32_t pin11_di : 1;
263  uint32_t pin12_do : 1;
264  uint32_t pin12_oe : 1;
265  uint32_t pin12_di : 1;
266  uint32_t pin13_do : 1;
267  uint32_t pin13_oe : 1;
268  uint32_t pin13_di : 1;
269  uint32_t pin14_do : 1;
270  uint32_t pin14_oe : 1;
271  uint32_t pin14_di : 1;
272  uint32_t pin15_do : 1;
273  uint32_t pin15_oe : 1;
274  uint32_t pin15_di : 1;
275  uint32_t pin16_do : 1;
276  uint32_t pin16_oe : 1;
277  uint32_t pin16_di : 1;
278  uint32_t pin17_do : 1;
279  uint32_t pin17_oe : 1;
280  uint32_t pin17_di : 1;
281  uint32_t pin18_do : 1;
282  uint32_t pin18_oe : 1;
283  uint32_t pin18_di : 1;
284  uint32_t pin19_do : 1;
285  uint32_t pin19_oe : 1;
286  uint32_t pin19_di : 1;
287  uint32_t pin20_do : 1;
288  uint32_t pin20_oe : 1;
289  uint32_t pin20_di : 1;
290  uint32_t pin21_do : 1;
291 
292  uint32_t pin21_oe : 1;
293  uint32_t pin21_di : 1;
294  uint32_t pin22_do : 1;
295  uint32_t pin22_oe : 1;
296  uint32_t pin22_di : 1;
297  uint32_t pin23_do : 1;
298  uint32_t pin23_oe : 1;
299  uint32_t pin23_di : 1;
300  uint32_t pin24_do : 1;
301  uint32_t pin24_oe : 1;
302  uint32_t pin24_di : 1;
303  uint32_t pin25_do : 1;
304  uint32_t pin25_oe : 1;
305  uint32_t pin25_di : 1;
306  uint32_t pin26_do : 1;
307  uint32_t pin26_oe : 1;
308  uint32_t pin26_di : 1;
309  uint32_t pin27_do : 1;
310  uint32_t pin27_oe : 1;
311  uint32_t pin27_di : 1;
312  uint32_t pin28_do : 1;
313  uint32_t pin28_oe : 1;
314  uint32_t pin28_di : 1;
315  uint32_t pin29_do : 1;
316  uint32_t pin29_oe : 1;
317  uint32_t pin29_di : 1;
318  uint32_t pin30_do : 1;
319  uint32_t pin30_oe : 1;
320  uint32_t pin30_di : 1;
321  uint32_t pin31_do : 1;
322  uint32_t pin31_oe : 1;
323  uint32_t pin31_di : 1;
324  } str_data;
325  } trace_data;
328 #ifdef __cplusplus
329 extern "C" {
330 #endif
331 
337 static inline void lobs_unlock(LOBS_Type *lobs)
338 {
339  lobs->LAR = LOBS_UNLOCK_KEY;
340 }
341 
347 static inline void lobs_lock(LOBS_Type *lobs)
348 {
349  lobs->LAR = 0;
350 }
351 
358 static inline void lobs_set_enable(LOBS_Type *lobs, bool enable)
359 {
360  lobs->CTRL = (lobs->CTRL & ~LOBS_CTRL_RUN_MASK) | LOBS_CTRL_RUN_SET(enable);
361 }
362 
369 static inline void lobs_set_pre_trig_enable(LOBS_Type *lobs, bool enable)
370 {
372 }
373 
381 static inline void lobs_set_state_enable(LOBS_Type *lobs, lobs_state_sel_t state, bool enable)
382 {
383  lobs->STATE[state].ACTION = (lobs->STATE[state].ACTION & ~LOBS_STATE_ACTION_TRACE_MASK) | LOBS_STATE_ACTION_TRACE_SET(enable);
384 }
385 
393 static inline uint32_t lobs_get_final_address(LOBS_Type *lobs)
394 {
395  return lobs->FINALADDR;
396 }
397 
405 static inline bool lobs_is_trace_finish(LOBS_Type *lobs)
406 {
407  return (LOBS_CTSR_FINALSTATE_GET(lobs->CTSR) != 0) ? true : false;
408 }
409 
410 #if defined(HPM_IP_FEATURE_LOBS_IRQ_CTRL) && (HPM_IP_FEATURE_LOBS_IRQ_CTRL)
417 static inline void lobs_set_irq_enable(LOBS_Type *lobs, uint32_t mask)
418 {
419  lobs->IRQ_EN |= mask;
420 }
421 
428 static inline void lobs_set_irq_disable(LOBS_Type *lobs, uint32_t mask)
429 {
430  lobs->IRQ_EN &= ~mask;
431 }
432 
439 static inline uint32_t lobs_get_irq_enable_status(LOBS_Type *lobs)
440 {
441  return lobs->IRQ_EN;
442 }
443 
450 static inline uint32_t lobs_get_irq_status(LOBS_Type *lobs)
451 {
452  return lobs->IRQ_STS;
453 }
454 
461 static inline void lobs_clear_irq_flag(LOBS_Type *lobs, uint32_t mask)
462 {
463  lobs->IRQ_STS = mask;
464 }
465 #else
472 static inline void lobs_clear_fifo_overflow_flag(LOBS_Type *lobs)
473 {
475 }
476 #endif
477 
483 void lobs_deinit(LOBS_Type *lobs);
484 
491 void lobs_ctrl_config(LOBS_Type *lobs, lobs_ctrl_config_t *config);
492 
501 
510 
511 #if defined(HPM_IP_FEATURE_LOBS_TRIG_ADDR) && (HPM_IP_FEATURE_LOBS_TRIG_ADDR)
519 uint32_t lobs_get_trig_address(LOBS_Type *lobs, lobs_trig_addr_idx_t idx);
520 #endif
521 
522 #ifdef __cplusplus
523 }
524 #endif
528 #endif /* HPM_LOBS_DRV_H */
#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
lobs_next_state_t
next state
Definition: hpm_lobs_drv.h:130
lobs_burst_t
burst selection
Definition: hpm_lobs_drv.h:76
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:95
static bool lobs_is_trace_finish(LOBS_Type *lobs)
check lobs trace finish
Definition: hpm_lobs_drv.h:405
static void lobs_set_enable(LOBS_Type *lobs, bool enable)
set lobs enable or disable
Definition: hpm_lobs_drv.h:358
static void lobs_set_pre_trig_enable(LOBS_Type *lobs, bool enable)
set lobs pre-trig enable or disable
Definition: hpm_lobs_drv.h:369
lobs_cmp_mode_t
compare mode
Definition: hpm_lobs_drv.h:107
lobs_two_group_sel_t
two group selection
Definition: hpm_lobs_drv.h:86
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:46
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:69
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:381
lobs_sample_rate_t
sample rate selection
Definition: hpm_lobs_drv.h:59
lobs_signal_group_t
signal group number
Definition: hpm_lobs_drv.h:32
lobs_state_chg_condition_t
compare condition
Definition: hpm_lobs_drv.h:116
lobs_group_mode_t
group mode selection
Definition: hpm_lobs_drv.h:50
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:393
static void lobs_clear_fifo_overflow_flag(LOBS_Type *lobs)
clear lobs fifo overflow flag
Definition: hpm_lobs_drv.h:472
#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:337
static void lobs_lock(LOBS_Type *lobs)
set lobs lock
Definition: hpm_lobs_drv.h:347
@ lobs_next_state_finish
Definition: hpm_lobs_drv.h:131
@ lobs_next_state_4
Definition: hpm_lobs_drv.h:136
@ lobs_next_state_0
Definition: hpm_lobs_drv.h:132
@ lobs_next_state_1
Definition: hpm_lobs_drv.h:133
@ lobs_next_state_2
Definition: hpm_lobs_drv.h:134
@ lobs_next_state_3
Definition: hpm_lobs_drv.h:135
@ lobs_burst_8
Definition: hpm_lobs_drv.h:78
@ lobs_burst_4
Definition: hpm_lobs_drv.h:77
@ lobs_burst_16
Definition: hpm_lobs_drv.h:79
@ lobs_state_2
Definition: hpm_lobs_drv.h:98
@ lobs_state_3
Definition: hpm_lobs_drv.h:99
@ lobs_state_0
Definition: hpm_lobs_drv.h:96
@ lobs_state_4
Definition: hpm_lobs_drv.h:100
@ lobs_state_1
Definition: hpm_lobs_drv.h:97
@ lobs_sig_cmp_mode
Definition: hpm_lobs_drv.h:108
@ lobs_cnt_cmp_mode
Definition: hpm_lobs_drv.h:109
@ lobs_two_group_1
Definition: hpm_lobs_drv.h:87
@ lobs_two_group_2
Definition: hpm_lobs_drv.h:88
@ lobs_sample_1_per_6
Definition: hpm_lobs_drv.h:61
@ lobs_sample_1_per_5
Definition: hpm_lobs_drv.h:60
@ lobs_sample_1_per_7
Definition: hpm_lobs_drv.h:62
@ lobs_signal_group_PV
Definition: hpm_lobs_drv.h:39
@ lobs_signal_group_PW
Definition: hpm_lobs_drv.h:40
@ lobs_signal_group_PD
Definition: hpm_lobs_drv.h:36
@ lobs_signal_group_PZ
Definition: hpm_lobs_drv.h:43
@ lobs_signal_group_PY
Definition: hpm_lobs_drv.h:42
@ lobs_signal_group_PA
Definition: hpm_lobs_drv.h:33
@ lobs_signal_group_PB
Definition: hpm_lobs_drv.h:34
@ lobs_signal_group_PX
Definition: hpm_lobs_drv.h:41
@ lobs_signal_group_PF
Definition: hpm_lobs_drv.h:38
@ lobs_signal_group_PC
Definition: hpm_lobs_drv.h:35
@ lobs_signal_group_PE
Definition: hpm_lobs_drv.h:37
@ lobs_sig_greater_equal_golden
Definition: hpm_lobs_drv.h:120
@ lobs_sig_less_golden
Definition: hpm_lobs_drv.h:122
@ lobs_sig_not_equal_golden
Definition: hpm_lobs_drv.h:121
@ lobs_sig_equal_golden
Definition: hpm_lobs_drv.h:118
@ lobs_sig_greater_golden
Definition: hpm_lobs_drv.h:119
@ lobs_sig_less_equal_golden
Definition: hpm_lobs_drv.h:123
@ lobs_cnt_matched
Definition: hpm_lobs_drv.h:117
@ lobs_one_group_96_bits
Definition: hpm_lobs_drv.h:51
@ lobs_two_group_8_bits
Definition: hpm_lobs_drv.h:52
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
__R uint32_t CTSR
Definition: hpm_lobs_regs.h:20
__RW uint32_t PTACTION
Definition: hpm_lobs_regs.h:16
struct LOBS_Type::@674 STATE[5]
__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:178
uint32_t start_addr
Definition: hpm_lobs_drv.h:181
lobs_sample_rate_t sample_rate
Definition: hpm_lobs_drv.h:180
uint32_t end_addr
Definition: hpm_lobs_drv.h:182
lobs_group_mode_t group_mode
Definition: hpm_lobs_drv.h:179
two group mode config structure
Definition: hpm_lobs_drv.h:200
lobs_state_chg_condition_t state_chg_condition
Definition: hpm_lobs_drv.h:203
uint32_t cmp_counter
Definition: hpm_lobs_drv.h:205
lobs_cmp_mode_t cmp_mode
Definition: hpm_lobs_drv.h:202
lobs_next_state_t next_state
Definition: hpm_lobs_drv.h:204
lobs_signal_group_t sig_group_num
Definition: hpm_lobs_drv.h:201
trace data structure
Definition: hpm_lobs_drv.h:218
uint32_t pin14_oe
Definition: hpm_lobs_drv.h:270
uint32_t pin00_oe
Definition: hpm_lobs_drv.h:227
uint32_t pin18_oe
Definition: hpm_lobs_drv.h:282
uint32_t pin08_do
Definition: hpm_lobs_drv.h:250
uint32_t pin09_oe
Definition: hpm_lobs_drv.h:254
uint32_t pin28_oe
Definition: hpm_lobs_drv.h:313
uint32_t pin19_oe
Definition: hpm_lobs_drv.h:285
uint32_t pin13_di
Definition: hpm_lobs_drv.h:268
uint32_t pin28_di
Definition: hpm_lobs_drv.h:314
uint32_t pin31_di
Definition: hpm_lobs_drv.h:323
uint32_t pin16_do
Definition: hpm_lobs_drv.h:275
uint32_t pin13_oe
Definition: hpm_lobs_drv.h:267
uint32_t pin08_di
Definition: hpm_lobs_drv.h:252
uint32_t pin02_do
Definition: hpm_lobs_drv.h:232
uint32_t pin29_oe
Definition: hpm_lobs_drv.h:316
uint32_t pin24_do
Definition: hpm_lobs_drv.h:300
uint32_t pin25_di
Definition: hpm_lobs_drv.h:305
uint32_t pin05_oe
Definition: hpm_lobs_drv.h:242
uint32_t pin10_do
Definition: hpm_lobs_drv.h:256
uint32_t pin17_do
Definition: hpm_lobs_drv.h:278
uint32_t pin20_oe
Definition: hpm_lobs_drv.h:288
uint32_t pin16_oe
Definition: hpm_lobs_drv.h:276
uint32_t pin19_di
Definition: hpm_lobs_drv.h:286
uint32_t pin04_oe
Definition: hpm_lobs_drv.h:239
uint32_t pin26_di
Definition: hpm_lobs_drv.h:308
uint32_t pin16_di
Definition: hpm_lobs_drv.h:277
uint32_t pin30_di
Definition: hpm_lobs_drv.h:320
uint32_t pin12_oe
Definition: hpm_lobs_drv.h:264
uint32_t pin22_di
Definition: hpm_lobs_drv.h:296
uint32_t pin24_oe
Definition: hpm_lobs_drv.h:301
uint32_t pin25_do
Definition: hpm_lobs_drv.h:303
uint32_t pin21_do
Definition: hpm_lobs_drv.h:290
uint32_t pin31_do
Definition: hpm_lobs_drv.h:321
uint32_t pin21_oe
Definition: hpm_lobs_drv.h:292
uint32_t pin19_do
Definition: hpm_lobs_drv.h:284
uint32_t pin28_do
Definition: hpm_lobs_drv.h:312
uint32_t pin26_oe
Definition: hpm_lobs_drv.h:307
uint32_t pin06_do
Definition: hpm_lobs_drv.h:244
uint32_t pin17_oe
Definition: hpm_lobs_drv.h:279
uint32_t pin06_di
Definition: hpm_lobs_drv.h:246
uint32_t pin27_di
Definition: hpm_lobs_drv.h:311
uint32_t pin22_oe
Definition: hpm_lobs_drv.h:295
uint8_t cnt_H
Definition: hpm_lobs_drv.h:222
uint32_t pin10_di
Definition: hpm_lobs_drv.h:259
uint32_t pin25_oe
Definition: hpm_lobs_drv.h:304
uint32_t pin29_di
Definition: hpm_lobs_drv.h:317
uint32_t pin23_oe
Definition: hpm_lobs_drv.h:298
uint32_t pin23_do
Definition: hpm_lobs_drv.h:297
uint32_t pin05_do
Definition: hpm_lobs_drv.h:241
uint32_t pin18_do
Definition: hpm_lobs_drv.h:281
uint8_t header
Definition: hpm_lobs_drv.h:219
uint32_t pin07_di
Definition: hpm_lobs_drv.h:249
uint32_t pin24_di
Definition: hpm_lobs_drv.h:302
uint32_t pin26_do
Definition: hpm_lobs_drv.h:306
uint32_t pin03_oe
Definition: hpm_lobs_drv.h:236
uint32_t pin11_di
Definition: hpm_lobs_drv.h:262
uint32_t pin05_di
Definition: hpm_lobs_drv.h:243
uint32_t pin11_oe
Definition: hpm_lobs_drv.h:261
uint32_t pin01_oe
Definition: hpm_lobs_drv.h:230
uint32_t pin08_oe
Definition: hpm_lobs_drv.h:251
uint32_t pin31_oe
Definition: hpm_lobs_drv.h:322
uint32_t pin01_do
Definition: hpm_lobs_drv.h:229
uint32_t pin22_do
Definition: hpm_lobs_drv.h:294
uint32_t pin07_oe
Definition: hpm_lobs_drv.h:248
uint32_t pin00_do
Definition: hpm_lobs_drv.h:226
uint32_t pin11_do
Definition: hpm_lobs_drv.h:260
uint32_t pin15_oe
Definition: hpm_lobs_drv.h:273
uint32_t pin09_di
Definition: hpm_lobs_drv.h:255
uint32_t pin07_do
Definition: hpm_lobs_drv.h:247
uint32_t pin27_do
Definition: hpm_lobs_drv.h:309
uint32_t pin23_di
Definition: hpm_lobs_drv.h:299
uint32_t pin18_di
Definition: hpm_lobs_drv.h:283
uint32_t pin12_di
Definition: hpm_lobs_drv.h:265
uint32_t pin17_di
Definition: hpm_lobs_drv.h:280
uint32_t pin03_do
Definition: hpm_lobs_drv.h:235
uint32_t pin06_oe
Definition: hpm_lobs_drv.h:245
uint32_t pin20_do
Definition: hpm_lobs_drv.h:287
uint32_t pin14_di
Definition: hpm_lobs_drv.h:271
uint32_t pin10_oe
Definition: hpm_lobs_drv.h:257
uint32_t pin27_oe
Definition: hpm_lobs_drv.h:310
uint32_t pin01_di
Definition: hpm_lobs_drv.h:231
uint32_t pin15_di
Definition: hpm_lobs_drv.h:274
uint32_t pin21_di
Definition: hpm_lobs_drv.h:293
uint8_t cnt_L
Definition: hpm_lobs_drv.h:220
uint32_t pin04_do
Definition: hpm_lobs_drv.h:238
uint32_t pin15_do
Definition: hpm_lobs_drv.h:272
uint32_t pin00_di
Definition: hpm_lobs_drv.h:228
uint32_t pin30_oe
Definition: hpm_lobs_drv.h:319
uint32_t pin29_do
Definition: hpm_lobs_drv.h:315
uint32_t pin09_do
Definition: hpm_lobs_drv.h:253
uint32_t pin04_di
Definition: hpm_lobs_drv.h:240
uint32_t pin02_di
Definition: hpm_lobs_drv.h:234
uint32_t pin13_do
Definition: hpm_lobs_drv.h:266
uint32_t pin03_di
Definition: hpm_lobs_drv.h:237
uint8_t cnt_M
Definition: hpm_lobs_drv.h:221
uint32_t pin20_di
Definition: hpm_lobs_drv.h:289
uint32_t pin12_do
Definition: hpm_lobs_drv.h:263
uint32_t pin30_do
Definition: hpm_lobs_drv.h:318
uint32_t pin14_do
Definition: hpm_lobs_drv.h:269
uint32_t pin02_oe
Definition: hpm_lobs_drv.h:233
two group mode config structure
Definition: hpm_lobs_drv.h:189
bool group_enable
Definition: hpm_lobs_drv.h:190
lobs_signal_group_t sig_group_num
Definition: hpm_lobs_drv.h:191