• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2021-2023 HPMicro
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  *
6  */
7 
8 
9 #ifndef HPM_RDC_H
10 #define HPM_RDC_H
11 
12 typedef struct {
13     __RW uint32_t RDC_CTL;                     /* 0x0: rdc control */
14     __R  uint32_t ACC_I;                       /* 0x4: accumulate result of i_channel */
15     __R  uint32_t ACC_Q;                       /* 0x8: accumulate result of q_channel */
16     __RW uint32_t IN_CTL;                      /* 0xC: input channel selection */
17     __RW uint32_t OUT_CTL;                     /* 0x10: output channel selection */
18     __R  uint8_t  RESERVED0[32];               /* 0x14 - 0x33: Reserved */
19     __RW uint32_t EXC_TIMMING;                 /* 0x34: excitation signal timming setting */
20     __RW uint32_t EXC_SCALING;                 /* 0x38: amplitude scaling for excitation */
21     __RW uint32_t EXC_OFFSET;                  /* 0x3C: amplitude offset setting */
22     __RW uint32_t PWM_SCALING;                 /* 0x40: amplitude scaling for excitation */
23     __RW uint32_t PWM_OFFSET;                  /* 0x44: amplitude offset setting */
24     __RW uint32_t TRIG_OUT0_CFG;               /* 0x48: Configuration for trigger out 0 in clock cycle */
25     __RW uint32_t TRIG_OUT1_CFG;               /* 0x4C: Configuration for trigger out 1 in clock cycle */
26     __RW uint32_t PWM_DZ;                      /* 0x50: pwm dead zone control in clock cycle */
27     __RW uint32_t SYNC_OUT_CTRL;               /* 0x54: synchronize output signal control */
28     __RW uint32_t EXC_SYNC_DLY;                /* 0x58: trigger in delay timming in soc bus cycle */
29     __R  uint8_t  RESERVED1[20];               /* 0x5C - 0x6F: Reserved */
30     __RW uint32_t MAX_I;                       /* 0x70: max value of  i_channel */
31     __RW uint32_t MIN_I;                       /* 0x74: min value of  i_channel */
32     __RW uint32_t MAX_Q;                       /* 0x78: max value of  q_channel */
33     __RW uint32_t MIN_Q;                       /* 0x7C: min value of  q_channel */
34     __RW uint32_t THRS_I;                      /* 0x80: the offset setting for edge detection of the i_channel */
35     __RW uint32_t THRS_Q;                      /* 0x84: the offset setting for edge detection of the q_channel */
36     __RW uint32_t EDG_DET_CTL;                 /* 0x88: the control for edge detection */
37     __RW uint32_t ACC_SCALING;                 /* 0x8C: scaling for accumulation result */
38     __RW uint32_t EXC_PERIOD;                  /* 0x90: period of excitation */
39     __R  uint8_t  RESERVED2[12];               /* 0x94 - 0x9F: Reserved */
40     __RW uint32_t SYNC_DELAY_I;                /* 0xA0: delay  setting in clock cycle for synchronous signal */
41     __R  uint8_t  RESERVED3[4];                /* 0xA4 - 0xA7: Reserved */
42     __R  uint32_t RISE_DELAY_I;                /* 0xA8: delay in clock cycle between excitation synchrnous signal and rising edge of i_channel data */
43     __R  uint32_t FALL_DELAY_I;                /* 0xAC: delay in clock cycle between excitation synchrnous signal and falling edge of i_channel data */
44     __R  uint32_t SAMPLE_RISE_I;               /* 0xB0: sample value on rising edge of rectify signal */
45     __R  uint32_t SAMPLE_FALL_I;               /* 0xB4: sample value on falling edge of rectify signal */
46     __R  uint32_t ACC_CNT_I;                   /* 0xB8: number of accumulation */
47     __R  uint32_t SIGN_CNT_I;                  /* 0xBC: sample counter of opposite sign with rectify signal */
48     __RW uint32_t SYNC_DELAY_Q;                /* 0xC0: delay  setting in clock cycle for synchronous signal */
49     __R  uint8_t  RESERVED4[4];                /* 0xC4 - 0xC7: Reserved */
50     __R  uint32_t RISE_DELAY_Q;                /* 0xC8: delay in clock cycle between excitation synchrnous signal and rising edge of q_channel data */
51     __R  uint32_t FALL_DELAY_Q;                /* 0xCC: delay in clock cycle between excitation synchrnous signal and falling edge of q_channel data */
52     __R  uint32_t SAMPLE_RISE_Q;               /* 0xD0: sample value on rising edge of rectify signal */
53     __R  uint32_t SAMPLE_FALL_Q;               /* 0xD4: sample value on falling edge of rectify signal */
54     __R  uint32_t ACC_CNT_Q;                   /* 0xD8: number of accumulation */
55     __R  uint32_t SIGN_CNT_Q;                  /* 0xDC: sample counter of opposite sign with rectify signal */
56     __RW uint32_t AMP_MAX;                     /* 0xE0: the maximum of acc amplitude */
57     __RW uint32_t AMP_MIN;                     /* 0xE4: the minimum of acc amplitude */
58     __RW uint32_t INT_EN;                      /* 0xE8: the interrupt mask control */
59     __W  uint32_t ADC_INT_STATE;               /* 0xEC: the interrupt state */
60 } RDC_Type;
61 
62 
63 /* Bitfield definition for register: RDC_CTL */
64 /*
65  * TS_SEL (RW)
66  *
67  * Time stamp selection for accumulation
68  * 0: end of accumulation
69  * 1: start of accumulation
70  * 2: center of accumulation
71  */
72 #define RDC_RDC_CTL_TS_SEL_MASK (0x300000UL)
73 #define RDC_RDC_CTL_TS_SEL_SHIFT (20U)
74 #define RDC_RDC_CTL_TS_SEL_SET(x) (((uint32_t)(x) << RDC_RDC_CTL_TS_SEL_SHIFT) & RDC_RDC_CTL_TS_SEL_MASK)
75 #define RDC_RDC_CTL_TS_SEL_GET(x) (((uint32_t)(x) & RDC_RDC_CTL_TS_SEL_MASK) >> RDC_RDC_CTL_TS_SEL_SHIFT)
76 
77 /*
78  * ACC_LEN (RW)
79  *
80  * Accumulate time, support on the fly change
81  * 0:1 cycle
82  * 1:2 cycles
83  * …
84  * 255: 256 cycles
85  */
86 #define RDC_RDC_CTL_ACC_LEN_MASK (0xFF000UL)
87 #define RDC_RDC_CTL_ACC_LEN_SHIFT (12U)
88 #define RDC_RDC_CTL_ACC_LEN_SET(x) (((uint32_t)(x) << RDC_RDC_CTL_ACC_LEN_SHIFT) & RDC_RDC_CTL_ACC_LEN_MASK)
89 #define RDC_RDC_CTL_ACC_LEN_GET(x) (((uint32_t)(x) & RDC_RDC_CTL_ACC_LEN_MASK) >> RDC_RDC_CTL_ACC_LEN_SHIFT)
90 
91 /*
92  * RECTIFY_SEL (RW)
93  *
94  * Select reference point of rectify signal
95  * 0: 0 phase of internal exciting signal
96  * 1: 90 phase of internal exciting signal
97  * 2: 180 phase of internal exciting signal
98  * 3: 270 phase of internal exciting signal
99  * 4: use value on external pin
100  * 5: use  invert value on external pin
101  */
102 #define RDC_RDC_CTL_RECTIFY_SEL_MASK (0x70U)
103 #define RDC_RDC_CTL_RECTIFY_SEL_SHIFT (4U)
104 #define RDC_RDC_CTL_RECTIFY_SEL_SET(x) (((uint32_t)(x) << RDC_RDC_CTL_RECTIFY_SEL_SHIFT) & RDC_RDC_CTL_RECTIFY_SEL_MASK)
105 #define RDC_RDC_CTL_RECTIFY_SEL_GET(x) (((uint32_t)(x) & RDC_RDC_CTL_RECTIFY_SEL_MASK) >> RDC_RDC_CTL_RECTIFY_SEL_SHIFT)
106 
107 /*
108  * ACC_EN (RW)
109  *
110  * Enable rdc accumulate
111  * 0: rdc disable
112  * 1: rdc enable
113  */
114 #define RDC_RDC_CTL_ACC_EN_MASK (0x4U)
115 #define RDC_RDC_CTL_ACC_EN_SHIFT (2U)
116 #define RDC_RDC_CTL_ACC_EN_SET(x) (((uint32_t)(x) << RDC_RDC_CTL_ACC_EN_SHIFT) & RDC_RDC_CTL_ACC_EN_MASK)
117 #define RDC_RDC_CTL_ACC_EN_GET(x) (((uint32_t)(x) & RDC_RDC_CTL_ACC_EN_MASK) >> RDC_RDC_CTL_ACC_EN_SHIFT)
118 
119 /*
120  * EXC_START (RW1C)
121  *
122  * Write 1 start excite signal, always read 0
123  * 0: no effect
124  * 1: start excite signal
125  */
126 #define RDC_RDC_CTL_EXC_START_MASK (0x2U)
127 #define RDC_RDC_CTL_EXC_START_SHIFT (1U)
128 #define RDC_RDC_CTL_EXC_START_SET(x) (((uint32_t)(x) << RDC_RDC_CTL_EXC_START_SHIFT) & RDC_RDC_CTL_EXC_START_MASK)
129 #define RDC_RDC_CTL_EXC_START_GET(x) (((uint32_t)(x) & RDC_RDC_CTL_EXC_START_MASK) >> RDC_RDC_CTL_EXC_START_SHIFT)
130 
131 /*
132  * EXC_EN (RW)
133  *
134  * Enable rdc excite signal
135  * 0: rdc disable
136  * 1: rdc enable
137  */
138 #define RDC_RDC_CTL_EXC_EN_MASK (0x1U)
139 #define RDC_RDC_CTL_EXC_EN_SHIFT (0U)
140 #define RDC_RDC_CTL_EXC_EN_SET(x) (((uint32_t)(x) << RDC_RDC_CTL_EXC_EN_SHIFT) & RDC_RDC_CTL_EXC_EN_MASK)
141 #define RDC_RDC_CTL_EXC_EN_GET(x) (((uint32_t)(x) & RDC_RDC_CTL_EXC_EN_MASK) >> RDC_RDC_CTL_EXC_EN_SHIFT)
142 
143 /* Bitfield definition for register: ACC_I */
144 /*
145  * ACC (RO)
146  *
147  * accumulate result of i_channel, this is a signed number
148  */
149 #define RDC_ACC_I_ACC_MASK (0xFFFFFFFFUL)
150 #define RDC_ACC_I_ACC_SHIFT (0U)
151 #define RDC_ACC_I_ACC_GET(x) (((uint32_t)(x) & RDC_ACC_I_ACC_MASK) >> RDC_ACC_I_ACC_SHIFT)
152 
153 /* Bitfield definition for register: ACC_Q */
154 /*
155  * ACC (RO)
156  *
157  * accumulate result of q_channel, this is a signed number
158  */
159 #define RDC_ACC_Q_ACC_MASK (0xFFFFFFFFUL)
160 #define RDC_ACC_Q_ACC_SHIFT (0U)
161 #define RDC_ACC_Q_ACC_GET(x) (((uint32_t)(x) & RDC_ACC_Q_ACC_MASK) >> RDC_ACC_Q_ACC_SHIFT)
162 
163 /* Bitfield definition for register: IN_CTL */
164 /*
165  * PORT_Q_SEL (RW)
166  *
167  * Input port selection for q_channel,
168  * 0:sel port0
169  * 1:sel port1
170  */
171 #define RDC_IN_CTL_PORT_Q_SEL_MASK (0x100000UL)
172 #define RDC_IN_CTL_PORT_Q_SEL_SHIFT (20U)
173 #define RDC_IN_CTL_PORT_Q_SEL_SET(x) (((uint32_t)(x) << RDC_IN_CTL_PORT_Q_SEL_SHIFT) & RDC_IN_CTL_PORT_Q_SEL_MASK)
174 #define RDC_IN_CTL_PORT_Q_SEL_GET(x) (((uint32_t)(x) & RDC_IN_CTL_PORT_Q_SEL_MASK) >> RDC_IN_CTL_PORT_Q_SEL_SHIFT)
175 
176 /*
177  * CH_Q_SEL (RW)
178  *
179  * Input channel selection for q_channel
180  * 0: channel 0 selected
181  * 1: channel 1 selected
182  * …
183  * 31: channel 31 selected
184  */
185 #define RDC_IN_CTL_CH_Q_SEL_MASK (0x1F000UL)
186 #define RDC_IN_CTL_CH_Q_SEL_SHIFT (12U)
187 #define RDC_IN_CTL_CH_Q_SEL_SET(x) (((uint32_t)(x) << RDC_IN_CTL_CH_Q_SEL_SHIFT) & RDC_IN_CTL_CH_Q_SEL_MASK)
188 #define RDC_IN_CTL_CH_Q_SEL_GET(x) (((uint32_t)(x) & RDC_IN_CTL_CH_Q_SEL_MASK) >> RDC_IN_CTL_CH_Q_SEL_SHIFT)
189 
190 /*
191  * PORT_I_SEL (RW)
192  *
193  * Input port selection for i_channel,
194  * 0:sel port0
195  * 1:sel port1
196  */
197 #define RDC_IN_CTL_PORT_I_SEL_MASK (0x100U)
198 #define RDC_IN_CTL_PORT_I_SEL_SHIFT (8U)
199 #define RDC_IN_CTL_PORT_I_SEL_SET(x) (((uint32_t)(x) << RDC_IN_CTL_PORT_I_SEL_SHIFT) & RDC_IN_CTL_PORT_I_SEL_MASK)
200 #define RDC_IN_CTL_PORT_I_SEL_GET(x) (((uint32_t)(x) & RDC_IN_CTL_PORT_I_SEL_MASK) >> RDC_IN_CTL_PORT_I_SEL_SHIFT)
201 
202 /*
203  * CH_I_SEL (RW)
204  *
205  * Input channel selection for i_channel
206  * 0: channel 0 selected
207  * 1: channel 1 selected
208  * …
209  * 31: channel 31 selected
210  */
211 #define RDC_IN_CTL_CH_I_SEL_MASK (0x1FU)
212 #define RDC_IN_CTL_CH_I_SEL_SHIFT (0U)
213 #define RDC_IN_CTL_CH_I_SEL_SET(x) (((uint32_t)(x) << RDC_IN_CTL_CH_I_SEL_SHIFT) & RDC_IN_CTL_CH_I_SEL_MASK)
214 #define RDC_IN_CTL_CH_I_SEL_GET(x) (((uint32_t)(x) & RDC_IN_CTL_CH_I_SEL_MASK) >> RDC_IN_CTL_CH_I_SEL_SHIFT)
215 
216 /* Bitfield definition for register: OUT_CTL */
217 /*
218  * CH_Q_SEL (RW)
219  *
220  * Output channel selection for q_channel
221  */
222 #define RDC_OUT_CTL_CH_Q_SEL_MASK (0x1F00U)
223 #define RDC_OUT_CTL_CH_Q_SEL_SHIFT (8U)
224 #define RDC_OUT_CTL_CH_Q_SEL_SET(x) (((uint32_t)(x) << RDC_OUT_CTL_CH_Q_SEL_SHIFT) & RDC_OUT_CTL_CH_Q_SEL_MASK)
225 #define RDC_OUT_CTL_CH_Q_SEL_GET(x) (((uint32_t)(x) & RDC_OUT_CTL_CH_Q_SEL_MASK) >> RDC_OUT_CTL_CH_Q_SEL_SHIFT)
226 
227 /*
228  * CH_I_SEL (RW)
229  *
230  * Output channel selection for i_channel
231  */
232 #define RDC_OUT_CTL_CH_I_SEL_MASK (0x1FU)
233 #define RDC_OUT_CTL_CH_I_SEL_SHIFT (0U)
234 #define RDC_OUT_CTL_CH_I_SEL_SET(x) (((uint32_t)(x) << RDC_OUT_CTL_CH_I_SEL_SHIFT) & RDC_OUT_CTL_CH_I_SEL_MASK)
235 #define RDC_OUT_CTL_CH_I_SEL_GET(x) (((uint32_t)(x) & RDC_OUT_CTL_CH_I_SEL_MASK) >> RDC_OUT_CTL_CH_I_SEL_SHIFT)
236 
237 /* Bitfield definition for register: EXC_TIMMING */
238 /*
239  * SWAP (RW)
240  *
241  * Swap output of PWM and DAC
242  * 0: disable swap
243  * 1: swap output
244  */
245 #define RDC_EXC_TIMMING_SWAP_MASK (0x1000000UL)
246 #define RDC_EXC_TIMMING_SWAP_SHIFT (24U)
247 #define RDC_EXC_TIMMING_SWAP_SET(x) (((uint32_t)(x) << RDC_EXC_TIMMING_SWAP_SHIFT) & RDC_EXC_TIMMING_SWAP_MASK)
248 #define RDC_EXC_TIMMING_SWAP_GET(x) (((uint32_t)(x) & RDC_EXC_TIMMING_SWAP_MASK) >> RDC_EXC_TIMMING_SWAP_SHIFT)
249 
250 /*
251  * PWM_PRD (RW)
252  *
253  * Pwm period in samples,
254  * 0:1 sample period
255  * 1:   2 sample period
256  * ...
257  * 15: 16 sample period
258  */
259 #define RDC_EXC_TIMMING_PWM_PRD_MASK (0xF00000UL)
260 #define RDC_EXC_TIMMING_PWM_PRD_SHIFT (20U)
261 #define RDC_EXC_TIMMING_PWM_PRD_SET(x) (((uint32_t)(x) << RDC_EXC_TIMMING_PWM_PRD_SHIFT) & RDC_EXC_TIMMING_PWM_PRD_MASK)
262 #define RDC_EXC_TIMMING_PWM_PRD_GET(x) (((uint32_t)(x) & RDC_EXC_TIMMING_PWM_PRD_MASK) >> RDC_EXC_TIMMING_PWM_PRD_SHIFT)
263 
264 /*
265  * SMP_NUM (RW)
266  *
267  * Number of sample every excitation period
268  * 0: 4 point
269  * 1: 8 point
270  * …
271  * 8: 1024 point
272  */
273 #define RDC_EXC_TIMMING_SMP_NUM_MASK (0xF0000UL)
274 #define RDC_EXC_TIMMING_SMP_NUM_SHIFT (16U)
275 #define RDC_EXC_TIMMING_SMP_NUM_SET(x) (((uint32_t)(x) << RDC_EXC_TIMMING_SMP_NUM_SHIFT) & RDC_EXC_TIMMING_SMP_NUM_MASK)
276 #define RDC_EXC_TIMMING_SMP_NUM_GET(x) (((uint32_t)(x) & RDC_EXC_TIMMING_SMP_NUM_MASK) >> RDC_EXC_TIMMING_SMP_NUM_SHIFT)
277 
278 /*
279  * SMP_RATE (RW)
280  *
281  * The period for excitation sample in clock cycle,
282  * 0: not allowed
283  * 1: 1 cycle
284  * 2: 2 cycles
285  * …
286  * 65535 : 65535 cycles
287  */
288 #define RDC_EXC_TIMMING_SMP_RATE_MASK (0xFFFFU)
289 #define RDC_EXC_TIMMING_SMP_RATE_SHIFT (0U)
290 #define RDC_EXC_TIMMING_SMP_RATE_SET(x) (((uint32_t)(x) << RDC_EXC_TIMMING_SMP_RATE_SHIFT) & RDC_EXC_TIMMING_SMP_RATE_MASK)
291 #define RDC_EXC_TIMMING_SMP_RATE_GET(x) (((uint32_t)(x) & RDC_EXC_TIMMING_SMP_RATE_MASK) >> RDC_EXC_TIMMING_SMP_RATE_SHIFT)
292 
293 /* Bitfield definition for register: EXC_SCALING */
294 /*
295  * AMP_EXP (RW)
296  *
297  * Amplitude scaling for excitation,  amplitude = [table value] x man / 2^exp
298  */
299 #define RDC_EXC_SCALING_AMP_EXP_MASK (0xF0U)
300 #define RDC_EXC_SCALING_AMP_EXP_SHIFT (4U)
301 #define RDC_EXC_SCALING_AMP_EXP_SET(x) (((uint32_t)(x) << RDC_EXC_SCALING_AMP_EXP_SHIFT) & RDC_EXC_SCALING_AMP_EXP_MASK)
302 #define RDC_EXC_SCALING_AMP_EXP_GET(x) (((uint32_t)(x) & RDC_EXC_SCALING_AMP_EXP_MASK) >> RDC_EXC_SCALING_AMP_EXP_SHIFT)
303 
304 /*
305  * AMP_MAN (RW)
306  *
307  * Amplitude scaling for excitation,  amplitude = [table value] x man / 2^exp
308  */
309 #define RDC_EXC_SCALING_AMP_MAN_MASK (0xFU)
310 #define RDC_EXC_SCALING_AMP_MAN_SHIFT (0U)
311 #define RDC_EXC_SCALING_AMP_MAN_SET(x) (((uint32_t)(x) << RDC_EXC_SCALING_AMP_MAN_SHIFT) & RDC_EXC_SCALING_AMP_MAN_MASK)
312 #define RDC_EXC_SCALING_AMP_MAN_GET(x) (((uint32_t)(x) & RDC_EXC_SCALING_AMP_MAN_MASK) >> RDC_EXC_SCALING_AMP_MAN_SHIFT)
313 
314 /* Bitfield definition for register: EXC_OFFSET */
315 /*
316  * AMP_OFFSET (RW)
317  *
318  * Offset for excitation
319  */
320 #define RDC_EXC_OFFSET_AMP_OFFSET_MASK (0xFFFFFFUL)
321 #define RDC_EXC_OFFSET_AMP_OFFSET_SHIFT (0U)
322 #define RDC_EXC_OFFSET_AMP_OFFSET_SET(x) (((uint32_t)(x) << RDC_EXC_OFFSET_AMP_OFFSET_SHIFT) & RDC_EXC_OFFSET_AMP_OFFSET_MASK)
323 #define RDC_EXC_OFFSET_AMP_OFFSET_GET(x) (((uint32_t)(x) & RDC_EXC_OFFSET_AMP_OFFSET_MASK) >> RDC_EXC_OFFSET_AMP_OFFSET_SHIFT)
324 
325 /* Bitfield definition for register: PWM_SCALING */
326 /*
327  * N_POL (RW)
328  *
329  * Polarity of exc_n signal
330  * 0: high active
331  * 1: low active
332  */
333 #define RDC_PWM_SCALING_N_POL_MASK (0x2000U)
334 #define RDC_PWM_SCALING_N_POL_SHIFT (13U)
335 #define RDC_PWM_SCALING_N_POL_SET(x) (((uint32_t)(x) << RDC_PWM_SCALING_N_POL_SHIFT) & RDC_PWM_SCALING_N_POL_MASK)
336 #define RDC_PWM_SCALING_N_POL_GET(x) (((uint32_t)(x) & RDC_PWM_SCALING_N_POL_MASK) >> RDC_PWM_SCALING_N_POL_SHIFT)
337 
338 /*
339  * P_POL (RW)
340  *
341  * Polarity of exc_p signal
342  * 0: high active
343  * 1: low active
344  */
345 #define RDC_PWM_SCALING_P_POL_MASK (0x1000U)
346 #define RDC_PWM_SCALING_P_POL_SHIFT (12U)
347 #define RDC_PWM_SCALING_P_POL_SET(x) (((uint32_t)(x) << RDC_PWM_SCALING_P_POL_SHIFT) & RDC_PWM_SCALING_P_POL_MASK)
348 #define RDC_PWM_SCALING_P_POL_GET(x) (((uint32_t)(x) & RDC_PWM_SCALING_P_POL_MASK) >> RDC_PWM_SCALING_P_POL_SHIFT)
349 
350 /*
351  * DITHER (RW)
352  *
353  * Enable dither of pwm
354  * 0: disable
355  * 1: enable
356  */
357 #define RDC_PWM_SCALING_DITHER_MASK (0x100U)
358 #define RDC_PWM_SCALING_DITHER_SHIFT (8U)
359 #define RDC_PWM_SCALING_DITHER_SET(x) (((uint32_t)(x) << RDC_PWM_SCALING_DITHER_SHIFT) & RDC_PWM_SCALING_DITHER_MASK)
360 #define RDC_PWM_SCALING_DITHER_GET(x) (((uint32_t)(x) & RDC_PWM_SCALING_DITHER_MASK) >> RDC_PWM_SCALING_DITHER_SHIFT)
361 
362 /*
363  * AMP_EXP (RW)
364  *
365  * Amplitude scaling for excitation,  amplitude = [table value] x man / 2^exp
366  */
367 #define RDC_PWM_SCALING_AMP_EXP_MASK (0xF0U)
368 #define RDC_PWM_SCALING_AMP_EXP_SHIFT (4U)
369 #define RDC_PWM_SCALING_AMP_EXP_SET(x) (((uint32_t)(x) << RDC_PWM_SCALING_AMP_EXP_SHIFT) & RDC_PWM_SCALING_AMP_EXP_MASK)
370 #define RDC_PWM_SCALING_AMP_EXP_GET(x) (((uint32_t)(x) & RDC_PWM_SCALING_AMP_EXP_MASK) >> RDC_PWM_SCALING_AMP_EXP_SHIFT)
371 
372 /*
373  * AMP_MAN (RW)
374  *
375  * Amplitude scaling for excitation,  amplitude = [table value] x man / 2^exp
376  */
377 #define RDC_PWM_SCALING_AMP_MAN_MASK (0xFU)
378 #define RDC_PWM_SCALING_AMP_MAN_SHIFT (0U)
379 #define RDC_PWM_SCALING_AMP_MAN_SET(x) (((uint32_t)(x) << RDC_PWM_SCALING_AMP_MAN_SHIFT) & RDC_PWM_SCALING_AMP_MAN_MASK)
380 #define RDC_PWM_SCALING_AMP_MAN_GET(x) (((uint32_t)(x) & RDC_PWM_SCALING_AMP_MAN_MASK) >> RDC_PWM_SCALING_AMP_MAN_SHIFT)
381 
382 /* Bitfield definition for register: PWM_OFFSET */
383 /*
384  * AMP_OFFSET (RW)
385  *
386  * Offset for excitation
387  */
388 #define RDC_PWM_OFFSET_AMP_OFFSET_MASK (0xFFFFFFUL)
389 #define RDC_PWM_OFFSET_AMP_OFFSET_SHIFT (0U)
390 #define RDC_PWM_OFFSET_AMP_OFFSET_SET(x) (((uint32_t)(x) << RDC_PWM_OFFSET_AMP_OFFSET_SHIFT) & RDC_PWM_OFFSET_AMP_OFFSET_MASK)
391 #define RDC_PWM_OFFSET_AMP_OFFSET_GET(x) (((uint32_t)(x) & RDC_PWM_OFFSET_AMP_OFFSET_MASK) >> RDC_PWM_OFFSET_AMP_OFFSET_SHIFT)
392 
393 /* Bitfield definition for register: TRIG_OUT0_CFG */
394 /*
395  * ENABLE (RW)
396  *
397  * Enable trigger out0
398  * 0: disable
399  * 1: enable
400  */
401 #define RDC_TRIG_OUT0_CFG_ENABLE_MASK (0x100000UL)
402 #define RDC_TRIG_OUT0_CFG_ENABLE_SHIFT (20U)
403 #define RDC_TRIG_OUT0_CFG_ENABLE_SET(x) (((uint32_t)(x) << RDC_TRIG_OUT0_CFG_ENABLE_SHIFT) & RDC_TRIG_OUT0_CFG_ENABLE_MASK)
404 #define RDC_TRIG_OUT0_CFG_ENABLE_GET(x) (((uint32_t)(x) & RDC_TRIG_OUT0_CFG_ENABLE_MASK) >> RDC_TRIG_OUT0_CFG_ENABLE_SHIFT)
405 
406 /*
407  * LEAD_TIM (RW)
408  *
409  * Lead time for trigger out0 from center of low level , this is a signed value
410  * …
411  * 2: 2 cycle befor center of low level
412  * 1: 1 cycle before center of low level
413  * 0: center of low level
414  * -1: 1cycle after center of low level
415  * -2: 2cycle after center of low level
416  */
417 #define RDC_TRIG_OUT0_CFG_LEAD_TIM_MASK (0xFFFFFUL)
418 #define RDC_TRIG_OUT0_CFG_LEAD_TIM_SHIFT (0U)
419 #define RDC_TRIG_OUT0_CFG_LEAD_TIM_SET(x) (((uint32_t)(x) << RDC_TRIG_OUT0_CFG_LEAD_TIM_SHIFT) & RDC_TRIG_OUT0_CFG_LEAD_TIM_MASK)
420 #define RDC_TRIG_OUT0_CFG_LEAD_TIM_GET(x) (((uint32_t)(x) & RDC_TRIG_OUT0_CFG_LEAD_TIM_MASK) >> RDC_TRIG_OUT0_CFG_LEAD_TIM_SHIFT)
421 
422 /* Bitfield definition for register: TRIG_OUT1_CFG */
423 /*
424  * ENABLE (RW)
425  *
426  * Enable trigger out1
427  * 0: disable
428  * 1: enable
429  */
430 #define RDC_TRIG_OUT1_CFG_ENABLE_MASK (0x100000UL)
431 #define RDC_TRIG_OUT1_CFG_ENABLE_SHIFT (20U)
432 #define RDC_TRIG_OUT1_CFG_ENABLE_SET(x) (((uint32_t)(x) << RDC_TRIG_OUT1_CFG_ENABLE_SHIFT) & RDC_TRIG_OUT1_CFG_ENABLE_MASK)
433 #define RDC_TRIG_OUT1_CFG_ENABLE_GET(x) (((uint32_t)(x) & RDC_TRIG_OUT1_CFG_ENABLE_MASK) >> RDC_TRIG_OUT1_CFG_ENABLE_SHIFT)
434 
435 /*
436  * LEAD_TIM (RW)
437  *
438  * Lead time for trigger out0 from center of hight level , this is a signed value
439  * …
440  * 2: 2 cycle befor center of hight level
441  * 1: 1 cycle before center of hight level
442  * 0: center of hight level
443  * -1: 1cycle after center of hight level
444  * -2: 2cycle after center of hight level
445  */
446 #define RDC_TRIG_OUT1_CFG_LEAD_TIM_MASK (0xFFFFFUL)
447 #define RDC_TRIG_OUT1_CFG_LEAD_TIM_SHIFT (0U)
448 #define RDC_TRIG_OUT1_CFG_LEAD_TIM_SET(x) (((uint32_t)(x) << RDC_TRIG_OUT1_CFG_LEAD_TIM_SHIFT) & RDC_TRIG_OUT1_CFG_LEAD_TIM_MASK)
449 #define RDC_TRIG_OUT1_CFG_LEAD_TIM_GET(x) (((uint32_t)(x) & RDC_TRIG_OUT1_CFG_LEAD_TIM_MASK) >> RDC_TRIG_OUT1_CFG_LEAD_TIM_SHIFT)
450 
451 /* Bitfield definition for register: PWM_DZ */
452 /*
453  * DZ_N (RW)
454  *
455  * Exc_n dead zone  in clock cycle before swap
456  * 0: no dead zone
457  * 1: 1 cycle dead zone
458  * 2: 2 cycle dead zone
459  * …
460  */
461 #define RDC_PWM_DZ_DZ_N_MASK (0xFF00U)
462 #define RDC_PWM_DZ_DZ_N_SHIFT (8U)
463 #define RDC_PWM_DZ_DZ_N_SET(x) (((uint32_t)(x) << RDC_PWM_DZ_DZ_N_SHIFT) & RDC_PWM_DZ_DZ_N_MASK)
464 #define RDC_PWM_DZ_DZ_N_GET(x) (((uint32_t)(x) & RDC_PWM_DZ_DZ_N_MASK) >> RDC_PWM_DZ_DZ_N_SHIFT)
465 
466 /*
467  * DZ_P (RW)
468  *
469  * Exc_p dead zone  in clock cycle before swap
470  * 0: no dead zone
471  * 1: 1 cycle dead zone
472  * 2: 2 cycle dead zone
473  * …
474  */
475 #define RDC_PWM_DZ_DZ_P_MASK (0xFFU)
476 #define RDC_PWM_DZ_DZ_P_SHIFT (0U)
477 #define RDC_PWM_DZ_DZ_P_SET(x) (((uint32_t)(x) << RDC_PWM_DZ_DZ_P_SHIFT) & RDC_PWM_DZ_DZ_P_MASK)
478 #define RDC_PWM_DZ_DZ_P_GET(x) (((uint32_t)(x) & RDC_PWM_DZ_DZ_P_MASK) >> RDC_PWM_DZ_DZ_P_SHIFT)
479 
480 /* Bitfield definition for register: SYNC_OUT_CTRL */
481 /*
482  * PWM_OUT_DLY (RO)
483  *
484  * Delay bettween the delyed trigger and the first pwm pulse in clock cycle
485  * 1: 1 cycle
486  * 2: 2 cycle
487  * …
488  */
489 #define RDC_SYNC_OUT_CTRL_PWM_OUT_DLY_MASK (0xFFFF0000UL)
490 #define RDC_SYNC_OUT_CTRL_PWM_OUT_DLY_SHIFT (16U)
491 #define RDC_SYNC_OUT_CTRL_PWM_OUT_DLY_GET(x) (((uint32_t)(x) & RDC_SYNC_OUT_CTRL_PWM_OUT_DLY_MASK) >> RDC_SYNC_OUT_CTRL_PWM_OUT_DLY_SHIFT)
492 
493 /*
494  * MIN2TRIG_EN (RW)
495  *
496  * Enable trigger out from the min point of exciting signal
497  * 1: enable
498  * 0: disable
499  */
500 #define RDC_SYNC_OUT_CTRL_MIN2TRIG_EN_MASK (0x20U)
501 #define RDC_SYNC_OUT_CTRL_MIN2TRIG_EN_SHIFT (5U)
502 #define RDC_SYNC_OUT_CTRL_MIN2TRIG_EN_SET(x) (((uint32_t)(x) << RDC_SYNC_OUT_CTRL_MIN2TRIG_EN_SHIFT) & RDC_SYNC_OUT_CTRL_MIN2TRIG_EN_MASK)
503 #define RDC_SYNC_OUT_CTRL_MIN2TRIG_EN_GET(x) (((uint32_t)(x) & RDC_SYNC_OUT_CTRL_MIN2TRIG_EN_MASK) >> RDC_SYNC_OUT_CTRL_MIN2TRIG_EN_SHIFT)
504 
505 /*
506  * MAX2TRIG_EN (RW)
507  *
508  * Enable trigger out from the max point of exciting signal
509  * 1: enable
510  * 0: disable
511  */
512 #define RDC_SYNC_OUT_CTRL_MAX2TRIG_EN_MASK (0x10U)
513 #define RDC_SYNC_OUT_CTRL_MAX2TRIG_EN_SHIFT (4U)
514 #define RDC_SYNC_OUT_CTRL_MAX2TRIG_EN_SET(x) (((uint32_t)(x) << RDC_SYNC_OUT_CTRL_MAX2TRIG_EN_SHIFT) & RDC_SYNC_OUT_CTRL_MAX2TRIG_EN_MASK)
515 #define RDC_SYNC_OUT_CTRL_MAX2TRIG_EN_GET(x) (((uint32_t)(x) & RDC_SYNC_OUT_CTRL_MAX2TRIG_EN_MASK) >> RDC_SYNC_OUT_CTRL_MAX2TRIG_EN_SHIFT)
516 
517 /*
518  * SYNC_OUT_SEL (RW)
519  *
520  * Select output synchornize signal
521  * 0: 0 phase of internal exciting signal
522  * 1: 90 phase of internal exciting signal
523  * 2: 180 phase of internal exciting signal
524  * 3: 270 phase of internal exciting signal
525  */
526 #define RDC_SYNC_OUT_CTRL_SYNC_OUT_SEL_MASK (0x3U)
527 #define RDC_SYNC_OUT_CTRL_SYNC_OUT_SEL_SHIFT (0U)
528 #define RDC_SYNC_OUT_CTRL_SYNC_OUT_SEL_SET(x) (((uint32_t)(x) << RDC_SYNC_OUT_CTRL_SYNC_OUT_SEL_SHIFT) & RDC_SYNC_OUT_CTRL_SYNC_OUT_SEL_MASK)
529 #define RDC_SYNC_OUT_CTRL_SYNC_OUT_SEL_GET(x) (((uint32_t)(x) & RDC_SYNC_OUT_CTRL_SYNC_OUT_SEL_MASK) >> RDC_SYNC_OUT_CTRL_SYNC_OUT_SEL_SHIFT)
530 
531 /* Bitfield definition for register: EXC_SYNC_DLY */
532 /*
533  * DISABLE (RW)
534  *
535  * Disable hardware trigger input
536  * 0: enable
537  * 1: disable
538  */
539 #define RDC_EXC_SYNC_DLY_DISABLE_MASK (0x1000000UL)
540 #define RDC_EXC_SYNC_DLY_DISABLE_SHIFT (24U)
541 #define RDC_EXC_SYNC_DLY_DISABLE_SET(x) (((uint32_t)(x) << RDC_EXC_SYNC_DLY_DISABLE_SHIFT) & RDC_EXC_SYNC_DLY_DISABLE_MASK)
542 #define RDC_EXC_SYNC_DLY_DISABLE_GET(x) (((uint32_t)(x) & RDC_EXC_SYNC_DLY_DISABLE_MASK) >> RDC_EXC_SYNC_DLY_DISABLE_SHIFT)
543 
544 /*
545  * DELAY (RW)
546  *
547  * Trigger in delay timming in bus cycle from rising edge of trigger signal
548  * 0:   1 cycle
549  * 1:  2 cycle
550  * …
551  * 0xffffff:  2^24 cycle
552  */
553 #define RDC_EXC_SYNC_DLY_DELAY_MASK (0xFFFFFFUL)
554 #define RDC_EXC_SYNC_DLY_DELAY_SHIFT (0U)
555 #define RDC_EXC_SYNC_DLY_DELAY_SET(x) (((uint32_t)(x) << RDC_EXC_SYNC_DLY_DELAY_SHIFT) & RDC_EXC_SYNC_DLY_DELAY_MASK)
556 #define RDC_EXC_SYNC_DLY_DELAY_GET(x) (((uint32_t)(x) & RDC_EXC_SYNC_DLY_DELAY_MASK) >> RDC_EXC_SYNC_DLY_DELAY_SHIFT)
557 
558 /* Bitfield definition for register: MAX_I */
559 /*
560  * MAX (RWC)
561  *
562  * Max value of  i_channel, write clear
563  */
564 #define RDC_MAX_I_MAX_MASK (0xFFFFFF00UL)
565 #define RDC_MAX_I_MAX_SHIFT (8U)
566 #define RDC_MAX_I_MAX_SET(x) (((uint32_t)(x) << RDC_MAX_I_MAX_SHIFT) & RDC_MAX_I_MAX_MASK)
567 #define RDC_MAX_I_MAX_GET(x) (((uint32_t)(x) & RDC_MAX_I_MAX_MASK) >> RDC_MAX_I_MAX_SHIFT)
568 
569 /*
570  * VALID (RWC)
571  *
572  * Max value valid, write clear
573  * 0: max value is not valid
574  * 1: max value is valid
575  */
576 #define RDC_MAX_I_VALID_MASK (0x1U)
577 #define RDC_MAX_I_VALID_SHIFT (0U)
578 #define RDC_MAX_I_VALID_SET(x) (((uint32_t)(x) << RDC_MAX_I_VALID_SHIFT) & RDC_MAX_I_VALID_MASK)
579 #define RDC_MAX_I_VALID_GET(x) (((uint32_t)(x) & RDC_MAX_I_VALID_MASK) >> RDC_MAX_I_VALID_SHIFT)
580 
581 /* Bitfield definition for register: MIN_I */
582 /*
583  * MIN (RWC)
584  *
585  * Min value of  i_channel, write clear
586  */
587 #define RDC_MIN_I_MIN_MASK (0xFFFFFF00UL)
588 #define RDC_MIN_I_MIN_SHIFT (8U)
589 #define RDC_MIN_I_MIN_SET(x) (((uint32_t)(x) << RDC_MIN_I_MIN_SHIFT) & RDC_MIN_I_MIN_MASK)
590 #define RDC_MIN_I_MIN_GET(x) (((uint32_t)(x) & RDC_MIN_I_MIN_MASK) >> RDC_MIN_I_MIN_SHIFT)
591 
592 /*
593  * VALID (RWC)
594  *
595  * Min value valid, write clear
596  * 0: min value is not valid
597  * 1: min value is valid
598  */
599 #define RDC_MIN_I_VALID_MASK (0x1U)
600 #define RDC_MIN_I_VALID_SHIFT (0U)
601 #define RDC_MIN_I_VALID_SET(x) (((uint32_t)(x) << RDC_MIN_I_VALID_SHIFT) & RDC_MIN_I_VALID_MASK)
602 #define RDC_MIN_I_VALID_GET(x) (((uint32_t)(x) & RDC_MIN_I_VALID_MASK) >> RDC_MIN_I_VALID_SHIFT)
603 
604 /* Bitfield definition for register: MAX_Q */
605 /*
606  * MAX (RWC)
607  *
608  * Max value of  q_channel, write clear
609  */
610 #define RDC_MAX_Q_MAX_MASK (0xFFFFFF00UL)
611 #define RDC_MAX_Q_MAX_SHIFT (8U)
612 #define RDC_MAX_Q_MAX_SET(x) (((uint32_t)(x) << RDC_MAX_Q_MAX_SHIFT) & RDC_MAX_Q_MAX_MASK)
613 #define RDC_MAX_Q_MAX_GET(x) (((uint32_t)(x) & RDC_MAX_Q_MAX_MASK) >> RDC_MAX_Q_MAX_SHIFT)
614 
615 /*
616  * VALID (RWC)
617  *
618  * Max value valid, write clear
619  * 0: max value is not valid
620  * 1: max value is valid
621  */
622 #define RDC_MAX_Q_VALID_MASK (0x1U)
623 #define RDC_MAX_Q_VALID_SHIFT (0U)
624 #define RDC_MAX_Q_VALID_SET(x) (((uint32_t)(x) << RDC_MAX_Q_VALID_SHIFT) & RDC_MAX_Q_VALID_MASK)
625 #define RDC_MAX_Q_VALID_GET(x) (((uint32_t)(x) & RDC_MAX_Q_VALID_MASK) >> RDC_MAX_Q_VALID_SHIFT)
626 
627 /* Bitfield definition for register: MIN_Q */
628 /*
629  * MIN (RWC)
630  *
631  * Min value of  q_channel, write clear
632  */
633 #define RDC_MIN_Q_MIN_MASK (0xFFFFFF00UL)
634 #define RDC_MIN_Q_MIN_SHIFT (8U)
635 #define RDC_MIN_Q_MIN_SET(x) (((uint32_t)(x) << RDC_MIN_Q_MIN_SHIFT) & RDC_MIN_Q_MIN_MASK)
636 #define RDC_MIN_Q_MIN_GET(x) (((uint32_t)(x) & RDC_MIN_Q_MIN_MASK) >> RDC_MIN_Q_MIN_SHIFT)
637 
638 /*
639  * VALID (RWC)
640  *
641  * Min value valid, write clear
642  * 0: min value is not valid
643  * 1: min value is valid
644  */
645 #define RDC_MIN_Q_VALID_MASK (0x1U)
646 #define RDC_MIN_Q_VALID_SHIFT (0U)
647 #define RDC_MIN_Q_VALID_SET(x) (((uint32_t)(x) << RDC_MIN_Q_VALID_SHIFT) & RDC_MIN_Q_VALID_MASK)
648 #define RDC_MIN_Q_VALID_GET(x) (((uint32_t)(x) & RDC_MIN_Q_VALID_MASK) >> RDC_MIN_Q_VALID_SHIFT)
649 
650 /* Bitfield definition for register: THRS_I */
651 /*
652  * THRS (RW)
653  *
654  * The offset setting for edge detection of the i_channel, signed number
655  * …
656  * 2: the offset is 0x800000+2
657  * 1: the offset is 0x800000+1
658  * 0: the offset is 0x800000
659  * -1: the offset is 0x800000-1
660  * -2: the offset is 0x800000-2
661  * …
662  */
663 #define RDC_THRS_I_THRS_MASK (0xFFFFFF00UL)
664 #define RDC_THRS_I_THRS_SHIFT (8U)
665 #define RDC_THRS_I_THRS_SET(x) (((uint32_t)(x) << RDC_THRS_I_THRS_SHIFT) & RDC_THRS_I_THRS_MASK)
666 #define RDC_THRS_I_THRS_GET(x) (((uint32_t)(x) & RDC_THRS_I_THRS_MASK) >> RDC_THRS_I_THRS_SHIFT)
667 
668 /* Bitfield definition for register: THRS_Q */
669 /*
670  * THRS (RW)
671  *
672  * The offset setting for edge detection of the q_channel, signed number
673  * …
674  * 2: the offset is 0x800000+2
675  * 1: the offset is 0x800000+1
676  * 0: the offset is 0x800000
677  * -1: the offset is 0x800000-1
678  * -2: the offset is 0x800000-2
679  * …
680  */
681 #define RDC_THRS_Q_THRS_MASK (0xFFFFFF00UL)
682 #define RDC_THRS_Q_THRS_SHIFT (8U)
683 #define RDC_THRS_Q_THRS_SET(x) (((uint32_t)(x) << RDC_THRS_Q_THRS_SHIFT) & RDC_THRS_Q_THRS_MASK)
684 #define RDC_THRS_Q_THRS_GET(x) (((uint32_t)(x) & RDC_THRS_Q_THRS_MASK) >> RDC_THRS_Q_THRS_SHIFT)
685 
686 /* Bitfield definition for register: EDG_DET_CTL */
687 /*
688  * HOLD (RW)
689  *
690  * The minimum edge distance  in sample
691  * 0:1 sample
692  * 1:2 sample
693  * 2:3 samples
694  * …
695  * 63:64 samples
696  */
697 #define RDC_EDG_DET_CTL_HOLD_MASK (0x3F0U)
698 #define RDC_EDG_DET_CTL_HOLD_SHIFT (4U)
699 #define RDC_EDG_DET_CTL_HOLD_SET(x) (((uint32_t)(x) << RDC_EDG_DET_CTL_HOLD_SHIFT) & RDC_EDG_DET_CTL_HOLD_MASK)
700 #define RDC_EDG_DET_CTL_HOLD_GET(x) (((uint32_t)(x) & RDC_EDG_DET_CTL_HOLD_MASK) >> RDC_EDG_DET_CTL_HOLD_SHIFT)
701 
702 /*
703  * FILTER (RW)
704  *
705  * The continuous positive or negative number for edge detection
706  * 0: 1
707  * 1: 2
708  * …
709  * 7: 8
710  */
711 #define RDC_EDG_DET_CTL_FILTER_MASK (0x7U)
712 #define RDC_EDG_DET_CTL_FILTER_SHIFT (0U)
713 #define RDC_EDG_DET_CTL_FILTER_SET(x) (((uint32_t)(x) << RDC_EDG_DET_CTL_FILTER_SHIFT) & RDC_EDG_DET_CTL_FILTER_MASK)
714 #define RDC_EDG_DET_CTL_FILTER_GET(x) (((uint32_t)(x) & RDC_EDG_DET_CTL_FILTER_MASK) >> RDC_EDG_DET_CTL_FILTER_SHIFT)
715 
716 /* Bitfield definition for register: ACC_SCALING */
717 /*
718  * TOXIC_LK (RW)
719  *
720  * Toxic accumulation data be removed control
721  * 1: enable
722  * 0: disable
723  */
724 #define RDC_ACC_SCALING_TOXIC_LK_MASK (0x100U)
725 #define RDC_ACC_SCALING_TOXIC_LK_SHIFT (8U)
726 #define RDC_ACC_SCALING_TOXIC_LK_SET(x) (((uint32_t)(x) << RDC_ACC_SCALING_TOXIC_LK_SHIFT) & RDC_ACC_SCALING_TOXIC_LK_MASK)
727 #define RDC_ACC_SCALING_TOXIC_LK_GET(x) (((uint32_t)(x) & RDC_ACC_SCALING_TOXIC_LK_MASK) >> RDC_ACC_SCALING_TOXIC_LK_SHIFT)
728 
729 /*
730  * ACC_SHIFT (RW)
731  *
732  * Accumulation value shift control, this is a sign number.
733  * 0: {acc[39],acc[38:8]}
734  * 1: {acc[39],acc[37:7]}
735  * 2: {acc[39],acc[36:6]}
736  * …
737  * 7: {acc[39],acc[31:1]}
738  * 8: {acc[39],acc[30:0]}
739  * 9: acc/2^9
740  * 10: acc/2^10
741  * …
742  * 15:acc/2^15
743  */
744 #define RDC_ACC_SCALING_ACC_SHIFT_MASK (0xFU)
745 #define RDC_ACC_SCALING_ACC_SHIFT_SHIFT (0U)
746 #define RDC_ACC_SCALING_ACC_SHIFT_SET(x) (((uint32_t)(x) << RDC_ACC_SCALING_ACC_SHIFT_SHIFT) & RDC_ACC_SCALING_ACC_SHIFT_MASK)
747 #define RDC_ACC_SCALING_ACC_SHIFT_GET(x) (((uint32_t)(x) & RDC_ACC_SCALING_ACC_SHIFT_MASK) >> RDC_ACC_SCALING_ACC_SHIFT_SHIFT)
748 
749 /* Bitfield definition for register: EXC_PERIOD */
750 /*
751  * EXC_PERIOD (RW)
752  *
753  * The num in clock cycle for period of excitation
754  * 0: invalid value
755  * 1:1 cycle
756  * 2:2 cycles
757  * …
758  */
759 #define RDC_EXC_PERIOD_EXC_PERIOD_MASK (0xFFFFFFFFUL)
760 #define RDC_EXC_PERIOD_EXC_PERIOD_SHIFT (0U)
761 #define RDC_EXC_PERIOD_EXC_PERIOD_SET(x) (((uint32_t)(x) << RDC_EXC_PERIOD_EXC_PERIOD_SHIFT) & RDC_EXC_PERIOD_EXC_PERIOD_MASK)
762 #define RDC_EXC_PERIOD_EXC_PERIOD_GET(x) (((uint32_t)(x) & RDC_EXC_PERIOD_EXC_PERIOD_MASK) >> RDC_EXC_PERIOD_EXC_PERIOD_SHIFT)
763 
764 /* Bitfield definition for register: SYNC_DELAY_I */
765 /*
766  * DELAY (RW)
767  *
768  * Delay  in clock cycle for synchronous signal
769 , the value shoud less than half of exc_period.exc_period.
770  * 0: invalid value
771  * 1: 1 cycles
772  * 2: 2 cycles
773  * ...
774  */
775 #define RDC_SYNC_DELAY_I_DELAY_MASK (0xFFFFFFFFUL)
776 #define RDC_SYNC_DELAY_I_DELAY_SHIFT (0U)
777 #define RDC_SYNC_DELAY_I_DELAY_SET(x) (((uint32_t)(x) << RDC_SYNC_DELAY_I_DELAY_SHIFT) & RDC_SYNC_DELAY_I_DELAY_MASK)
778 #define RDC_SYNC_DELAY_I_DELAY_GET(x) (((uint32_t)(x) & RDC_SYNC_DELAY_I_DELAY_MASK) >> RDC_SYNC_DELAY_I_DELAY_SHIFT)
779 
780 /* Bitfield definition for register: RISE_DELAY_I */
781 /*
782  * RISE_DELAY (RO)
783  *
784  * Delay value on rising edge of  i_channel data
785  * 0: 1 cycle
786  * 1: 2 cycles
787  * …
788  */
789 #define RDC_RISE_DELAY_I_RISE_DELAY_MASK (0xFFFFFFFFUL)
790 #define RDC_RISE_DELAY_I_RISE_DELAY_SHIFT (0U)
791 #define RDC_RISE_DELAY_I_RISE_DELAY_GET(x) (((uint32_t)(x) & RDC_RISE_DELAY_I_RISE_DELAY_MASK) >> RDC_RISE_DELAY_I_RISE_DELAY_SHIFT)
792 
793 /* Bitfield definition for register: FALL_DELAY_I */
794 /*
795  * FALL_DELAY (RO)
796  *
797  * Delay value on falling edge of  i_channel data
798  * 0: 1 cycle
799  * 1: 2 cycles
800  * …
801  */
802 #define RDC_FALL_DELAY_I_FALL_DELAY_MASK (0xFFFFFFFFUL)
803 #define RDC_FALL_DELAY_I_FALL_DELAY_SHIFT (0U)
804 #define RDC_FALL_DELAY_I_FALL_DELAY_GET(x) (((uint32_t)(x) & RDC_FALL_DELAY_I_FALL_DELAY_MASK) >> RDC_FALL_DELAY_I_FALL_DELAY_SHIFT)
805 
806 /* Bitfield definition for register: SAMPLE_RISE_I */
807 /*
808  * VALUE (RO)
809  *
810  * sample value on rising edge of rectify signal
811  */
812 #define RDC_SAMPLE_RISE_I_VALUE_MASK (0xFFFFFF00UL)
813 #define RDC_SAMPLE_RISE_I_VALUE_SHIFT (8U)
814 #define RDC_SAMPLE_RISE_I_VALUE_GET(x) (((uint32_t)(x) & RDC_SAMPLE_RISE_I_VALUE_MASK) >> RDC_SAMPLE_RISE_I_VALUE_SHIFT)
815 
816 /* Bitfield definition for register: SAMPLE_FALL_I */
817 /*
818  * VALUE (RO)
819  *
820  * sample value on falling edge of rectify signal
821  */
822 #define RDC_SAMPLE_FALL_I_VALUE_MASK (0xFFFFFF00UL)
823 #define RDC_SAMPLE_FALL_I_VALUE_SHIFT (8U)
824 #define RDC_SAMPLE_FALL_I_VALUE_GET(x) (((uint32_t)(x) & RDC_SAMPLE_FALL_I_VALUE_MASK) >> RDC_SAMPLE_FALL_I_VALUE_SHIFT)
825 
826 /* Bitfield definition for register: ACC_CNT_I */
827 /*
828  * CNT_NEG (RO)
829  *
830  * sample number during the negtive of rectify signal
831  * 1: 1
832  * 2: 2
833  * …
834  */
835 #define RDC_ACC_CNT_I_CNT_NEG_MASK (0xFFFF0000UL)
836 #define RDC_ACC_CNT_I_CNT_NEG_SHIFT (16U)
837 #define RDC_ACC_CNT_I_CNT_NEG_GET(x) (((uint32_t)(x) & RDC_ACC_CNT_I_CNT_NEG_MASK) >> RDC_ACC_CNT_I_CNT_NEG_SHIFT)
838 
839 /*
840  * CNT_POS (RO)
841  *
842  * sample number during the positive of rectify signal
843  * 1: 1
844  * 2: 2
845  * …
846  */
847 #define RDC_ACC_CNT_I_CNT_POS_MASK (0xFFFFU)
848 #define RDC_ACC_CNT_I_CNT_POS_SHIFT (0U)
849 #define RDC_ACC_CNT_I_CNT_POS_GET(x) (((uint32_t)(x) & RDC_ACC_CNT_I_CNT_POS_MASK) >> RDC_ACC_CNT_I_CNT_POS_SHIFT)
850 
851 /* Bitfield definition for register: SIGN_CNT_I */
852 /*
853  * CNT_NEG (RO)
854  *
855  * Positive sample counter during negative rectify signal
856  */
857 #define RDC_SIGN_CNT_I_CNT_NEG_MASK (0xFFFF0000UL)
858 #define RDC_SIGN_CNT_I_CNT_NEG_SHIFT (16U)
859 #define RDC_SIGN_CNT_I_CNT_NEG_GET(x) (((uint32_t)(x) & RDC_SIGN_CNT_I_CNT_NEG_MASK) >> RDC_SIGN_CNT_I_CNT_NEG_SHIFT)
860 
861 /*
862  * CNT_POS (RO)
863  *
864  * Negative sample counter during positive rectify signal
865  */
866 #define RDC_SIGN_CNT_I_CNT_POS_MASK (0xFFFFU)
867 #define RDC_SIGN_CNT_I_CNT_POS_SHIFT (0U)
868 #define RDC_SIGN_CNT_I_CNT_POS_GET(x) (((uint32_t)(x) & RDC_SIGN_CNT_I_CNT_POS_MASK) >> RDC_SIGN_CNT_I_CNT_POS_SHIFT)
869 
870 /* Bitfield definition for register: SYNC_DELAY_Q */
871 /*
872  * DELAY (RW)
873  *
874  * Delay  in clock cycle for synchronous signal
875 , the value shoud less than half of exc_period.exc_period.
876  * 0: invalid value
877  * 1: 1 cycles
878  * 2: 2 cycles
879  * ...
880  */
881 #define RDC_SYNC_DELAY_Q_DELAY_MASK (0xFFFFFFFFUL)
882 #define RDC_SYNC_DELAY_Q_DELAY_SHIFT (0U)
883 #define RDC_SYNC_DELAY_Q_DELAY_SET(x) (((uint32_t)(x) << RDC_SYNC_DELAY_Q_DELAY_SHIFT) & RDC_SYNC_DELAY_Q_DELAY_MASK)
884 #define RDC_SYNC_DELAY_Q_DELAY_GET(x) (((uint32_t)(x) & RDC_SYNC_DELAY_Q_DELAY_MASK) >> RDC_SYNC_DELAY_Q_DELAY_SHIFT)
885 
886 /* Bitfield definition for register: RISE_DELAY_Q */
887 /*
888  * RISE_DELAY (RO)
889  *
890  * Delay value on rising edge of  q_channel data
891  * 0: 1 cycle
892  * 1: 2 cycles
893  * …
894  */
895 #define RDC_RISE_DELAY_Q_RISE_DELAY_MASK (0xFFFFFFFFUL)
896 #define RDC_RISE_DELAY_Q_RISE_DELAY_SHIFT (0U)
897 #define RDC_RISE_DELAY_Q_RISE_DELAY_GET(x) (((uint32_t)(x) & RDC_RISE_DELAY_Q_RISE_DELAY_MASK) >> RDC_RISE_DELAY_Q_RISE_DELAY_SHIFT)
898 
899 /* Bitfield definition for register: FALL_DELAY_Q */
900 /*
901  * FALL_DELAY (RO)
902  *
903  * Delay value on falling edge of  q_channel data
904  * 0: 1 cycle
905  * 1: 2 cycles
906  * …
907  */
908 #define RDC_FALL_DELAY_Q_FALL_DELAY_MASK (0xFFFFFFFFUL)
909 #define RDC_FALL_DELAY_Q_FALL_DELAY_SHIFT (0U)
910 #define RDC_FALL_DELAY_Q_FALL_DELAY_GET(x) (((uint32_t)(x) & RDC_FALL_DELAY_Q_FALL_DELAY_MASK) >> RDC_FALL_DELAY_Q_FALL_DELAY_SHIFT)
911 
912 /* Bitfield definition for register: SAMPLE_RISE_Q */
913 /*
914  * VALUE (RO)
915  *
916  * sample value on rising edge of rectify signal
917  */
918 #define RDC_SAMPLE_RISE_Q_VALUE_MASK (0xFFFFFF00UL)
919 #define RDC_SAMPLE_RISE_Q_VALUE_SHIFT (8U)
920 #define RDC_SAMPLE_RISE_Q_VALUE_GET(x) (((uint32_t)(x) & RDC_SAMPLE_RISE_Q_VALUE_MASK) >> RDC_SAMPLE_RISE_Q_VALUE_SHIFT)
921 
922 /* Bitfield definition for register: SAMPLE_FALL_Q */
923 /*
924  * VALUE (RO)
925  *
926  * sample value on falling edge of rectify signal
927  */
928 #define RDC_SAMPLE_FALL_Q_VALUE_MASK (0xFFFFFF00UL)
929 #define RDC_SAMPLE_FALL_Q_VALUE_SHIFT (8U)
930 #define RDC_SAMPLE_FALL_Q_VALUE_GET(x) (((uint32_t)(x) & RDC_SAMPLE_FALL_Q_VALUE_MASK) >> RDC_SAMPLE_FALL_Q_VALUE_SHIFT)
931 
932 /* Bitfield definition for register: ACC_CNT_Q */
933 /*
934  * CNT_NEG (RO)
935  *
936  * sample number during the negtive of rectify signal
937  * 1: 1
938  * 2: 2
939  * …
940  */
941 #define RDC_ACC_CNT_Q_CNT_NEG_MASK (0xFFFF0000UL)
942 #define RDC_ACC_CNT_Q_CNT_NEG_SHIFT (16U)
943 #define RDC_ACC_CNT_Q_CNT_NEG_GET(x) (((uint32_t)(x) & RDC_ACC_CNT_Q_CNT_NEG_MASK) >> RDC_ACC_CNT_Q_CNT_NEG_SHIFT)
944 
945 /*
946  * CNT_POS (RO)
947  *
948  * sample number during the positive of rectify signal
949  * 1: 1
950  * 2: 2
951  * …
952  */
953 #define RDC_ACC_CNT_Q_CNT_POS_MASK (0xFFFFU)
954 #define RDC_ACC_CNT_Q_CNT_POS_SHIFT (0U)
955 #define RDC_ACC_CNT_Q_CNT_POS_GET(x) (((uint32_t)(x) & RDC_ACC_CNT_Q_CNT_POS_MASK) >> RDC_ACC_CNT_Q_CNT_POS_SHIFT)
956 
957 /* Bitfield definition for register: SIGN_CNT_Q */
958 /*
959  * CNT_NEG (RO)
960  *
961  * Positive sample counter during negative rectify signal
962  */
963 #define RDC_SIGN_CNT_Q_CNT_NEG_MASK (0xFFFF0000UL)
964 #define RDC_SIGN_CNT_Q_CNT_NEG_SHIFT (16U)
965 #define RDC_SIGN_CNT_Q_CNT_NEG_GET(x) (((uint32_t)(x) & RDC_SIGN_CNT_Q_CNT_NEG_MASK) >> RDC_SIGN_CNT_Q_CNT_NEG_SHIFT)
966 
967 /*
968  * CNT_POS (RO)
969  *
970  * Negative sample counter during positive rectify signal
971  */
972 #define RDC_SIGN_CNT_Q_CNT_POS_MASK (0xFFFFU)
973 #define RDC_SIGN_CNT_Q_CNT_POS_SHIFT (0U)
974 #define RDC_SIGN_CNT_Q_CNT_POS_GET(x) (((uint32_t)(x) & RDC_SIGN_CNT_Q_CNT_POS_MASK) >> RDC_SIGN_CNT_Q_CNT_POS_SHIFT)
975 
976 /* Bitfield definition for register: AMP_MAX */
977 /*
978  * MAX (RW)
979  *
980  * the maximum of acc amplitude
981  */
982 #define RDC_AMP_MAX_MAX_MASK (0xFFFFFFFFUL)
983 #define RDC_AMP_MAX_MAX_SHIFT (0U)
984 #define RDC_AMP_MAX_MAX_SET(x) (((uint32_t)(x) << RDC_AMP_MAX_MAX_SHIFT) & RDC_AMP_MAX_MAX_MASK)
985 #define RDC_AMP_MAX_MAX_GET(x) (((uint32_t)(x) & RDC_AMP_MAX_MAX_MASK) >> RDC_AMP_MAX_MAX_SHIFT)
986 
987 /* Bitfield definition for register: AMP_MIN */
988 /*
989  * MIN (RW)
990  *
991  * the minimum of acc amplitude
992  */
993 #define RDC_AMP_MIN_MIN_MASK (0xFFFFFFFFUL)
994 #define RDC_AMP_MIN_MIN_SHIFT (0U)
995 #define RDC_AMP_MIN_MIN_SET(x) (((uint32_t)(x) << RDC_AMP_MIN_MIN_SHIFT) & RDC_AMP_MIN_MIN_MASK)
996 #define RDC_AMP_MIN_MIN_GET(x) (((uint32_t)(x) & RDC_AMP_MIN_MIN_MASK) >> RDC_AMP_MIN_MIN_SHIFT)
997 
998 /* Bitfield definition for register: INT_EN */
999 /*
1000  * INT_EN (RW)
1001  *
1002  * enable interrupt output
1003  */
1004 #define RDC_INT_EN_INT_EN_MASK (0x80000000UL)
1005 #define RDC_INT_EN_INT_EN_SHIFT (31U)
1006 #define RDC_INT_EN_INT_EN_SET(x) (((uint32_t)(x) << RDC_INT_EN_INT_EN_SHIFT) & RDC_INT_EN_INT_EN_MASK)
1007 #define RDC_INT_EN_INT_EN_GET(x) (((uint32_t)(x) & RDC_INT_EN_INT_EN_MASK) >> RDC_INT_EN_INT_EN_SHIFT)
1008 
1009 /*
1010  * ACC_VLD_I_EN (RW)
1011  *
1012  * i_channel accumulate valid interrupt enable for i_channel
1013  */
1014 #define RDC_INT_EN_ACC_VLD_I_EN_MASK (0x8000U)
1015 #define RDC_INT_EN_ACC_VLD_I_EN_SHIFT (15U)
1016 #define RDC_INT_EN_ACC_VLD_I_EN_SET(x) (((uint32_t)(x) << RDC_INT_EN_ACC_VLD_I_EN_SHIFT) & RDC_INT_EN_ACC_VLD_I_EN_MASK)
1017 #define RDC_INT_EN_ACC_VLD_I_EN_GET(x) (((uint32_t)(x) & RDC_INT_EN_ACC_VLD_I_EN_MASK) >> RDC_INT_EN_ACC_VLD_I_EN_SHIFT)
1018 
1019 /*
1020  * ACC_VLD_Q_EN (RW)
1021  *
1022  * q_channel accumulate valid interrupt enable for i_channel
1023  */
1024 #define RDC_INT_EN_ACC_VLD_Q_EN_MASK (0x4000U)
1025 #define RDC_INT_EN_ACC_VLD_Q_EN_SHIFT (14U)
1026 #define RDC_INT_EN_ACC_VLD_Q_EN_SET(x) (((uint32_t)(x) << RDC_INT_EN_ACC_VLD_Q_EN_SHIFT) & RDC_INT_EN_ACC_VLD_Q_EN_MASK)
1027 #define RDC_INT_EN_ACC_VLD_Q_EN_GET(x) (((uint32_t)(x) & RDC_INT_EN_ACC_VLD_Q_EN_MASK) >> RDC_INT_EN_ACC_VLD_Q_EN_SHIFT)
1028 
1029 /*
1030  * RISING_DELAY_I_EN (RW)
1031  *
1032  * i_channel delayed rectify signal rising edge interrupt enable
1033  */
1034 #define RDC_INT_EN_RISING_DELAY_I_EN_MASK (0x2000U)
1035 #define RDC_INT_EN_RISING_DELAY_I_EN_SHIFT (13U)
1036 #define RDC_INT_EN_RISING_DELAY_I_EN_SET(x) (((uint32_t)(x) << RDC_INT_EN_RISING_DELAY_I_EN_SHIFT) & RDC_INT_EN_RISING_DELAY_I_EN_MASK)
1037 #define RDC_INT_EN_RISING_DELAY_I_EN_GET(x) (((uint32_t)(x) & RDC_INT_EN_RISING_DELAY_I_EN_MASK) >> RDC_INT_EN_RISING_DELAY_I_EN_SHIFT)
1038 
1039 /*
1040  * FALLING_DELAY_I_EN (RW)
1041  *
1042  * i_channel delayed rectify signal falling edge interrupt enable
1043  */
1044 #define RDC_INT_EN_FALLING_DELAY_I_EN_MASK (0x1000U)
1045 #define RDC_INT_EN_FALLING_DELAY_I_EN_SHIFT (12U)
1046 #define RDC_INT_EN_FALLING_DELAY_I_EN_SET(x) (((uint32_t)(x) << RDC_INT_EN_FALLING_DELAY_I_EN_SHIFT) & RDC_INT_EN_FALLING_DELAY_I_EN_MASK)
1047 #define RDC_INT_EN_FALLING_DELAY_I_EN_GET(x) (((uint32_t)(x) & RDC_INT_EN_FALLING_DELAY_I_EN_MASK) >> RDC_INT_EN_FALLING_DELAY_I_EN_SHIFT)
1048 
1049 /*
1050  * RISING_DELAY_Q_EN (RW)
1051  *
1052  * q_channel delayed rectify signal rising edge interrupt enable
1053  */
1054 #define RDC_INT_EN_RISING_DELAY_Q_EN_MASK (0x800U)
1055 #define RDC_INT_EN_RISING_DELAY_Q_EN_SHIFT (11U)
1056 #define RDC_INT_EN_RISING_DELAY_Q_EN_SET(x) (((uint32_t)(x) << RDC_INT_EN_RISING_DELAY_Q_EN_SHIFT) & RDC_INT_EN_RISING_DELAY_Q_EN_MASK)
1057 #define RDC_INT_EN_RISING_DELAY_Q_EN_GET(x) (((uint32_t)(x) & RDC_INT_EN_RISING_DELAY_Q_EN_MASK) >> RDC_INT_EN_RISING_DELAY_Q_EN_SHIFT)
1058 
1059 /*
1060  * FALLING_DELAY_Q_EN (RW)
1061  *
1062  * q_channel delayed rectify signal falling edge interrupt enable
1063  */
1064 #define RDC_INT_EN_FALLING_DELAY_Q_EN_MASK (0x400U)
1065 #define RDC_INT_EN_FALLING_DELAY_Q_EN_SHIFT (10U)
1066 #define RDC_INT_EN_FALLING_DELAY_Q_EN_SET(x) (((uint32_t)(x) << RDC_INT_EN_FALLING_DELAY_Q_EN_SHIFT) & RDC_INT_EN_FALLING_DELAY_Q_EN_MASK)
1067 #define RDC_INT_EN_FALLING_DELAY_Q_EN_GET(x) (((uint32_t)(x) & RDC_INT_EN_FALLING_DELAY_Q_EN_MASK) >> RDC_INT_EN_FALLING_DELAY_Q_EN_SHIFT)
1068 
1069 /*
1070  * SAMPLE_RISING_I_EN (RW)
1071  *
1072  * i_channel rising edge interrupt enable
1073  */
1074 #define RDC_INT_EN_SAMPLE_RISING_I_EN_MASK (0x200U)
1075 #define RDC_INT_EN_SAMPLE_RISING_I_EN_SHIFT (9U)
1076 #define RDC_INT_EN_SAMPLE_RISING_I_EN_SET(x) (((uint32_t)(x) << RDC_INT_EN_SAMPLE_RISING_I_EN_SHIFT) & RDC_INT_EN_SAMPLE_RISING_I_EN_MASK)
1077 #define RDC_INT_EN_SAMPLE_RISING_I_EN_GET(x) (((uint32_t)(x) & RDC_INT_EN_SAMPLE_RISING_I_EN_MASK) >> RDC_INT_EN_SAMPLE_RISING_I_EN_SHIFT)
1078 
1079 /*
1080  * SAMPLE_FALLING_I_EN (RW)
1081  *
1082  * i_channel falling edge interrupt enable
1083  */
1084 #define RDC_INT_EN_SAMPLE_FALLING_I_EN_MASK (0x100U)
1085 #define RDC_INT_EN_SAMPLE_FALLING_I_EN_SHIFT (8U)
1086 #define RDC_INT_EN_SAMPLE_FALLING_I_EN_SET(x) (((uint32_t)(x) << RDC_INT_EN_SAMPLE_FALLING_I_EN_SHIFT) & RDC_INT_EN_SAMPLE_FALLING_I_EN_MASK)
1087 #define RDC_INT_EN_SAMPLE_FALLING_I_EN_GET(x) (((uint32_t)(x) & RDC_INT_EN_SAMPLE_FALLING_I_EN_MASK) >> RDC_INT_EN_SAMPLE_FALLING_I_EN_SHIFT)
1088 
1089 /*
1090  * SAMPLE_RISING_Q_EN (RW)
1091  *
1092  * q_channel rising edge interrupt enable
1093  */
1094 #define RDC_INT_EN_SAMPLE_RISING_Q_EN_MASK (0x80U)
1095 #define RDC_INT_EN_SAMPLE_RISING_Q_EN_SHIFT (7U)
1096 #define RDC_INT_EN_SAMPLE_RISING_Q_EN_SET(x) (((uint32_t)(x) << RDC_INT_EN_SAMPLE_RISING_Q_EN_SHIFT) & RDC_INT_EN_SAMPLE_RISING_Q_EN_MASK)
1097 #define RDC_INT_EN_SAMPLE_RISING_Q_EN_GET(x) (((uint32_t)(x) & RDC_INT_EN_SAMPLE_RISING_Q_EN_MASK) >> RDC_INT_EN_SAMPLE_RISING_Q_EN_SHIFT)
1098 
1099 /*
1100  * SAMPLE_FALLING_Q_EN (RW)
1101  *
1102  * q_channel falling edge interrupt enable
1103  */
1104 #define RDC_INT_EN_SAMPLE_FALLING_Q_EN_MASK (0x40U)
1105 #define RDC_INT_EN_SAMPLE_FALLING_Q_EN_SHIFT (6U)
1106 #define RDC_INT_EN_SAMPLE_FALLING_Q_EN_SET(x) (((uint32_t)(x) << RDC_INT_EN_SAMPLE_FALLING_Q_EN_SHIFT) & RDC_INT_EN_SAMPLE_FALLING_Q_EN_MASK)
1107 #define RDC_INT_EN_SAMPLE_FALLING_Q_EN_GET(x) (((uint32_t)(x) & RDC_INT_EN_SAMPLE_FALLING_Q_EN_MASK) >> RDC_INT_EN_SAMPLE_FALLING_Q_EN_SHIFT)
1108 
1109 /*
1110  * ACC_VLD_I_OVH_EN (RW)
1111  *
1112  * i_channel accumulate overflow interrupt enable
1113  */
1114 #define RDC_INT_EN_ACC_VLD_I_OVH_EN_MASK (0x20U)
1115 #define RDC_INT_EN_ACC_VLD_I_OVH_EN_SHIFT (5U)
1116 #define RDC_INT_EN_ACC_VLD_I_OVH_EN_SET(x) (((uint32_t)(x) << RDC_INT_EN_ACC_VLD_I_OVH_EN_SHIFT) & RDC_INT_EN_ACC_VLD_I_OVH_EN_MASK)
1117 #define RDC_INT_EN_ACC_VLD_I_OVH_EN_GET(x) (((uint32_t)(x) & RDC_INT_EN_ACC_VLD_I_OVH_EN_MASK) >> RDC_INT_EN_ACC_VLD_I_OVH_EN_SHIFT)
1118 
1119 /*
1120  * ACC_VLD_Q_OVH_EN (RW)
1121  *
1122  * q_channel accumulate overflow interrupt enable
1123  */
1124 #define RDC_INT_EN_ACC_VLD_Q_OVH_EN_MASK (0x10U)
1125 #define RDC_INT_EN_ACC_VLD_Q_OVH_EN_SHIFT (4U)
1126 #define RDC_INT_EN_ACC_VLD_Q_OVH_EN_SET(x) (((uint32_t)(x) << RDC_INT_EN_ACC_VLD_Q_OVH_EN_SHIFT) & RDC_INT_EN_ACC_VLD_Q_OVH_EN_MASK)
1127 #define RDC_INT_EN_ACC_VLD_Q_OVH_EN_GET(x) (((uint32_t)(x) & RDC_INT_EN_ACC_VLD_Q_OVH_EN_MASK) >> RDC_INT_EN_ACC_VLD_Q_OVH_EN_SHIFT)
1128 
1129 /*
1130  * ACC_VLD_I_OVL_EN (RW)
1131  *
1132  * i_channel accumulate underflow interrupt enable
1133  */
1134 #define RDC_INT_EN_ACC_VLD_I_OVL_EN_MASK (0x8U)
1135 #define RDC_INT_EN_ACC_VLD_I_OVL_EN_SHIFT (3U)
1136 #define RDC_INT_EN_ACC_VLD_I_OVL_EN_SET(x) (((uint32_t)(x) << RDC_INT_EN_ACC_VLD_I_OVL_EN_SHIFT) & RDC_INT_EN_ACC_VLD_I_OVL_EN_MASK)
1137 #define RDC_INT_EN_ACC_VLD_I_OVL_EN_GET(x) (((uint32_t)(x) & RDC_INT_EN_ACC_VLD_I_OVL_EN_MASK) >> RDC_INT_EN_ACC_VLD_I_OVL_EN_SHIFT)
1138 
1139 /*
1140  * ACC_VLD_Q_OVL_EN (RW)
1141  *
1142  * q_channel accumulate underflow interrupt enable
1143  */
1144 #define RDC_INT_EN_ACC_VLD_Q_OVL_EN_MASK (0x4U)
1145 #define RDC_INT_EN_ACC_VLD_Q_OVL_EN_SHIFT (2U)
1146 #define RDC_INT_EN_ACC_VLD_Q_OVL_EN_SET(x) (((uint32_t)(x) << RDC_INT_EN_ACC_VLD_Q_OVL_EN_SHIFT) & RDC_INT_EN_ACC_VLD_Q_OVL_EN_MASK)
1147 #define RDC_INT_EN_ACC_VLD_Q_OVL_EN_GET(x) (((uint32_t)(x) & RDC_INT_EN_ACC_VLD_Q_OVL_EN_MASK) >> RDC_INT_EN_ACC_VLD_Q_OVL_EN_SHIFT)
1148 
1149 /*
1150  * ACC_AMP_OVH_EN (RW)
1151  *
1152  * accumulate ample overflow interrupt enable
1153  */
1154 #define RDC_INT_EN_ACC_AMP_OVH_EN_MASK (0x2U)
1155 #define RDC_INT_EN_ACC_AMP_OVH_EN_SHIFT (1U)
1156 #define RDC_INT_EN_ACC_AMP_OVH_EN_SET(x) (((uint32_t)(x) << RDC_INT_EN_ACC_AMP_OVH_EN_SHIFT) & RDC_INT_EN_ACC_AMP_OVH_EN_MASK)
1157 #define RDC_INT_EN_ACC_AMP_OVH_EN_GET(x) (((uint32_t)(x) & RDC_INT_EN_ACC_AMP_OVH_EN_MASK) >> RDC_INT_EN_ACC_AMP_OVH_EN_SHIFT)
1158 
1159 /*
1160  * ACC_AMP_OVL_EN (RW)
1161  *
1162  * accumulate ample underflow interrupt enable
1163  */
1164 #define RDC_INT_EN_ACC_AMP_OVL_EN_MASK (0x1U)
1165 #define RDC_INT_EN_ACC_AMP_OVL_EN_SHIFT (0U)
1166 #define RDC_INT_EN_ACC_AMP_OVL_EN_SET(x) (((uint32_t)(x) << RDC_INT_EN_ACC_AMP_OVL_EN_SHIFT) & RDC_INT_EN_ACC_AMP_OVL_EN_MASK)
1167 #define RDC_INT_EN_ACC_AMP_OVL_EN_GET(x) (((uint32_t)(x) & RDC_INT_EN_ACC_AMP_OVL_EN_MASK) >> RDC_INT_EN_ACC_AMP_OVL_EN_SHIFT)
1168 
1169 /* Bitfield definition for register: ADC_INT_STATE */
1170 /*
1171  * ACC_VLD_I_STA (W1C)
1172  *
1173  * i_channel accumulate valid interrupt status for i_channel
1174  */
1175 #define RDC_ADC_INT_STATE_ACC_VLD_I_STA_MASK (0x8000U)
1176 #define RDC_ADC_INT_STATE_ACC_VLD_I_STA_SHIFT (15U)
1177 #define RDC_ADC_INT_STATE_ACC_VLD_I_STA_SET(x) (((uint32_t)(x) << RDC_ADC_INT_STATE_ACC_VLD_I_STA_SHIFT) & RDC_ADC_INT_STATE_ACC_VLD_I_STA_MASK)
1178 #define RDC_ADC_INT_STATE_ACC_VLD_I_STA_GET(x) (((uint32_t)(x) & RDC_ADC_INT_STATE_ACC_VLD_I_STA_MASK) >> RDC_ADC_INT_STATE_ACC_VLD_I_STA_SHIFT)
1179 
1180 /*
1181  * ACC_VLD_Q_STA (W1C)
1182  *
1183  * q_channel accumulate valid interrupt status for i_channel
1184  */
1185 #define RDC_ADC_INT_STATE_ACC_VLD_Q_STA_MASK (0x4000U)
1186 #define RDC_ADC_INT_STATE_ACC_VLD_Q_STA_SHIFT (14U)
1187 #define RDC_ADC_INT_STATE_ACC_VLD_Q_STA_SET(x) (((uint32_t)(x) << RDC_ADC_INT_STATE_ACC_VLD_Q_STA_SHIFT) & RDC_ADC_INT_STATE_ACC_VLD_Q_STA_MASK)
1188 #define RDC_ADC_INT_STATE_ACC_VLD_Q_STA_GET(x) (((uint32_t)(x) & RDC_ADC_INT_STATE_ACC_VLD_Q_STA_MASK) >> RDC_ADC_INT_STATE_ACC_VLD_Q_STA_SHIFT)
1189 
1190 /*
1191  * RISING_DELAY_I_STA (W1C)
1192  *
1193  * i_channel delayed rectify signal rising edge interrupt status
1194  */
1195 #define RDC_ADC_INT_STATE_RISING_DELAY_I_STA_MASK (0x2000U)
1196 #define RDC_ADC_INT_STATE_RISING_DELAY_I_STA_SHIFT (13U)
1197 #define RDC_ADC_INT_STATE_RISING_DELAY_I_STA_SET(x) (((uint32_t)(x) << RDC_ADC_INT_STATE_RISING_DELAY_I_STA_SHIFT) & RDC_ADC_INT_STATE_RISING_DELAY_I_STA_MASK)
1198 #define RDC_ADC_INT_STATE_RISING_DELAY_I_STA_GET(x) (((uint32_t)(x) & RDC_ADC_INT_STATE_RISING_DELAY_I_STA_MASK) >> RDC_ADC_INT_STATE_RISING_DELAY_I_STA_SHIFT)
1199 
1200 /*
1201  * FALLING_DELAY_I_STA (W1C)
1202  *
1203  * i_channel delayed rectify signal falling edge interrupt status
1204  */
1205 #define RDC_ADC_INT_STATE_FALLING_DELAY_I_STA_MASK (0x1000U)
1206 #define RDC_ADC_INT_STATE_FALLING_DELAY_I_STA_SHIFT (12U)
1207 #define RDC_ADC_INT_STATE_FALLING_DELAY_I_STA_SET(x) (((uint32_t)(x) << RDC_ADC_INT_STATE_FALLING_DELAY_I_STA_SHIFT) & RDC_ADC_INT_STATE_FALLING_DELAY_I_STA_MASK)
1208 #define RDC_ADC_INT_STATE_FALLING_DELAY_I_STA_GET(x) (((uint32_t)(x) & RDC_ADC_INT_STATE_FALLING_DELAY_I_STA_MASK) >> RDC_ADC_INT_STATE_FALLING_DELAY_I_STA_SHIFT)
1209 
1210 /*
1211  * RISING_DELAY_Q_STA (W1C)
1212  *
1213  * q_channel delayed rectify signal rising edge interrupt status
1214  */
1215 #define RDC_ADC_INT_STATE_RISING_DELAY_Q_STA_MASK (0x800U)
1216 #define RDC_ADC_INT_STATE_RISING_DELAY_Q_STA_SHIFT (11U)
1217 #define RDC_ADC_INT_STATE_RISING_DELAY_Q_STA_SET(x) (((uint32_t)(x) << RDC_ADC_INT_STATE_RISING_DELAY_Q_STA_SHIFT) & RDC_ADC_INT_STATE_RISING_DELAY_Q_STA_MASK)
1218 #define RDC_ADC_INT_STATE_RISING_DELAY_Q_STA_GET(x) (((uint32_t)(x) & RDC_ADC_INT_STATE_RISING_DELAY_Q_STA_MASK) >> RDC_ADC_INT_STATE_RISING_DELAY_Q_STA_SHIFT)
1219 
1220 /*
1221  * FALLING_DELAY_Q_STA (W1C)
1222  *
1223  * q_channel delayed rectify signal falling edge interrupt status
1224  */
1225 #define RDC_ADC_INT_STATE_FALLING_DELAY_Q_STA_MASK (0x400U)
1226 #define RDC_ADC_INT_STATE_FALLING_DELAY_Q_STA_SHIFT (10U)
1227 #define RDC_ADC_INT_STATE_FALLING_DELAY_Q_STA_SET(x) (((uint32_t)(x) << RDC_ADC_INT_STATE_FALLING_DELAY_Q_STA_SHIFT) & RDC_ADC_INT_STATE_FALLING_DELAY_Q_STA_MASK)
1228 #define RDC_ADC_INT_STATE_FALLING_DELAY_Q_STA_GET(x) (((uint32_t)(x) & RDC_ADC_INT_STATE_FALLING_DELAY_Q_STA_MASK) >> RDC_ADC_INT_STATE_FALLING_DELAY_Q_STA_SHIFT)
1229 
1230 /*
1231  * SAMPLE_RISING_I_STA (W1C)
1232  *
1233  * i_channel rising edge interrupt status
1234  */
1235 #define RDC_ADC_INT_STATE_SAMPLE_RISING_I_STA_MASK (0x200U)
1236 #define RDC_ADC_INT_STATE_SAMPLE_RISING_I_STA_SHIFT (9U)
1237 #define RDC_ADC_INT_STATE_SAMPLE_RISING_I_STA_SET(x) (((uint32_t)(x) << RDC_ADC_INT_STATE_SAMPLE_RISING_I_STA_SHIFT) & RDC_ADC_INT_STATE_SAMPLE_RISING_I_STA_MASK)
1238 #define RDC_ADC_INT_STATE_SAMPLE_RISING_I_STA_GET(x) (((uint32_t)(x) & RDC_ADC_INT_STATE_SAMPLE_RISING_I_STA_MASK) >> RDC_ADC_INT_STATE_SAMPLE_RISING_I_STA_SHIFT)
1239 
1240 /*
1241  * SAMPLE_FALLING_I_STA (W1C)
1242  *
1243  * i_channel falling edge interrupt status
1244  */
1245 #define RDC_ADC_INT_STATE_SAMPLE_FALLING_I_STA_MASK (0x100U)
1246 #define RDC_ADC_INT_STATE_SAMPLE_FALLING_I_STA_SHIFT (8U)
1247 #define RDC_ADC_INT_STATE_SAMPLE_FALLING_I_STA_SET(x) (((uint32_t)(x) << RDC_ADC_INT_STATE_SAMPLE_FALLING_I_STA_SHIFT) & RDC_ADC_INT_STATE_SAMPLE_FALLING_I_STA_MASK)
1248 #define RDC_ADC_INT_STATE_SAMPLE_FALLING_I_STA_GET(x) (((uint32_t)(x) & RDC_ADC_INT_STATE_SAMPLE_FALLING_I_STA_MASK) >> RDC_ADC_INT_STATE_SAMPLE_FALLING_I_STA_SHIFT)
1249 
1250 /*
1251  * SAMPLE_RISING_Q_STA (W1C)
1252  *
1253  * q_channel rising edge interrupt status
1254  */
1255 #define RDC_ADC_INT_STATE_SAMPLE_RISING_Q_STA_MASK (0x80U)
1256 #define RDC_ADC_INT_STATE_SAMPLE_RISING_Q_STA_SHIFT (7U)
1257 #define RDC_ADC_INT_STATE_SAMPLE_RISING_Q_STA_SET(x) (((uint32_t)(x) << RDC_ADC_INT_STATE_SAMPLE_RISING_Q_STA_SHIFT) & RDC_ADC_INT_STATE_SAMPLE_RISING_Q_STA_MASK)
1258 #define RDC_ADC_INT_STATE_SAMPLE_RISING_Q_STA_GET(x) (((uint32_t)(x) & RDC_ADC_INT_STATE_SAMPLE_RISING_Q_STA_MASK) >> RDC_ADC_INT_STATE_SAMPLE_RISING_Q_STA_SHIFT)
1259 
1260 /*
1261  * SAMPLE_FALLING_Q_STA (W1C)
1262  *
1263  * q_channel falling edge interrupt status
1264  */
1265 #define RDC_ADC_INT_STATE_SAMPLE_FALLING_Q_STA_MASK (0x40U)
1266 #define RDC_ADC_INT_STATE_SAMPLE_FALLING_Q_STA_SHIFT (6U)
1267 #define RDC_ADC_INT_STATE_SAMPLE_FALLING_Q_STA_SET(x) (((uint32_t)(x) << RDC_ADC_INT_STATE_SAMPLE_FALLING_Q_STA_SHIFT) & RDC_ADC_INT_STATE_SAMPLE_FALLING_Q_STA_MASK)
1268 #define RDC_ADC_INT_STATE_SAMPLE_FALLING_Q_STA_GET(x) (((uint32_t)(x) & RDC_ADC_INT_STATE_SAMPLE_FALLING_Q_STA_MASK) >> RDC_ADC_INT_STATE_SAMPLE_FALLING_Q_STA_SHIFT)
1269 
1270 /*
1271  * ACC_VLD_I_OVH_STA (W1C)
1272  *
1273  * i_channel accumulate overflow interrupt status
1274  */
1275 #define RDC_ADC_INT_STATE_ACC_VLD_I_OVH_STA_MASK (0x20U)
1276 #define RDC_ADC_INT_STATE_ACC_VLD_I_OVH_STA_SHIFT (5U)
1277 #define RDC_ADC_INT_STATE_ACC_VLD_I_OVH_STA_SET(x) (((uint32_t)(x) << RDC_ADC_INT_STATE_ACC_VLD_I_OVH_STA_SHIFT) & RDC_ADC_INT_STATE_ACC_VLD_I_OVH_STA_MASK)
1278 #define RDC_ADC_INT_STATE_ACC_VLD_I_OVH_STA_GET(x) (((uint32_t)(x) & RDC_ADC_INT_STATE_ACC_VLD_I_OVH_STA_MASK) >> RDC_ADC_INT_STATE_ACC_VLD_I_OVH_STA_SHIFT)
1279 
1280 /*
1281  * ACC_VLD_Q_OVH_STA (W1C)
1282  *
1283  * q_channel accumulate overflow interrupt status
1284  */
1285 #define RDC_ADC_INT_STATE_ACC_VLD_Q_OVH_STA_MASK (0x10U)
1286 #define RDC_ADC_INT_STATE_ACC_VLD_Q_OVH_STA_SHIFT (4U)
1287 #define RDC_ADC_INT_STATE_ACC_VLD_Q_OVH_STA_SET(x) (((uint32_t)(x) << RDC_ADC_INT_STATE_ACC_VLD_Q_OVH_STA_SHIFT) & RDC_ADC_INT_STATE_ACC_VLD_Q_OVH_STA_MASK)
1288 #define RDC_ADC_INT_STATE_ACC_VLD_Q_OVH_STA_GET(x) (((uint32_t)(x) & RDC_ADC_INT_STATE_ACC_VLD_Q_OVH_STA_MASK) >> RDC_ADC_INT_STATE_ACC_VLD_Q_OVH_STA_SHIFT)
1289 
1290 /*
1291  * ACC_VLD_I_OVL_STA (W1C)
1292  *
1293  * i_channel accumulate underflow interrupt status
1294  */
1295 #define RDC_ADC_INT_STATE_ACC_VLD_I_OVL_STA_MASK (0x8U)
1296 #define RDC_ADC_INT_STATE_ACC_VLD_I_OVL_STA_SHIFT (3U)
1297 #define RDC_ADC_INT_STATE_ACC_VLD_I_OVL_STA_SET(x) (((uint32_t)(x) << RDC_ADC_INT_STATE_ACC_VLD_I_OVL_STA_SHIFT) & RDC_ADC_INT_STATE_ACC_VLD_I_OVL_STA_MASK)
1298 #define RDC_ADC_INT_STATE_ACC_VLD_I_OVL_STA_GET(x) (((uint32_t)(x) & RDC_ADC_INT_STATE_ACC_VLD_I_OVL_STA_MASK) >> RDC_ADC_INT_STATE_ACC_VLD_I_OVL_STA_SHIFT)
1299 
1300 /*
1301  * ACC_VLD_Q_OVL_STA (W1C)
1302  *
1303  * q_channel accumulate underflow interrupt status
1304  */
1305 #define RDC_ADC_INT_STATE_ACC_VLD_Q_OVL_STA_MASK (0x4U)
1306 #define RDC_ADC_INT_STATE_ACC_VLD_Q_OVL_STA_SHIFT (2U)
1307 #define RDC_ADC_INT_STATE_ACC_VLD_Q_OVL_STA_SET(x) (((uint32_t)(x) << RDC_ADC_INT_STATE_ACC_VLD_Q_OVL_STA_SHIFT) & RDC_ADC_INT_STATE_ACC_VLD_Q_OVL_STA_MASK)
1308 #define RDC_ADC_INT_STATE_ACC_VLD_Q_OVL_STA_GET(x) (((uint32_t)(x) & RDC_ADC_INT_STATE_ACC_VLD_Q_OVL_STA_MASK) >> RDC_ADC_INT_STATE_ACC_VLD_Q_OVL_STA_SHIFT)
1309 
1310 /*
1311  * ACC_AMP_OVH_STA (W1C)
1312  *
1313  * accumulate ample overflow interrupt status
1314  */
1315 #define RDC_ADC_INT_STATE_ACC_AMP_OVH_STA_MASK (0x2U)
1316 #define RDC_ADC_INT_STATE_ACC_AMP_OVH_STA_SHIFT (1U)
1317 #define RDC_ADC_INT_STATE_ACC_AMP_OVH_STA_SET(x) (((uint32_t)(x) << RDC_ADC_INT_STATE_ACC_AMP_OVH_STA_SHIFT) & RDC_ADC_INT_STATE_ACC_AMP_OVH_STA_MASK)
1318 #define RDC_ADC_INT_STATE_ACC_AMP_OVH_STA_GET(x) (((uint32_t)(x) & RDC_ADC_INT_STATE_ACC_AMP_OVH_STA_MASK) >> RDC_ADC_INT_STATE_ACC_AMP_OVH_STA_SHIFT)
1319 
1320 /*
1321  * ACC_AMP_OVL_STA (W1C)
1322  *
1323  * accumulate ample underflow interrupt status
1324  */
1325 #define RDC_ADC_INT_STATE_ACC_AMP_OVL_STA_MASK (0x1U)
1326 #define RDC_ADC_INT_STATE_ACC_AMP_OVL_STA_SHIFT (0U)
1327 #define RDC_ADC_INT_STATE_ACC_AMP_OVL_STA_SET(x) (((uint32_t)(x) << RDC_ADC_INT_STATE_ACC_AMP_OVL_STA_SHIFT) & RDC_ADC_INT_STATE_ACC_AMP_OVL_STA_MASK)
1328 #define RDC_ADC_INT_STATE_ACC_AMP_OVL_STA_GET(x) (((uint32_t)(x) & RDC_ADC_INT_STATE_ACC_AMP_OVL_STA_MASK) >> RDC_ADC_INT_STATE_ACC_AMP_OVL_STA_SHIFT)
1329 
1330 
1331 
1332 
1333 #endif /* HPM_RDC_H */
1334