]> git.sur5r.net Git - freertos/blob - FreeRTOS/Demo/CORTEX_M4_SimpleLink_CC3220SF_CCS/ti/devices/cc32xx/inc/hw_timer.h
Add SimpleLink CC3220SF demo.
[freertos] / FreeRTOS / Demo / CORTEX_M4_SimpleLink_CC3220SF_CCS / ti / devices / cc32xx / inc / hw_timer.h
1 /*\r
2  * -------------------------------------------\r
3  *    CC3220 SDK - v0.10.00.00 \r
4  * -------------------------------------------\r
5  *\r
6  *  Copyright (C) 2015 Texas Instruments Incorporated - http://www.ti.com/ \r
7  *  \r
8  *  Redistribution and use in source and binary forms, with or without \r
9  *  modification, are permitted provided that the following conditions \r
10  *  are met:\r
11  *\r
12  *    Redistributions of source code must retain the above copyright \r
13  *    notice, this list of conditions and the following disclaimer.\r
14  *\r
15  *    Redistributions in binary form must reproduce the above copyright\r
16  *    notice, this list of conditions and the following disclaimer in the \r
17  *    documentation and/or other materials provided with the   \r
18  *    distribution.\r
19  *\r
20  *    Neither the name of Texas Instruments Incorporated nor the names of\r
21  *    its contributors may be used to endorse or promote products derived\r
22  *    from this software without specific prior written permission.\r
23  *\r
24  *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \r
25  *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT \r
26  *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\r
27  *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT \r
28  *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, \r
29  *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT \r
30  *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\r
31  *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\r
32  *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT \r
33  *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE \r
34  *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
35  *  \r
36  */\r
37 \r
38 //*****************************************************************************\r
39 //\r
40 // hw_timer.h - Defines and macros used when accessing the timer.\r
41 //\r
42 //*****************************************************************************\r
43 \r
44 //##### INTERNAL BEGIN #####\r
45 //\r
46 // This is an auto-generated file.  Do not edit by hand.\r
47 // Created by version 6779 of DriverLib.\r
48 //\r
49 //##### INTERNAL END #####\r
50 \r
51 #ifndef __HW_TIMER_H__\r
52 #define __HW_TIMER_H__\r
53 \r
54 //*****************************************************************************\r
55 //\r
56 // The following are defines for the Timer register offsets.\r
57 //\r
58 //*****************************************************************************\r
59 #define TIMER_O_CFG             0x00000000  // GPTM Configuration\r
60 #define TIMER_O_TAMR            0x00000004  // GPTM Timer A Mode\r
61 #define TIMER_O_TBMR            0x00000008  // GPTM Timer B Mode\r
62 #define TIMER_O_CTL             0x0000000C  // GPTM Control\r
63 //##### GARNET BEGIN #####\r
64 #define TIMER_O_SYNC            0x00000010  // GPTM Synchronize\r
65 //##### GARNET END #####\r
66 #define TIMER_O_IMR             0x00000018  // GPTM Interrupt Mask\r
67 #define TIMER_O_RIS             0x0000001C  // GPTM Raw Interrupt Status\r
68 #define TIMER_O_MIS             0x00000020  // GPTM Masked Interrupt Status\r
69 #define TIMER_O_ICR             0x00000024  // GPTM Interrupt Clear\r
70 #define TIMER_O_TAILR           0x00000028  // GPTM Timer A Interval Load\r
71 #define TIMER_O_TBILR           0x0000002C  // GPTM Timer B Interval Load\r
72 #define TIMER_O_TAMATCHR        0x00000030  // GPTM Timer A Match\r
73 #define TIMER_O_TBMATCHR        0x00000034  // GPTM Timer B Match\r
74 #define TIMER_O_TAPR            0x00000038  // GPTM Timer A Prescale\r
75 #define TIMER_O_TBPR            0x0000003C  // GPTM Timer B Prescale\r
76 #define TIMER_O_TAPMR           0x00000040  // GPTM TimerA Prescale Match\r
77 #define TIMER_O_TBPMR           0x00000044  // GPTM TimerB Prescale Match\r
78 #define TIMER_O_TAR             0x00000048  // GPTM Timer A\r
79 #define TIMER_O_TBR             0x0000004C  // GPTM Timer B\r
80 #define TIMER_O_TAV             0x00000050  // GPTM Timer A Value\r
81 #define TIMER_O_TBV             0x00000054  // GPTM Timer B Value\r
82 #define TIMER_O_RTCPD           0x00000058  // GPTM RTC Predivide\r
83 #define TIMER_O_TAPS            0x0000005C  // GPTM Timer A Prescale Snapshot\r
84 #define TIMER_O_TBPS            0x00000060  // GPTM Timer B Prescale Snapshot\r
85 #define TIMER_O_TAPV            0x00000064  // GPTM Timer A Prescale Value\r
86 #define TIMER_O_TBPV            0x00000068  // GPTM Timer B Prescale Value\r
87 #define TIMER_O_DMAEV           0x0000006C  // GPTM DMA Event\r
88 #define TIMER_O_PP              0x00000FC0  // GPTM Peripheral Properties\r
89 \r
90 \r
91 //*****************************************************************************\r
92 //\r
93 // The following are defines for the bit fields in the TIMER_O_CFG register.\r
94 //\r
95 //*****************************************************************************\r
96 #define TIMER_CFG_M             0x00000007  // GPTM Configuration\r
97 #define TIMER_CFG_32_BIT_TIMER  0x00000000  // 32-bit timer configuration\r
98 #define TIMER_CFG_32_BIT_RTC    0x00000001  // 32-bit real-time clock (RTC)\r
99                                             // counter configuration\r
100 #define TIMER_CFG_16_BIT        0x00000004  // 16-bit timer configuration. The\r
101                                             // function is controlled by bits\r
102                                             // 1:0 of GPTMTAMR and GPTMTBMR\r
103 \r
104 //*****************************************************************************\r
105 //\r
106 // The following are defines for the bit fields in the TIMER_O_TAMR register.\r
107 //\r
108 //*****************************************************************************\r
109 //##### GARNET BEGIN #####\r
110 #define TIMER_TAMR_TAPLO        0x00000800  // GPTM Timer A PWM Legacy\r
111                                             // Operation\r
112 #define TIMER_TAMR_TAMRSU       0x00000400  // GPTM Timer A Match Register\r
113                                             // Update\r
114 #define TIMER_TAMR_TAPWMIE      0x00000200  // GPTM Timer A PWM Interrupt\r
115                                             // Enable\r
116 #define TIMER_TAMR_TAILD        0x00000100  // GPTM Timer A Interval Load Write\r
117 //##### GARNET END #####\r
118 #define TIMER_TAMR_TASNAPS      0x00000080  // GPTM Timer A Snap-Shot Mode\r
119 #define TIMER_TAMR_TAWOT        0x00000040  // GPTM Timer A Wait-on-Trigger\r
120 #define TIMER_TAMR_TAMIE        0x00000020  // GPTM Timer A Match Interrupt\r
121                                             // Enable\r
122 #define TIMER_TAMR_TACDIR       0x00000010  // GPTM Timer A Count Direction\r
123 #define TIMER_TAMR_TAAMS        0x00000008  // GPTM Timer A Alternate Mode\r
124                                             // Select\r
125 #define TIMER_TAMR_TACMR        0x00000004  // GPTM Timer A Capture Mode\r
126 #define TIMER_TAMR_TAMR_M       0x00000003  // GPTM Timer A Mode\r
127 #define TIMER_TAMR_TAMR_1_SHOT  0x00000001  // One-Shot Timer mode\r
128 #define TIMER_TAMR_TAMR_PERIOD  0x00000002  // Periodic Timer mode\r
129 #define TIMER_TAMR_TAMR_CAP     0x00000003  // Capture mode\r
130 \r
131 //*****************************************************************************\r
132 //\r
133 // The following are defines for the bit fields in the TIMER_O_TBMR register.\r
134 //\r
135 //*****************************************************************************\r
136 //##### GARNET BEGIN #####\r
137 #define TIMER_TBMR_TBPLO        0x00000800  // GPTM Timer B PWM Legacy\r
138                                             // Operation\r
139 #define TIMER_TBMR_TBMRSU       0x00000400  // GPTM Timer B Match Register\r
140                                             // Update\r
141 #define TIMER_TBMR_TBPWMIE      0x00000200  // GPTM Timer B PWM Interrupt\r
142                                             // Enable\r
143 #define TIMER_TBMR_TBILD        0x00000100  // GPTM Timer B Interval Load Write\r
144 //##### GARNET END #####\r
145 #define TIMER_TBMR_TBSNAPS      0x00000080  // GPTM Timer B Snap-Shot Mode\r
146 #define TIMER_TBMR_TBWOT        0x00000040  // GPTM Timer B Wait-on-Trigger\r
147 #define TIMER_TBMR_TBMIE        0x00000020  // GPTM Timer B Match Interrupt\r
148                                             // Enable\r
149 #define TIMER_TBMR_TBCDIR       0x00000010  // GPTM Timer B Count Direction\r
150 #define TIMER_TBMR_TBAMS        0x00000008  // GPTM Timer B Alternate Mode\r
151                                             // Select\r
152 #define TIMER_TBMR_TBCMR        0x00000004  // GPTM Timer B Capture Mode\r
153 #define TIMER_TBMR_TBMR_M       0x00000003  // GPTM Timer B Mode\r
154 #define TIMER_TBMR_TBMR_1_SHOT  0x00000001  // One-Shot Timer mode\r
155 #define TIMER_TBMR_TBMR_PERIOD  0x00000002  // Periodic Timer mode\r
156 #define TIMER_TBMR_TBMR_CAP     0x00000003  // Capture mode\r
157 \r
158 //*****************************************************************************\r
159 //\r
160 // The following are defines for the bit fields in the TIMER_O_CTL register.\r
161 //\r
162 //*****************************************************************************\r
163 #define TIMER_CTL_TBPWML        0x00004000  // GPTM Timer B PWM Output Level\r
164 #define TIMER_CTL_TBOTE         0x00002000  // GPTM Timer B Output Trigger\r
165                                             // Enable\r
166 #define TIMER_CTL_TBEVENT_M     0x00000C00  // GPTM Timer B Event Mode\r
167 #define TIMER_CTL_TBEVENT_POS   0x00000000  // Positive edge\r
168 #define TIMER_CTL_TBEVENT_NEG   0x00000400  // Negative edge\r
169 #define TIMER_CTL_TBEVENT_BOTH  0x00000C00  // Both edges\r
170 #define TIMER_CTL_TBSTALL       0x00000200  // GPTM Timer B Stall Enable\r
171 #define TIMER_CTL_TBEN          0x00000100  // GPTM Timer B Enable\r
172 #define TIMER_CTL_TAPWML        0x00000040  // GPTM Timer A PWM Output Level\r
173 #define TIMER_CTL_TAOTE         0x00000020  // GPTM Timer A Output Trigger\r
174                                             // Enable\r
175 #define TIMER_CTL_RTCEN         0x00000010  // GPTM RTC Enable\r
176 #define TIMER_CTL_TAEVENT_M     0x0000000C  // GPTM Timer A Event Mode\r
177 #define TIMER_CTL_TAEVENT_POS   0x00000000  // Positive edge\r
178 #define TIMER_CTL_TAEVENT_NEG   0x00000004  // Negative edge\r
179 #define TIMER_CTL_TAEVENT_BOTH  0x0000000C  // Both edges\r
180 #define TIMER_CTL_TASTALL       0x00000002  // GPTM Timer A Stall Enable\r
181 #define TIMER_CTL_TAEN          0x00000001  // GPTM Timer A Enable\r
182 //##### GARNET BEGIN #####\r
183 \r
184 //*****************************************************************************\r
185 //\r
186 // The following are defines for the bit fields in the TIMER_O_SYNC register.\r
187 //\r
188 //*****************************************************************************\r
189 #define TIMER_SYNC_SYNC11_M     0x00C00000  // Synchronize GPTM Timer 11\r
190 #define TIMER_SYNC_SYNC11_TA    0x00400000  // A timeout event for Timer A of\r
191                                             // GPTM11 is triggered\r
192 #define TIMER_SYNC_SYNC11_TB    0x00800000  // A timeout event for Timer B of\r
193                                             // GPTM11 is triggered\r
194 #define TIMER_SYNC_SYNC11_TATB  0x00C00000  // A timeout event for both Timer A\r
195                                             // and Timer B of GPTM11 is\r
196                                             // triggered\r
197 #define TIMER_SYNC_SYNC10_M     0x00300000  // Synchronize GPTM Timer 10\r
198 #define TIMER_SYNC_SYNC10_TA    0x00100000  // A timeout event for Timer A of\r
199                                             // GPTM10 is triggered\r
200 #define TIMER_SYNC_SYNC10_TB    0x00200000  // A timeout event for Timer B of\r
201                                             // GPTM10 is triggered\r
202 #define TIMER_SYNC_SYNC10_TATB  0x00300000  // A timeout event for both Timer A\r
203                                             // and Timer B of GPTM10 is\r
204                                             // triggered\r
205 #define TIMER_SYNC_SYNC9_M      0x000C0000  // Synchronize GPTM Timer 9\r
206 #define TIMER_SYNC_SYNC9_TA     0x00040000  // A timeout event for Timer A of\r
207                                             // GPTM9 is triggered\r
208 #define TIMER_SYNC_SYNC9_TB     0x00080000  // A timeout event for Timer B of\r
209                                             // GPTM9 is triggered\r
210 #define TIMER_SYNC_SYNC9_TATB   0x000C0000  // A timeout event for both Timer A\r
211                                             // and Timer B of GPTM9 is\r
212                                             // triggered\r
213 #define TIMER_SYNC_SYNC8_M      0x00030000  // Synchronize GPTM Timer 8\r
214 #define TIMER_SYNC_SYNC8_TA     0x00010000  // A timeout event for Timer A of\r
215                                             // GPTM8 is triggered\r
216 #define TIMER_SYNC_SYNC8_TB     0x00020000  // A timeout event for Timer B of\r
217                                             // GPTM8 is triggered\r
218 #define TIMER_SYNC_SYNC8_TATB   0x00030000  // A timeout event for both Timer A\r
219                                             // and Timer B of GPTM8 is\r
220                                             // triggered\r
221 #define TIMER_SYNC_SYNC7_M      0x0000C000  // Synchronize GPTM Timer 7\r
222 #define TIMER_SYNC_SYNC7_TA     0x00004000  // A timeout event for Timer A of\r
223                                             // GPTM7 is triggered\r
224 #define TIMER_SYNC_SYNC7_TB     0x00008000  // A timeout event for Timer B of\r
225                                             // GPTM7 is triggered\r
226 #define TIMER_SYNC_SYNC7_TATB   0x0000C000  // A timeout event for both Timer A\r
227                                             // and Timer B of GPTM7 is\r
228                                             // triggered\r
229 #define TIMER_SYNC_SYNC6_M      0x00003000  // Synchronize GPTM Timer 6\r
230 #define TIMER_SYNC_SYNC6_TA     0x00001000  // A timeout event for Timer A of\r
231                                             // GPTM6 is triggered\r
232 #define TIMER_SYNC_SYNC6_TB     0x00002000  // A timeout event for Timer B of\r
233                                             // GPTM6 is triggered\r
234 #define TIMER_SYNC_SYNC6_TATB   0x00003000  // A timeout event for both Timer A\r
235                                             // and Timer B of GPTM6 is\r
236                                             // triggered\r
237 #define TIMER_SYNC_SYNC5_M      0x00000C00  // Synchronize GPTM Timer 5\r
238 #define TIMER_SYNC_SYNC5_TA     0x00000400  // A timeout event for Timer A of\r
239                                             // GPTM5 is triggered\r
240 #define TIMER_SYNC_SYNC5_TB     0x00000800  // A timeout event for Timer B of\r
241                                             // GPTM5 is triggered\r
242 #define TIMER_SYNC_SYNC5_TATB   0x00000C00  // A timeout event for both Timer A\r
243                                             // and Timer B of GPTM5 is\r
244                                             // triggered\r
245 #define TIMER_SYNC_SYNC4_M      0x00000300  // Synchronize GPTM Timer 4\r
246 #define TIMER_SYNC_SYNC4_TA     0x00000100  // A timeout event for Timer A of\r
247                                             // GPTM4 is triggered\r
248 #define TIMER_SYNC_SYNC4_TB     0x00000200  // A timeout event for Timer B of\r
249                                             // GPTM4 is triggered\r
250 #define TIMER_SYNC_SYNC4_TATB   0x00000300  // A timeout event for both Timer A\r
251                                             // and Timer B of GPTM4 is\r
252                                             // triggered\r
253 #define TIMER_SYNC_SYNC3_M      0x000000C0  // Synchronize GPTM Timer 3\r
254 #define TIMER_SYNC_SYNC3_TA     0x00000040  // A timeout event for Timer A of\r
255                                             // GPTM3 is triggered\r
256 #define TIMER_SYNC_SYNC3_TB     0x00000080  // A timeout event for Timer B of\r
257                                             // GPTM3 is triggered\r
258 #define TIMER_SYNC_SYNC3_TATB   0x000000C0  // A timeout event for both Timer A\r
259                                             // and Timer B of GPTM3 is\r
260                                             // triggered\r
261 #define TIMER_SYNC_SYNC2_M      0x00000030  // Synchronize GPTM Timer 2\r
262 #define TIMER_SYNC_SYNC2_TA     0x00000010  // A timeout event for Timer A of\r
263                                             // GPTM2 is triggered\r
264 #define TIMER_SYNC_SYNC2_TB     0x00000020  // A timeout event for Timer B of\r
265                                             // GPTM2 is triggered\r
266 #define TIMER_SYNC_SYNC2_TATB   0x00000030  // A timeout event for both Timer A\r
267                                             // and Timer B of GPTM2 is\r
268                                             // triggered\r
269 #define TIMER_SYNC_SYNC1_M      0x0000000C  // Synchronize GPTM Timer 1\r
270 #define TIMER_SYNC_SYNC1_TA     0x00000004  // A timeout event for Timer A of\r
271                                             // GPTM1 is triggered\r
272 #define TIMER_SYNC_SYNC1_TB     0x00000008  // A timeout event for Timer B of\r
273                                             // GPTM1 is triggered\r
274 #define TIMER_SYNC_SYNC1_TATB   0x0000000C  // A timeout event for both Timer A\r
275                                             // and Timer B of GPTM1 is\r
276                                             // triggered\r
277 #define TIMER_SYNC_SYNC0_M      0x00000003  // Synchronize GPTM Timer 0\r
278 #define TIMER_SYNC_SYNC0_TA     0x00000001  // A timeout event for Timer A of\r
279                                             // GPTM0 is triggered\r
280 #define TIMER_SYNC_SYNC0_TB     0x00000002  // A timeout event for Timer B of\r
281                                             // GPTM0 is triggered\r
282 #define TIMER_SYNC_SYNC0_TATB   0x00000003  // A timeout event for both Timer A\r
283                                             // and Timer B of GPTM0 is\r
284                                             // triggered\r
285 //##### GARNET END #####\r
286 \r
287 //*****************************************************************************\r
288 //\r
289 // The following are defines for the bit fields in the TIMER_O_IMR register.\r
290 //\r
291 //*****************************************************************************\r
292 //##### GARNET BEGIN #####\r
293 #define TIMER_IMR_WUEIM         0x00010000  // 32/64-Bit GPTM Write Update\r
294                                             // Error Interrupt Mask\r
295 //##### GARNET END #####\r
296 #define TIMER_IMR_TBMIM         0x00000800  // GPTM Timer B Mode Match\r
297                                             // Interrupt Mask\r
298 #define TIMER_IMR_CBEIM         0x00000400  // GPTM Capture B Event Interrupt\r
299                                             // Mask\r
300 #define TIMER_IMR_CBMIM         0x00000200  // GPTM Capture B Match Interrupt\r
301                                             // Mask\r
302 #define TIMER_IMR_TBTOIM        0x00000100  // GPTM Timer B Time-Out Interrupt\r
303                                             // Mask\r
304 #define TIMER_IMR_TAMIM         0x00000010  // GPTM Timer A Mode Match\r
305                                             // Interrupt Mask\r
306 #define TIMER_IMR_RTCIM         0x00000008  // GPTM RTC Interrupt Mask\r
307 #define TIMER_IMR_CAEIM         0x00000004  // GPTM Capture A Event Interrupt\r
308                                             // Mask\r
309 #define TIMER_IMR_CAMIM         0x00000002  // GPTM Capture A Match Interrupt\r
310                                             // Mask\r
311 #define TIMER_IMR_TATOIM        0x00000001  // GPTM Timer A Time-Out Interrupt\r
312                                             // Mask\r
313 \r
314 //*****************************************************************************\r
315 //\r
316 // The following are defines for the bit fields in the TIMER_O_RIS register.\r
317 //\r
318 //*****************************************************************************\r
319 //##### GARNET BEGIN #####\r
320 #define TIMER_RIS_WUERIS        0x00010000  // 32/64-Bit GPTM Write Update\r
321                                             // Error Raw Interrupt Status\r
322 //##### GARNET END #####\r
323 #define TIMER_RIS_TBMRIS        0x00000800  // GPTM Timer B Mode Match Raw\r
324                                             // Interrupt\r
325 #define TIMER_RIS_CBERIS        0x00000400  // GPTM Capture B Event Raw\r
326                                             // Interrupt\r
327 #define TIMER_RIS_CBMRIS        0x00000200  // GPTM Capture B Match Raw\r
328                                             // Interrupt\r
329 #define TIMER_RIS_TBTORIS       0x00000100  // GPTM Timer B Time-Out Raw\r
330                                             // Interrupt\r
331 #define TIMER_RIS_TAMRIS        0x00000010  // GPTM Timer A Mode Match Raw\r
332                                             // Interrupt\r
333 #define TIMER_RIS_RTCRIS        0x00000008  // GPTM RTC Raw Interrupt\r
334 #define TIMER_RIS_CAERIS        0x00000004  // GPTM Capture A Event Raw\r
335                                             // Interrupt\r
336 #define TIMER_RIS_CAMRIS        0x00000002  // GPTM Capture A Match Raw\r
337                                             // Interrupt\r
338 #define TIMER_RIS_TATORIS       0x00000001  // GPTM Timer A Time-Out Raw\r
339                                             // Interrupt\r
340 \r
341 //*****************************************************************************\r
342 //\r
343 // The following are defines for the bit fields in the TIMER_O_MIS register.\r
344 //\r
345 //*****************************************************************************\r
346 //##### GARNET BEGIN #####\r
347 #define TIMER_MIS_WUEMIS        0x00010000  // 32/64-Bit GPTM Write Update\r
348                                             // Error Masked Interrupt Status\r
349 //##### GARNET END #####\r
350 #define TIMER_MIS_TBMMIS        0x00000800  // GPTM Timer B Mode Match Masked\r
351                                             // Interrupt\r
352 #define TIMER_MIS_CBEMIS        0x00000400  // GPTM Capture B Event Masked\r
353                                             // Interrupt\r
354 #define TIMER_MIS_CBMMIS        0x00000200  // GPTM Capture B Match Masked\r
355                                             // Interrupt\r
356 #define TIMER_MIS_TBTOMIS       0x00000100  // GPTM Timer B Time-Out Masked\r
357                                             // Interrupt\r
358 #define TIMER_MIS_TAMMIS        0x00000010  // GPTM Timer A Mode Match Masked\r
359                                             // Interrupt\r
360 #define TIMER_MIS_RTCMIS        0x00000008  // GPTM RTC Masked Interrupt\r
361 #define TIMER_MIS_CAEMIS        0x00000004  // GPTM Capture A Event Masked\r
362                                             // Interrupt\r
363 #define TIMER_MIS_CAMMIS        0x00000002  // GPTM Capture A Match Masked\r
364                                             // Interrupt\r
365 #define TIMER_MIS_TATOMIS       0x00000001  // GPTM Timer A Time-Out Masked\r
366                                             // Interrupt\r
367 \r
368 //*****************************************************************************\r
369 //\r
370 // The following are defines for the bit fields in the TIMER_O_ICR register.\r
371 //\r
372 //*****************************************************************************\r
373 //##### GARNET BEGIN #####\r
374 #define TIMER_ICR_WUECINT       0x00010000  // 32/64-Bit GPTM Write Update\r
375                                             // Error Interrupt Clear\r
376 //##### GARNET END #####\r
377 #define TIMER_ICR_TBMCINT       0x00000800  // GPTM Timer B Mode Match\r
378                                             // Interrupt Clear\r
379 #define TIMER_ICR_CBECINT       0x00000400  // GPTM Capture B Event Interrupt\r
380                                             // Clear\r
381 #define TIMER_ICR_CBMCINT       0x00000200  // GPTM Capture B Match Interrupt\r
382                                             // Clear\r
383 #define TIMER_ICR_TBTOCINT      0x00000100  // GPTM Timer B Time-Out Interrupt\r
384                                             // Clear\r
385 #define TIMER_ICR_TAMCINT       0x00000010  // GPTM Timer A Mode Match\r
386                                             // Interrupt Clear\r
387 #define TIMER_ICR_RTCCINT       0x00000008  // GPTM RTC Interrupt Clear\r
388 #define TIMER_ICR_CAECINT       0x00000004  // GPTM Capture A Event Interrupt\r
389                                             // Clear\r
390 #define TIMER_ICR_CAMCINT       0x00000002  // GPTM Capture A Match Interrupt\r
391                                             // Clear\r
392 #define TIMER_ICR_TATOCINT      0x00000001  // GPTM Timer A Time-Out Raw\r
393                                             // Interrupt\r
394 \r
395 //*****************************************************************************\r
396 //\r
397 // The following are defines for the bit fields in the TIMER_O_TAILR register.\r
398 //\r
399 //*****************************************************************************\r
400 //##### GARNET BEGIN #####\r
401 #define TIMER_TAILR_M           0xFFFFFFFF  // GPTM Timer A Interval Load\r
402                                             // Register\r
403 //##### GARNET END #####\r
404 #define TIMER_TAILR_TAILRH_M    0xFFFF0000  // GPTM Timer A Interval Load\r
405                                             // Register High\r
406 #define TIMER_TAILR_TAILRL_M    0x0000FFFF  // GPTM Timer A Interval Load\r
407                                             // Register Low\r
408 #define TIMER_TAILR_TAILRH_S    16\r
409 #define TIMER_TAILR_TAILRL_S    0\r
410 //##### GARNET BEGIN #####\r
411 #define TIMER_TAILR_S           0\r
412 //##### GARNET END #####\r
413 \r
414 //*****************************************************************************\r
415 //\r
416 // The following are defines for the bit fields in the TIMER_O_TBILR register.\r
417 //\r
418 //*****************************************************************************\r
419 //##### GARNET BEGIN #####\r
420 #define TIMER_TBILR_M           0xFFFFFFFF  // GPTM Timer B Interval Load\r
421                                             // Register\r
422 //##### GARNET END #####\r
423 #define TIMER_TBILR_TBILRL_M    0x0000FFFF  // GPTM Timer B Interval Load\r
424                                             // Register\r
425 #define TIMER_TBILR_TBILRL_S    0\r
426 //##### GARNET BEGIN #####\r
427 #define TIMER_TBILR_S           0\r
428 //##### GARNET END #####\r
429 \r
430 //*****************************************************************************\r
431 //\r
432 // The following are defines for the bit fields in the TIMER_O_TAMATCHR\r
433 // register.\r
434 //\r
435 //*****************************************************************************\r
436 //##### GARNET BEGIN #####\r
437 #define TIMER_TAMATCHR_TAMR_M   0xFFFFFFFF  // GPTM Timer A Match Register\r
438 //##### GARNET END #####\r
439 #define TIMER_TAMATCHR_TAMRH_M  0xFFFF0000  // GPTM Timer A Match Register High\r
440 #define TIMER_TAMATCHR_TAMRL_M  0x0000FFFF  // GPTM Timer A Match Register Low\r
441 #define TIMER_TAMATCHR_TAMRH_S  16\r
442 #define TIMER_TAMATCHR_TAMRL_S  0\r
443 //##### GARNET BEGIN #####\r
444 #define TIMER_TAMATCHR_TAMR_S   0\r
445 //##### GARNET END #####\r
446 \r
447 //*****************************************************************************\r
448 //\r
449 // The following are defines for the bit fields in the TIMER_O_TBMATCHR\r
450 // register.\r
451 //\r
452 //*****************************************************************************\r
453 //##### GARNET BEGIN #####\r
454 #define TIMER_TBMATCHR_TBMR_M   0xFFFFFFFF  // GPTM Timer B Match Register\r
455 //##### GARNET END #####\r
456 #define TIMER_TBMATCHR_TBMRL_M  0x0000FFFF  // GPTM Timer B Match Register Low\r
457 //##### GARNET BEGIN #####\r
458 #define TIMER_TBMATCHR_TBMR_S   0\r
459 //##### GARNET END #####\r
460 #define TIMER_TBMATCHR_TBMRL_S  0\r
461 \r
462 //*****************************************************************************\r
463 //\r
464 // The following are defines for the bit fields in the TIMER_O_TAPR register.\r
465 //\r
466 //*****************************************************************************\r
467 //##### GARNET BEGIN #####\r
468 #define TIMER_TAPR_TAPSRH_M     0x0000FF00  // GPTM Timer A Prescale High Byte\r
469 //##### GARNET END #####\r
470 #define TIMER_TAPR_TAPSR_M      0x000000FF  // GPTM Timer A Prescale\r
471 //##### GARNET BEGIN #####\r
472 #define TIMER_TAPR_TAPSRH_S     8\r
473 //##### GARNET END #####\r
474 #define TIMER_TAPR_TAPSR_S      0\r
475 \r
476 //*****************************************************************************\r
477 //\r
478 // The following are defines for the bit fields in the TIMER_O_TBPR register.\r
479 //\r
480 //*****************************************************************************\r
481 //##### GARNET BEGIN #####\r
482 #define TIMER_TBPR_TBPSRH_M     0x0000FF00  // GPTM Timer B Prescale High Byte\r
483 //##### GARNET END #####\r
484 #define TIMER_TBPR_TBPSR_M      0x000000FF  // GPTM Timer B Prescale\r
485 //##### GARNET BEGIN #####\r
486 #define TIMER_TBPR_TBPSRH_S     8\r
487 //##### GARNET END #####\r
488 #define TIMER_TBPR_TBPSR_S      0\r
489 \r
490 //*****************************************************************************\r
491 //\r
492 // The following are defines for the bit fields in the TIMER_O_TAPMR register.\r
493 //\r
494 //*****************************************************************************\r
495 //##### GARNET BEGIN #####\r
496 #define TIMER_TAPMR_TAPSMRH_M   0x0000FF00  // GPTM Timer A Prescale Match High\r
497                                             // Byte\r
498 //##### GARNET END #####\r
499 #define TIMER_TAPMR_TAPSMR_M    0x000000FF  // GPTM TimerA Prescale Match\r
500 //##### GARNET BEGIN #####\r
501 #define TIMER_TAPMR_TAPSMRH_S   8\r
502 //##### GARNET END #####\r
503 #define TIMER_TAPMR_TAPSMR_S    0\r
504 \r
505 //*****************************************************************************\r
506 //\r
507 // The following are defines for the bit fields in the TIMER_O_TBPMR register.\r
508 //\r
509 //*****************************************************************************\r
510 //##### GARNET BEGIN #####\r
511 #define TIMER_TBPMR_TBPSMRH_M   0x0000FF00  // GPTM Timer B Prescale Match High\r
512                                             // Byte\r
513 //##### GARNET END #####\r
514 #define TIMER_TBPMR_TBPSMR_M    0x000000FF  // GPTM TimerB Prescale Match\r
515 //##### GARNET BEGIN #####\r
516 #define TIMER_TBPMR_TBPSMRH_S   8\r
517 //##### GARNET END #####\r
518 #define TIMER_TBPMR_TBPSMR_S    0\r
519 \r
520 //*****************************************************************************\r
521 //\r
522 // The following are defines for the bit fields in the TIMER_O_TAR register.\r
523 //\r
524 //*****************************************************************************\r
525 //##### GARNET BEGIN #####\r
526 #define TIMER_TAR_M             0xFFFFFFFF  // GPTM Timer A Register\r
527 //##### GARNET END #####\r
528 #define TIMER_TAR_TARH_M        0xFFFF0000  // GPTM Timer A Register High\r
529 #define TIMER_TAR_TARL_M        0x0000FFFF  // GPTM Timer A Register Low\r
530 #define TIMER_TAR_TARH_S        16\r
531 #define TIMER_TAR_TARL_S        0\r
532 //##### GARNET BEGIN #####\r
533 #define TIMER_TAR_S             0\r
534 //##### GARNET END #####\r
535 \r
536 //*****************************************************************************\r
537 //\r
538 // The following are defines for the bit fields in the TIMER_O_TBR register.\r
539 //\r
540 //*****************************************************************************\r
541 //##### GARNET BEGIN #####\r
542 #define TIMER_TBR_M             0xFFFFFFFF  // GPTM Timer B Register\r
543 //##### GARNET END #####\r
544 #define TIMER_TBR_TBRL_M        0x00FFFFFF  // GPTM Timer B\r
545 #define TIMER_TBR_TBRL_S        0\r
546 //##### GARNET BEGIN #####\r
547 #define TIMER_TBR_S             0\r
548 //##### GARNET END #####\r
549 \r
550 //*****************************************************************************\r
551 //\r
552 // The following are defines for the bit fields in the TIMER_O_TAV register.\r
553 //\r
554 //*****************************************************************************\r
555 //##### GARNET BEGIN #####\r
556 #define TIMER_TAV_M             0xFFFFFFFF  // GPTM Timer A Value\r
557 //##### GARNET END #####\r
558 #define TIMER_TAV_TAVH_M        0xFFFF0000  // GPTM Timer A Value High\r
559 #define TIMER_TAV_TAVL_M        0x0000FFFF  // GPTM Timer A Register Low\r
560 #define TIMER_TAV_TAVH_S        16\r
561 #define TIMER_TAV_TAVL_S        0\r
562 //##### GARNET BEGIN #####\r
563 #define TIMER_TAV_S             0\r
564 //##### GARNET END #####\r
565 \r
566 //*****************************************************************************\r
567 //\r
568 // The following are defines for the bit fields in the TIMER_O_TBV register.\r
569 //\r
570 //*****************************************************************************\r
571 //##### GARNET BEGIN #####\r
572 #define TIMER_TBV_M             0xFFFFFFFF  // GPTM Timer B Value\r
573 //##### GARNET END #####\r
574 #define TIMER_TBV_TBVL_M        0x0000FFFF  // GPTM Timer B Register\r
575 #define TIMER_TBV_TBVL_S        0\r
576 //##### GARNET BEGIN #####\r
577 #define TIMER_TBV_S             0\r
578 \r
579 //*****************************************************************************\r
580 //\r
581 // The following are defines for the bit fields in the TIMER_O_RTCPD register.\r
582 //\r
583 //*****************************************************************************\r
584 #define TIMER_RTCPD_RTCPD_M     0x0000FFFF  // RTC Predivide Counter Value\r
585 #define TIMER_RTCPD_RTCPD_S     0\r
586 \r
587 //*****************************************************************************\r
588 //\r
589 // The following are defines for the bit fields in the TIMER_O_TAPS register.\r
590 //\r
591 //*****************************************************************************\r
592 #define TIMER_TAPS_PSS_M        0x0000FFFF  // GPTM Timer A Prescaler Snapshot\r
593 #define TIMER_TAPS_PSS_S        0\r
594 \r
595 //*****************************************************************************\r
596 //\r
597 // The following are defines for the bit fields in the TIMER_O_TBPS register.\r
598 //\r
599 //*****************************************************************************\r
600 #define TIMER_TBPS_PSS_M        0x0000FFFF  // GPTM Timer A Prescaler Value\r
601 #define TIMER_TBPS_PSS_S        0\r
602 \r
603 //*****************************************************************************\r
604 //\r
605 // The following are defines for the bit fields in the TIMER_O_TAPV register.\r
606 //\r
607 //*****************************************************************************\r
608 #define TIMER_TAPV_PSV_M        0x0000FFFF  // GPTM Timer A Prescaler Value\r
609 #define TIMER_TAPV_PSV_S        0\r
610 \r
611 //*****************************************************************************\r
612 //\r
613 // The following are defines for the bit fields in the TIMER_O_TBPV register.\r
614 //\r
615 //*****************************************************************************\r
616 #define TIMER_TBPV_PSV_M        0x0000FFFF  // GPTM Timer B Prescaler Value\r
617 #define TIMER_TBPV_PSV_S        0\r
618 \r
619 //*****************************************************************************\r
620 //\r
621 // The following are defines for the bit fields in the TIMER_O_PP register.\r
622 //\r
623 //*****************************************************************************\r
624 #define TIMER_PP_SYNCCNT        0x00000020  // Synchronize Start\r
625 #define TIMER_PP_CHAIN          0x00000010  // Chain with Other Timers\r
626 #define TIMER_PP_SIZE_M         0x0000000F  // Count Size\r
627 #define TIMER_PP_SIZE__0        0x00000000  // Timer A and Timer B counters are\r
628                                             // 16 bits each with an 8-bit\r
629                                             // prescale counter\r
630 #define TIMER_PP_SIZE__1        0x00000001  // Timer A and Timer B counters are\r
631                                             // 32 bits each with an 16-bit\r
632                                             // prescale counter\r
633 //##### GARNET END #####\r
634 \r
635 //*****************************************************************************\r
636 //\r
637 // The following definitions are deprecated.\r
638 //\r
639 //*****************************************************************************\r
640 #ifndef DEPRECATED\r
641 \r
642 //*****************************************************************************\r
643 //\r
644 // The following are deprecated defines for the bit fields in the TIMER_O_CFG\r
645 // register.\r
646 //\r
647 //*****************************************************************************\r
648 #define TIMER_CFG_CFG_MSK       0x00000007  // Configuration options mask\r
649 \r
650 //*****************************************************************************\r
651 //\r
652 // The following are deprecated defines for the bit fields in the TIMER_O_CTL\r
653 // register.\r
654 //\r
655 //*****************************************************************************\r
656 #define TIMER_CTL_TBEVENT_MSK   0x00000C00  // TimerB event mode mask\r
657 #define TIMER_CTL_TAEVENT_MSK   0x0000000C  // TimerA event mode mask\r
658 \r
659 //*****************************************************************************\r
660 //\r
661 // The following are deprecated defines for the bit fields in the TIMER_O_RIS\r
662 // register.\r
663 //\r
664 //*****************************************************************************\r
665 #define TIMER_RIS_CBEMIS        0x00000400  // CaptureB event masked int status\r
666 #define TIMER_RIS_CBMMIS        0x00000200  // CaptureB match masked int status\r
667 #define TIMER_RIS_TBTOMIS       0x00000100  // TimerB time out masked int stat\r
668 #define TIMER_RIS_RTCMIS        0x00000008  // RTC masked int status\r
669 #define TIMER_RIS_CAEMIS        0x00000004  // CaptureA event masked int status\r
670 #define TIMER_RIS_CAMMIS        0x00000002  // CaptureA match masked int status\r
671 #define TIMER_RIS_TATOMIS       0x00000001  // TimerA time out masked int stat\r
672 \r
673 //*****************************************************************************\r
674 //\r
675 // The following are deprecated defines for the bit fields in the TIMER_O_TAILR\r
676 // register.\r
677 //\r
678 //*****************************************************************************\r
679 #define TIMER_TAILR_TAILRH      0xFFFF0000  // TimerB load val in 32 bit mode\r
680 #define TIMER_TAILR_TAILRL      0x0000FFFF  // TimerA interval load value\r
681 \r
682 //*****************************************************************************\r
683 //\r
684 // The following are deprecated defines for the bit fields in the TIMER_O_TBILR\r
685 // register.\r
686 //\r
687 //*****************************************************************************\r
688 #define TIMER_TBILR_TBILRL      0x0000FFFF  // TimerB interval load value\r
689 \r
690 //*****************************************************************************\r
691 //\r
692 // The following are deprecated defines for the bit fields in the\r
693 // TIMER_O_TAMATCHR register.\r
694 //\r
695 //*****************************************************************************\r
696 #define TIMER_TAMATCHR_TAMRH    0xFFFF0000  // TimerB match val in 32 bit mode\r
697 #define TIMER_TAMATCHR_TAMRL    0x0000FFFF  // TimerA match value\r
698 \r
699 //*****************************************************************************\r
700 //\r
701 // The following are deprecated defines for the bit fields in the\r
702 // TIMER_O_TBMATCHR register.\r
703 //\r
704 //*****************************************************************************\r
705 #define TIMER_TBMATCHR_TBMRL    0x0000FFFF  // TimerB match load value\r
706 \r
707 //*****************************************************************************\r
708 //\r
709 // The following are deprecated defines for the bit fields in the TIMER_O_TAR\r
710 // register.\r
711 //\r
712 //*****************************************************************************\r
713 #define TIMER_TAR_TARH          0xFFFF0000  // TimerB val in 32 bit mode\r
714 #define TIMER_TAR_TARL          0x0000FFFF  // TimerA value\r
715 \r
716 //*****************************************************************************\r
717 //\r
718 // The following are deprecated defines for the bit fields in the TIMER_O_TBR\r
719 // register.\r
720 //\r
721 //*****************************************************************************\r
722 #define TIMER_TBR_TBRL          0x0000FFFF  // TimerB value\r
723 \r
724 //*****************************************************************************\r
725 //\r
726 // The following are deprecated defines for the reset values of the timer\r
727 // registers.\r
728 //\r
729 //*****************************************************************************\r
730 #define TIMER_RV_TAILR          0xFFFFFFFF  // TimerA interval load reg RV\r
731 #define TIMER_RV_TAR            0xFFFFFFFF  // TimerA register RV\r
732 #define TIMER_RV_TAMATCHR       0xFFFFFFFF  // TimerA match register RV\r
733 #define TIMER_RV_TBILR          0x0000FFFF  // TimerB interval load reg RV\r
734 #define TIMER_RV_TBMATCHR       0x0000FFFF  // TimerB match register RV\r
735 #define TIMER_RV_TBR            0x0000FFFF  // TimerB register RV\r
736 #define TIMER_RV_TAPR           0x00000000  // TimerA prescale register RV\r
737 #define TIMER_RV_CFG            0x00000000  // Configuration register RV\r
738 #define TIMER_RV_TBPMR          0x00000000  // TimerB prescale match regi RV\r
739 #define TIMER_RV_TAPMR          0x00000000  // TimerA prescale match reg RV\r
740 #define TIMER_RV_CTL            0x00000000  // Control register RV\r
741 #define TIMER_RV_ICR            0x00000000  // Interrupt clear register RV\r
742 #define TIMER_RV_TBMR           0x00000000  // TimerB mode register RV\r
743 #define TIMER_RV_MIS            0x00000000  // Masked interrupt status reg RV\r
744 #define TIMER_RV_RIS            0x00000000  // Interrupt status register RV\r
745 #define TIMER_RV_TBPR           0x00000000  // TimerB prescale register RV\r
746 #define TIMER_RV_IMR            0x00000000  // Interrupt mask register RV\r
747 #define TIMER_RV_TAMR           0x00000000  // TimerA mode register RV\r
748 \r
749 //*****************************************************************************\r
750 //\r
751 // The following are deprecated defines for the bit fields in the TIMER_TnMR\r
752 // register.\r
753 //\r
754 //*****************************************************************************\r
755 #define TIMER_TNMR_TNAMS        0x00000008  // Alternate mode select\r
756 #define TIMER_TNMR_TNCMR        0x00000004  // Capture mode - count or time\r
757 #define TIMER_TNMR_TNTMR_MSK    0x00000003  // Timer mode mask\r
758 #define TIMER_TNMR_TNTMR_1_SHOT 0x00000001  // Mode - one shot\r
759 #define TIMER_TNMR_TNTMR_PERIOD 0x00000002  // Mode - periodic\r
760 #define TIMER_TNMR_TNTMR_CAP    0x00000003  // Mode - capture\r
761 \r
762 //*****************************************************************************\r
763 //\r
764 // The following are deprecated defines for the bit fields in the TIMER_TnPR\r
765 // register.\r
766 //\r
767 //*****************************************************************************\r
768 #define TIMER_TNPR_TNPSR        0x000000FF  // TimerN prescale value\r
769 \r
770 //*****************************************************************************\r
771 //\r
772 // The following are deprecated defines for the bit fields in the TIMER_TnPMR\r
773 // register.\r
774 //\r
775 //*****************************************************************************\r
776 #define TIMER_TNPMR_TNPSMR      0x000000FF  // TimerN prescale match value\r
777 \r
778 #endif\r
779 \r
780 #endif // __HW_TIMER_H__\r