 |
Software APIs
|
Go to the documentation of this file.
13#ifndef _GPIO_REG_DEFS_
14#define _GPIO_REG_DEFS_
20#define GPIO_PARAM_NUM_I_OS 32
23#define GPIO_PARAM_NUM_INP_PERIOD_COUNTERS 8
26#define GPIO_PARAM_NUM_ALERTS 1
29#define GPIO_PARAM_REG_WIDTH 32
34#define GPIO_INTR_STATE_REG_OFFSET 0x0
35#define GPIO_INTR_STATE_REG_RESVAL 0x0u
38#define GPIO_INTR_ENABLE_REG_OFFSET 0x4
39#define GPIO_INTR_ENABLE_REG_RESVAL 0x0u
42#define GPIO_INTR_TEST_REG_OFFSET 0x8
43#define GPIO_INTR_TEST_REG_RESVAL 0x0u
46#define GPIO_ALERT_TEST_REG_OFFSET 0xc
47#define GPIO_ALERT_TEST_REG_RESVAL 0x80000000u
48#define GPIO_ALERT_TEST_FATAL_FAULT_BIT 0
49#define GPIO_ALERT_TEST_REGWEN_BIT 31
52#define GPIO_DATA_IN_REG_OFFSET 0x10
53#define GPIO_DATA_IN_REG_RESVAL 0x0u
56#define GPIO_DIRECT_OUT_REG_OFFSET 0x14
57#define GPIO_DIRECT_OUT_REG_RESVAL 0x0u
60#define GPIO_MASKED_OUT_LOWER_REG_OFFSET 0x18
61#define GPIO_MASKED_OUT_LOWER_REG_RESVAL 0x0u
62#define GPIO_MASKED_OUT_LOWER_DATA_MASK 0xffffu
63#define GPIO_MASKED_OUT_LOWER_DATA_OFFSET 0
64#define GPIO_MASKED_OUT_LOWER_DATA_FIELD \
65 ((bitfield_field32_t) { .mask = GPIO_MASKED_OUT_LOWER_DATA_MASK, .index = GPIO_MASKED_OUT_LOWER_DATA_OFFSET })
66#define GPIO_MASKED_OUT_LOWER_MASK_MASK 0xffffu
67#define GPIO_MASKED_OUT_LOWER_MASK_OFFSET 16
68#define GPIO_MASKED_OUT_LOWER_MASK_FIELD \
69 ((bitfield_field32_t) { .mask = GPIO_MASKED_OUT_LOWER_MASK_MASK, .index = GPIO_MASKED_OUT_LOWER_MASK_OFFSET })
72#define GPIO_MASKED_OUT_UPPER_REG_OFFSET 0x1c
73#define GPIO_MASKED_OUT_UPPER_REG_RESVAL 0x0u
74#define GPIO_MASKED_OUT_UPPER_DATA_MASK 0xffffu
75#define GPIO_MASKED_OUT_UPPER_DATA_OFFSET 0
76#define GPIO_MASKED_OUT_UPPER_DATA_FIELD \
77 ((bitfield_field32_t) { .mask = GPIO_MASKED_OUT_UPPER_DATA_MASK, .index = GPIO_MASKED_OUT_UPPER_DATA_OFFSET })
78#define GPIO_MASKED_OUT_UPPER_MASK_MASK 0xffffu
79#define GPIO_MASKED_OUT_UPPER_MASK_OFFSET 16
80#define GPIO_MASKED_OUT_UPPER_MASK_FIELD \
81 ((bitfield_field32_t) { .mask = GPIO_MASKED_OUT_UPPER_MASK_MASK, .index = GPIO_MASKED_OUT_UPPER_MASK_OFFSET })
84#define GPIO_DIRECT_OE_REG_OFFSET 0x20
85#define GPIO_DIRECT_OE_REG_RESVAL 0x0u
88#define GPIO_MASKED_OE_LOWER_REG_OFFSET 0x24
89#define GPIO_MASKED_OE_LOWER_REG_RESVAL 0x0u
90#define GPIO_MASKED_OE_LOWER_DATA_MASK 0xffffu
91#define GPIO_MASKED_OE_LOWER_DATA_OFFSET 0
92#define GPIO_MASKED_OE_LOWER_DATA_FIELD \
93 ((bitfield_field32_t) { .mask = GPIO_MASKED_OE_LOWER_DATA_MASK, .index = GPIO_MASKED_OE_LOWER_DATA_OFFSET })
94#define GPIO_MASKED_OE_LOWER_MASK_MASK 0xffffu
95#define GPIO_MASKED_OE_LOWER_MASK_OFFSET 16
96#define GPIO_MASKED_OE_LOWER_MASK_FIELD \
97 ((bitfield_field32_t) { .mask = GPIO_MASKED_OE_LOWER_MASK_MASK, .index = GPIO_MASKED_OE_LOWER_MASK_OFFSET })
100#define GPIO_MASKED_OE_UPPER_REG_OFFSET 0x28
101#define GPIO_MASKED_OE_UPPER_REG_RESVAL 0x0u
102#define GPIO_MASKED_OE_UPPER_DATA_MASK 0xffffu
103#define GPIO_MASKED_OE_UPPER_DATA_OFFSET 0
104#define GPIO_MASKED_OE_UPPER_DATA_FIELD \
105 ((bitfield_field32_t) { .mask = GPIO_MASKED_OE_UPPER_DATA_MASK, .index = GPIO_MASKED_OE_UPPER_DATA_OFFSET })
106#define GPIO_MASKED_OE_UPPER_MASK_MASK 0xffffu
107#define GPIO_MASKED_OE_UPPER_MASK_OFFSET 16
108#define GPIO_MASKED_OE_UPPER_MASK_FIELD \
109 ((bitfield_field32_t) { .mask = GPIO_MASKED_OE_UPPER_MASK_MASK, .index = GPIO_MASKED_OE_UPPER_MASK_OFFSET })
112#define GPIO_INTR_CTRL_EN_RISING_REG_OFFSET 0x2c
113#define GPIO_INTR_CTRL_EN_RISING_REG_RESVAL 0x0u
116#define GPIO_INTR_CTRL_EN_FALLING_REG_OFFSET 0x30
117#define GPIO_INTR_CTRL_EN_FALLING_REG_RESVAL 0x0u
120#define GPIO_INTR_CTRL_EN_LVLHIGH_REG_OFFSET 0x34
121#define GPIO_INTR_CTRL_EN_LVLHIGH_REG_RESVAL 0x0u
124#define GPIO_INTR_CTRL_EN_LVLLOW_REG_OFFSET 0x38
125#define GPIO_INTR_CTRL_EN_LVLLOW_REG_RESVAL 0x0u
128#define GPIO_CTRL_EN_INPUT_FILTER_REG_OFFSET 0x3c
129#define GPIO_CTRL_EN_INPUT_FILTER_REG_RESVAL 0x0u
132#define GPIO_HW_STRAPS_DATA_IN_VALID_REG_OFFSET 0x40
133#define GPIO_HW_STRAPS_DATA_IN_VALID_REG_RESVAL 0x0u
134#define GPIO_HW_STRAPS_DATA_IN_VALID_HW_STRAPS_DATA_IN_VALID_BIT 0
137#define GPIO_HW_STRAPS_DATA_IN_REG_OFFSET 0x44
138#define GPIO_HW_STRAPS_DATA_IN_REG_RESVAL 0x0u
141#define GPIO_INP_PRD_CNT_CTRL_ENABLE_FIELD_WIDTH 1
142#define GPIO_INP_PRD_CNT_CTRL_CONTINUOUS_MODE_FIELD_WIDTH 1
143#define GPIO_INP_PRD_CNT_CTRL_POLARITY_FIELD_WIDTH 1
144#define GPIO_INP_PRD_CNT_CTRL_INPUT_SELECT_FIELD_WIDTH 8
145#define GPIO_INP_PRD_CNT_CTRL_PRESCALER_FIELD_WIDTH 8
146#define GPIO_INP_PRD_CNT_CTRL_MULTIREG_COUNT 8
149#define GPIO_INP_PRD_CNT_CTRL_0_REG_OFFSET 0x48
150#define GPIO_INP_PRD_CNT_CTRL_0_REG_RESVAL 0x4u
151#define GPIO_INP_PRD_CNT_CTRL_0_ENABLE_0_BIT 0
152#define GPIO_INP_PRD_CNT_CTRL_0_CONTINUOUS_MODE_0_BIT 1
153#define GPIO_INP_PRD_CNT_CTRL_0_POLARITY_0_BIT 2
154#define GPIO_INP_PRD_CNT_CTRL_0_INPUT_SELECT_0_MASK 0xffu
155#define GPIO_INP_PRD_CNT_CTRL_0_INPUT_SELECT_0_OFFSET 8
156#define GPIO_INP_PRD_CNT_CTRL_0_INPUT_SELECT_0_FIELD \
157 ((bitfield_field32_t) { .mask = GPIO_INP_PRD_CNT_CTRL_0_INPUT_SELECT_0_MASK, .index = GPIO_INP_PRD_CNT_CTRL_0_INPUT_SELECT_0_OFFSET })
158#define GPIO_INP_PRD_CNT_CTRL_0_PRESCALER_0_MASK 0xffu
159#define GPIO_INP_PRD_CNT_CTRL_0_PRESCALER_0_OFFSET 16
160#define GPIO_INP_PRD_CNT_CTRL_0_PRESCALER_0_FIELD \
161 ((bitfield_field32_t) { .mask = GPIO_INP_PRD_CNT_CTRL_0_PRESCALER_0_MASK, .index = GPIO_INP_PRD_CNT_CTRL_0_PRESCALER_0_OFFSET })
164#define GPIO_INP_PRD_CNT_CTRL_1_REG_OFFSET 0x4c
165#define GPIO_INP_PRD_CNT_CTRL_1_REG_RESVAL 0x4u
166#define GPIO_INP_PRD_CNT_CTRL_1_ENABLE_1_BIT 0
167#define GPIO_INP_PRD_CNT_CTRL_1_CONTINUOUS_MODE_1_BIT 1
168#define GPIO_INP_PRD_CNT_CTRL_1_POLARITY_1_BIT 2
169#define GPIO_INP_PRD_CNT_CTRL_1_INPUT_SELECT_1_MASK 0xffu
170#define GPIO_INP_PRD_CNT_CTRL_1_INPUT_SELECT_1_OFFSET 8
171#define GPIO_INP_PRD_CNT_CTRL_1_INPUT_SELECT_1_FIELD \
172 ((bitfield_field32_t) { .mask = GPIO_INP_PRD_CNT_CTRL_1_INPUT_SELECT_1_MASK, .index = GPIO_INP_PRD_CNT_CTRL_1_INPUT_SELECT_1_OFFSET })
173#define GPIO_INP_PRD_CNT_CTRL_1_PRESCALER_1_MASK 0xffu
174#define GPIO_INP_PRD_CNT_CTRL_1_PRESCALER_1_OFFSET 16
175#define GPIO_INP_PRD_CNT_CTRL_1_PRESCALER_1_FIELD \
176 ((bitfield_field32_t) { .mask = GPIO_INP_PRD_CNT_CTRL_1_PRESCALER_1_MASK, .index = GPIO_INP_PRD_CNT_CTRL_1_PRESCALER_1_OFFSET })
179#define GPIO_INP_PRD_CNT_CTRL_2_REG_OFFSET 0x50
180#define GPIO_INP_PRD_CNT_CTRL_2_REG_RESVAL 0x4u
181#define GPIO_INP_PRD_CNT_CTRL_2_ENABLE_2_BIT 0
182#define GPIO_INP_PRD_CNT_CTRL_2_CONTINUOUS_MODE_2_BIT 1
183#define GPIO_INP_PRD_CNT_CTRL_2_POLARITY_2_BIT 2
184#define GPIO_INP_PRD_CNT_CTRL_2_INPUT_SELECT_2_MASK 0xffu
185#define GPIO_INP_PRD_CNT_CTRL_2_INPUT_SELECT_2_OFFSET 8
186#define GPIO_INP_PRD_CNT_CTRL_2_INPUT_SELECT_2_FIELD \
187 ((bitfield_field32_t) { .mask = GPIO_INP_PRD_CNT_CTRL_2_INPUT_SELECT_2_MASK, .index = GPIO_INP_PRD_CNT_CTRL_2_INPUT_SELECT_2_OFFSET })
188#define GPIO_INP_PRD_CNT_CTRL_2_PRESCALER_2_MASK 0xffu
189#define GPIO_INP_PRD_CNT_CTRL_2_PRESCALER_2_OFFSET 16
190#define GPIO_INP_PRD_CNT_CTRL_2_PRESCALER_2_FIELD \
191 ((bitfield_field32_t) { .mask = GPIO_INP_PRD_CNT_CTRL_2_PRESCALER_2_MASK, .index = GPIO_INP_PRD_CNT_CTRL_2_PRESCALER_2_OFFSET })
194#define GPIO_INP_PRD_CNT_CTRL_3_REG_OFFSET 0x54
195#define GPIO_INP_PRD_CNT_CTRL_3_REG_RESVAL 0x4u
196#define GPIO_INP_PRD_CNT_CTRL_3_ENABLE_3_BIT 0
197#define GPIO_INP_PRD_CNT_CTRL_3_CONTINUOUS_MODE_3_BIT 1
198#define GPIO_INP_PRD_CNT_CTRL_3_POLARITY_3_BIT 2
199#define GPIO_INP_PRD_CNT_CTRL_3_INPUT_SELECT_3_MASK 0xffu
200#define GPIO_INP_PRD_CNT_CTRL_3_INPUT_SELECT_3_OFFSET 8
201#define GPIO_INP_PRD_CNT_CTRL_3_INPUT_SELECT_3_FIELD \
202 ((bitfield_field32_t) { .mask = GPIO_INP_PRD_CNT_CTRL_3_INPUT_SELECT_3_MASK, .index = GPIO_INP_PRD_CNT_CTRL_3_INPUT_SELECT_3_OFFSET })
203#define GPIO_INP_PRD_CNT_CTRL_3_PRESCALER_3_MASK 0xffu
204#define GPIO_INP_PRD_CNT_CTRL_3_PRESCALER_3_OFFSET 16
205#define GPIO_INP_PRD_CNT_CTRL_3_PRESCALER_3_FIELD \
206 ((bitfield_field32_t) { .mask = GPIO_INP_PRD_CNT_CTRL_3_PRESCALER_3_MASK, .index = GPIO_INP_PRD_CNT_CTRL_3_PRESCALER_3_OFFSET })
209#define GPIO_INP_PRD_CNT_CTRL_4_REG_OFFSET 0x58
210#define GPIO_INP_PRD_CNT_CTRL_4_REG_RESVAL 0x4u
211#define GPIO_INP_PRD_CNT_CTRL_4_ENABLE_4_BIT 0
212#define GPIO_INP_PRD_CNT_CTRL_4_CONTINUOUS_MODE_4_BIT 1
213#define GPIO_INP_PRD_CNT_CTRL_4_POLARITY_4_BIT 2
214#define GPIO_INP_PRD_CNT_CTRL_4_INPUT_SELECT_4_MASK 0xffu
215#define GPIO_INP_PRD_CNT_CTRL_4_INPUT_SELECT_4_OFFSET 8
216#define GPIO_INP_PRD_CNT_CTRL_4_INPUT_SELECT_4_FIELD \
217 ((bitfield_field32_t) { .mask = GPIO_INP_PRD_CNT_CTRL_4_INPUT_SELECT_4_MASK, .index = GPIO_INP_PRD_CNT_CTRL_4_INPUT_SELECT_4_OFFSET })
218#define GPIO_INP_PRD_CNT_CTRL_4_PRESCALER_4_MASK 0xffu
219#define GPIO_INP_PRD_CNT_CTRL_4_PRESCALER_4_OFFSET 16
220#define GPIO_INP_PRD_CNT_CTRL_4_PRESCALER_4_FIELD \
221 ((bitfield_field32_t) { .mask = GPIO_INP_PRD_CNT_CTRL_4_PRESCALER_4_MASK, .index = GPIO_INP_PRD_CNT_CTRL_4_PRESCALER_4_OFFSET })
224#define GPIO_INP_PRD_CNT_CTRL_5_REG_OFFSET 0x5c
225#define GPIO_INP_PRD_CNT_CTRL_5_REG_RESVAL 0x4u
226#define GPIO_INP_PRD_CNT_CTRL_5_ENABLE_5_BIT 0
227#define GPIO_INP_PRD_CNT_CTRL_5_CONTINUOUS_MODE_5_BIT 1
228#define GPIO_INP_PRD_CNT_CTRL_5_POLARITY_5_BIT 2
229#define GPIO_INP_PRD_CNT_CTRL_5_INPUT_SELECT_5_MASK 0xffu
230#define GPIO_INP_PRD_CNT_CTRL_5_INPUT_SELECT_5_OFFSET 8
231#define GPIO_INP_PRD_CNT_CTRL_5_INPUT_SELECT_5_FIELD \
232 ((bitfield_field32_t) { .mask = GPIO_INP_PRD_CNT_CTRL_5_INPUT_SELECT_5_MASK, .index = GPIO_INP_PRD_CNT_CTRL_5_INPUT_SELECT_5_OFFSET })
233#define GPIO_INP_PRD_CNT_CTRL_5_PRESCALER_5_MASK 0xffu
234#define GPIO_INP_PRD_CNT_CTRL_5_PRESCALER_5_OFFSET 16
235#define GPIO_INP_PRD_CNT_CTRL_5_PRESCALER_5_FIELD \
236 ((bitfield_field32_t) { .mask = GPIO_INP_PRD_CNT_CTRL_5_PRESCALER_5_MASK, .index = GPIO_INP_PRD_CNT_CTRL_5_PRESCALER_5_OFFSET })
239#define GPIO_INP_PRD_CNT_CTRL_6_REG_OFFSET 0x60
240#define GPIO_INP_PRD_CNT_CTRL_6_REG_RESVAL 0x4u
241#define GPIO_INP_PRD_CNT_CTRL_6_ENABLE_6_BIT 0
242#define GPIO_INP_PRD_CNT_CTRL_6_CONTINUOUS_MODE_6_BIT 1
243#define GPIO_INP_PRD_CNT_CTRL_6_POLARITY_6_BIT 2
244#define GPIO_INP_PRD_CNT_CTRL_6_INPUT_SELECT_6_MASK 0xffu
245#define GPIO_INP_PRD_CNT_CTRL_6_INPUT_SELECT_6_OFFSET 8
246#define GPIO_INP_PRD_CNT_CTRL_6_INPUT_SELECT_6_FIELD \
247 ((bitfield_field32_t) { .mask = GPIO_INP_PRD_CNT_CTRL_6_INPUT_SELECT_6_MASK, .index = GPIO_INP_PRD_CNT_CTRL_6_INPUT_SELECT_6_OFFSET })
248#define GPIO_INP_PRD_CNT_CTRL_6_PRESCALER_6_MASK 0xffu
249#define GPIO_INP_PRD_CNT_CTRL_6_PRESCALER_6_OFFSET 16
250#define GPIO_INP_PRD_CNT_CTRL_6_PRESCALER_6_FIELD \
251 ((bitfield_field32_t) { .mask = GPIO_INP_PRD_CNT_CTRL_6_PRESCALER_6_MASK, .index = GPIO_INP_PRD_CNT_CTRL_6_PRESCALER_6_OFFSET })
254#define GPIO_INP_PRD_CNT_CTRL_7_REG_OFFSET 0x64
255#define GPIO_INP_PRD_CNT_CTRL_7_REG_RESVAL 0x4u
256#define GPIO_INP_PRD_CNT_CTRL_7_ENABLE_7_BIT 0
257#define GPIO_INP_PRD_CNT_CTRL_7_CONTINUOUS_MODE_7_BIT 1
258#define GPIO_INP_PRD_CNT_CTRL_7_POLARITY_7_BIT 2
259#define GPIO_INP_PRD_CNT_CTRL_7_INPUT_SELECT_7_MASK 0xffu
260#define GPIO_INP_PRD_CNT_CTRL_7_INPUT_SELECT_7_OFFSET 8
261#define GPIO_INP_PRD_CNT_CTRL_7_INPUT_SELECT_7_FIELD \
262 ((bitfield_field32_t) { .mask = GPIO_INP_PRD_CNT_CTRL_7_INPUT_SELECT_7_MASK, .index = GPIO_INP_PRD_CNT_CTRL_7_INPUT_SELECT_7_OFFSET })
263#define GPIO_INP_PRD_CNT_CTRL_7_PRESCALER_7_MASK 0xffu
264#define GPIO_INP_PRD_CNT_CTRL_7_PRESCALER_7_OFFSET 16
265#define GPIO_INP_PRD_CNT_CTRL_7_PRESCALER_7_FIELD \
266 ((bitfield_field32_t) { .mask = GPIO_INP_PRD_CNT_CTRL_7_PRESCALER_7_MASK, .index = GPIO_INP_PRD_CNT_CTRL_7_PRESCALER_7_OFFSET })
269#define GPIO_INP_PRD_CNT_VAL_VALUE_FIELD_WIDTH 32
270#define GPIO_INP_PRD_CNT_VAL_MULTIREG_COUNT 8
273#define GPIO_INP_PRD_CNT_VAL_0_REG_OFFSET 0x68
274#define GPIO_INP_PRD_CNT_VAL_0_REG_RESVAL 0x0u
277#define GPIO_INP_PRD_CNT_VAL_1_REG_OFFSET 0x6c
278#define GPIO_INP_PRD_CNT_VAL_1_REG_RESVAL 0x0u
281#define GPIO_INP_PRD_CNT_VAL_2_REG_OFFSET 0x70
282#define GPIO_INP_PRD_CNT_VAL_2_REG_RESVAL 0x0u
285#define GPIO_INP_PRD_CNT_VAL_3_REG_OFFSET 0x74
286#define GPIO_INP_PRD_CNT_VAL_3_REG_RESVAL 0x0u
289#define GPIO_INP_PRD_CNT_VAL_4_REG_OFFSET 0x78
290#define GPIO_INP_PRD_CNT_VAL_4_REG_RESVAL 0x0u
293#define GPIO_INP_PRD_CNT_VAL_5_REG_OFFSET 0x7c
294#define GPIO_INP_PRD_CNT_VAL_5_REG_RESVAL 0x0u
297#define GPIO_INP_PRD_CNT_VAL_6_REG_OFFSET 0x80
298#define GPIO_INP_PRD_CNT_VAL_6_REG_RESVAL 0x0u
301#define GPIO_INP_PRD_CNT_VAL_7_REG_OFFSET 0x84
302#define GPIO_INP_PRD_CNT_VAL_7_REG_RESVAL 0x0u