HPM SDK
HPMicro Software Development Kit
hpm_trgm_regs.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2021-2024 HPMicro
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  *
6  */
7 
8 
9 #ifndef HPM_TRGM_H
10 #define HPM_TRGM_H
11 
12 typedef struct {
13  __RW uint32_t FILTCFG[28]; /* 0x0 - 0x6C: Filter configure register */
14  __R uint8_t RESERVED0[144]; /* 0x70 - 0xFF: Reserved */
15  __RW uint32_t TRGOCFG[137]; /* 0x100 - 0x320: Trigger manager output configure register */
16  __R uint8_t RESERVED1[220]; /* 0x324 - 0x3FF: Reserved */
17  __RW uint32_t DMACFG[8]; /* 0x400 - 0x41C: DMA request configure register */
18  __R uint8_t RESERVED2[224]; /* 0x420 - 0x4FF: Reserved */
19  __RW uint32_t GCR; /* 0x500: General Control Register */
20  __R uint8_t RESERVED3[12]; /* 0x504 - 0x50F: Reserved */
21  __RW uint32_t ADC_MATRIX_SEL; /* 0x510: adc matrix select register */
22  __RW uint32_t DAC_MATRIX_SEL; /* 0x514: dac matrix select register */
23  __RW uint32_t POS_MATRIX_SEL0; /* 0x518: position matrix select register0 */
24  __RW uint32_t POS_MATRIX_SEL1; /* 0x51C: position matrix select register1 */
25  __R uint8_t RESERVED4[224]; /* 0x520 - 0x5FF: Reserved */
26  __R uint32_t TRGM_IN[4]; /* 0x600 - 0x60C: trigmux input read register0 */
27  __R uint8_t RESERVED5[16]; /* 0x610 - 0x61F: Reserved */
28  __R uint32_t TRGM_OUT[5]; /* 0x620 - 0x630: trigmux output read register0 */
29 } TRGM_Type;
30 
31 
32 /* Bitfield definition for register array: FILTCFG */
33 /*
34  * OUTINV (RW)
35  *
36  * 1- Filter will invert the output
37  * 0- Filter will not invert the output
38  */
39 #define TRGM_FILTCFG_OUTINV_MASK (0x10000UL)
40 #define TRGM_FILTCFG_OUTINV_SHIFT (16U)
41 #define TRGM_FILTCFG_OUTINV_SET(x) (((uint32_t)(x) << TRGM_FILTCFG_OUTINV_SHIFT) & TRGM_FILTCFG_OUTINV_MASK)
42 #define TRGM_FILTCFG_OUTINV_GET(x) (((uint32_t)(x) & TRGM_FILTCFG_OUTINV_MASK) >> TRGM_FILTCFG_OUTINV_SHIFT)
43 
44 /*
45  * MODE (RW)
46  *
47  * This bitfields defines the filter mode
48  * 000-bypass;
49  * 100-rapid change mode;
50  * 101-delay filter mode;
51  * 110-stalbe low mode;
52  * 111-stable high mode
53  */
54 #define TRGM_FILTCFG_MODE_MASK (0xE000U)
55 #define TRGM_FILTCFG_MODE_SHIFT (13U)
56 #define TRGM_FILTCFG_MODE_SET(x) (((uint32_t)(x) << TRGM_FILTCFG_MODE_SHIFT) & TRGM_FILTCFG_MODE_MASK)
57 #define TRGM_FILTCFG_MODE_GET(x) (((uint32_t)(x) & TRGM_FILTCFG_MODE_MASK) >> TRGM_FILTCFG_MODE_SHIFT)
58 
59 /*
60  * SYNCEN (RW)
61  *
62  * set to enable sychronization input signal with TRGM clock
63  */
64 #define TRGM_FILTCFG_SYNCEN_MASK (0x1000U)
65 #define TRGM_FILTCFG_SYNCEN_SHIFT (12U)
66 #define TRGM_FILTCFG_SYNCEN_SET(x) (((uint32_t)(x) << TRGM_FILTCFG_SYNCEN_SHIFT) & TRGM_FILTCFG_SYNCEN_MASK)
67 #define TRGM_FILTCFG_SYNCEN_GET(x) (((uint32_t)(x) & TRGM_FILTCFG_SYNCEN_MASK) >> TRGM_FILTCFG_SYNCEN_SHIFT)
68 
69 /*
70  * FILTLEN_SHIFT (RW)
71  *
72  */
73 #define TRGM_FILTCFG_FILTLEN_SHIFT_MASK (0xE00U)
74 #define TRGM_FILTCFG_FILTLEN_SHIFT_SHIFT (9U)
75 #define TRGM_FILTCFG_FILTLEN_SHIFT_SET(x) (((uint32_t)(x) << TRGM_FILTCFG_FILTLEN_SHIFT_SHIFT) & TRGM_FILTCFG_FILTLEN_SHIFT_MASK)
76 #define TRGM_FILTCFG_FILTLEN_SHIFT_GET(x) (((uint32_t)(x) & TRGM_FILTCFG_FILTLEN_SHIFT_MASK) >> TRGM_FILTCFG_FILTLEN_SHIFT_SHIFT)
77 
78 /*
79  * FILTLEN_BASE (RW)
80  *
81  * This bitfields defines the filter counter length.
82  */
83 #define TRGM_FILTCFG_FILTLEN_BASE_MASK (0x1FFU)
84 #define TRGM_FILTCFG_FILTLEN_BASE_SHIFT (0U)
85 #define TRGM_FILTCFG_FILTLEN_BASE_SET(x) (((uint32_t)(x) << TRGM_FILTCFG_FILTLEN_BASE_SHIFT) & TRGM_FILTCFG_FILTLEN_BASE_MASK)
86 #define TRGM_FILTCFG_FILTLEN_BASE_GET(x) (((uint32_t)(x) & TRGM_FILTCFG_FILTLEN_BASE_MASK) >> TRGM_FILTCFG_FILTLEN_BASE_SHIFT)
87 
88 /* Bitfield definition for register array: TRGOCFG */
89 /*
90  * OUTINV (RW)
91  *
92  * 1- Invert the output
93  */
94 #define TRGM_TRGOCFG_OUTINV_MASK (0x800U)
95 #define TRGM_TRGOCFG_OUTINV_SHIFT (11U)
96 #define TRGM_TRGOCFG_OUTINV_SET(x) (((uint32_t)(x) << TRGM_TRGOCFG_OUTINV_SHIFT) & TRGM_TRGOCFG_OUTINV_MASK)
97 #define TRGM_TRGOCFG_OUTINV_GET(x) (((uint32_t)(x) & TRGM_TRGOCFG_OUTINV_MASK) >> TRGM_TRGOCFG_OUTINV_SHIFT)
98 
99 /*
100  * FEDG2PEN (RW)
101  *
102  * 1- The selected input signal falling edge will be convert to an pulse on output.
103  */
104 #define TRGM_TRGOCFG_FEDG2PEN_MASK (0x400U)
105 #define TRGM_TRGOCFG_FEDG2PEN_SHIFT (10U)
106 #define TRGM_TRGOCFG_FEDG2PEN_SET(x) (((uint32_t)(x) << TRGM_TRGOCFG_FEDG2PEN_SHIFT) & TRGM_TRGOCFG_FEDG2PEN_MASK)
107 #define TRGM_TRGOCFG_FEDG2PEN_GET(x) (((uint32_t)(x) & TRGM_TRGOCFG_FEDG2PEN_MASK) >> TRGM_TRGOCFG_FEDG2PEN_SHIFT)
108 
109 /*
110  * REDG2PEN (RW)
111  *
112  * 1- The selected input signal rising edge will be convert to an pulse on output.
113  */
114 #define TRGM_TRGOCFG_REDG2PEN_MASK (0x200U)
115 #define TRGM_TRGOCFG_REDG2PEN_SHIFT (9U)
116 #define TRGM_TRGOCFG_REDG2PEN_SET(x) (((uint32_t)(x) << TRGM_TRGOCFG_REDG2PEN_SHIFT) & TRGM_TRGOCFG_REDG2PEN_MASK)
117 #define TRGM_TRGOCFG_REDG2PEN_GET(x) (((uint32_t)(x) & TRGM_TRGOCFG_REDG2PEN_MASK) >> TRGM_TRGOCFG_REDG2PEN_SHIFT)
118 
119 /*
120  * TRIGOSEL (RW)
121  *
122  * This bitfield selects one of the TRGM inputs as output.
123  */
124 #define TRGM_TRGOCFG_TRIGOSEL_MASK (0x7FU)
125 #define TRGM_TRGOCFG_TRIGOSEL_SHIFT (0U)
126 #define TRGM_TRGOCFG_TRIGOSEL_SET(x) (((uint32_t)(x) << TRGM_TRGOCFG_TRIGOSEL_SHIFT) & TRGM_TRGOCFG_TRIGOSEL_MASK)
127 #define TRGM_TRGOCFG_TRIGOSEL_GET(x) (((uint32_t)(x) & TRGM_TRGOCFG_TRIGOSEL_MASK) >> TRGM_TRGOCFG_TRIGOSEL_SHIFT)
128 
129 /* Bitfield definition for register array: DMACFG */
130 /*
131  * DMAMUX_EN (RW)
132  *
133  */
134 #define TRGM_DMACFG_DMAMUX_EN_MASK (0x80000000UL)
135 #define TRGM_DMACFG_DMAMUX_EN_SHIFT (31U)
136 #define TRGM_DMACFG_DMAMUX_EN_SET(x) (((uint32_t)(x) << TRGM_DMACFG_DMAMUX_EN_SHIFT) & TRGM_DMACFG_DMAMUX_EN_MASK)
137 #define TRGM_DMACFG_DMAMUX_EN_GET(x) (((uint32_t)(x) & TRGM_DMACFG_DMAMUX_EN_MASK) >> TRGM_DMACFG_DMAMUX_EN_SHIFT)
138 
139 /*
140  * DMASRCSEL (RW)
141  *
142  * This field selects one of the DMA requests as the DMA request output.
143  */
144 #define TRGM_DMACFG_DMASRCSEL_MASK (0x3FU)
145 #define TRGM_DMACFG_DMASRCSEL_SHIFT (0U)
146 #define TRGM_DMACFG_DMASRCSEL_SET(x) (((uint32_t)(x) << TRGM_DMACFG_DMASRCSEL_SHIFT) & TRGM_DMACFG_DMASRCSEL_MASK)
147 #define TRGM_DMACFG_DMASRCSEL_GET(x) (((uint32_t)(x) & TRGM_DMACFG_DMASRCSEL_MASK) >> TRGM_DMACFG_DMASRCSEL_SHIFT)
148 
149 /* Bitfield definition for register: GCR */
150 /*
151  * TRGOPEN (RW)
152  *
153  * The bitfield enable the TRGM outputs.
154  */
155 #define TRGM_GCR_TRGOPEN_MASK (0xFFU)
156 #define TRGM_GCR_TRGOPEN_SHIFT (0U)
157 #define TRGM_GCR_TRGOPEN_SET(x) (((uint32_t)(x) << TRGM_GCR_TRGOPEN_SHIFT) & TRGM_GCR_TRGOPEN_MASK)
158 #define TRGM_GCR_TRGOPEN_GET(x) (((uint32_t)(x) & TRGM_GCR_TRGOPEN_MASK) >> TRGM_GCR_TRGOPEN_SHIFT)
159 
160 /* Bitfield definition for register: ADC_MATRIX_SEL */
161 /*
162  * QEI1_ADC1_SEL (RW)
163  *
164  * 0-adc0; 1-adc1; 2-rdc_adc0; 3-rdc_adc1;
165  * bit7 is used to invert adc_value;
166  * others reserved
167  */
168 #define TRGM_ADC_MATRIX_SEL_QEI1_ADC1_SEL_MASK (0xFF000000UL)
169 #define TRGM_ADC_MATRIX_SEL_QEI1_ADC1_SEL_SHIFT (24U)
170 #define TRGM_ADC_MATRIX_SEL_QEI1_ADC1_SEL_SET(x) (((uint32_t)(x) << TRGM_ADC_MATRIX_SEL_QEI1_ADC1_SEL_SHIFT) & TRGM_ADC_MATRIX_SEL_QEI1_ADC1_SEL_MASK)
171 #define TRGM_ADC_MATRIX_SEL_QEI1_ADC1_SEL_GET(x) (((uint32_t)(x) & TRGM_ADC_MATRIX_SEL_QEI1_ADC1_SEL_MASK) >> TRGM_ADC_MATRIX_SEL_QEI1_ADC1_SEL_SHIFT)
172 
173 /*
174  * QEI1_ADC0_SEL (RW)
175  *
176  */
177 #define TRGM_ADC_MATRIX_SEL_QEI1_ADC0_SEL_MASK (0xFF0000UL)
178 #define TRGM_ADC_MATRIX_SEL_QEI1_ADC0_SEL_SHIFT (16U)
179 #define TRGM_ADC_MATRIX_SEL_QEI1_ADC0_SEL_SET(x) (((uint32_t)(x) << TRGM_ADC_MATRIX_SEL_QEI1_ADC0_SEL_SHIFT) & TRGM_ADC_MATRIX_SEL_QEI1_ADC0_SEL_MASK)
180 #define TRGM_ADC_MATRIX_SEL_QEI1_ADC0_SEL_GET(x) (((uint32_t)(x) & TRGM_ADC_MATRIX_SEL_QEI1_ADC0_SEL_MASK) >> TRGM_ADC_MATRIX_SEL_QEI1_ADC0_SEL_SHIFT)
181 
182 /*
183  * QEI0_ADC1_SEL (RW)
184  *
185  */
186 #define TRGM_ADC_MATRIX_SEL_QEI0_ADC1_SEL_MASK (0xFF00U)
187 #define TRGM_ADC_MATRIX_SEL_QEI0_ADC1_SEL_SHIFT (8U)
188 #define TRGM_ADC_MATRIX_SEL_QEI0_ADC1_SEL_SET(x) (((uint32_t)(x) << TRGM_ADC_MATRIX_SEL_QEI0_ADC1_SEL_SHIFT) & TRGM_ADC_MATRIX_SEL_QEI0_ADC1_SEL_MASK)
189 #define TRGM_ADC_MATRIX_SEL_QEI0_ADC1_SEL_GET(x) (((uint32_t)(x) & TRGM_ADC_MATRIX_SEL_QEI0_ADC1_SEL_MASK) >> TRGM_ADC_MATRIX_SEL_QEI0_ADC1_SEL_SHIFT)
190 
191 /*
192  * QEI0_ADC0_SEL (RW)
193  *
194  */
195 #define TRGM_ADC_MATRIX_SEL_QEI0_ADC0_SEL_MASK (0xFFU)
196 #define TRGM_ADC_MATRIX_SEL_QEI0_ADC0_SEL_SHIFT (0U)
197 #define TRGM_ADC_MATRIX_SEL_QEI0_ADC0_SEL_SET(x) (((uint32_t)(x) << TRGM_ADC_MATRIX_SEL_QEI0_ADC0_SEL_SHIFT) & TRGM_ADC_MATRIX_SEL_QEI0_ADC0_SEL_MASK)
198 #define TRGM_ADC_MATRIX_SEL_QEI0_ADC0_SEL_GET(x) (((uint32_t)(x) & TRGM_ADC_MATRIX_SEL_QEI0_ADC0_SEL_MASK) >> TRGM_ADC_MATRIX_SEL_QEI0_ADC0_SEL_SHIFT)
199 
200 /* Bitfield definition for register: DAC_MATRIX_SEL */
201 /*
202  * DAC1_DAC_SEL (RW)
203  *
204  * 0-qeo0_dac0; 1-qeo0_dac1; 2-qeo0_dac2;
205  * 3-qeo1_dac0; 4-qeo1_dac1; 5-qeo1_dac2;
206  * 6-rdc_dac0; 7-rdc_dac1;
207  * bit7 is used to invert dac_value;
208  * others reserved
209  */
210 #define TRGM_DAC_MATRIX_SEL_DAC1_DAC_SEL_MASK (0xFF000000UL)
211 #define TRGM_DAC_MATRIX_SEL_DAC1_DAC_SEL_SHIFT (24U)
212 #define TRGM_DAC_MATRIX_SEL_DAC1_DAC_SEL_SET(x) (((uint32_t)(x) << TRGM_DAC_MATRIX_SEL_DAC1_DAC_SEL_SHIFT) & TRGM_DAC_MATRIX_SEL_DAC1_DAC_SEL_MASK)
213 #define TRGM_DAC_MATRIX_SEL_DAC1_DAC_SEL_GET(x) (((uint32_t)(x) & TRGM_DAC_MATRIX_SEL_DAC1_DAC_SEL_MASK) >> TRGM_DAC_MATRIX_SEL_DAC1_DAC_SEL_SHIFT)
214 
215 /*
216  * DAC0_DAC_SEL (RW)
217  *
218  */
219 #define TRGM_DAC_MATRIX_SEL_DAC0_DAC_SEL_MASK (0xFF0000UL)
220 #define TRGM_DAC_MATRIX_SEL_DAC0_DAC_SEL_SHIFT (16U)
221 #define TRGM_DAC_MATRIX_SEL_DAC0_DAC_SEL_SET(x) (((uint32_t)(x) << TRGM_DAC_MATRIX_SEL_DAC0_DAC_SEL_SHIFT) & TRGM_DAC_MATRIX_SEL_DAC0_DAC_SEL_MASK)
222 #define TRGM_DAC_MATRIX_SEL_DAC0_DAC_SEL_GET(x) (((uint32_t)(x) & TRGM_DAC_MATRIX_SEL_DAC0_DAC_SEL_MASK) >> TRGM_DAC_MATRIX_SEL_DAC0_DAC_SEL_SHIFT)
223 
224 /*
225  * ACMP1_DAC_SEL (RW)
226  *
227  */
228 #define TRGM_DAC_MATRIX_SEL_ACMP1_DAC_SEL_MASK (0xFF00U)
229 #define TRGM_DAC_MATRIX_SEL_ACMP1_DAC_SEL_SHIFT (8U)
230 #define TRGM_DAC_MATRIX_SEL_ACMP1_DAC_SEL_SET(x) (((uint32_t)(x) << TRGM_DAC_MATRIX_SEL_ACMP1_DAC_SEL_SHIFT) & TRGM_DAC_MATRIX_SEL_ACMP1_DAC_SEL_MASK)
231 #define TRGM_DAC_MATRIX_SEL_ACMP1_DAC_SEL_GET(x) (((uint32_t)(x) & TRGM_DAC_MATRIX_SEL_ACMP1_DAC_SEL_MASK) >> TRGM_DAC_MATRIX_SEL_ACMP1_DAC_SEL_SHIFT)
232 
233 /*
234  * ACMP0_DAC_SEL (RW)
235  *
236  */
237 #define TRGM_DAC_MATRIX_SEL_ACMP0_DAC_SEL_MASK (0xFFU)
238 #define TRGM_DAC_MATRIX_SEL_ACMP0_DAC_SEL_SHIFT (0U)
239 #define TRGM_DAC_MATRIX_SEL_ACMP0_DAC_SEL_SET(x) (((uint32_t)(x) << TRGM_DAC_MATRIX_SEL_ACMP0_DAC_SEL_SHIFT) & TRGM_DAC_MATRIX_SEL_ACMP0_DAC_SEL_MASK)
240 #define TRGM_DAC_MATRIX_SEL_ACMP0_DAC_SEL_GET(x) (((uint32_t)(x) & TRGM_DAC_MATRIX_SEL_ACMP0_DAC_SEL_MASK) >> TRGM_DAC_MATRIX_SEL_ACMP0_DAC_SEL_SHIFT)
241 
242 /* Bitfield definition for register: POS_MATRIX_SEL0 */
243 /*
244  * MMC1_POSIN_SEL (RW)
245  *
246  * 0-sei_pos_out0; 1-sei_pos_out1;
247  * 2-qei0_pos; 3-qei1_pos;
248  * 4-mmc0_pos_out0; 5-mmc0_pos_out1;
249  * 6-mmc1_pos_out0; 7-mmc1_pos_out1;
250  * bit7 is used to invert position value;
251  * others reserved
252  */
253 #define TRGM_POS_MATRIX_SEL0_MMC1_POSIN_SEL_MASK (0xFF000000UL)
254 #define TRGM_POS_MATRIX_SEL0_MMC1_POSIN_SEL_SHIFT (24U)
255 #define TRGM_POS_MATRIX_SEL0_MMC1_POSIN_SEL_SET(x) (((uint32_t)(x) << TRGM_POS_MATRIX_SEL0_MMC1_POSIN_SEL_SHIFT) & TRGM_POS_MATRIX_SEL0_MMC1_POSIN_SEL_MASK)
256 #define TRGM_POS_MATRIX_SEL0_MMC1_POSIN_SEL_GET(x) (((uint32_t)(x) & TRGM_POS_MATRIX_SEL0_MMC1_POSIN_SEL_MASK) >> TRGM_POS_MATRIX_SEL0_MMC1_POSIN_SEL_SHIFT)
257 
258 /*
259  * MMC0_POSIN_SEL (RW)
260  *
261  */
262 #define TRGM_POS_MATRIX_SEL0_MMC0_POSIN_SEL_MASK (0xFF0000UL)
263 #define TRGM_POS_MATRIX_SEL0_MMC0_POSIN_SEL_SHIFT (16U)
264 #define TRGM_POS_MATRIX_SEL0_MMC0_POSIN_SEL_SET(x) (((uint32_t)(x) << TRGM_POS_MATRIX_SEL0_MMC0_POSIN_SEL_SHIFT) & TRGM_POS_MATRIX_SEL0_MMC0_POSIN_SEL_MASK)
265 #define TRGM_POS_MATRIX_SEL0_MMC0_POSIN_SEL_GET(x) (((uint32_t)(x) & TRGM_POS_MATRIX_SEL0_MMC0_POSIN_SEL_MASK) >> TRGM_POS_MATRIX_SEL0_MMC0_POSIN_SEL_SHIFT)
266 
267 /*
268  * SEI_POSIN1_SEL (RW)
269  *
270  */
271 #define TRGM_POS_MATRIX_SEL0_SEI_POSIN1_SEL_MASK (0xFF00U)
272 #define TRGM_POS_MATRIX_SEL0_SEI_POSIN1_SEL_SHIFT (8U)
273 #define TRGM_POS_MATRIX_SEL0_SEI_POSIN1_SEL_SET(x) (((uint32_t)(x) << TRGM_POS_MATRIX_SEL0_SEI_POSIN1_SEL_SHIFT) & TRGM_POS_MATRIX_SEL0_SEI_POSIN1_SEL_MASK)
274 #define TRGM_POS_MATRIX_SEL0_SEI_POSIN1_SEL_GET(x) (((uint32_t)(x) & TRGM_POS_MATRIX_SEL0_SEI_POSIN1_SEL_MASK) >> TRGM_POS_MATRIX_SEL0_SEI_POSIN1_SEL_SHIFT)
275 
276 /*
277  * SEI_POSIN0_SEL (RW)
278  *
279  */
280 #define TRGM_POS_MATRIX_SEL0_SEI_POSIN0_SEL_MASK (0xFFU)
281 #define TRGM_POS_MATRIX_SEL0_SEI_POSIN0_SEL_SHIFT (0U)
282 #define TRGM_POS_MATRIX_SEL0_SEI_POSIN0_SEL_SET(x) (((uint32_t)(x) << TRGM_POS_MATRIX_SEL0_SEI_POSIN0_SEL_SHIFT) & TRGM_POS_MATRIX_SEL0_SEI_POSIN0_SEL_MASK)
283 #define TRGM_POS_MATRIX_SEL0_SEI_POSIN0_SEL_GET(x) (((uint32_t)(x) & TRGM_POS_MATRIX_SEL0_SEI_POSIN0_SEL_MASK) >> TRGM_POS_MATRIX_SEL0_SEI_POSIN0_SEL_SHIFT)
284 
285 /* Bitfield definition for register: POS_MATRIX_SEL1 */
286 /*
287  * QEO1_POS_SEL (RW)
288  *
289  */
290 #define TRGM_POS_MATRIX_SEL1_QEO1_POS_SEL_MASK (0xFF00U)
291 #define TRGM_POS_MATRIX_SEL1_QEO1_POS_SEL_SHIFT (8U)
292 #define TRGM_POS_MATRIX_SEL1_QEO1_POS_SEL_SET(x) (((uint32_t)(x) << TRGM_POS_MATRIX_SEL1_QEO1_POS_SEL_SHIFT) & TRGM_POS_MATRIX_SEL1_QEO1_POS_SEL_MASK)
293 #define TRGM_POS_MATRIX_SEL1_QEO1_POS_SEL_GET(x) (((uint32_t)(x) & TRGM_POS_MATRIX_SEL1_QEO1_POS_SEL_MASK) >> TRGM_POS_MATRIX_SEL1_QEO1_POS_SEL_SHIFT)
294 
295 /*
296  * QEO0_POS_SEL (RW)
297  *
298  */
299 #define TRGM_POS_MATRIX_SEL1_QEO0_POS_SEL_MASK (0xFFU)
300 #define TRGM_POS_MATRIX_SEL1_QEO0_POS_SEL_SHIFT (0U)
301 #define TRGM_POS_MATRIX_SEL1_QEO0_POS_SEL_SET(x) (((uint32_t)(x) << TRGM_POS_MATRIX_SEL1_QEO0_POS_SEL_SHIFT) & TRGM_POS_MATRIX_SEL1_QEO0_POS_SEL_MASK)
302 #define TRGM_POS_MATRIX_SEL1_QEO0_POS_SEL_GET(x) (((uint32_t)(x) & TRGM_POS_MATRIX_SEL1_QEO0_POS_SEL_MASK) >> TRGM_POS_MATRIX_SEL1_QEO0_POS_SEL_SHIFT)
303 
304 /* Bitfield definition for register array: TRGM_IN */
305 /*
306  * TRGM_IN (RO)
307  *
308  * mmc1_trig_out[1:0], mmc0_trig_out[1:0],sync_pulse[3:0],moto_gpio_in_sync[7:0],//31:16
309  * gtmr3_to_motor_sync[1:0],gtmr2_to_motor_sync[1:0],gtmr1_to_motor_sync[1:0],gtmr0_to_motor_sync[1:0], //15:8
310  * acmp_out_sync[1:0],can2mot_event_sync[1:0],usb0_sof_tog_sync,pwm_debug,1'b1,1'b0 //7:0
311  */
312 #define TRGM_TRGM_IN_TRGM_IN_MASK (0xFFFFFFFFUL)
313 #define TRGM_TRGM_IN_TRGM_IN_SHIFT (0U)
314 #define TRGM_TRGM_IN_TRGM_IN_GET(x) (((uint32_t)(x) & TRGM_TRGM_IN_TRGM_IN_MASK) >> TRGM_TRGM_IN_TRGM_IN_SHIFT)
315 
316 /* Bitfield definition for register array: TRGM_OUT */
317 /*
318  * TRGM_OUT (RO)
319  *
320  * motor_to_opamp0[7:0] = trig_mux_out[7:0];
321  * motor_to_opamp1[7:0] = trig_mux_out[15:8];
322  * motor_to_gtmr0_capt[1:0] = trig_mux_out[17:16];
323  * motor_to_gtmr0_sync = trig_mux_out[18];
324  * motor_to_gtmr1_capt[1:0] = trig_mux_out[20:19];
325  * motor_to_gtmr1_sync = trig_mux_out[21];
326  * motor_to_gtmr2_capt[1:0] = trig_mux_out[23:22];
327  * motor_to_gtmr2_sync = trig_mux_out[24];
328  * motor_to_gtmr3_capt[1:0] = trig_mux_out[26:25];
329  * motor_to_gtmr3_sync = trig_mux_out[27];
330  * acmp_window[1:0] = trig_mux_out[29:28];
331  * dac0_buf_trigger = trig_mux_out[30];
332  * dac1_buf_trigger = trig_mux_out[31];
333  * dac0_step_trigger[3:0] = {trig_mux_out[24:22],trig_mux_out[30]};//use same buf_trig, and gtmr2
334  * dac1_step_trigger[3:0] = {trig_mux_out[27:25],trig_mux_out[31]}; //use same buf_trig, and gtmr3
335  */
336 #define TRGM_TRGM_OUT_TRGM_OUT_MASK (0xFFFFFFFFUL)
337 #define TRGM_TRGM_OUT_TRGM_OUT_SHIFT (0U)
338 #define TRGM_TRGM_OUT_TRGM_OUT_GET(x) (((uint32_t)(x) & TRGM_TRGM_OUT_TRGM_OUT_MASK) >> TRGM_TRGM_OUT_TRGM_OUT_SHIFT)
339 
340 
341 
342 /* FILTCFG register group index macro definition */
343 #define TRGM_FILTCFG_PWM0_IN0 (0UL)
344 #define TRGM_FILTCFG_PWM0_IN1 (1UL)
345 #define TRGM_FILTCFG_PWM0_IN2 (2UL)
346 #define TRGM_FILTCFG_PWM0_IN3 (3UL)
347 #define TRGM_FILTCFG_PWM0_IN4 (4UL)
348 #define TRGM_FILTCFG_PWM0_IN5 (5UL)
349 #define TRGM_FILTCFG_PWM0_IN6 (6UL)
350 #define TRGM_FILTCFG_PWM0_IN7 (7UL)
351 #define TRGM_FILTCFG_PWM1_IN0 (8UL)
352 #define TRGM_FILTCFG_PWM1_IN1 (9UL)
353 #define TRGM_FILTCFG_PWM1_IN2 (10UL)
354 #define TRGM_FILTCFG_PWM1_IN3 (11UL)
355 #define TRGM_FILTCFG_PWM1_IN4 (12UL)
356 #define TRGM_FILTCFG_PWM1_IN5 (13UL)
357 #define TRGM_FILTCFG_PWM1_IN6 (14UL)
358 #define TRGM_FILTCFG_PWM1_IN7 (15UL)
359 #define TRGM_FILTCFG_MOTO_GPIO_IN0 (16UL)
360 #define TRGM_FILTCFG_MOTO_GPIO_IN1 (17UL)
361 #define TRGM_FILTCFG_MOTO_GPIO_IN2 (18UL)
362 #define TRGM_FILTCFG_MOTO_GPIO_IN3 (19UL)
363 #define TRGM_FILTCFG_MOTO_GPIO_IN4 (20UL)
364 #define TRGM_FILTCFG_MOTO_GPIO_IN5 (21UL)
365 #define TRGM_FILTCFG_MOTO_GPIO_IN6 (22UL)
366 #define TRGM_FILTCFG_MOTO_GPIO_IN7 (23UL)
367 #define TRGM_FILTCFG_PWM0_FAULT0 (24UL)
368 #define TRGM_FILTCFG_PWM0_FAULT1 (25UL)
369 #define TRGM_FILTCFG_PWM1_FAULT0 (26UL)
370 #define TRGM_FILTCFG_PWM1_FAULT1 (27UL)
371 
372 /* TRGOCFG register group index macro definition */
373 #define TRGM_TRGOCFG_MOT2OPAMP0_0 (0UL)
374 #define TRGM_TRGOCFG_MOT2OPAMP0_1 (1UL)
375 #define TRGM_TRGOCFG_MOT2OPAMP0_2 (2UL)
376 #define TRGM_TRGOCFG_MOT2OPAMP0_3 (3UL)
377 #define TRGM_TRGOCFG_MOT2OPAMP0_4 (4UL)
378 #define TRGM_TRGOCFG_MOT2OPAMP0_5 (5UL)
379 #define TRGM_TRGOCFG_MOT2OPAMP0_6 (6UL)
380 #define TRGM_TRGOCFG_MOT2OPAMP0_7 (7UL)
381 #define TRGM_TRGOCFG_MOT2OPAMP1_0 (8UL)
382 #define TRGM_TRGOCFG_MOT2OPAMP1_1 (9UL)
383 #define TRGM_TRGOCFG_MOT2OPAMP1_2 (10UL)
384 #define TRGM_TRGOCFG_MOT2OPAMP1_3 (11UL)
385 #define TRGM_TRGOCFG_MOT2OPAMP1_4 (12UL)
386 #define TRGM_TRGOCFG_MOT2OPAMP1_5 (13UL)
387 #define TRGM_TRGOCFG_MOT2OPAMP1_6 (14UL)
388 #define TRGM_TRGOCFG_MOT2OPAMP1_7 (15UL)
389 #define TRGM_TRGOCFG_GPTMR0_IN2 (16UL)
390 #define TRGM_TRGOCFG_GPTMR0_IN3 (17UL)
391 #define TRGM_TRGOCFG_GPTMR0_SYNCI (18UL)
392 #define TRGM_TRGOCFG_GPTMR1_IN2 (19UL)
393 #define TRGM_TRGOCFG_GPTMR1_IN3 (20UL)
394 #define TRGM_TRGOCFG_GPTMR1_SYNCI (21UL)
395 #define TRGM_TRGOCFG_GPTMR2_IN2 (22UL)
396 #define TRGM_TRGOCFG_GPTMR2_IN3 (23UL)
397 #define TRGM_TRGOCFG_GPTMR2_SYNCI (24UL)
398 #define TRGM_TRGOCFG_GPTMR3_IN2 (25UL)
399 #define TRGM_TRGOCFG_GPTMR3_IN3 (26UL)
400 #define TRGM_TRGOCFG_GPTMR3_SYNCI (27UL)
401 #define TRGM_TRGOCFG_CMP0_WIN (28UL)
402 #define TRGM_TRGOCFG_CMP1_WIN (29UL)
403 #define TRGM_TRGOCFG_DAC0_BUFTRG (30UL)
404 #define TRGM_TRGOCFG_DAC1_BUFTRG (31UL)
405 #define TRGM_TRGOCFG_ADC0_STRGI (32UL)
406 #define TRGM_TRGOCFG_ADC1_STRGI (33UL)
407 #define TRGM_TRGOCFG_ADCX_PTRGI0A (34UL)
408 #define TRGM_TRGOCFG_ADCX_PTRGI0B (35UL)
409 #define TRGM_TRGOCFG_ADCX_PTRGI0C (36UL)
410 #define TRGM_TRGOCFG_ADCX_PTRGI1A (37UL)
411 #define TRGM_TRGOCFG_ADCX_PTRGI1B (38UL)
412 #define TRGM_TRGOCFG_ADCX_PTRGI1C (39UL)
413 #define TRGM_TRGOCFG_ADCX_PTRGI2A (40UL)
414 #define TRGM_TRGOCFG_ADCX_PTRGI2B (41UL)
415 #define TRGM_TRGOCFG_ADCX_PTRGI2C (42UL)
416 #define TRGM_TRGOCFG_ADCX_PTRGI3A (43UL)
417 #define TRGM_TRGOCFG_ADCX_PTRGI3B (44UL)
418 #define TRGM_TRGOCFG_ADCX_PTRGI3C (45UL)
419 #define TRGM_TRGOCFG_CAN_PTPC0_CAP (46UL)
420 #define TRGM_TRGOCFG_CAN_PTPC1_CAP (47UL)
421 #define TRGM_TRGOCFG_QEO0_TRIG_IN0 (48UL)
422 #define TRGM_TRGOCFG_QEO0_TRIG_IN1 (49UL)
423 #define TRGM_TRGOCFG_QEO1_TRIG_IN0 (50UL)
424 #define TRGM_TRGOCFG_QEO1_TRIG_IN1 (51UL)
425 #define TRGM_TRGOCFG_SEI_TRIG_IN0 (52UL)
426 #define TRGM_TRGOCFG_SEI_TRIG_IN1 (53UL)
427 #define TRGM_TRGOCFG_SEI_TRIG_IN2 (54UL)
428 #define TRGM_TRGOCFG_SEI_TRIG_IN3 (55UL)
429 #define TRGM_TRGOCFG_SEI_TRIG_IN4 (56UL)
430 #define TRGM_TRGOCFG_SEI_TRIG_IN5 (57UL)
431 #define TRGM_TRGOCFG_SEI_TRIG_IN6 (58UL)
432 #define TRGM_TRGOCFG_SEI_TRIG_IN7 (59UL)
433 #define TRGM_TRGOCFG_MMC0_TRIG_IN0 (60UL)
434 #define TRGM_TRGOCFG_MMC0_TRIG_IN1 (61UL)
435 #define TRGM_TRGOCFG_MMC1_TRIG_IN0 (62UL)
436 #define TRGM_TRGOCFG_MMC1_TRIG_IN1 (63UL)
437 #define TRGM_TRGOCFG_PLB_IN_00 (64UL)
438 #define TRGM_TRGOCFG_PLB_IN_01 (65UL)
439 #define TRGM_TRGOCFG_PLB_IN_02 (66UL)
440 #define TRGM_TRGOCFG_PLB_IN_03 (67UL)
441 #define TRGM_TRGOCFG_PLB_IN_04 (68UL)
442 #define TRGM_TRGOCFG_PLB_IN_05 (69UL)
443 #define TRGM_TRGOCFG_PLB_IN_06 (70UL)
444 #define TRGM_TRGOCFG_PLB_IN_07 (71UL)
445 #define TRGM_TRGOCFG_PLB_IN_08 (72UL)
446 #define TRGM_TRGOCFG_PLB_IN_09 (73UL)
447 #define TRGM_TRGOCFG_PLB_IN_10 (74UL)
448 #define TRGM_TRGOCFG_PLB_IN_11 (75UL)
449 #define TRGM_TRGOCFG_PLB_IN_12 (76UL)
450 #define TRGM_TRGOCFG_PLB_IN_13 (77UL)
451 #define TRGM_TRGOCFG_PLB_IN_14 (78UL)
452 #define TRGM_TRGOCFG_PLB_IN_15 (79UL)
453 #define TRGM_TRGOCFG_PLB_IN_16 (80UL)
454 #define TRGM_TRGOCFG_PLB_IN_17 (81UL)
455 #define TRGM_TRGOCFG_PLB_IN_18 (82UL)
456 #define TRGM_TRGOCFG_PLB_IN_19 (83UL)
457 #define TRGM_TRGOCFG_PLB_IN_20 (84UL)
458 #define TRGM_TRGOCFG_PLB_IN_21 (85UL)
459 #define TRGM_TRGOCFG_PLB_IN_22 (86UL)
460 #define TRGM_TRGOCFG_PLB_IN_23 (87UL)
461 #define TRGM_TRGOCFG_PLB_IN_24 (88UL)
462 #define TRGM_TRGOCFG_PLB_IN_25 (89UL)
463 #define TRGM_TRGOCFG_PLB_IN_26 (90UL)
464 #define TRGM_TRGOCFG_PLB_IN_27 (91UL)
465 #define TRGM_TRGOCFG_PLB_IN_28 (92UL)
466 #define TRGM_TRGOCFG_PLB_IN_29 (93UL)
467 #define TRGM_TRGOCFG_PLB_IN_30 (94UL)
468 #define TRGM_TRGOCFG_PLB_IN_31 (95UL)
469 #define TRGM_TRGOCFG_MOT_GPIO0 (96UL)
470 #define TRGM_TRGOCFG_MOT_GPIO1 (97UL)
471 #define TRGM_TRGOCFG_MOT_GPIO2 (98UL)
472 #define TRGM_TRGOCFG_MOT_GPIO3 (99UL)
473 #define TRGM_TRGOCFG_MOT_GPIO4 (100UL)
474 #define TRGM_TRGOCFG_MOT_GPIO5 (101UL)
475 #define TRGM_TRGOCFG_MOT_GPIO6 (102UL)
476 #define TRGM_TRGOCFG_MOT_GPIO7 (103UL)
477 #define TRGM_TRGOCFG_PWM_IN8 (104UL)
478 #define TRGM_TRGOCFG_PWM_IN9 (105UL)
479 #define TRGM_TRGOCFG_PWM_IN10 (106UL)
480 #define TRGM_TRGOCFG_PWM_IN11 (107UL)
481 #define TRGM_TRGOCFG_PWM_IN12 (108UL)
482 #define TRGM_TRGOCFG_PWM_IN13 (109UL)
483 #define TRGM_TRGOCFG_PWM_IN14 (110UL)
484 #define TRGM_TRGOCFG_PWM_IN15 (111UL)
485 #define TRGM_TRGOCFG_PWM0_FRCI (112UL)
486 #define TRGM_TRGOCFG_PWM0_FRCSYNCI (113UL)
487 #define TRGM_TRGOCFG_PWM0_SYNCI (114UL)
488 #define TRGM_TRGOCFG_PWM0_SHRLDSYNCI (115UL)
489 #define TRGM_TRGOCFG_PWM0_FAULTI0 (116UL)
490 #define TRGM_TRGOCFG_PWM0_FAULTI1 (117UL)
491 #define TRGM_TRGOCFG_PWM1_FRCI (118UL)
492 #define TRGM_TRGOCFG_PWM1_FRCSYNCI (119UL)
493 #define TRGM_TRGOCFG_PWM1_SYNCI (120UL)
494 #define TRGM_TRGOCFG_PWM1_SHRLDSYNCI (121UL)
495 #define TRGM_TRGOCFG_PWM1_FAULTI0 (122UL)
496 #define TRGM_TRGOCFG_PWM1_FAULTI1 (123UL)
497 #define TRGM_TRGOCFG_RDC_TRIG_IN0 (124UL)
498 #define TRGM_TRGOCFG_RDC_TRIG_IN1 (125UL)
499 #define TRGM_TRGOCFG_SYNCTIMER_TRIG (126UL)
500 #define TRGM_TRGOCFG_QEI0_TRIG_IN (127UL)
501 #define TRGM_TRGOCFG_QEI1_TRIG_IN (128UL)
502 #define TRGM_TRGOCFG_QEI0_PAUSE (129UL)
503 #define TRGM_TRGOCFG_QEI1_PAUSE (130UL)
504 #define TRGM_TRGOCFG_UART_TRIG0 (131UL)
505 #define TRGM_TRGOCFG_UART_TRIG1 (132UL)
506 #define TRGM_TRGOCFG_TRGM_IRQ0 (133UL)
507 #define TRGM_TRGOCFG_TRGM_IRQ1 (134UL)
508 #define TRGM_TRGOCFG_TRGM_DMA0 (135UL)
509 #define TRGM_TRGOCFG_TRGM_DMA1 (136UL)
510 
511 /* DMACFG register group index macro definition */
512 #define TRGM_DMACFG_0 (0UL)
513 #define TRGM_DMACFG_1 (1UL)
514 #define TRGM_DMACFG_2 (2UL)
515 #define TRGM_DMACFG_3 (3UL)
516 #define TRGM_DMACFG_4 (4UL)
517 #define TRGM_DMACFG_5 (5UL)
518 #define TRGM_DMACFG_6 (6UL)
519 #define TRGM_DMACFG_7 (7UL)
520 
521 /* TRGM_IN register group index macro definition */
522 #define TRGM_TRGM_IN_0 (0UL)
523 #define TRGM_TRGM_IN_1 (1UL)
524 #define TRGM_TRGM_IN_2 (2UL)
525 #define TRGM_TRGM_IN_3 (3UL)
526 
527 /* TRGM_OUT register group index macro definition */
528 #define TRGM_TRGM_OUT_0 (0UL)
529 #define TRGM_TRGM_OUT_1 (1UL)
530 #define TRGM_TRGM_OUT_2 (2UL)
531 #define TRGM_TRGM_OUT_3 (3UL)
532 #define TRGM_TRGM_OUT_4 (4UL)
533 
534 
535 #endif /* HPM_TRGM_H */
Definition: hpm_trgm_regs.h:12