MSPM0G1X0X_G3X0X Driver Library  1.10.01.05
dl_timer.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2020, Texas Instruments Incorporated
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  *
9  * * Redistributions of source code must retain the above copyright
10  * notice, this list of conditions and the following disclaimer.
11  *
12  * * Redistributions in binary form must reproduce the above copyright
13  * notice, this list of conditions and the following disclaimer in the
14  * documentation and/or other materials provided with the distribution.
15  *
16  * * Neither the name of Texas Instruments Incorporated nor the names of
17  * its contributors may be used to endorse or promote products derived
18  * from this software without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31  */
32 /*!****************************************************************************
33  * @file dl_timer.h
34  * @brief Common General Purpose Timer (TIMx) Driver Library
35  * @defgroup TIMX Common General Purpose Timer (TIMx)
36  *
37  * @anchor ti_dl_dl_timer__Overview
38  * # Overview
39  * GPTimer module has different variations and have been defined as TimerG
40  * and TimerA. This file contains APIs which are common between
41  * different variations.
42  * <hr>
43  * @anchor ti_devices_msp_DL_TIMER_Usage
44  * # Usage
45  * It is not recommended to include this header file in the application.
46  * In order to access TimerG and TimerA functionality include
47  * to appropriate timer header file at the application level. Accessing the
48  * functionality via the corresponding header file will allow user to
49  * determine the functionality supported by the each Timer variant.
50  *
51  * To access TimerG functionality:
52  * @code
53  * // Import TIMG definitions
54  * #include <ti/driverlib/dl_timerg.h>
55  * @endcode
56  *
57  * To access TimerA functionality:
58  * @code
59  * // Import TIMA definitions
60  * #include <ti/driverlib/dl_timera.h>
61  * @endcode
62  *
63  * <hr>
64  ******************************************************************************
65  */
69 #ifndef ti_dl_dl_timer__include
70 #define ti_dl_dl_timer__include
71 
72 #if defined(ti_dl_dl_timera__include) || defined(ti_dl_dl_timerg__include) || \
73  defined(DOXYGEN__INCLUDE)
74 
75 #include <stdbool.h>
76 #include <stdint.h>
77 
78 #include <ti/devices/msp/msp.h>
79 #include <ti/driverlib/dl_common.h>
80 
81 #if defined(__MSPM0_HAS_TIMER_A__) || defined(__MSPM0_HAS_TIMER_G__)
82 
83 #ifdef __cplusplus
84 extern "C" {
85 #endif
86 
87 /* clang-format off */
88 
96 #define DL_TIMER_CC0_OUTPUT (GPTIMER_CCPD_C0CCP0_OUTPUT)
97 
101 #define DL_TIMER_CC0_INPUT (GPTIMER_CCPD_C0CCP0_INPUT)
102 
106 #define DL_TIMER_CC1_OUTPUT (GPTIMER_CCPD_C0CCP1_OUTPUT)
107 
111 #define DL_TIMER_CC1_INPUT (GPTIMER_CCPD_C0CCP1_INPUT)
112 
116 #define DL_TIMER_CC2_OUTPUT (GPTIMER_CCPD_C0CCP2_OUTPUT)
117 
121 #define DL_TIMER_CC2_INPUT (GPTIMER_CCPD_C0CCP2_INPUT)
122 
126 #define DL_TIMER_CC3_OUTPUT (GPTIMER_CCPD_C0CCP3_OUTPUT)
127 
131 #define DL_TIMER_CC3_INPUT (GPTIMER_CCPD_C0CCP3_INPUT)
132 
141 #define DL_TIMER_CC_MODE_COMPARE (GPTIMER_CCCTL_01_COC_COMPARE)
142 
145 #define DL_TIMER_CC_MODE_CAPTURE (GPTIMER_CCCTL_01_COC_CAPTURE)
146 
156 #define DL_TIMER_CC_ZCOND_NONE (((uint32_t)0x00000000U))
157 
161 #define DL_TIMER_CC_ZCOND_TRIG_RISE (GPTIMER_CCCTL_01_ZCOND_CC_TRIG_RISE)
162 
167 #define DL_TIMER_CC_ZCOND_TRIG_FALL (GPTIMER_CCCTL_01_ZCOND_CC_TRIG_FALL)
168 
172 #define DL_TIMER_CC_ZCOND_TRIG_EDGE (GPTIMER_CCCTL_01_ZCOND_CC_TRIG_EDGE)
173 
183 #define DL_TIMER_CC_LCOND_NONE ((uint32_t)0x00000000U)
184 
188 #define DL_TIMER_CC_LCOND_TRIG_RISE (GPTIMER_CCCTL_01_LCOND_CC_TRIG_RISE)
189 
194 #define DL_TIMER_CC_LCOND_TRIG_FALL (GPTIMER_CCCTL_01_LCOND_CC_TRIG_FALL)
195 
200 #define DL_TIMER_CC_LCOND_TRIG_EDGE (GPTIMER_CCCTL_01_LCOND_CC_TRIG_EDGE)
201 
211 #define DL_TIMER_CC_ACOND_TIMCLK (GPTIMER_CCCTL_01_ACOND_TIMCLK)
212 
217 #define DL_TIMER_CC_ACOND_TRIG_RISE (GPTIMER_CCCTL_01_ACOND_CC_TRIG_RISE)
218 
223 #define DL_TIMER_CC_ACOND_TRIG_FALL (GPTIMER_CCCTL_01_ACOND_CC_TRIG_FALL)
224 
228 #define DL_TIMER_CC_ACOND_TRIG_EDGE (GPTIMER_CCCTL_01_ACOND_CC_TRIG_EDGE)
229 
232 #define DL_TIMER_CC_ACOND_TRIG_HIGH (GPTIMER_CCCTL_01_ACOND_CC_TRIG_HIGH)
233 
243 #define DL_TIMER_CC_CCOND_NOCAPTURE (GPTIMER_CCCTL_01_CCOND_NOCAPTURE)
244 
249 #define DL_TIMER_CC_CCOND_TRIG_RISE (GPTIMER_CCCTL_01_CCOND_CC_TRIG_RISE)
250 
254 #define DL_TIMER_CC_CCOND_TRIG_FALL (GPTIMER_CCCTL_01_CCOND_CC_TRIG_FALL)
255 
259 #define DL_TIMER_CC_CCOND_TRIG_EDGE (GPTIMER_CCCTL_01_CCOND_CC_TRIG_EDGE)
260 
270 #define DL_TIMER_CC_OCTL_INIT_VAL_LOW (GPTIMER_OCTL_01_CCPIV_LOW)
271 
275 #define DL_TIMER_CC_OCTL_INIT_VAL_HIGH (GPTIMER_OCTL_01_CCPIV_HIGH)
276 
285 #define DL_TIMER_CC_OCTL_INV_OUT_ENABLED (GPTIMER_OCTL_01_CCPOINV_INV)
286 
290 #define DL_TIMER_CC_OCTL_INV_OUT_DISABLED (GPTIMER_OCTL_01_CCPOINV_NOINV)
291 
300 #define DL_TIMER_CC_OCTL_SRC_FUNCVAL (GPTIMER_OCTL_01_CCPO_FUNCVAL)
301 
305 #define DL_TIMER_CC_OCTL_SRC_LOAD (GPTIMER_OCTL_01_CCPO_LOAD)
306 
310 #define DL_TIMER_CC_OCTL_SRC_CMPVAL (GPTIMER_OCTL_01_CCPO_CMPVAL)
311 
315 #define DL_TIMER_CC_OCTL_SRC_ZERO (GPTIMER_OCTL_01_CCPO_ZERO)
316 
320 #define DL_TIMER_CC_OCTL_SRC_CAPCOND (GPTIMER_OCTL_01_CCPO_CAPCOND)
321 
325 #define DL_TIMER_CC_OCTL_SRC_FAULTCOND (GPTIMER_OCTL_01_CCPO_FAULTCOND)
326 
330 #define DL_TIMER_CC_OCTL_SRC_CC0_MIRR_ALL (GPTIMER_OCTL_01_CCPO_CC0_MIRROR_ALL)
331 
335 #define DL_TIMER_CC_OCTL_SRC_CC1_MIRR_ALL (GPTIMER_OCTL_01_CCPO_CC1_MIRROR_ALL)
336 
340 #define DL_TIMER_CC_OCTL_SRC_DEAD_BAND (GPTIMER_OCTL_01_CCPO_DEADBAND)
341 
345 #define DL_TIMER_CC_OCTL_SRC_CNTDIR (GPTIMER_OCTL_01_CCPO_CNTDIR)
346 
355 #define DL_TIMER_CC_FEXACT_DISABLED (GPTIMER_CCACT_01_FEXACT_DISABLED)
356 
360 #define DL_TIMER_CC_FEXACT_HIGH (GPTIMER_CCACT_01_FEXACT_CCP_HIGH)
361 
365 #define DL_TIMER_CC_FEXACT_LOW (GPTIMER_CCACT_01_FEXACT_CCP_LOW)
366 
370 #define DL_TIMER_CC_FEXACT_TOGGLE (GPTIMER_CCACT_01_FEXACT_CCP_TOGGLE)
371 
372 
376 #define DL_TIMER_CC_FEXACT_HIGHZ (GPTIMER_CCACT_01_FEXACT_CCP_HIGHZ)
377 
378 
388 #define DL_TIMER_CC_FENACT_DISABLED (GPTIMER_CCACT_01_FENACT_DISABLED)
389 
393 #define DL_TIMER_CC_FENACT_CCP_HIGH (GPTIMER_CCACT_01_FENACT_CCP_HIGH)
394 
398 #define DL_TIMER_CC_FENACT_CCP_LOW (GPTIMER_CCACT_01_FENACT_CCP_LOW)
399 
403 #define DL_TIMER_CC_FENACT_CCP_TOGGLE \
404  (GPTIMER_CCACT_01_FENACT_CCP_TOGGLE)
405 
409 #define DL_TIMER_CC_FENACT_HIGHZ (GPTIMER_CCACT_01_FENACT_CCP_HIGHZ)
410 
411 
420 #define DL_TIMER_CC_CUACT_DISABLED (GPTIMER_CCACT_01_CUACT_DISABLED)
421 
424 #define DL_TIMER_CC_CUACT_CCP_HIGH (GPTIMER_CCACT_01_CUACT_CCP_HIGH)
425 
428 #define DL_TIMER_CC_CUACT_CCP_LOW (GPTIMER_CCACT_01_CUACT_CCP_LOW)
429 
432 #define DL_TIMER_CC_CUACT_CCP_TOGGLE (GPTIMER_CCACT_01_CUACT_CCP_TOGGLE)
433 
442 #define DL_TIMER_CC_CDACT_DISABLED (GPTIMER_CCACT_01_CDACT_DISABLED)
443 
446 #define DL_TIMER_CC_CDACT_CCP_HIGH (GPTIMER_CCACT_01_CDACT_CCP_HIGH)
447 
450 #define DL_TIMER_CC_CDACT_CCP_LOW (GPTIMER_CCACT_01_CDACT_CCP_LOW)
451 
454 #define DL_TIMER_CC_CDACT_CCP_TOGGLE (GPTIMER_CCACT_01_CDACT_CCP_TOGGLE)
455 
466 #define DL_TIMER_CC_LACT_DISABLED (GPTIMER_CCACT_01_LACT_DISABLED)
467 
471 #define DL_TIMER_CC_LACT_CCP_HIGH (GPTIMER_CCACT_01_LACT_CCP_HIGH)
472 
476 #define DL_TIMER_CC_LACT_CCP_LOW (GPTIMER_CCACT_01_LACT_CCP_LOW)
477 
481 #define DL_TIMER_CC_LACT_CCP_TOGGLE (GPTIMER_CCACT_01_LACT_CCP_TOGGLE)
482 
491 #define DL_TIMER_CC_ZACT_DISABLED (GPTIMER_CCACT_01_ZACT_DISABLED)
492 
496 #define DL_TIMER_CC_ZACT_CCP_HIGH (GPTIMER_CCACT_01_ZACT_CCP_HIGH)
497 
501 #define DL_TIMER_CC_ZACT_CCP_LOW (GPTIMER_CCACT_01_ZACT_CCP_LOW)
502 
506 #define DL_TIMER_CC_ZACT_CCP_TOGGLE (GPTIMER_CCACT_01_ZACT_CCP_TOGGLE)
507 
517 #define DL_TIMER_CC_INPUT_INV_NOINVERT (GPTIMER_IFCTL_01_INV_NOINVERT)
518 
522 #define DL_TIMER_CC_INPUT_INV_INVERT (GPTIMER_IFCTL_01_INV_INVERT)
523 
533 #define DL_TIMER_CC_IN_SEL_CCPX (GPTIMER_IFCTL_01_ISEL_CCPX_INPUT)
534 
539 #define DL_TIMER_CC_IN_SEL_CCPX_PAIR (GPTIMER_IFCTL_01_ISEL_CCPX_INPUT_PAIR)
540 
544 #define DL_TIMER_CC_IN_SEL_CCP0 (GPTIMER_IFCTL_01_ISEL_CCP0_INPUT)
545 
549 #define DL_TIMER_CC_IN_SEL_TRIG (GPTIMER_IFCTL_01_ISEL_TRIG_INPUT)
550 
551 
555 #define DL_TIMER_CC_IN_SEL_CCP_XOR (GPTIMER_IFCTL_01_ISEL_CCP_XOR)
556 
560 #define DL_TIMER_CC_IN_SEL_FSUB0 (GPTIMER_IFCTL_01_ISEL_CCP_FSUB0)
561 
565 #define DL_TIMER_CC_IN_SEL_FSUB1 (GPTIMER_IFCTL_01_ISEL_CCP_FSUB1)
566 
570 #define DL_TIMER_CC_IN_SEL_COMP0 (GPTIMER_IFCTL_01_ISEL_CCP_COMP0)
571 
575 #define DL_TIMER_CC_IN_SEL_COMP1 (GPTIMER_IFCTL_01_ISEL_CCP_COMP1)
576 
580 #define DL_TIMER_CC_IN_SEL_COMP2 (GPTIMER_IFCTL_01_ISEL_CCP_COMP2)
581 
582 
583 
593 #define DL_TIMER_FAULT_SOURCE_COMP0_DISABLE \
594  (GPTIMER_FSCTL_FAC0EN_DISABLE | (GPTIMER_FCTL_FSENAC0_LOWCTIVE << 16))
595 
599 #define DL_TIMER_FAULT_SOURCE_COMP0_SENSE_LOW \
600  (GPTIMER_FSCTL_FAC0EN_ENABLE | (GPTIMER_FCTL_FSENAC0_LOWCTIVE << 16))
601 
605 #define DL_TIMER_FAULT_SOURCE_COMP0_SENSE_HIGH \
606  (GPTIMER_FSCTL_FAC0EN_ENABLE | (GPTIMER_FCTL_FSENAC0_HIGHACTIVE << 16))
607 
611 #define DL_TIMER_FAULT_SOURCE_COMP1_DISABLE \
612  (GPTIMER_FSCTL_FAC1EN_DISABLE | (GPTIMER_FCTL_FSENAC1_LOWCTIVE << 16))
613 
617 #define DL_TIMER_FAULT_SOURCE_COMP1_SENSE_LOW \
618  (GPTIMER_FSCTL_FAC1EN_ENABLE | (GPTIMER_FCTL_FSENAC1_LOWCTIVE << 16))
619 
623 #define DL_TIMER_FAULT_SOURCE_COMP1_SENSE_HIGH \
624  (GPTIMER_FSCTL_FAC1EN_ENABLE | (GPTIMER_FCTL_FSENAC1_HIGHACTIVE << 16))
625 
629 #define DL_TIMER_FAULT_SOURCE_COMP2_DISABLE \
630  (GPTIMER_FSCTL_FAC2EN_DISABLE | (GPTIMER_FCTL_FSENAC2_LOWCTIVE << 16))
631 
635 #define DL_TIMER_FAULT_SOURCE_COMP2_SENSE_LOW \
636  (GPTIMER_FSCTL_FAC2EN_ENABLE | (GPTIMER_FCTL_FSENAC2_LOWCTIVE << 16))
637 
641 #define DL_TIMER_FAULT_SOURCE_COMP2_SENSE_HIGH \
642  (GPTIMER_FSCTL_FAC2EN_ENABLE | (GPTIMER_FCTL_FSENAC2_HIGHACTIVE << 16))
643 
647 #define DL_TIMER_FAULT_SOURCE_EXTERNAL_0_DISABLE \
648  (GPTIMER_FSCTL_FEX0EN_DISABLE | (GPTIMER_FCTL_FSENEXT0_LOWCTIVE << 16))
649 
654 #define DL_TIMER_FAULT_SOURCE_EXTERNAL_0_SENSE_LOW \
655  (GPTIMER_FSCTL_FEX0EN_ENABLE | (GPTIMER_FCTL_FSENEXT0_LOWCTIVE << 16))
656 
661 #define DL_TIMER_FAULT_SOURCE_EXTERNAL_0_SENSE_HIGH \
662  (GPTIMER_FSCTL_FEX0EN_ENABLE | (GPTIMER_FCTL_FSENEXT0_HIGHACTIVE << 16))
663 
667 #define DL_TIMER_FAULT_SOURCE_EXTERNAL_1_DISABLE \
668  (GPTIMER_FSCTL_FEX1EN_DISABLE | (GPTIMER_FCTL_FSENEXT1_LOWCTIVE << 16))
669 
674 #define DL_TIMER_FAULT_SOURCE_EXTERNAL_1_SENSE_LOW \
675  (GPTIMER_FSCTL_FEX1EN_ENABLE | (GPTIMER_FCTL_FSENEXT1_LOWCTIVE << 16))
676 
681 #define DL_TIMER_FAULT_SOURCE_EXTERNAL_1_SENSE_HIGH \
682  (GPTIMER_FSCTL_FEX1EN_ENABLE | (GPTIMER_FCTL_FSENEXT1_HIGHACTIVE << 16))
683 
687 #define DL_TIMER_FAULT_SOURCE_EXTERNAL_2_DISABLE \
688  (GPTIMER_FSCTL_FEX2EN_DISABLE | (GPTIMER_FCTL_FSENEXT2_LOWCTIVE << 16))
689 
694 #define DL_TIMER_FAULT_SOURCE_EXTERNAL_2_SENSE_LOW \
695  (GPTIMER_FSCTL_FEX2EN_ENABLE | (GPTIMER_FCTL_FSENEXT2_LOWCTIVE << 16))
696 
701 #define DL_TIMER_FAULT_SOURCE_EXTERNAL_2_SENSE_HIGH \
702  (GPTIMER_FSCTL_FEX2EN_ENABLE | (GPTIMER_FCTL_FSENEXT2_HIGHACTIVE << 16))
703 
714 #define DL_TIMER_FAULT_CONFIG_TFIM_DISABLED (GPTIMER_FCTL_TFIM_DISABLED)
715 
719 #define DL_TIMER_FAULT_CONFIG_TFIM_ENABLED (GPTIMER_FCTL_TFIM_ENABLED)
720 
730 #define DL_TIMER_FAULT_CONFIG_FL_NO_LATCH (GPTIMER_FCTL_FL_NO_LATCH)
731 
735 #define DL_TIMER_FAULT_CONFIG_FL_LATCH_SW_CLR (GPTIMER_FCTL_FL_LATCH_SW_CLR)
736 
741 #define DL_TIMER_FAULT_CONFIG_FL_LATCH_Z_CLR (GPTIMER_FCTL_FL_LATCH_Z_CLR)
742 
747 #define DL_TIMER_FAULT_CONFIG_FL_LATCH_LD_CLR (GPTIMER_FCTL_FL_LATCH_LD_CLR)
748 
759 #define DL_TIMER_FAULT_CONFIG_FI_INDEPENDENT (GPTIMER_FCTL_FI_INDEPENDENT)
760 
765 #define DL_TIMER_FAULT_CONFIG_FI_DEPENDENT (GPTIMER_FCTL_FI_DEPENDENT)
766 
776 #define DL_TIMER_FAULT_CONFIG_FIEN_DISABLED (GPTIMER_FCTL_FIEN_DISABLED)
777 
781 #define DL_TIMER_FAULT_CONFIG_FIEN_ENABLED (GPTIMER_FCTL_FIEN_ENABLED)
782 
791 #define DL_TIMER_FAULT_FILTER_BYPASS (GPTIMER_FIFCTL_FILTEN_BYPASS)
792 
796 #define DL_TIMER_FAULT_FILTER_FILTERED (GPTIMER_FIFCTL_FILTEN_FILTERED)
797 
807 #define DL_TIMER_FAULT_FILTER_CPV_CONSEC_PER (GPTIMER_FIFCTL_CPV_CONSEC_PER)
808 
812 #define DL_TIMER_FAULT_FILTER_CPV_VOTING (GPTIMER_FIFCTL_CPV_VOTING)
813 
814 
823 #define DL_TIMER_FAULT_FILTER_FP_PER_3 (GPTIMER_FIFCTL_FP_PER_3)
824 
828 #define DL_TIMER_FAULT_FILTER_FP_PER_5 (GPTIMER_FIFCTL_FP_PER_5)
829 
833 #define DL_TIMER_FAULT_FILTER_FP_PER_8 (GPTIMER_FIFCTL_FP_PER_8)
834 
844 #define DL_TIMER_CC_INPUT_FILT_CPV_CONSEC_PER (GPTIMER_IFCTL_01_CPV_CONSECUTIVE)
845 
849 #define DL_TIMER_CC_INPUT_FILT_CPV_VOTING (GPTIMER_IFCTL_01_CPV_VOTING)
850 
851 
860 #define DL_TIMER_CC_INPUT_FILT_FP_PER_3 (GPTIMER_IFCTL_01_FP__3)
861 
865 #define DL_TIMER_CC_INPUT_FILT_FP_PER_5 (GPTIMER_IFCTL_01_FP__5)
866 
870 #define DL_TIMER_CC_INPUT_FILT_FP_PER_8 (GPTIMER_IFCTL_01_FP__8)
871 
881 #define DL_TIMER_INTERRUPT_ZERO_EVENT (GPTIMER_CPU_INT_IMASK_Z_SET)
882 
886 #define DL_TIMER_INTERRUPT_LOAD_EVENT (GPTIMER_CPU_INT_IMASK_L_SET)
887 
891 #define DL_TIMER_INTERRUPT_CC0_DN_EVENT (GPTIMER_CPU_INT_IMASK_CCD0_SET)
892 
896 #define DL_TIMER_INTERRUPT_CC1_DN_EVENT (GPTIMER_CPU_INT_IMASK_CCD1_SET)
897 
901 #define DL_TIMER_INTERRUPT_CC0_UP_EVENT (GPTIMER_CPU_INT_IMASK_CCU0_SET)
902 
906 #define DL_TIMER_INTERRUPT_CC1_UP_EVENT (GPTIMER_CPU_INT_IMASK_CCU1_SET)
907 
911 #define DL_TIMER_INTERRUPT_OVERFLOW_EVENT (GPTIMER_CPU_INT_IMASK_TOV_SET)
912 
916 #define DL_TIMER_INTERRUPT_DC_EVENT (GPTIMER_CPU_INT_IMASK_DC_SET)
917 
918 
922 #define DL_TIMER_INTERRUPT_QEIERR_EVENT (GPTIMER_CPU_INT_IMASK_QEIERR_SET)
923 
924 
934 #define DL_TIMER_EVENT_ZERO_EVENT (GPTIMER_GEN_EVENT0_IMASK_Z_SET)
935 
939 #define DL_TIMER_EVENT_LOAD_EVENT (GPTIMER_GEN_EVENT0_IMASK_L_SET)
940 
944 #define DL_TIMER_EVENT_CC0_DN_EVENT (GPTIMER_GEN_EVENT0_IMASK_CCD0_SET)
945 
949 #define DL_TIMER_EVENT_CC1_DN_EVENT (GPTIMER_GEN_EVENT0_IMASK_CCD1_SET)
950 
954 #define DL_TIMER_EVENT_CC0_UP_EVENT (GPTIMER_GEN_EVENT0_IMASK_CCU0_SET)
955 
959 #define DL_TIMER_EVENT_CC1_UP_EVENT (GPTIMER_GEN_EVENT0_IMASK_CCU1_SET)
960 
964 #define DL_TIMER_EVENT_OVERFLOW_EVENT (GPTIMER_GEN_EVENT0_IMASK_TOV_SET)
965 
969 #define DL_TIMER_EVENT_DC_EVENT (GPTIMER_GEN_EVENT0_IMASK_DC_SET)
970 
971 
975 #define DL_TIMER_EVENT_QEIERR_EVENT (GPTIMER_GEN_EVENT0_IMASK_QEIERR_SET)
976 
977 
987 #define DL_TIMER_CCP0_DIS_OUT_ADV_FORCE_LOW (GPTIMER_ODIS_C0CCP0_CCP_OUTPUT_LOW)
988 
992 #define DL_TIMER_CCP0_DIS_OUT_ADV_SET_BY_OCTL \
993  (GPTIMER_ODIS_C0CCP0_CCP_OUTPUT_OCTL)
994 
1003 #define DL_TIMER_CCP1_DIS_OUT_ADV_FORCE_LOW (GPTIMER_ODIS_C0CCP1_CCP_OUTPUT_LOW)
1004 
1008 #define DL_TIMER_CCP1_DIS_OUT_ADV_SET_BY_OCTL \
1009  (GPTIMER_ODIS_C0CCP1_CCP_OUTPUT_OCTL)
1010 
1018 #define DL_TIMER_CCP2_DIS_OUT_ADV_FORCE_LOW (GPTIMER_ODIS_C0CCP2_CCP_OUTPUT_LOW)
1019 
1023 #define DL_TIMER_CCP2_DIS_OUT_ADV_SET_BY_OCTL \
1024  (GPTIMER_ODIS_C0CCP2_CCP_OUTPUT_OCTL)
1025 
1034 #define DL_TIMER_CCP3_DIS_OUT_ADV_FORCE_LOW (GPTIMER_ODIS_C0CCP3_CCP_OUTPUT_LOW)
1035 
1039 #define DL_TIMER_CCP3_DIS_OUT_ADV_SET_BY_OCTL \
1040  (GPTIMER_ODIS_C0CCP3_CCP_OUTPUT_OCTL)
1041 
1043 /* clang-format on */
1044 
1046 typedef enum {
1048  DL_TIMER_CLOCK_BUSCLK = GPTIMER_CLKSEL_BUSCLK_SEL_ENABLE,
1050  DL_TIMER_CLOCK_MFCLK = GPTIMER_CLKSEL_MFCLK_SEL_ENABLE,
1052  DL_TIMER_CLOCK_LFCLK = GPTIMER_CLKSEL_LFCLK_SEL_ENABLE,
1054  DL_TIMER_CLOCK_DISABLE = GPTIMER_CLKSEL_LFCLK_SEL_DISABLE,
1055 } DL_TIMER_CLOCK;
1056 
1058 typedef enum {
1060  DL_TIMER_CLOCK_DIVIDE_1 = GPTIMER_CLKDIV_RATIO_DIV_BY_1,
1062  DL_TIMER_CLOCK_DIVIDE_2 = GPTIMER_CLKDIV_RATIO_DIV_BY_2,
1064  DL_TIMER_CLOCK_DIVIDE_3 = GPTIMER_CLKDIV_RATIO_DIV_BY_3,
1066  DL_TIMER_CLOCK_DIVIDE_4 = GPTIMER_CLKDIV_RATIO_DIV_BY_4,
1068  DL_TIMER_CLOCK_DIVIDE_5 = GPTIMER_CLKDIV_RATIO_DIV_BY_5,
1070  DL_TIMER_CLOCK_DIVIDE_6 = GPTIMER_CLKDIV_RATIO_DIV_BY_6,
1072  DL_TIMER_CLOCK_DIVIDE_7 = GPTIMER_CLKDIV_RATIO_DIV_BY_7,
1074  DL_TIMER_CLOCK_DIVIDE_8 = GPTIMER_CLKDIV_RATIO_DIV_BY_8,
1076 
1078 typedef enum {
1080  DL_TIMER_CCP_DIS_OUT_LOW = GPTIMER_ODIS_C0CCP0_CCP_OUTPUT_LOW,
1082  DL_TIMER_CCP_DIS_OUT_SET_BY_OCTL = GPTIMER_ODIS_C0CCP0_CCP_OUTPUT_OCTL,
1084 
1086 typedef enum {
1095 
1100 
1102 
1104 typedef enum {
1106  DL_TIMER_EXT_TRIG_SEL_TRIG_0 = GPTIMER_TSEL_ETSEL_TRIG0,
1108  DL_TIMER_EXT_TRIG_SEL_TRIG_1 = GPTIMER_TSEL_ETSEL_TRIG1,
1110  DL_TIMER_EXT_TRIG_SEL_TRIG_2 = GPTIMER_TSEL_ETSEL_TRIG2,
1112  DL_TIMER_EXT_TRIG_SEL_TRIG_3 = GPTIMER_TSEL_ETSEL_TRIG3,
1114  DL_TIMER_EXT_TRIG_SEL_TRIG_4 = GPTIMER_TSEL_ETSEL_TRIG4,
1116  DL_TIMER_EXT_TRIG_SEL_TRIG_5 = GPTIMER_TSEL_ETSEL_TRIG5,
1118  DL_TIMER_EXT_TRIG_SEL_TRIG_6 = GPTIMER_TSEL_ETSEL_TRIG6,
1120  DL_TIMER_EXT_TRIG_SEL_TRIG_7 = GPTIMER_TSEL_ETSEL_TRIG7,
1122  DL_TIMER_EXT_TRIG_SEL_TRIG_8 = GPTIMER_TSEL_ETSEL_TRIG8,
1124  DL_TIMER_EXT_TRIG_SEL_TRIG_9 = GPTIMER_TSEL_ETSEL_TRIG9,
1126  DL_TIMER_EXT_TRIG_SEL_TRIG_10 = GPTIMER_TSEL_ETSEL_TRIG10,
1128  DL_TIMER_EXT_TRIG_SEL_TRIG_11 = GPTIMER_TSEL_ETSEL_TRIG11,
1130  DL_TIMER_EXT_TRIG_SEL_TRIG_12 = GPTIMER_TSEL_ETSEL_TRIG12,
1132  DL_TIMER_EXT_TRIG_SEL_TRIG_13 = GPTIMER_TSEL_ETSEL_TRIG13,
1134  DL_TIMER_EXT_TRIG_SEL_TRIG_14 = GPTIMER_TSEL_ETSEL_TRIG14,
1136  DL_TIMER_EXT_TRIG_SEL_TRIG_15 = GPTIMER_TSEL_ETSEL_TRIG15,
1138  DL_TIMER_EXT_TRIG_SEL_TRIG_SUB_0 = GPTIMER_TSEL_ETSEL_TRIG_SUB0,
1140  DL_TIMER_EXT_TRIG_SEL_TRIG_SUB_1 = GPTIMER_TSEL_ETSEL_TRIG_SUB1,
1142 
1144 typedef enum {
1147  (GPTIMER_CTRCTL_CM_DOWN | GPTIMER_CTRCTL_REPEAT_REPEAT_0),
1150  (GPTIMER_CTRCTL_CM_DOWN | GPTIMER_CTRCTL_REPEAT_REPEAT_1),
1153  (GPTIMER_CTRCTL_CM_UP | GPTIMER_CTRCTL_REPEAT_REPEAT_0),
1156  (GPTIMER_CTRCTL_CM_UP | GPTIMER_CTRCTL_REPEAT_REPEAT_1),
1159  (GPTIMER_CTRCTL_CM_UP_DOWN | GPTIMER_CTRCTL_REPEAT_REPEAT_0),
1162  (GPTIMER_CTRCTL_CM_UP_DOWN | GPTIMER_CTRCTL_REPEAT_REPEAT_1),
1164 
1166 typedef enum {
1186 
1188 typedef enum {
1196 
1198 typedef enum {
1209 
1211 typedef enum {
1213  DL_TIMER_COUNT_MODE_DOWN = GPTIMER_CTRCTL_CM_DOWN,
1215  DL_TIMER_COUNT_MODE_UP_DOWN = GPTIMER_CTRCTL_CM_UP_DOWN,
1217  DL_TIMER_COUNT_MODE_UP = GPTIMER_CTRCTL_CM_UP,
1219 
1221 typedef enum {
1223  DL_TIMER_START = GPTIMER_CTRCTL_EN_ENABLED,
1225  DL_TIMER_STOP = GPTIMER_CTRCTL_EN_DISABLED,
1226 } DL_TIMER;
1227 
1229 typedef enum {
1230 
1232  DL_TIMER_INTERM_INT_ENABLED = GPTIMER_CCCTL_01_COC_COMPARE,
1234  DL_TIMER_INTERM_INT_DISABLED = GPTIMER_CCCTL_01_COC_CAPTURE,
1235 
1237 
1239 typedef enum {
1242  GPTIMER_CCCTL_01_CCOND_CC_TRIG_RISE,
1245  GPTIMER_CCCTL_01_CCOND_CC_TRIG_FALL,
1247 
1249 typedef enum {
1252  GPTIMER_CCCTL_01_ACOND_CC_TRIG_RISE,
1255  GPTIMER_CCCTL_01_ACOND_CC_TRIG_FALL,
1258  GPTIMER_CCCTL_01_ACOND_CC_TRIG_EDGE,
1260 
1262 typedef enum {
1264  DL_TIMER_PWM_MODE_EDGE_ALIGN = GPTIMER_CTRCTL_CM_DOWN,
1266  DL_TIMER_PWM_MODE_EDGE_ALIGN_UP = GPTIMER_CTRCTL_CM_UP,
1268  DL_TIMER_PWM_MODE_CENTER_ALIGN = GPTIMER_CTRCTL_CM_UP_DOWN,
1270 
1272 typedef enum {
1274  DL_TIMER_DEAD_BAND_MODE_0 = GPTIMER_DBCTL_M1_ENABLE_DISABLED,
1276  DL_TIMER_DEAD_BAND_MODE_1 = GPTIMER_DBCTL_M1_ENABLE_ENABLED,
1278 
1281 typedef enum {
1283  DL_TIMER_FAULT_ENTRY_CCP_DISABLED = GPTIMER_CCACT_01_FENACT_DISABLED,
1285  DL_TIMER_FAULT_ENTRY_CCP_HIGH = GPTIMER_CCACT_01_FENACT_CCP_HIGH,
1287  DL_TIMER_FAULT_ENTRY_CCP_LOW = GPTIMER_CCACT_01_FENACT_CCP_LOW,
1289  DL_TIMER_FAULT_ENTRY_CCP_TOGGLE = GPTIMER_CCACT_01_FENACT_CCP_TOGGLE,
1290 
1292  DL_TIMER_FAULT_ENTRY_CCP_HIGHZ = GPTIMER_CCACT_01_FENACT_CCP_HIGHZ,
1293 
1295 
1297 typedef enum {
1299  DL_TIMER_FAULT_EXIT_CCP_DISABLED = GPTIMER_CCACT_01_FEXACT_DISABLED,
1301  DL_TIMER_FAULT_EXIT_CCP_HIGH = GPTIMER_CCACT_01_FEXACT_CCP_HIGH,
1303  DL_TIMER_FAULT_EXIT_CCP_LOW = GPTIMER_CCACT_01_FEXACT_CCP_LOW,
1305  DL_TIMER_FAULT_EXIT_CCP_TOGGLE = GPTIMER_CCACT_01_FEXACT_CCP_TOGGLE,
1306 
1308  DL_TIMER_FAULT_EXIT_CCP_HIGHZ = GPTIMER_CCACT_01_FEXACT_CCP_HIGHZ,
1309 
1311 
1313 typedef enum {
1315  DL_TIMER_FAULT_EXIT_CTR_RESUME = GPTIMER_CTRCTL_FRB_RESUME,
1318  DL_TIMER_FAULT_EXIT_CTR_CVAE_ACTION = GPTIMER_CTRCTL_FRB_CVAE_ACTION,
1320 
1322 typedef enum {
1324  DL_TIMER_FAULT_ENTRY_CTR_CONT_COUNT = GPTIMER_CTRCTL_FB_CONT_COUNT,
1326  DL_TIMER_FAULT_ENTRY_CTR_SUSP_COUNT = GPTIMER_CTRCTL_FB_SUSP_COUNT,
1328 
1330 typedef enum {
1332  DL_TIMER_CROSS_TRIG_SRC_FSUB0 = GPTIMER_CTTRIGCTL_EVTCTTRIGSEL_FSUB0,
1334  DL_TIMER_CROSS_TRIG_SRC_FSUB1 = GPTIMER_CTTRIGCTL_EVTCTTRIGSEL_FSUB1,
1336  DL_TIMER_CROSS_TRIG_SRC_ZERO = GPTIMER_CTTRIGCTL_EVTCTTRIGSEL_Z,
1338  DL_TIMER_CROSS_TRIG_SRC_LOAD = GPTIMER_CTTRIGCTL_EVTCTTRIGSEL_L,
1340  DL_TIMER_CROSS_TRIG_SRC_CCD0 = GPTIMER_CTTRIGCTL_EVTCTTRIGSEL_CCD0,
1342  DL_TIMER_CROSS_TRIG_SRC_CCD1 = GPTIMER_CTTRIGCTL_EVTCTTRIGSEL_CCD1,
1344  DL_TIMER_CROSS_TRIG_SRC_CCD2 = GPTIMER_CTTRIGCTL_EVTCTTRIGSEL_CCD2,
1346  DL_TIMER_CROSS_TRIG_SRC_CCD3 = GPTIMER_CTTRIGCTL_EVTCTTRIGSEL_CCD3,
1348  DL_TIMER_CROSS_TRIG_SRC_CCU0 = GPTIMER_CTTRIGCTL_EVTCTTRIGSEL_CCU0,
1350  DL_TIMER_CROSS_TRIG_SRC_CCU1 = GPTIMER_CTTRIGCTL_EVTCTTRIGSEL_CCU1,
1352  DL_TIMER_CROSS_TRIG_SRC_CCU2 = GPTIMER_CTTRIGCTL_EVTCTTRIGSEL_CCU2,
1354  DL_TIMER_CROSS_TRIG_SRC_CCU3 = GPTIMER_CTTRIGCTL_EVTCTTRIGSEL_CCU3,
1355 
1357 
1359 typedef enum {
1361  DL_TIMER_CROSS_TRIGGER_INPUT_ENABLED = GPTIMER_CTTRIGCTL_EVTCTEN_ENABLE,
1363  DL_TIMER_CROSS_TRIGGER_INPUT_DISABLED = GPTIMER_CTTRIGCTL_EVTCTEN_DISABLED,
1365 
1367 typedef enum {
1369  DL_TIMER_CROSS_TRIGGER_MODE_ENABLED = GPTIMER_CTTRIGCTL_CTEN_ENABLE,
1371  DL_TIMER_CROSS_TRIGGER_MODE_DISABLED = GPTIMER_CTTRIGCTL_CTEN_DISABLED,
1373 
1375 typedef enum {
1377  DL_TIMER_IIDX_ZERO = GPTIMER_CPU_INT_IIDX_STAT_Z,
1379  DL_TIMER_IIDX_LOAD = GPTIMER_CPU_INT_IIDX_STAT_L,
1381  DL_TIMER_IIDX_CC0_DN = GPTIMER_CPU_INT_IIDX_STAT_CCD0,
1383  DL_TIMER_IIDX_CC1_DN = GPTIMER_CPU_INT_IIDX_STAT_CCD1,
1385  DL_TIMER_IIDX_CC2_DN = GPTIMER_CPU_INT_IIDX_STAT_CCD2,
1387  DL_TIMER_IIDX_CC3_DN = GPTIMER_CPU_INT_IIDX_STAT_CCD3,
1389  DL_TIMER_IIDX_CC0_UP = GPTIMER_CPU_INT_IIDX_STAT_CCU0,
1391  DL_TIMER_IIDX_CC1_UP = GPTIMER_CPU_INT_IIDX_STAT_CCU1,
1393  DL_TIMER_IIDX_CC2_UP = GPTIMER_CPU_INT_IIDX_STAT_CCU2,
1395  DL_TIMER_IIDX_CC3_UP = GPTIMER_CPU_INT_IIDX_STAT_CCU3,
1396 
1398  DL_TIMER_IIDX_CC4_DN = GPTIMER_CPU_INT_IIDX_STAT_CCD4,
1400  DL_TIMER_IIDX_CC5_DN = GPTIMER_CPU_INT_IIDX_STAT_CCD5,
1402  DL_TIMER_IIDX_CC4_UP = GPTIMER_CPU_INT_IIDX_STAT_CCU4,
1404  DL_TIMER_IIDX_CC5_UP = GPTIMER_CPU_INT_IIDX_STAT_CCU5,
1405 
1407  DL_TIMER_IIDX_FAULT = GPTIMER_CPU_INT_IIDX_STAT_F,
1409  DL_TIMER_IIDX_OVERFLOW = GPTIMER_CPU_INT_IIDX_STAT_TOV,
1413  DL_TIMER_IIDX_REPEAT_COUNT = GPTIMER_CPU_INT_IIDX_STAT_REPC,
1417  DL_TIMER_IIDX_DIR_CHANGE = GPTIMER_CPU_INT_IIDX_STAT_DC,
1418 } DL_TIMER_IIDX;
1419 
1421 typedef enum {
1427 
1429 typedef enum {
1435 
1437 typedef enum {
1443 
1445 typedef enum {
1459 
1461 typedef enum {
1463  DL_TIMER_DEBUG_RES_RESUME = GPTIMER_CTRCTL_DRB_RESUME,
1466  DL_TIMER_DEBUG_RES_CVAE_ACTION = GPTIMER_CTRCTL_DRB_CVAE_ACTION,
1468 
1470 typedef enum {
1472  DL_TIMER_CZC_CCCTL0_ZCOND = GPTIMER_CTRCTL_CZC_CCCTL0_ZCOND,
1474  DL_TIMER_CZC_CCCTL1_ZCOND = GPTIMER_CTRCTL_CZC_CCCTL1_ZCOND,
1476  DL_TIMER_CZC_CCCTL2_ZCOND = GPTIMER_CTRCTL_CZC_CCCTL2_ZCOND,
1478  DL_TIMER_CZC_CCCTL3_ZCOND = GPTIMER_CTRCTL_CZC_CCCTL3_ZCOND,
1480  DL_TIMER_CZC_QEI_2INP = GPTIMER_CTRCTL_CZC_QEI_2INP,
1482  DL_TIMER_CZC_QEI_3INP = GPTIMER_CTRCTL_CZC_QEI_3INP,
1483 } DL_TIMER_CZC;
1484 
1486 typedef enum {
1488  DL_TIMER_CAC_CCCTL0_ACOND = GPTIMER_CTRCTL_CAC_CCCTL0_ACOND,
1490  DL_TIMER_CAC_CCCTL1_ACOND = GPTIMER_CTRCTL_CAC_CCCTL1_ACOND,
1492  DL_TIMER_CAC_CCCTL2_ACOND = GPTIMER_CTRCTL_CAC_CCCTL2_ACOND,
1494  DL_TIMER_CAC_CCCTL3_ACOND = GPTIMER_CTRCTL_CAC_CCCTL3_ACOND,
1496  DL_TIMER_CAC_QEI_2INP = GPTIMER_CTRCTL_CAC_QEI_2INP,
1498  DL_TIMER_CAC_QEI_3INP = GPTIMER_CTRCTL_CAC_QEI_3INP,
1499 } DL_TIMER_CAC;
1500 
1502 typedef enum {
1504  DL_TIMER_CLC_CCCTL0_LCOND = GPTIMER_CTRCTL_CLC_CCCTL0_LCOND,
1506  DL_TIMER_CLC_CCCTL1_LCOND = GPTIMER_CTRCTL_CLC_CCCTL1_LCOND,
1508  DL_TIMER_CLC_CCCTL2_LCOND = GPTIMER_CTRCTL_CLC_CCCTL2_LCOND,
1510  DL_TIMER_CLC_CCCTL3_LCOND = GPTIMER_CTRCTL_CLC_CCCTL3_LCOND,
1512  DL_TIMER_CLC_QEI_2INP = GPTIMER_CTRCTL_CLC_QEI_2INP,
1514  DL_TIMER_CLC_QEI_3INP = GPTIMER_CTRCTL_CLC_QEI_3INP,
1515 } DL_TIMER_CLC;
1516 
1518 typedef enum {
1520  DL_TIMER_COUNT_AFTER_EN_LOAD_VAL = GPTIMER_CTRCTL_CVAE_LDVAL,
1522  DL_TIMER_COUNT_AFTER_EN_NO_CHANGE = GPTIMER_CTRCTL_CVAE_NOCHANGE,
1524  DL_TIMER_COUNT_AFTER_EN_ZERO = GPTIMER_CTRCTL_CVAE_ZEROVAL,
1525 
1527 
1529 typedef enum {
1531  DL_TIMER_REPEAT_MODE_DISABLED = GPTIMER_CTRCTL_REPEAT_REPEAT_0,
1533  DL_TIMER_REPEAT_MODE_ENABLED = GPTIMER_CTRCTL_REPEAT_REPEAT_1,
1536  DL_TIMER_REPEAT_MODE_ENABLED_DEBUG = GPTIMER_CTRCTL_REPEAT_REPEAT_3,
1538 
1540 typedef enum {
1542  DL_TIMER_CC_UPDATE_METHOD_IMMEDIATE = (GPTIMER_CCCTL_01_CCUPD_IMMEDIATELY),
1546  DL_TIMER_CC_UPDATE_METHOD_ZERO_EVT = (GPTIMER_CCCTL_01_CCUPD_ZERO_EVT),
1551  (GPTIMER_CCCTL_01_CCUPD_COMPARE_DOWN_EVT),
1556  (GPTIMER_CCCTL_01_CCUPD_COMPARE_UP_EVT),
1563  (GPTIMER_CCCTL_01_CCUPD_ZERO_LOAD_EVT),
1568  (GPTIMER_CCCTL_01_CCUPD_ZERO_RC_ZERO_EVT),
1573  DL_TIMER_CC_UPDATE_METHOD_TRIG_EVT = (GPTIMER_CCCTL_01_CCUPD_TRIG),
1575 
1577 typedef enum {
1580  DL_TIMER_SEC_COMP_DOWN_EVT_SEL_CC0 = (GPTIMER_CCCTL_01_CC2SELD_SEL_CCD0),
1583  DL_TIMER_SEC_COMP_DOWN_EVT_SEL_CC1 = (GPTIMER_CCCTL_01_CC2SELD_SEL_CCD1),
1586  DL_TIMER_SEC_COMP_DOWN_EVT_SEL_CC2 = (GPTIMER_CCCTL_01_CC2SELD_SEL_CCD2),
1589  DL_TIMER_SEC_COMP_DOWN_EVT_SEL_CC3 = (GPTIMER_CCCTL_01_CC2SELD_SEL_CCD3),
1592  DL_TIMER_SEC_COMP_DOWN_EVT_SEL_CC4 = (GPTIMER_CCCTL_01_CC2SELD_SEL_CCD4),
1595  DL_TIMER_SEC_COMP_DOWN_EVT_SEL_CC5 = (GPTIMER_CCCTL_01_CC2SELD_SEL_CCD5),
1597 
1599 typedef enum {
1602  DL_TIMER_SEC_COMP_UP_EVT_SEL_CC0 = (GPTIMER_CCCTL_01_CC2SELU_SEL_CCU0),
1605  DL_TIMER_SEC_COMP_UP_EVT_SEL_CC1 = (GPTIMER_CCCTL_01_CC2SELU_SEL_CCU1),
1608  DL_TIMER_SEC_COMP_UP_EVT_SEL_CC2 = (GPTIMER_CCCTL_01_CC2SELU_SEL_CCU2),
1611  DL_TIMER_SEC_COMP_UP_EVT_SEL_CC3 = (GPTIMER_CCCTL_01_CC2SELU_SEL_CCU3),
1614  DL_TIMER_SEC_COMP_UP_EVT_SEL_CC4 = (GPTIMER_CCCTL_01_CC2SELU_SEL_CCU4),
1617  DL_TIMER_SEC_COMP_UP_EVT_SEL_CC5 = (GPTIMER_CCCTL_01_CC2SELU_SEL_CCU5),
1619 
1621 typedef enum {
1623  DL_TIMER_SEC_COMP_UP_ACT_SEL_DISABLE = GPTIMER_CCACT_01_CC2UACT_DISABLED,
1626  DL_TIMER_SEC_COMP_UP_ACT_SEL_HIGH = GPTIMER_CCACT_01_CC2UACT_CCP_HIGH,
1629  DL_TIMER_SEC_COMP_UP_ACT_SEL_LOW = GPTIMER_CCACT_01_CC2UACT_CCP_LOW,
1632  DL_TIMER_SEC_COMP_UP_ACT_SEL_TOGGLE = GPTIMER_CCACT_01_CC2UACT_CCP_TOGGLE,
1634 
1636 typedef enum {
1638  DL_TIMER_SEC_COMP_DOWN_ACT_SEL_DISABLE = GPTIMER_CCACT_01_CC2DACT_DISABLED,
1641  DL_TIMER_SEC_COMP_DOWN_ACT_SEL_HIGH = GPTIMER_CCACT_01_CC2DACT_CCP_HIGH,
1644  DL_TIMER_SEC_COMP_DOWN_ACT_SEL_LOW = GPTIMER_CCACT_01_CC2DACT_CCP_LOW,
1648  GPTIMER_CCACT_01_CC2DACT_CCP_TOGGLE,
1650 
1652 typedef enum {
1655  DL_TIMER_SUPP_COMP_EVT_RC_DISABLED = (GPTIMER_CCCTL_01_SCERCNEZ_DISABLED),
1658  DL_TIMER_SUPP_COMP_EVT_RC_ENABLED = (GPTIMER_CCCTL_01_SCERCNEZ_ENABLED),
1660 
1662 typedef enum {
1664  DL_TIMER_FORCE_OUT_DISABLED = (GPTIMER_CCACT_01_SWFRCACT_DISABLED),
1666  DL_TIMER_FORCE_OUT_HIGH = (GPTIMER_CCACT_01_SWFRCACT_CCP_HIGH),
1668  DL_TIMER_FORCE_OUT_LOW = (GPTIMER_CCACT_01_SWFRCACT_CCP_LOW),
1669 
1671 
1673 typedef enum {
1676  (GPTIMER_CCACT_01_SWFRCACT_CMPL_DISABLED),
1678  DL_TIMER_FORCE_CMPL_OUT_HIGH = (GPTIMER_CCACT_01_SWFRCACT_CMPL_CCP_HIGH),
1680  DL_TIMER_FORCE_CMPL_OUT_LOW = (GPTIMER_CCACT_01_SWFRCACT_CMPL_CCP_LOW),
1681 
1683 
1685 typedef enum {
1689  (GPTIMER_PDBGCTL_FREE_STOP | GPTIMER_PDBGCTL_SOFT_IMMEDIATE),
1693  (GPTIMER_PDBGCTL_FREE_STOP | GPTIMER_PDBGCTL_SOFT_DELAYED),
1696  (GPTIMER_PDBGCTL_FREE_RUN | GPTIMER_PDBGCTL_SOFT_DELAYED),
1698 
1702 typedef struct {
1704  DL_TIMER_CLOCK clockSel;
1707  DL_TIMER_CLOCK_DIVIDE divideRatio;
1709  uint8_t prescale;
1711 
1715 typedef struct {
1721  uint32_t period;
1723  DL_TIMER startTimer;
1726  DL_TIMER_INTERM_INT genIntermInt;
1730  uint16_t counterVal;
1732 
1736 typedef struct {
1738  DL_TIMER_CAPTURE_MODE captureMode;
1741  uint32_t period;
1743  DL_TIMER startTimer;
1746  DL_TIMER_CAPTURE_EDGE_DETECTION_MODE edgeCaptMode;
1748  DL_TIMER_INPUT_CHAN inputChan;
1751  uint32_t inputInvMode;
1753 
1757 typedef struct {
1759  DL_TIMER_CAPTURE_MODE captureMode;
1762  uint16_t period;
1764  DL_TIMER startTimer;
1766 
1770 typedef struct {
1772  DL_TIMER_CAPTURE_COMBINED_MODE captureMode;
1775  uint32_t period;
1777  DL_TIMER startTimer;
1779  DL_TIMER_INPUT_CHAN inputChan;
1782  uint32_t inputInvMode;
1784 
1788 typedef struct {
1790  DL_TIMER_COMPARE_MODE compareMode;
1795  uint16_t count;
1798  DL_TIMER_COMPARE_EDGE_DETECTION_MODE edgeDetectMode;
1800  DL_TIMER_INPUT_CHAN inputChan;
1803  uint32_t inputInvMode;
1805  DL_TIMER startTimer;
1807 
1811 typedef struct {
1813  DL_TIMER_COMPARE_MODE compareMode;
1818  uint16_t count;
1821  DL_TIMER_COMPARE_EDGE_DETECTION_MODE edgeDetectMode;
1823  DL_TIMER startTimer;
1825 
1829 typedef struct {
1836  uint32_t period;
1838  DL_TIMER_PWM_MODE pwmMode;
1840  DL_TIMER startTimer;
1842 
1849 typedef struct {
1851  uint32_t sub0PortConf;
1853  uint32_t sub1PortConf;
1855  uint32_t pub0PortConf;
1857  uint32_t pub1PortConf;
1859  uint32_t clkDivConf;
1861  uint32_t clockPscConf;
1863  uint32_t clkSelConf;
1865  uint32_t countClkConf;
1867  uint32_t intEvnt0Conf;
1869  uint32_t intEvnt1Conf;
1871  uint32_t intEvnt2Conf;
1873  uint32_t ccpDirConf;
1875  uint32_t outDisConf;
1877  uint32_t crossTrigCtl;
1879  uint32_t tSelConf;
1881  uint32_t crossTrigConf;
1885  uint32_t cntVal;
1887  uint32_t cntCtlConf;
1889  uint32_t loadVal;
1891  uint32_t cc0Val;
1893  uint32_t cc1Val;
1895  uint32_t cc0Ctl;
1897  uint32_t cc1Ctl;
1899  uint32_t cc0OutCtl;
1901  uint32_t cc1OutCtl;
1903  uint32_t cc0ActCtl;
1905  uint32_t cc1ActCtl;
1908  uint32_t in0FiltCtl;
1911  uint32_t in1FiltCtl;
1916 
1918 typedef enum {
1921  (GPTIMER_CTRCTL_CLC_QEI_2INP | GPTIMER_CTRCTL_CAC_QEI_2INP |
1922  GPTIMER_CTRCTL_CZC_QEI_2INP),
1925  (GPTIMER_CTRCTL_CLC_QEI_3INP | GPTIMER_CTRCTL_CAC_QEI_3INP |
1926  GPTIMER_CTRCTL_CZC_QEI_3INP),
1928 
1930 typedef enum {
1932  DL_TIMER_QEI_DIR_DOWN = GPTIMER_QDIR_DIR_DOWN,
1934  DL_TIMER_QEI_DIR_UP = GPTIMER_QDIR_DIR_UP,
1936 
1943 __STATIC_INLINE void DL_Timer_enablePower(GPTIMER_Regs *gptimer)
1944 {
1945  gptimer->GPRCM.PWREN =
1946  (GPTIMER_PWREN_KEY_UNLOCK_W | GPTIMER_PWREN_ENABLE_ENABLE);
1947 }
1948 
1955 __STATIC_INLINE void DL_Timer_disablePower(GPTIMER_Regs *gptimer)
1956 {
1957  gptimer->GPRCM.PWREN =
1958  (GPTIMER_PWREN_KEY_UNLOCK_W | GPTIMER_PWREN_ENABLE_DISABLE);
1959 }
1960 
1970 __STATIC_INLINE bool DL_Timer_isPowerEnabled(GPTIMER_Regs *gptimer)
1971 {
1972  return ((gptimer->GPRCM.PWREN & GPTIMER_PWREN_ENABLE_MASK) ==
1973  GPTIMER_PWREN_ENABLE_ENABLE);
1974 }
1975 
1982 __STATIC_INLINE void DL_Timer_reset(GPTIMER_Regs *gptimer)
1983 {
1984  gptimer->GPRCM.RSTCTL =
1985  (GPTIMER_RSTCTL_KEY_UNLOCK_W | GPTIMER_RSTCTL_RESETSTKYCLR_CLR |
1986  GPTIMER_RSTCTL_RESETASSERT_ASSERT);
1987 }
1988 
1998 __STATIC_INLINE bool DL_Timer_isReset(GPTIMER_Regs *gptimer)
1999 {
2000  return ((gptimer->GPRCM.STAT & GPTIMER_STAT_RESETSTKY_MASK) ==
2001  GPTIMER_STAT_RESETSTKY_RESET);
2002 }
2003 
2012 __STATIC_INLINE void DL_Timer_setCCPDirection(
2013  GPTIMER_Regs *gptimer, uint32_t ccpConfig)
2014 {
2015  gptimer->COMMONREGS.CCPD = (ccpConfig);
2016 }
2017 
2026 __STATIC_INLINE uint32_t DL_Timer_getCCPDirection(GPTIMER_Regs *gptimer)
2027 {
2028  return (gptimer->COMMONREGS.CCPD);
2029 }
2030 
2041 __STATIC_INLINE void DL_Timer_setCCPOutputDisabled(GPTIMER_Regs *gptimer,
2042  DL_TIMER_CCP_DIS_OUT ccp0Config, DL_TIMER_CCP_DIS_OUT ccp1Config)
2043 {
2044  DL_Common_updateReg(&gptimer->COMMONREGS.ODIS,
2045  (((uint32_t) ccp0Config) |
2046  ((uint32_t) ccp1Config << GPTIMER_ODIS_C0CCP1_OFS)),
2047  (GPTIMER_ODIS_C0CCP0_MASK | GPTIMER_ODIS_C0CCP1_MASK));
2048 }
2049 
2068  GPTIMER_Regs *gptimer, uint32_t ccpOdisConfig)
2069 {
2070  DL_Common_updateReg(&gptimer->COMMONREGS.ODIS, (ccpOdisConfig),
2071  (GPTIMER_ODIS_C0CCP0_MASK | GPTIMER_ODIS_C0CCP1_MASK |
2072  GPTIMER_ODIS_C0CCP2_MASK | GPTIMER_ODIS_C0CCP3_MASK));
2073 }
2074 
2083  GPTIMER_Regs *gptimer, DL_Timer_ClockConfig *config);
2084 
2093  GPTIMER_Regs *gptimer, DL_Timer_ClockConfig *config);
2094 
2101 __STATIC_INLINE void DL_Timer_enableClock(GPTIMER_Regs *gptimer)
2102 {
2103  gptimer->COMMONREGS.CCLKCTL = (GPTIMER_CCLKCTL_CLKEN_ENABLED);
2104 }
2105 
2112 __STATIC_INLINE void DL_Timer_disableClock(GPTIMER_Regs *gptimer)
2113 {
2114  gptimer->COMMONREGS.CCLKCTL = (GPTIMER_CCLKCTL_CLKEN_DISABLED);
2115 }
2116 
2125 __STATIC_INLINE bool DL_Timer_isClockEnabled(GPTIMER_Regs *gptimer)
2126 {
2127  return ((gptimer->COMMONREGS.CCLKCTL & GPTIMER_CCLKCTL_CLKEN_MASK) ==
2128  GPTIMER_CCLKCTL_CLKEN_ENABLED);
2129 }
2130 
2146 __STATIC_INLINE void DL_Timer_configCrossTrigger(GPTIMER_Regs *gptimer,
2147  DL_TIMER_CROSS_TRIG_SRC ctSource,
2148  DL_TIMER_CROSS_TRIGGER_INPUT enInTrigCond,
2149  DL_TIMER_CROSS_TRIGGER_MODE enCrossTrig)
2150 {
2151  gptimer->COMMONREGS.CTTRIGCTL =
2152  (uint32_t)((uint32_t) ctSource | (uint32_t) enInTrigCond |
2153  (uint32_t) enCrossTrig);
2154 }
2155 
2165 __STATIC_INLINE void DL_Timer_configCrossTriggerSrc(
2166  GPTIMER_Regs *gptimer, DL_TIMER_CROSS_TRIG_SRC ctSource)
2167 {
2168  DL_Common_updateReg(&gptimer->COMMONREGS.CTTRIGCTL, (uint32_t) ctSource,
2169  GPTIMER_CTTRIGCTL_EVTCTTRIGSEL_MASK);
2170 }
2171 
2184  GPTIMER_Regs *gptimer, DL_TIMER_CROSS_TRIGGER_INPUT enInTrigCond)
2185 {
2186  DL_Common_updateReg(&gptimer->COMMONREGS.CTTRIGCTL,
2187  (uint32_t) enInTrigCond, GPTIMER_CTTRIGCTL_EVTCTEN_MASK);
2188 }
2189 
2200  GPTIMER_Regs *gptimer, DL_TIMER_CROSS_TRIGGER_MODE enCrossTrig)
2201 {
2202  DL_Common_updateReg(&gptimer->COMMONREGS.CTTRIGCTL, (uint32_t) enCrossTrig,
2203  GPTIMER_CTTRIGCTL_CTEN_MASK);
2204 }
2205 
2216 __STATIC_INLINE uint32_t DL_Timer_getCrossTriggerConfig(GPTIMER_Regs *gptimer)
2217 {
2218  return (gptimer->COMMONREGS.CTTRIGCTL);
2219 }
2220 
2230 __STATIC_INLINE DL_TIMER_CROSS_TRIG_SRC DL_Timer_getCrossTriggerSrc(
2231  GPTIMER_Regs *gptimer)
2232 {
2233  uint32_t ctSource =
2234  gptimer->COMMONREGS.CTTRIGCTL & GPTIMER_CTTRIGCTL_EVTCTTRIGSEL_MASK;
2235 
2236  return (DL_TIMER_CROSS_TRIG_SRC)(ctSource);
2237 }
2238 
2248 __STATIC_INLINE DL_TIMER_CROSS_TRIGGER_INPUT DL_Timer_getCrossTriggerInputCond(
2249  GPTIMER_Regs *gptimer)
2250 {
2251  uint32_t triggerCondition =
2252  gptimer->COMMONREGS.CTTRIGCTL & GPTIMER_CTTRIGCTL_EVTCTEN_MASK;
2253 
2254  return (DL_TIMER_CROSS_TRIGGER_INPUT)(triggerCondition);
2255 }
2256 
2266 __STATIC_INLINE DL_TIMER_CROSS_TRIGGER_MODE DL_Timer_getCrossTriggerEnable(
2267  GPTIMER_Regs *gptimer)
2268 {
2269  uint32_t mode =
2270  gptimer->COMMONREGS.CTTRIGCTL & GPTIMER_CTTRIGCTL_CTEN_MASK;
2271 
2272  return (DL_TIMER_CROSS_TRIGGER_MODE)(mode);
2273 }
2274 
2282 __STATIC_INLINE void DL_Timer_generateCrossTrigger(GPTIMER_Regs *gptimer)
2283 {
2284  gptimer->COMMONREGS.CTTRIG = GPTIMER_CTTRIG_TRIG_GENERATE;
2285 }
2286 
2297 __STATIC_INLINE void DL_Timer_enableShadowFeatures(GPTIMER_Regs *gptimer)
2298 {
2299  gptimer->COMMONREGS.GCTL |= GPTIMER_GCTL_SHDWLDEN_ENABLE;
2300 }
2301 
2312 __STATIC_INLINE void DL_Timer_disableShadowFeatures(GPTIMER_Regs *gptimer)
2313 {
2314  gptimer->COMMONREGS.GCTL &= ~(GPTIMER_GCTL_SHDWLDEN_ENABLE);
2315 }
2316 
2328 __STATIC_INLINE void DL_Timer_setLoadValue(
2329  GPTIMER_Regs *gptimer, uint32_t value)
2330 {
2331  gptimer->COUNTERREGS.LOAD = value;
2332 }
2333 
2343 __STATIC_INLINE uint32_t DL_Timer_getLoadValue(GPTIMER_Regs *gptimer)
2344 {
2345  return (gptimer->COUNTERREGS.LOAD & GPTIMER_LOAD_LD_MAXIMUM);
2346 }
2347 
2356 __STATIC_INLINE uint32_t DL_Timer_getTimerCount(GPTIMER_Regs *gptimer)
2357 {
2358  return (gptimer->COUNTERREGS.CTR & GPTIMER_CTR_CCTR_MASK);
2359 }
2360 
2378 __STATIC_INLINE void DL_Timer_setTimerCount(
2379  GPTIMER_Regs *gptimer, uint32_t value)
2380 {
2381  gptimer->COUNTERREGS.CTR = value;
2382 }
2383 
2395 __STATIC_INLINE void DL_Timer_enableLZEventSuppression(GPTIMER_Regs *gptimer)
2396 {
2397  gptimer->COUNTERREGS.CTRCTL |= (GPTIMER_CTRCTL_SLZERCNEZ_ENABLED);
2398 }
2399 
2411 __STATIC_INLINE void DL_Timer_disableLZEventSuppression(GPTIMER_Regs *gptimer)
2412 {
2413  gptimer->COUNTERREGS.CTRCTL &= ~(GPTIMER_CTRCTL_SLZERCNEZ_ENABLED);
2414 }
2415 
2428  GPTIMER_Regs *gptimer)
2429 {
2430  return (GPTIMER_CTRCTL_SLZERCNEZ_ENABLED ==
2431  (gptimer->COUNTERREGS.CTRCTL & GPTIMER_CTRCTL_SLZERCNEZ_MASK));
2432 }
2433 
2446  GPTIMER_Regs *gptimer, DL_TIMER_DEBUG_RES debResB)
2447 {
2448  DL_Common_updateReg(&gptimer->COUNTERREGS.CTRCTL, (uint32_t) debResB,
2449  GPTIMER_CTRCTL_DRB_MASK);
2450 }
2451 
2460 __STATIC_INLINE DL_TIMER_DEBUG_RES DL_Timer_getDebugReleaseBehavior(
2461  GPTIMER_Regs *gptimer)
2462 {
2463  uint32_t debResB = gptimer->COUNTERREGS.CTRCTL & GPTIMER_CTRCTL_DRB_MASK;
2464 
2465  return ((DL_TIMER_DEBUG_RES)(debResB));
2466 }
2467 
2482 __STATIC_INLINE void DL_Timer_setCounterControl(GPTIMER_Regs *gptimer,
2483  DL_TIMER_CZC zeroCtl, DL_TIMER_CAC advCtl, DL_TIMER_CLC loadCtl)
2484 {
2485  DL_Common_updateReg(&gptimer->COUNTERREGS.CTRCTL,
2486  ((uint32_t) zeroCtl | (uint32_t) advCtl | (uint32_t) loadCtl),
2487  (GPTIMER_CTRCTL_CZC_MASK | GPTIMER_CTRCTL_CAC_MASK |
2488  GPTIMER_CTRCTL_CLC_MASK));
2489 }
2490 
2498 __STATIC_INLINE DL_TIMER_CZC DL_Timer_getCounterZeroControl(
2499  GPTIMER_Regs *gptimer)
2500 {
2501  uint32_t zeroCtl = gptimer->COUNTERREGS.CTRCTL & GPTIMER_CTRCTL_CZC_MASK;
2502 
2503  return ((DL_TIMER_CZC)(zeroCtl));
2504 }
2505 
2513 __STATIC_INLINE DL_TIMER_CAC DL_Timer_getCounterAdvanceControl(
2514  GPTIMER_Regs *gptimer)
2515 {
2516  uint32_t advCtl = gptimer->COUNTERREGS.CTRCTL & GPTIMER_CTRCTL_CAC_MASK;
2517 
2518  return ((DL_TIMER_CAC)(advCtl));
2519 }
2520 
2528 __STATIC_INLINE DL_TIMER_CLC DL_Timer_getCounterLoadControl(
2529  GPTIMER_Regs *gptimer)
2530 {
2531  uint32_t loadCtl = gptimer->COUNTERREGS.CTRCTL & GPTIMER_CTRCTL_CLC_MASK;
2532 
2533  return ((DL_TIMER_CLC)(loadCtl));
2534 }
2535 
2544 __STATIC_INLINE void DL_Timer_setCounterMode(
2545  GPTIMER_Regs *gptimer, DL_TIMER_COUNT_MODE countMode)
2546 {
2547  DL_Common_updateReg(&gptimer->COUNTERREGS.CTRCTL, ((uint32_t) countMode),
2548  (GPTIMER_CTRCTL_CM_MASK));
2549 }
2550 
2559 __STATIC_INLINE DL_TIMER_COUNT_MODE DL_Timer_getCounterMode(
2560  GPTIMER_Regs *gptimer)
2561 {
2562  uint32_t cmMode = (gptimer->COUNTERREGS.CTRCTL & GPTIMER_CTRCTL_CM_MASK);
2563  return ((DL_TIMER_COUNT_MODE) cmMode);
2564 }
2565 
2576  GPTIMER_Regs *gptimer, DL_TIMER_COUNT_AFTER_EN cvae)
2577 {
2578  DL_Common_updateReg(&gptimer->COUNTERREGS.CTRCTL, (uint32_t) cvae,
2579  GPTIMER_CTRCTL_CVAE_MASK);
2580 }
2581 
2590 __STATIC_INLINE DL_TIMER_COUNT_AFTER_EN DL_Timer_getCounterValueAfterEnable(
2591  GPTIMER_Regs *gptimer)
2592 {
2593  uint32_t cvae = gptimer->COUNTERREGS.CTRCTL & GPTIMER_CTRCTL_CVAE_MASK;
2594 
2595  return ((DL_TIMER_COUNT_AFTER_EN)(cvae));
2596 }
2597 
2610 __STATIC_INLINE void DL_Timer_setCounterRepeatMode(
2611  GPTIMER_Regs *gptimer, DL_TIMER_REPEAT_MODE repeatMode)
2612 {
2613  DL_Common_updateReg(&gptimer->COUNTERREGS.CTRCTL, (uint32_t) repeatMode,
2614  GPTIMER_CTRCTL_REPEAT_MASK);
2615 }
2616 
2624 __STATIC_INLINE DL_TIMER_REPEAT_MODE DL_Timer_getCounterRepeatMode(
2625  GPTIMER_Regs *gptimer)
2626 {
2627  uint32_t repeatMode =
2628  gptimer->COUNTERREGS.CTRCTL & GPTIMER_CTRCTL_REPEAT_MASK;
2629 
2630  return ((DL_TIMER_REPEAT_MODE)(repeatMode));
2631 }
2632 
2646  GPTIMER_Regs *gptimer, DL_Timer_TimerConfig *config);
2647 
2662  GPTIMER_Regs *gptimer, DL_Timer_CaptureConfig *config);
2663 
2678  GPTIMER_Regs *gptimer, DL_Timer_CaptureTriggerConfig *config);
2679 
2693  GPTIMER_Regs *gptimer, DL_Timer_CaptureCombinedConfig *config);
2694 
2708  GPTIMER_Regs *gptimer, DL_Timer_CompareConfig *config);
2709 
2724  GPTIMER_Regs *gptimer, DL_Timer_CompareTriggerConfig *config);
2725 
2737 void DL_Timer_initPWMMode(GPTIMER_Regs *gptimer, DL_Timer_PWMConfig *config);
2738 
2746 __STATIC_INLINE void DL_Timer_resetCounterMode(GPTIMER_Regs *gptimer)
2747 {
2748  gptimer->COUNTERREGS.CTRCTL = GPTIMER_CTRCTL_EN_DISABLED;
2749 }
2750 
2762  GPTIMER_Regs *gptimer, uint32_t value, DL_TIMER_CC_INDEX ccIndex);
2763 
2778  GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex);
2779 
2796 void DL_Timer_setCaptureCompareCtl(GPTIMER_Regs *gptimer, uint32_t ccMode,
2797  uint32_t ccCondMask, DL_TIMER_CC_INDEX ccIndex);
2798 
2813  GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex);
2814 
2826 void DL_Timer_setSecondCompSrcDn(GPTIMER_Regs *gptimer,
2827  DL_TIMER_SEC_COMP_DOWN_EVT secCompDn, DL_TIMER_CC_INDEX ccIndex);
2828 
2839  GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex);
2840 
2852 void DL_Timer_setSecondCompSrcUp(GPTIMER_Regs *gptimer,
2853  DL_TIMER_SEC_COMP_UP_EVT secCompUp, DL_TIMER_CC_INDEX ccIndex);
2854 
2865  GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex);
2866 
2877  GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex);
2878 
2889  GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex);
2890 
2902 void DL_Timer_setCaptCompUpdateMethod(GPTIMER_Regs *gptimer,
2903  DL_TIMER_CC_UPDATE_METHOD ccUpdtMode, DL_TIMER_CC_INDEX ccIndex);
2904 
2915  GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex);
2916 
2932 void DL_Timer_setCaptureCompareOutCtl(GPTIMER_Regs *gptimer, uint32_t ccpIV,
2933  uint32_t ccpOInv, uint32_t ccpO, DL_TIMER_CC_INDEX ccIndex);
2934 
2948  GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex);
2949 
2964  GPTIMER_Regs *gptimer, uint32_t actionsMask, DL_TIMER_CC_INDEX ccIndex);
2965 
2980  GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex);
2981 
2997 void DL_Timer_setSecondCompActionDn(GPTIMER_Regs *gptimer,
2998  DL_TIMER_SEC_COMP_DOWN_ACT_SEL secCompDnAct, DL_TIMER_CC_INDEX ccIndex);
3010 DL_TIMER_SEC_COMP_DOWN_ACT_SEL DL_Timer_getSecondCompActionDn(
3011  GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex);
3012 
3028 void DL_Timer_setSecondCompActionUp(GPTIMER_Regs *gptimer,
3029  DL_TIMER_SEC_COMP_UP_ACT_SEL secCompUpAct, DL_TIMER_CC_INDEX ccIndex);
3030 
3042 DL_TIMER_SEC_COMP_UP_ACT_SEL DL_Timer_getSecondCompActionUp(
3043  GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex);
3044 
3060 void DL_Timer_overrideCCPOut(GPTIMER_Regs *gptimer, DL_TIMER_FORCE_OUT out,
3061  DL_TIMER_FORCE_CMPL_OUT outComp, DL_TIMER_CC_INDEX ccIndex);
3062 
3076 void DL_Timer_setCaptureCompareInput(GPTIMER_Regs *gptimer, uint32_t inv,
3077  uint32_t isel, DL_TIMER_CC_INDEX ccIndex);
3078 
3092  GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex);
3093 
3107 void DL_Timer_setCaptureCompareInputFilter(GPTIMER_Regs *gptimer, uint32_t cpv,
3108  uint32_t fp, DL_TIMER_CC_INDEX ccIndex);
3109 
3123  GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex);
3124 
3134  GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex);
3135 
3145  GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex);
3146 
3160  GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex);
3161 
3177 __STATIC_INLINE void DL_Timer_setDeadBand(GPTIMER_Regs *gptimer,
3178  uint16_t falldelay, uint16_t risedelay, uint32_t mode)
3179 {
3180  gptimer->COUNTERREGS.DBCTL =
3181  (((uint32_t) falldelay << GPTIMER_DBCTL_FALLDELAY_OFS) |
3182  (uint32_t) risedelay | mode);
3183 }
3184 
3193 __STATIC_INLINE uint16_t DL_Timer_getDeadBandFallDelay(GPTIMER_Regs *gptimer)
3194 {
3195  uint32_t temp =
3196  (gptimer->COUNTERREGS.DBCTL & GPTIMER_DBCTL_FALLDELAY_MASK) >>
3197  GPTIMER_DBCTL_FALLDELAY_OFS;
3198 
3199  return ((uint16_t) temp);
3200 }
3201 
3210 __STATIC_INLINE uint16_t DL_Timer_getDeadBandRiseDelay(GPTIMER_Regs *gptimer)
3211 {
3212  return (uint16_t)(
3213  (gptimer->COUNTERREGS.DBCTL) & (GPTIMER_DBCTL_RISEDELAY_MASK));
3214 }
3215 
3226  GPTIMER_Regs *gptimer, DL_TIMER_EXT_TRIG_SEL trigSel)
3227 {
3228  DL_Common_updateReg(&gptimer->COUNTERREGS.TSEL, (uint32_t) trigSel,
3229  GPTIMER_TSEL_ETSEL_MASK);
3230 }
3231 
3241 __STATIC_INLINE DL_TIMER_EXT_TRIG_SEL DL_Timer_getExternalTriggerEvent(
3242  GPTIMER_Regs *gptimer)
3243 {
3244  uint32_t trigSel = gptimer->COUNTERREGS.TSEL & GPTIMER_TSEL_ETSEL_MASK;
3245 
3246  return (DL_TIMER_EXT_TRIG_SEL)(trigSel);
3247 }
3248 
3256 __STATIC_INLINE void DL_Timer_enableExternalTrigger(GPTIMER_Regs *gptimer)
3257 {
3258  gptimer->COUNTERREGS.TSEL |= (GPTIMER_TSEL_TE_ENABLED);
3259 }
3260 
3268 __STATIC_INLINE void DL_Timer_disableExternalTrigger(GPTIMER_Regs *gptimer)
3269 {
3270  gptimer->COUNTERREGS.TSEL &= ~(GPTIMER_TSEL_TE_ENABLED);
3271 }
3272 
3284 __STATIC_INLINE bool DL_Timer_isExternalTriggerEnabled(GPTIMER_Regs *gptimer)
3285 {
3286  return ((gptimer->COUNTERREGS.TSEL & GPTIMER_TSEL_TE_MASK) ==
3287  GPTIMER_TSEL_TE_ENABLED);
3288 }
3289 
3304 __STATIC_INLINE void DL_Timer_setRepeatCounter(
3305  GPTIMER_Regs *gptimer, uint8_t repeatCount)
3306 {
3307  gptimer->COUNTERREGS.RCLD = (repeatCount);
3308 }
3309 
3323 __STATIC_INLINE uint8_t DL_Timer_getRepeatCounter(GPTIMER_Regs *gptimer)
3324 {
3325  return ((uint8_t)(gptimer->COUNTERREGS.RC & GPTIMER_RC_RC_MASK));
3326 }
3327 
3335 __STATIC_INLINE void DL_Timer_enablePhaseLoad(GPTIMER_Regs *gptimer)
3336 {
3337  gptimer->COUNTERREGS.CTRCTL |= (GPTIMER_CTRCTL_PLEN_ENABLED);
3338 }
3339 
3348 __STATIC_INLINE void DL_Timer_disablePhaseLoad(GPTIMER_Regs *gptimer)
3349 {
3350  gptimer->COUNTERREGS.CTRCTL &= ~(GPTIMER_CTRCTL_PLEN_ENABLED);
3351 }
3352 
3364 __STATIC_INLINE bool DL_Timer_isPhaseLoadEnabled(GPTIMER_Regs *gptimer)
3365 {
3366  return (GPTIMER_CTRCTL_PLEN_ENABLED ==
3367  (gptimer->COUNTERREGS.CTRCTL & GPTIMER_CTRCTL_PLEN_MASK));
3368 }
3369 
3378 __STATIC_INLINE void DL_Timer_setPhaseLoadValue(
3379  GPTIMER_Regs *gptimer, uint16_t value)
3380 {
3381  gptimer->COUNTERREGS.PL = (value);
3382 }
3383 
3392 __STATIC_INLINE uint16_t DL_Timer_getPhaseLoadValue(GPTIMER_Regs *gptimer)
3393 {
3394  return ((uint16_t)(gptimer->COUNTERREGS.PL & GPTIMER_PL_PHASE_MASK));
3395 }
3396 
3404 __STATIC_INLINE void DL_Timer_startCounter(GPTIMER_Regs *gptimer)
3405 {
3406  gptimer->COUNTERREGS.CTRCTL |= (GPTIMER_CTRCTL_EN_ENABLED);
3407 }
3408 
3416 __STATIC_INLINE void DL_Timer_stopCounter(GPTIMER_Regs *gptimer)
3417 {
3418  gptimer->COUNTERREGS.CTRCTL &= ~(GPTIMER_CTRCTL_EN_ENABLED);
3419 }
3420 
3432 __STATIC_INLINE bool DL_Timer_isRunning(GPTIMER_Regs *gptimer)
3433 {
3434  return ((gptimer->COUNTERREGS.CTRCTL & GPTIMER_CTRCTL_EN_MASK) ==
3435  GPTIMER_CTRCTL_EN_ENABLED);
3436 }
3437 
3448 __STATIC_INLINE void DL_Timer_configQEI(GPTIMER_Regs *gptimer,
3449  DL_TIMER_QEI_MODE mode, uint32_t invert, DL_TIMER_CC_INDEX ccIndex)
3450 {
3451  gptimer->COUNTERREGS.CCCTL_01[ccIndex] =
3452  GPTIMER_CCCTL_01_CCOND_CC_TRIG_RISE | GPTIMER_CCCTL_01_COC_CAPTURE;
3453  gptimer->COUNTERREGS.IFCTL_01[ccIndex] =
3454  GPTIMER_IFCTL_01_ISEL_CCPX_INPUT | invert;
3455  gptimer->COUNTERREGS.CTRCTL =
3456  (uint32_t) mode | GPTIMER_CTRCTL_CVAE_NOCHANGE |
3457  GPTIMER_CTRCTL_CM_UP_DOWN | GPTIMER_CTRCTL_REPEAT_REPEAT_1 |
3458  GPTIMER_CTRCTL_EN_ENABLED;
3459 }
3460 
3468 __STATIC_INLINE DL_TIMER_QEI_DIRECTION DL_Timer_getQEIDirection(
3469  GPTIMER_Regs *gptimer)
3470 {
3471  uint32_t qeiDirection = gptimer->COUNTERREGS.QDIR & GPTIMER_QDIR_DIR_MASK;
3472 
3473  return (DL_TIMER_QEI_DIRECTION)(qeiDirection);
3474 }
3475 
3488 __STATIC_INLINE void DL_Timer_setFaultConfig(
3489  GPTIMER_Regs *gptimer, uint32_t faultConfMask)
3490 {
3491  DL_Common_updateReg(&gptimer->COUNTERREGS.FCTL, faultConfMask,
3492  (GPTIMER_FCTL_TFIM_MASK | GPTIMER_FCTL_FL_MASK | GPTIMER_FCTL_FI_MASK |
3493  GPTIMER_FCTL_FIEN_MASK));
3494 }
3495 
3507 __STATIC_INLINE uint32_t DL_Timer_getFaultConfig(GPTIMER_Regs *gptimer)
3508 {
3509  return (gptimer->COUNTERREGS.FCTL &
3510  (GPTIMER_FCTL_FIEN_MASK | GPTIMER_FCTL_FI_MASK |
3511  GPTIMER_FCTL_FL_MASK | GPTIMER_FCTL_TFIM_MASK));
3512 }
3513 
3520 __STATIC_INLINE void DL_Timer_enableFaultInput(GPTIMER_Regs *gptimer)
3521 {
3522  gptimer->COUNTERREGS.FCTL |= (GPTIMER_FCTL_FIEN_ENABLED);
3523 }
3524 
3531 __STATIC_INLINE void DL_Timer_disableFaultInput(GPTIMER_Regs *gptimer)
3532 {
3533  gptimer->COUNTERREGS.FCTL &= ~(GPTIMER_FCTL_FIEN_ENABLED);
3534 }
3535 
3544 __STATIC_INLINE bool DL_Timer_isFaultInputEnabled(GPTIMER_Regs *gptimer)
3545 {
3546  return (GPTIMER_FCTL_FIEN_ENABLED ==
3547  (gptimer->COUNTERREGS.FCTL & GPTIMER_FCTL_FIEN_MASK));
3548 }
3549 
3556 __STATIC_INLINE void DL_Timer_enableClockFaultDetection(GPTIMER_Regs *gptimer)
3557 {
3558  gptimer->COMMONREGS.FSCTL |= (GPTIMER_FSCTL_FCEN_DISABLE);
3559 }
3560 
3567 __STATIC_INLINE void DL_Timer_disableClockFaultDetection(GPTIMER_Regs *gptimer)
3568 {
3569  gptimer->COMMONREGS.FSCTL &= ~(GPTIMER_FSCTL_FCEN_DISABLE);
3570 }
3571 
3581  GPTIMER_Regs *gptimer)
3582 {
3583  return (GPTIMER_FSCTL_FCEN_ENABLE ==
3584  (gptimer->COMMONREGS.FSCTL & GPTIMER_FSCTL_FCEN_MASK));
3585 }
3586 
3596 void DL_Timer_setFaultSourceConfig(GPTIMER_Regs *gptimer, uint32_t source);
3597 
3606 uint32_t DL_Timer_getFaultSourceConfig(GPTIMER_Regs *gptimer);
3607 
3622  GPTIMER_Regs *gptimer, uint32_t filten, uint32_t cpv, uint32_t fp)
3623 {
3624  gptimer->COUNTERREGS.FIFCTL = (filten | cpv | fp);
3625 }
3626 
3636 __STATIC_INLINE uint32_t DL_Timer_getFaultInputFilterConfig(
3637  GPTIMER_Regs *gptimer)
3638 {
3639  return (gptimer->COUNTERREGS.FIFCTL);
3640 }
3641 
3655 __STATIC_INLINE void DL_Timer_configFaultOutputAction(GPTIMER_Regs *gptimer,
3656  DL_TIMER_FAULT_ENTRY_CCP faultEntry, DL_TIMER_FAULT_EXIT_CCP faultExit,
3657  DL_TIMER_CC_INDEX ccIndex)
3658 {
3659  DL_Common_updateReg(&gptimer->COUNTERREGS.CCACT_01[ccIndex],
3660  ((uint32_t) faultEntry | (uint32_t) faultExit),
3661  (GPTIMER_CCACT_01_FEXACT_MASK | GPTIMER_CCACT_01_FENACT_MASK));
3662 }
3663 
3675 __STATIC_INLINE void DL_Timer_configFaultCounter(GPTIMER_Regs *gptimer,
3676  DL_TIMER_FAULT_ENTRY_CTR faultEntry, DL_TIMER_FAULT_EXIT_CTR faultExit)
3677 {
3678  DL_Common_updateReg(&gptimer->COUNTERREGS.CTRCTL,
3679  ((uint32_t) faultEntry | (uint32_t) faultExit),
3680  (GPTIMER_CTRCTL_FRB_MASK | GPTIMER_CTRCTL_FB_MASK));
3681 }
3682 
3691 __STATIC_INLINE void DL_Timer_enableInterrupt(
3692  GPTIMER_Regs *gptimer, uint32_t interruptMask)
3693 {
3694  gptimer->CPU_INT.IMASK |= interruptMask;
3695 }
3696 
3705 __STATIC_INLINE void DL_Timer_disableInterrupt(
3706  GPTIMER_Regs *gptimer, uint32_t interruptMask)
3707 {
3708  gptimer->CPU_INT.IMASK &= ~(interruptMask);
3709 }
3710 
3723 __STATIC_INLINE uint32_t DL_Timer_getEnabledInterrupts(
3724  GPTIMER_Regs *gptimer, uint32_t interruptMask)
3725 {
3726  return (gptimer->CPU_INT.IMASK & interruptMask);
3727 }
3728 
3746 __STATIC_INLINE uint32_t DL_Timer_getEnabledInterruptStatus(
3747  GPTIMER_Regs *gptimer, uint32_t interruptMask)
3748 {
3749  return (gptimer->CPU_INT.MIS & interruptMask);
3750 }
3751 
3767 __STATIC_INLINE uint32_t DL_Timer_getRawInterruptStatus(
3768  GPTIMER_Regs *gptimer, uint32_t interruptMask)
3769 {
3770  return (gptimer->CPU_INT.RIS & interruptMask);
3771 }
3772 
3785 __STATIC_INLINE DL_TIMER_IIDX DL_Timer_getPendingInterrupt(
3786  GPTIMER_Regs *gptimer)
3787 {
3788  return ((DL_TIMER_IIDX) gptimer->CPU_INT.IIDX);
3789 }
3790 
3799 __STATIC_INLINE void DL_Timer_clearInterruptStatus(
3800  GPTIMER_Regs *gptimer, uint32_t interruptMask)
3801 {
3802  gptimer->CPU_INT.ICLR = interruptMask;
3803 }
3804 
3814 __STATIC_INLINE void DL_Timer_setPublisherChanID(
3815  GPTIMER_Regs *gptimer, DL_TIMER_PUBLISHER_INDEX index, uint8_t chanID)
3816 {
3817  volatile uint32_t *pReg = &gptimer->FPUB_0;
3818 
3819  *(pReg + (uint32_t) index) = (chanID & GPTIMER_FPUB_0_CHANID_MAXIMUM);
3820 }
3821 
3832 __STATIC_INLINE uint8_t DL_Timer_getPublisherChanID(
3833  GPTIMER_Regs *gptimer, DL_TIMER_PUBLISHER_INDEX index)
3834 {
3835  volatile uint32_t *pReg = &gptimer->FPUB_0;
3836 
3837  return (
3838  (uint8_t)(*(pReg + (uint32_t) index) & GPTIMER_FPUB_0_CHANID_MASK));
3839 }
3840 
3850 __STATIC_INLINE void DL_Timer_setSubscriberChanID(
3851  GPTIMER_Regs *gptimer, DL_TIMER_SUBSCRIBER_INDEX index, uint8_t chanID)
3852 {
3853  volatile uint32_t *pReg = &gptimer->FSUB_0;
3854 
3855  *(pReg + (uint32_t) index) = (chanID & GPTIMER_FSUB_0_CHANID_MAXIMUM);
3856 }
3857 
3868 __STATIC_INLINE uint8_t DL_Timer_getSubscriberChanID(
3869  GPTIMER_Regs *gptimer, DL_TIMER_SUBSCRIBER_INDEX index)
3870 {
3871  volatile uint32_t *pReg = &gptimer->FSUB_0;
3872 
3873  return (
3874  (uint8_t)(*(pReg + (uint32_t) index) & GPTIMER_FSUB_0_CHANID_MASK));
3875 }
3876 
3887 __STATIC_INLINE void DL_Timer_enableEvent(
3888  GPTIMER_Regs *gptimer, DL_TIMER_EVENT_ROUTE index, uint32_t eventMask)
3889 {
3890  volatile uint32_t *pReg = (volatile uint32_t *) &gptimer->GEN_EVENT0.IMASK;
3891 
3892  *(pReg + (uint32_t) index) |= (eventMask);
3893 }
3894 
3905 __STATIC_INLINE void DL_Timer_disableEvent(
3906  GPTIMER_Regs *gptimer, DL_TIMER_EVENT_ROUTE index, uint32_t eventMask)
3907 {
3908  volatile uint32_t *pReg = (volatile uint32_t *) &gptimer->GEN_EVENT0.IMASK;
3909 
3910  *(pReg + (uint32_t) index) &= ~(eventMask);
3911 }
3912 
3927 __STATIC_INLINE uint32_t DL_Timer_getEnabledEvents(
3928  GPTIMER_Regs *gptimer, DL_TIMER_EVENT_ROUTE index, uint32_t eventMask)
3929 {
3930  volatile uint32_t *pReg = (volatile uint32_t *) &gptimer->GEN_EVENT0.IMASK;
3931 
3932  return ((*(pReg + (uint32_t) index) & eventMask));
3933 }
3934 
3954 __STATIC_INLINE uint32_t DL_Timer_getEnabledEventStatus(
3955  GPTIMER_Regs *gptimer, DL_TIMER_EVENT_ROUTE index, uint32_t eventMask)
3956 {
3957  const volatile uint32_t *pReg =
3958  (const volatile uint32_t *) &gptimer->GEN_EVENT0.MIS;
3959 
3960  return ((*(pReg + (uint32_t) index) & eventMask));
3961 }
3962 
3980 __STATIC_INLINE uint32_t DL_Timer_getRawEventsStatus(
3981  GPTIMER_Regs *gptimer, DL_TIMER_EVENT_ROUTE index, uint32_t eventMask)
3982 {
3983  const volatile uint32_t *pReg =
3984  (const volatile uint32_t *) &gptimer->GEN_EVENT0.RIS;
3985 
3986  return ((*(pReg + (uint32_t) index) & eventMask));
3987 }
3988 
3999 __STATIC_INLINE void DL_Timer_clearEventsStatus(
4000  GPTIMER_Regs *gptimer, DL_TIMER_EVENT_ROUTE index, uint32_t eventMask)
4001 {
4002  volatile uint32_t *pReg = (volatile uint32_t *) &gptimer->GEN_EVENT0.ICLR;
4003 
4004  *(pReg + (uint32_t) index) |= (eventMask);
4005 }
4006 
4023  GPTIMER_Regs *gptimer, DL_Timer_backupConfig *ptr);
4024 
4042  GPTIMER_Regs *gptimer, DL_Timer_backupConfig *ptr, bool restoreCounter);
4043 
4052 __STATIC_INLINE void DL_Timer_setCoreHaltBehavior(
4053  GPTIMER_Regs *gptimer, DL_TIMER_CORE_HALT haltMode)
4054 {
4055  gptimer->PDBGCTL = ((uint32_t) haltMode & (GPTIMER_PDBGCTL_FREE_MASK |
4056  GPTIMER_PDBGCTL_SOFT_MASK));
4057 }
4058 
4069  GPTIMER_Regs *gptimer)
4070 {
4071  uint32_t haltMode = (gptimer->PDBGCTL & (GPTIMER_PDBGCTL_FREE_MASK |
4072  GPTIMER_PDBGCTL_SOFT_MASK));
4073 
4074  return (DL_TIMER_CORE_HALT)(haltMode);
4075 }
4076 
4077 #ifdef __cplusplus
4078 }
4079 #endif
4080 
4081 #endif /* __MSPM0_HAS_TIMER_A__ || __MSPM0_HAS_TIMER_G__ */
4082 
4083 #else
4084 #warning \
4085  "TI highly recommends accessing timer with dl_timera and dl_timerg only."
4086 #endif /* ti_dl_dl_timera__include ti_dl_dl_timerg__include*/
4087 
4088 #endif /* ti_dl_dl_timer__include */
4089 
__STATIC_INLINE void DL_Timer_setSubscriberChanID(GPTIMER_Regs *gptimer, DL_TIMER_SUBSCRIBER_INDEX index, uint8_t chanID)
Sets the event subscriber channel id.
Definition: dl_timer.h:3850
__STATIC_INLINE DL_TIMER_COUNT_MODE DL_Timer_getCounterMode(GPTIMER_Regs *gptimer)
Get timer counter couting mode.
Definition: dl_timer.h:2559
__STATIC_INLINE void DL_Timer_setDeadBand(GPTIMER_Regs *gptimer, uint16_t falldelay, uint16_t risedelay, uint32_t mode)
Sets dead band fall and raise delay.
Definition: dl_timer.h:3177
Definition: dl_timer.h:1377
__STATIC_INLINE bool DL_Timer_isFaultInputEnabled(GPTIMER_Regs *gptimer)
Specifies if fault input is enabled.
Definition: dl_timer.h:3544
Definition: dl_timer.h:1215
__STATIC_INLINE void DL_Common_updateReg(volatile uint32_t *reg, uint32_t val, uint32_t mask)
Writes value to specified register - retaining bits unaffected by mask.
Definition: dl_common.h:63
__STATIC_INLINE void DL_Timer_generateCrossTrigger(GPTIMER_Regs *gptimer)
Generates a synchronized trigger condition across all trigger enabled Timer instances.
Definition: dl_timer.h:2282
uint16_t count
Definition: dl_timer.h:1795
__STATIC_INLINE void DL_Timer_stopCounter(GPTIMER_Regs *gptimer)
Stops Timer Counter.
Definition: dl_timer.h:3416
void DL_Timer_initCaptureTriggerMode(GPTIMER_Regs *gptimer, DL_Timer_CaptureTriggerConfig *config)
Configure timer in edge count, period capture, edge time or pulse-width capture mode using the trigge...
DL_TIMER_TIMER_MODE timerMode
Definition: dl_timer.h:1718
DL_TIMER_COMPARE_MODE
Definition: dl_timer.h:1198
DL_TIMER_CC_UPDATE_METHOD
Definition: dl_timer.h:1540
DL_TIMER_INTERM_INT
Definition: dl_timer.h:1229
DL_TIMER_CORE_HALT
Definition: dl_timer.h:1685
__STATIC_INLINE void DL_Timer_setFaultConfig(GPTIMER_Regs *gptimer, uint32_t faultConfMask)
Sets Fault Configuration.
Definition: dl_timer.h:3488
DL_TIMER_CAPTURE_MODE captureMode
Definition: dl_timer.h:1738
uint32_t inputInvMode
Definition: dl_timer.h:1751
Definition: dl_timer.h:1608
Definition: dl_timer.h:1680
__STATIC_INLINE void DL_Timer_configQEI(GPTIMER_Regs *gptimer, DL_TIMER_QEI_MODE mode, uint32_t invert, DL_TIMER_CC_INDEX ccIndex)
Configure Quadrature Encoder Interface (QEI)
Definition: dl_timer.h:3448
DL_TIMER_CCP_DIS_OUT
Definition: dl_timer.h:1078
Definition: dl_timer.h:1181
Definition: dl_timer.h:1602
__STATIC_INLINE void DL_Timer_setCCPOutputDisabled(GPTIMER_Regs *gptimer, DL_TIMER_CCP_DIS_OUT ccp0Config, DL_TIMER_CCP_DIS_OUT ccp1Config)
Sets CCP Output configuration when timer is disabled.
Definition: dl_timer.h:2041
__STATIC_INLINE DL_TIMER_CROSS_TRIGGER_MODE DL_Timer_getCrossTriggerEnable(GPTIMER_Regs *gptimer)
Checks if Cross Timer Trigger is enabled or disabled.
Definition: dl_timer.h:2266
__STATIC_INLINE uint32_t DL_Timer_getEnabledEvents(GPTIMER_Regs *gptimer, DL_TIMER_EVENT_ROUTE index, uint32_t eventMask)
Check which timer events are enabled.
Definition: dl_timer.h:3927
void DL_Timer_initCaptureMode(GPTIMER_Regs *gptimer, DL_Timer_CaptureConfig *config)
Configure timer in edge count, period capture, edge time or pulse-width capture mode Initializes all ...
bool DL_Timer_saveConfiguration(GPTIMER_Regs *gptimer, DL_Timer_backupConfig *ptr)
Saves Timer configuration before entering STOP or STANDBY mode. Only necessary for PG 1...
__STATIC_INLINE void DL_Timer_setFaultInputFilterConfig(GPTIMER_Regs *gptimer, uint32_t filten, uint32_t cpv, uint32_t fp)
Set Fault Input Filtering Configuration.
Definition: dl_timer.h:3621
Definition: dl_timer.h:1447
__STATIC_INLINE bool DL_Timer_isExternalTriggerEnabled(GPTIMER_Regs *gptimer)
Checks if external trigger is enabled.
Definition: dl_timer.h:3284
__STATIC_INLINE uint32_t DL_Timer_getCrossTriggerConfig(GPTIMER_Regs *gptimer)
Get Cross Timer Trigger configuration.
Definition: dl_timer.h:2216
Configuration struct for DL_Timer_initCompareTriggerMode.
Definition: dl_timer.h:1811
Definition: dl_timer.h:1094
void DL_Timer_setSecondCompSrcDn(GPTIMER_Regs *gptimer, DL_TIMER_SEC_COMP_DOWN_EVT secCompDn, DL_TIMER_CC_INDEX ccIndex)
Configures source for second capture compare down event.
DL_TIMER_CROSS_TRIGGER_INPUT
Definition: dl_timer.h:1359
Definition: dl_timer.h:1476
__STATIC_INLINE void DL_Timer_disableInterrupt(GPTIMER_Regs *gptimer, uint32_t interruptMask)
Disable timer interrupts.
Definition: dl_timer.h:3705
uint32_t countClkConf
Definition: dl_timer.h:1865
Definition: dl_timer.h:1136
Definition: dl_timer.h:1617
Definition: dl_timer.h:1336
__STATIC_INLINE void DL_Timer_enableClockFaultDetection(GPTIMER_Regs *gptimer)
Enables source clock fault detection.
Definition: dl_timer.h:3556
void DL_Timer_enableSuppressionOfCompEvent(GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex)
Enables suppression of compare event if repeat counter is not equal to zero.
Definition: dl_timer.h:1611
Definition: dl_timer.h:1668
__STATIC_INLINE void DL_Timer_clearEventsStatus(GPTIMER_Regs *gptimer, DL_TIMER_EVENT_ROUTE index, uint32_t eventMask)
Clear pending timer events.
Definition: dl_timer.h:3999
DL_TIMER
Definition: dl_timer.h:1221
Definition: dl_timer.h:1655
Definition: dl_timer.h:1498
Definition: dl_timer.h:1555
__STATIC_INLINE DL_TIMER_CROSS_TRIGGER_INPUT DL_Timer_getCrossTriggerInputCond(GPTIMER_Regs *gptimer)
Get Input Trigger condition for Cross Timer Trigger.
Definition: dl_timer.h:2248
Definition: dl_timer.h:1381
Definition: dl_timer.h:1504
DL_TIMER_PWM_MODE
Definition: dl_timer.h:1262
DL_TIMER_TIMER_MODE
Definition: dl_timer.h:1144
DL_TIMER startTimer
Definition: dl_timer.h:1764
__STATIC_INLINE bool DL_Timer_isPhaseLoadEnabled(GPTIMER_Regs *gptimer)
Checks if phase load enabled.
Definition: dl_timer.h:3364
void DL_Timer_disableSuppressionOfCompEvent(GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex)
Disables suppression of compare event if repeat counter is not equal to zero.
Definition: dl_timer.h:1666
Definition: dl_timer.h:1595
DL_TIMER_CLC
Definition: dl_timer.h:1502
void DL_Timer_setClockConfig(GPTIMER_Regs *gptimer, DL_Timer_ClockConfig *config)
Configure timer source clock.
__STATIC_INLINE void DL_Timer_setExternalTriggerEvent(GPTIMER_Regs *gptimer, DL_TIMER_EXT_TRIG_SEL trigSel)
Set External Trigger Event.
Definition: dl_timer.h:3225
__STATIC_INLINE void DL_Timer_startCounter(GPTIMER_Regs *gptimer)
Starts Timer Counter.
Definition: dl_timer.h:3404
void DL_Timer_setSecondCompActionUp(GPTIMER_Regs *gptimer, DL_TIMER_SEC_COMP_UP_ACT_SEL secCompUpAct, DL_TIMER_CC_INDEX ccIndex)
Sets second comparator up counting timer channel output action.
Definition: dl_timer.h:1274
__STATIC_INLINE void DL_Timer_setCCPDirection(GPTIMER_Regs *gptimer, uint32_t ccpConfig)
Sets CCP Direction.
Definition: dl_timer.h:2012
void DL_Timer_overrideCCPOut(GPTIMER_Regs *gptimer, DL_TIMER_FORCE_OUT out, DL_TIMER_FORCE_CMPL_OUT outComp, DL_TIMER_CC_INDEX ccIndex)
Overrides the timer CCP output.
__STATIC_INLINE uint16_t DL_Timer_getDeadBandRiseDelay(GPTIMER_Regs *gptimer)
Gets dead band rise delay.
Definition: dl_timer.h:3210
Definition: dl_timer.h:1108
uint32_t intEvnt0Conf
Definition: dl_timer.h:1867
uint8_t prescale
Definition: dl_timer.h:1709
Definition: dl_timer.h:1344
Definition: dl_timer.h:1338
Definition: dl_timer.h:1132
__STATIC_INLINE void DL_Timer_enableClock(GPTIMER_Regs *gptimer)
Enable timer clock.
Definition: dl_timer.h:2101
Definition: dl_timer.h:1207
Definition: dl_timer.h:1692
Definition: dl_timer.h:1204
Definition: dl_timer.h:1441
Definition: dl_timer.h:1482
DL_TIMER_FAULT_EXIT_CTR
Definition: dl_timer.h:1313
__STATIC_INLINE bool DL_Timer_isRunning(GPTIMER_Regs *gptimer)
Check if timer is actively running.
Definition: dl_timer.h:3432
void DL_Timer_setFaultSourceConfig(GPTIMER_Regs *gptimer, uint32_t source)
Configures the fault source and and fault input mode.
Definition: dl_timer.h:1675
DL_TIMER startTimer
Definition: dl_timer.h:1805
Definition: dl_timer.h:1490
Definition: dl_timer.h:1508
__STATIC_INLINE bool DL_Timer_isClockEnabled(GPTIMER_Regs *gptimer)
Returns if timer clock is disabled.
Definition: dl_timer.h:2125
DL_TIMER_COMPARE_EDGE_DETECTION_MODE edgeDetectMode
Definition: dl_timer.h:1798
__STATIC_INLINE DL_TIMER_CORE_HALT DL_Timer_getCoreHaltBehavior(GPTIMER_Regs *gptimer)
Get timer behavior when the core is halted.
Definition: dl_timer.h:4068
Definition: dl_timer.h:1387
Definition: dl_timer.h:1301
Definition: dl_timer.h:1546
Definition: dl_timer.h:1409
__STATIC_INLINE uint32_t DL_Timer_getRawEventsStatus(GPTIMER_Regs *gptimer, DL_TIMER_EVENT_ROUTE index, uint32_t eventMask)
Check interrupt flag of any timer event.
Definition: dl_timer.h:3980
Definition: dl_timer.h:1395
__STATIC_INLINE void DL_Timer_setDebugReleaseBehavior(GPTIMER_Regs *gptimer, DL_TIMER_DEBUG_RES debResB)
Configures timer behavior during debug release/exit.
Definition: dl_timer.h:2445
__STATIC_INLINE void DL_Timer_setCounterRepeatMode(GPTIMER_Regs *gptimer, DL_TIMER_REPEAT_MODE repeatMode)
Configure timer repeat counter mode.
Definition: dl_timer.h:2610
Definition: dl_timer.h:1161
uint32_t period
Definition: dl_timer.h:1775
__STATIC_INLINE DL_TIMER_CAC DL_Timer_getCounterAdvanceControl(GPTIMER_Regs *gptimer)
Get timer counter advance control operation.
Definition: dl_timer.h:2513
Configuration structure to backup Timer peripheral state before entering STOP or STANDBY mode...
Definition: dl_timer.h:1849
DL_TIMER_QEI_MODE
Definition: dl_timer.h:1918
DL_TIMER_SEC_COMP_UP_ACT_SEL DL_Timer_getSecondCompActionUp(GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex)
Gets second comparator up counting timer channel output action.
uint32_t DL_Timer_getCaptureCompareCtl(GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex)
Gets Capture Compare Control configuration.
uint32_t pub1PortConf
Definition: dl_timer.h:1857
Definition: dl_timer.h:1340
DL_TIMER_COUNT_AFTER_EN
Definition: dl_timer.h:1518
Definition: dl_timer.h:1217
Definition: dl_timer.h:1629
void DL_Timer_disableCaptureCompareInputFilter(GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex)
Disables the capture compare input filter.
__STATIC_INLINE void DL_Timer_enablePower(GPTIMER_Regs *gptimer)
Enables power on timer module.
Definition: dl_timer.h:1943
Definition: dl_timer.h:1393
uint32_t crossTrigConf
Definition: dl_timer.h:1881
__STATIC_INLINE void DL_Timer_disableClock(GPTIMER_Regs *gptimer)
Disable timer clock.
Definition: dl_timer.h:2112
Definition: dl_timer.h:1178
uint16_t count
Definition: dl_timer.h:1818
Definition: dl_timer.h:1048
DL_TIMER_INPUT_CHAN inputChan
Definition: dl_timer.h:1800
Definition: dl_timer.h:1090
__STATIC_INLINE void DL_Timer_enableInterrupt(GPTIMER_Regs *gptimer, uint32_t interruptMask)
Enable timer interrupts.
Definition: dl_timer.h:3691
Definition: dl_timer.h:1417
__STATIC_INLINE void DL_Timer_enableEvent(GPTIMER_Regs *gptimer, DL_TIMER_EVENT_ROUTE index, uint32_t eventMask)
Enable timer event.
Definition: dl_timer.h:3887
uint32_t intEvnt2Conf
Definition: dl_timer.h:1871
DL_TIMER_DEBUG_RES
Definition: dl_timer.h:1461
Definition: dl_timer.h:1371
Definition: dl_timer.h:1425
uint32_t tSelConf
Definition: dl_timer.h:1879
Definition: dl_timer.h:1060
Definition: dl_timer.h:1287
Definition: dl_timer.h:1573
DL_TIMER_COMPARE_EDGE_DETECTION_MODE
Definition: dl_timer.h:1249
DL_TIMER_PWM_MODE pwmMode
Definition: dl_timer.h:1838
Definition: dl_timer.h:1350
DL_TIMER_EVENT_ROUTE
Definition: dl_timer.h:1437
Definition: dl_timer.h:1580
DL_TIMER_SEC_COMP_UP_EVT DL_Timer_getSecondCompSrcUp(GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex)
Gets source for second capture compare down event.
DL_TIMER_QEI_DIRECTION
Definition: dl_timer.h:1930
Configuration struct for DL_Timer_initCaptureCombinedMode.
Definition: dl_timer.h:1770
Definition: dl_timer.h:1169
DL_TIMER_SEC_COMP_DOWN_EVT DL_Timer_getSecondCompSrcDn(GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex)
Gets source for second capture compare down event.
DL_TIMER_CZC
Definition: dl_timer.h:1470
DL_TIMER startTimer
Definition: dl_timer.h:1840
void DL_Timer_setCaptCompUpdateMethod(GPTIMER_Regs *gptimer, DL_TIMER_CC_UPDATE_METHOD ccUpdtMode, DL_TIMER_CC_INDEX ccIndex)
Configures capture compare shadow register update method.
uint32_t DL_Timer_getCaptureCompareInput(GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex)
Gets Capture Compare Input.
void DL_Timer_initCompareTriggerMode(GPTIMER_Regs *gptimer, DL_Timer_CompareTriggerConfig *config)
Configure timer in edge count compare mode using the trigger as input source Initializes all the comm...
DriverLib Common APIs.
Configuration struct for DL_Timer_initCaptureMode.
Definition: dl_timer.h:1736
uint32_t DL_Timer_getCaptureCompareOutCtl(GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex)
Gets Capture Compare Output Control.
__STATIC_INLINE uint16_t DL_Timer_getPhaseLoadValue(GPTIMER_Regs *gptimer)
Gets phase load value.
Definition: dl_timer.h:3392
DL_TIMER startTimer
Definition: dl_timer.h:1823
Definition: dl_timer.h:1658
uint32_t cc1ActCtl
Definition: dl_timer.h:1905
Definition: dl_timer.h:1478
DL_TIMER_DEAD_BAND_MODE
Definition: dl_timer.h:1272
Definition: dl_timer.h:1638
void DL_Timer_initPWMMode(GPTIMER_Regs *gptimer, DL_Timer_PWMConfig *config)
Configure timer in Pulse Width Modulation Mode Initializes all the common configurable options for th...
uint32_t cc1OutCtl
Definition: dl_timer.h:1901
uint32_t ccpDirConf
Definition: dl_timer.h:1873
DL_TIMER startTimer
Definition: dl_timer.h:1777
DL_TIMER_SEC_COMP_DOWN_ACT_SEL
Definition: dl_timer.h:1636
__STATIC_INLINE uint32_t DL_Timer_getEnabledInterrupts(GPTIMER_Regs *gptimer, uint32_t interruptMask)
Check which timer interrupts are enabled.
Definition: dl_timer.h:3723
__STATIC_INLINE void DL_Timer_configFaultCounter(GPTIMER_Regs *gptimer, DL_TIMER_FAULT_ENTRY_CTR faultEntry, DL_TIMER_FAULT_EXIT_CTR faultExit)
Configures timer counter behavior upon fault entry and exit.
Definition: dl_timer.h:3675
Definition: dl_timer.h:1520
DL_TIMER_SEC_COMP_DOWN_EVT
Definition: dl_timer.h:1577
Definition: dl_timer.h:1116
__STATIC_INLINE void DL_Timer_setPhaseLoadValue(GPTIMER_Regs *gptimer, uint16_t value)
Sets phase load value.
Definition: dl_timer.h:3378
uint32_t cc0ActCtl
Definition: dl_timer.h:1903
Definition: dl_timer.h:1348
uint32_t intEvnt1Conf
Definition: dl_timer.h:1869
Configuration struct for DL_Timer_initTimerMode.
Definition: dl_timer.h:1715
Definition: dl_timer.h:1092
bool DL_Timer_isCaptureCompareInputFilterEnabled(GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex)
Checks if the capture compare input filter is enabled.
__STATIC_INLINE void DL_Timer_disablePhaseLoad(GPTIMER_Regs *gptimer)
Disables phase load.
Definition: dl_timer.h:3348
uint32_t DL_Timer_getCaptureCompareAction(GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex)
Gets actions of the signal generator.
Definition: dl_timer.h:1510
Definition: dl_timer.h:1567
Definition: dl_timer.h:1383
Definition: dl_timer.h:1326
uint32_t period
Definition: dl_timer.h:1836
Definition: dl_timer.h:1052
Definition: dl_timer.h:1303
Definition: dl_timer.h:1155
Definition: dl_timer.h:1647
Definition: dl_timer.h:1688
DL_TIMER_CAPTURE_COMBINED_MODE
Definition: dl_timer.h:1188
Definition: dl_timer.h:1276
Definition: dl_timer.h:1389
Definition: dl_timer.h:1324
Configuration struct for DL_Timer_initCaptureTriggerMode.
Definition: dl_timer.h:1757
Definition: dl_timer.h:1583
Definition: dl_timer.h:1120
Definition: dl_timer.h:1492
__STATIC_INLINE uint32_t DL_Timer_getEnabledInterruptStatus(GPTIMER_Regs *gptimer, uint32_t interruptMask)
Check interrupt flag of enabled timer interrupts.
Definition: dl_timer.h:3746
Definition: dl_timer.h:1423
void DL_Timer_setSecondCompSrcUp(GPTIMER_Regs *gptimer, DL_TIMER_SEC_COMP_UP_EVT secCompUp, DL_TIMER_CC_INDEX ccIndex)
Configures source for second capture compare up event.
__STATIC_INLINE uint8_t DL_Timer_getSubscriberChanID(GPTIMER_Regs *gptimer, DL_TIMER_SUBSCRIBER_INDEX index)
Gets the event subscriber channel id.
Definition: dl_timer.h:3868
__STATIC_INLINE void DL_Timer_setCoreHaltBehavior(GPTIMER_Regs *gptimer, DL_TIMER_CORE_HALT haltMode)
Configures timer behavior when the core is halted.
Definition: dl_timer.h:4052
Definition: dl_timer.h:1589
Definition: dl_timer.h:1457
DL_TIMER_INPUT_CHAN
Definition: dl_timer.h:1445
uint32_t loadVal
Definition: dl_timer.h:1889
DL_TIMER_EXT_TRIG_SEL
Definition: dl_timer.h:1104
Definition: dl_timer.h:1496
Definition: dl_timer.h:1644
DL_TIMER_CAPTURE_EDGE_DETECTION_MODE edgeCaptMode
Definition: dl_timer.h:1746
Definition: dl_timer.h:1920
void DL_Timer_setCaptureCompareCtl(GPTIMER_Regs *gptimer, uint32_t ccMode, uint32_t ccCondMask, DL_TIMER_CC_INDEX ccIndex)
Sets Capture Compare Control configuration.
Definition: dl_timer.h:1361
uint16_t period
Definition: dl_timer.h:1762
Definition: dl_timer.h:1223
Definition: dl_timer.h:1592
DL_TIMER_FORCE_OUT
Definition: dl_timer.h:1662
DL_TIMER_COMPARE_MODE compareMode
Definition: dl_timer.h:1813
bool backupRdy
Definition: dl_timer.h:1914
uint32_t period
Definition: dl_timer.h:1741
Definition: dl_timer.h:1433
DL_TIMER_COMPARE_MODE compareMode
Definition: dl_timer.h:1790
uint32_t cc0Val
Definition: dl_timer.h:1891
Definition: dl_timer.h:1140
Definition: dl_timer.h:1354
__STATIC_INLINE void DL_Timer_configCrossTriggerInputCond(GPTIMER_Regs *gptimer, DL_TIMER_CROSS_TRIGGER_INPUT enInTrigCond)
Enables/DIsables Input Trigger condition for Cross Timer Trigger.
Definition: dl_timer.h:2183
DL_TIMER_SUPP_COMP_EVT_RC
Definition: dl_timer.h:1652
Configuration struct for DL_Timer_initCompareMode.
Definition: dl_timer.h:1788
Definition: dl_timer.h:1292
Definition: dl_timer.h:1463
uint32_t cc1Ctl
Definition: dl_timer.h:1897
DL_TIMER_CROSS_TRIG_SRC
Definition: dl_timer.h:1330
Definition: dl_timer.h:1363
__STATIC_INLINE DL_TIMER_CZC DL_Timer_getCounterZeroControl(GPTIMER_Regs *gptimer)
Get timer counter zero control operation.
Definition: dl_timer.h:2498
void DL_Timer_setCaptureCompareInput(GPTIMER_Regs *gptimer, uint32_t inv, uint32_t isel, DL_TIMER_CC_INDEX ccIndex)
Sets Capture Compare Input.
Definition: dl_timer.h:1398
Definition: dl_timer.h:1213
__STATIC_INLINE void DL_Timer_enableShadowFeatures(GPTIMER_Regs *gptimer)
Enable shadow to activate load of buffered registers and register fields.
Definition: dl_timer.h:2297
Definition: dl_timer.h:1114
Definition: dl_timer.h:1152
__STATIC_INLINE void DL_Timer_disableClockFaultDetection(GPTIMER_Regs *gptimer)
Disables source clock fault detection.
Definition: dl_timer.h:3567
Definition: dl_timer.h:1385
Configuration struct for DL_Timer_setClockConfig.
Definition: dl_timer.h:1702
uint32_t clockPscConf
Definition: dl_timer.h:1861
Configuration struct for DL_Timer_initPWMMode.
Definition: dl_timer.h:1829
Definition: dl_timer.h:1632
Definition: dl_timer.h:1472
Definition: dl_timer.h:1542
Definition: dl_timer.h:1586
Definition: dl_timer.h:1110
Definition: dl_timer.h:1158
__STATIC_INLINE void DL_Timer_setCounterMode(GPTIMER_Regs *gptimer, DL_TIMER_COUNT_MODE countMode)
Configure timer counter couting mode.
Definition: dl_timer.h:2544
Definition: dl_timer.h:1175
DL_TIMER_COUNT_MODE
Definition: dl_timer.h:1211
DL_TIMER_SUBSCRIBER_INDEX
Definition: dl_timer.h:1429
__STATIC_INLINE void DL_Timer_configCrossTrigger(GPTIMER_Regs *gptimer, DL_TIMER_CROSS_TRIG_SRC ctSource, DL_TIMER_CROSS_TRIGGER_INPUT enInTrigCond, DL_TIMER_CROSS_TRIGGER_MODE enCrossTrig)
Configure Cross Timer Trigger.
Definition: dl_timer.h:2146
__STATIC_INLINE uint32_t DL_Timer_getEnabledEventStatus(GPTIMER_Regs *gptimer, DL_TIMER_EVENT_ROUTE index, uint32_t eventMask)
Check event flag of enabled timer event.
Definition: dl_timer.h:3954
Definition: dl_timer.h:1494
__STATIC_INLINE void DL_Timer_enablePhaseLoad(GPTIMER_Regs *gptimer)
Enables phase load.
Definition: dl_timer.h:3335
Definition: dl_timer.h:1407
uint32_t sub0PortConf
Definition: dl_timer.h:1851
Definition: dl_timer.h:1614
DL_TIMER_FAULT_ENTRY_CTR
Definition: dl_timer.h:1322
DL_TIMER startTimer
Definition: dl_timer.h:1723
uint32_t cc1Val
Definition: dl_timer.h:1893
Definition: dl_timer.h:1402
Definition: dl_timer.h:1126
uint32_t cc0Ctl
Definition: dl_timer.h:1895
Definition: dl_timer.h:1522
__STATIC_INLINE void DL_Timer_enableLZEventSuppression(GPTIMER_Regs *gptimer)
Enable suppression of load and zero events.
Definition: dl_timer.h:2395
__STATIC_INLINE void DL_Timer_setPublisherChanID(GPTIMER_Regs *gptimer, DL_TIMER_PUBLISHER_INDEX index, uint8_t chanID)
Sets the event publisher channel id.
Definition: dl_timer.h:3814
Definition: dl_timer.h:1232
DL_TIMER_SEC_COMP_DOWN_ACT_SEL DL_Timer_getSecondCompActionDn(GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex)
Gets second comparator down counting timer channel output action.
__STATIC_INLINE DL_TIMER_CLC DL_Timer_getCounterLoadControl(GPTIMER_Regs *gptimer)
Get timer counter load control operation.
Definition: dl_timer.h:2528
__STATIC_INLINE uint16_t DL_Timer_getDeadBandFallDelay(GPTIMER_Regs *gptimer)
Gets dead band fall delay.
Definition: dl_timer.h:3193
__STATIC_INLINE void DL_Timer_resetCounterMode(GPTIMER_Regs *gptimer)
Reset register controlling counter operation.
Definition: dl_timer.h:2746
DL_TIMER_CC_INDEX
Definition: dl_timer.h:1086
__STATIC_INLINE void DL_Timer_disableFaultInput(GPTIMER_Regs *gptimer)
Disables fault input detection.
Definition: dl_timer.h:3531
__STATIC_INLINE uint32_t DL_Timer_getCCPDirection(GPTIMER_Regs *gptimer)
Gets CCP Direction.
Definition: dl_timer.h:2026
__STATIC_INLINE void DL_Timer_disableExternalTrigger(GPTIMER_Regs *gptimer)
Disables external trigger.
Definition: dl_timer.h:3268
Definition: dl_timer.h:1352
__STATIC_INLINE bool DL_Timer_isReset(GPTIMER_Regs *gptimer)
Returns if timer peripheral has been reset.
Definition: dl_timer.h:1998
__STATIC_INLINE void DL_Timer_setRepeatCounter(GPTIMER_Regs *gptimer, uint8_t repeatCount)
Sets repeat counter value. Repeat counter feature is used to reduce interupt overhead.
Definition: dl_timer.h:3304
Definition: dl_timer.h:1146
__STATIC_INLINE void DL_Timer_clearInterruptStatus(GPTIMER_Regs *gptimer, uint32_t interruptMask)
Clear pending timer interrupts.
Definition: dl_timer.h:3799
Definition: dl_timer.h:1130
Definition: dl_timer.h:1369
__STATIC_INLINE void DL_Timer_disableLZEventSuppression(GPTIMER_Regs *gptimer)
Disable suppression of load and zero events.
Definition: dl_timer.h:2411
uint32_t in1FiltCtl
Definition: dl_timer.h:1911
DL_TIMER_CROSS_TRIGGER_MODE
Definition: dl_timer.h:1367
uint32_t crossTrigCtl
Definition: dl_timer.h:1877
bool DL_Timer_restoreConfiguration(GPTIMER_Regs *gptimer, DL_Timer_backupConfig *ptr, bool restoreCounter)
Restore Timer configuration after leaving STOP or STANDBY mode. Only necessary for PG 1...
__STATIC_INLINE DL_TIMER_COUNT_AFTER_EN DL_Timer_getCounterValueAfterEnable(GPTIMER_Regs *gptimer)
Returns counter value after enable cofiguration.
Definition: dl_timer.h:2590
void DL_Timer_setCaptureCompareOutCtl(GPTIMER_Regs *gptimer, uint32_t ccpIV, uint32_t ccpOInv, uint32_t ccpO, DL_TIMER_CC_INDEX ccIndex)
Sets Capture Compare Output Control.
__STATIC_INLINE uint32_t DL_Timer_getTimerCount(GPTIMER_Regs *gptimer)
Gets the current counter value of the timer.
Definition: dl_timer.h:2356
DL_TIMER_CAPTURE_MODE captureMode
Definition: dl_timer.h:1759
DL_TIMER_INPUT_CHAN inputChan
Definition: dl_timer.h:1779
__STATIC_INLINE void DL_Timer_enableExternalTrigger(GPTIMER_Regs *gptimer)
Enables external trigger.
Definition: dl_timer.h:3256
Definition: dl_timer.h:1466
Definition: dl_timer.h:1474
uint32_t pub0PortConf
Definition: dl_timer.h:1855
DL_TIMER_CAPTURE_MODE
Definition: dl_timer.h:1166
Definition: dl_timer.h:1342
Definition: dl_timer.h:1439
Definition: dl_timer.h:1054
uint32_t cntVal
Definition: dl_timer.h:1885
DL_TIMER_CAPTURE_COMBINED_MODE captureMode
Definition: dl_timer.h:1772
DL_TIMER_INPUT_CHAN inputChan
Definition: dl_timer.h:1748
uint32_t cc0OutCtl
Definition: dl_timer.h:1899
Definition: dl_timer.h:1924
Definition: dl_timer.h:1062
Definition: dl_timer.h:1082
Definition: dl_timer.h:1149
__STATIC_INLINE uint8_t DL_Timer_getRepeatCounter(GPTIMER_Regs *gptimer)
Gets repeat counter value.
Definition: dl_timer.h:3323
Definition: dl_timer.h:1413
uint32_t DL_Timer_getCaptureCompareInputFilter(GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex)
Gets Capture Compare Input Filter.
DL_TIMER_CAPTURE_EDGE_DETECTION_MODE
Definition: dl_timer.h:1239
Definition: dl_timer.h:1334
Definition: dl_timer.h:1072
Definition: dl_timer.h:1266
DL_TIMER_INTERM_INT genIntermInt
Definition: dl_timer.h:1726
Definition: dl_timer.h:1524
Definition: dl_timer.h:1623
Definition: dl_timer.h:1449
Definition: dl_timer.h:1264
void DL_Timer_initTimerMode(GPTIMER_Regs *gptimer, DL_Timer_TimerConfig *config)
Configure timer in one shot or periodic timer mode Initializes all the common configurable options fo...
Definition: dl_timer.h:1536
uint32_t clkDivConf
Definition: dl_timer.h:1859
__STATIC_INLINE DL_TIMER_IIDX DL_Timer_getPendingInterrupt(GPTIMER_Regs *gptimer)
Get highest priority pending timer interrupt.
Definition: dl_timer.h:3785
__STATIC_INLINE void DL_Timer_setLoadValue(GPTIMER_Regs *gptimer, uint32_t value)
Sets timer LOAD register value.
Definition: dl_timer.h:2328
__STATIC_INLINE void DL_Timer_setCounterControl(GPTIMER_Regs *gptimer, DL_TIMER_CZC zeroCtl, DL_TIMER_CAC advCtl, DL_TIMER_CLC loadCtl)
Configure timer counter control operation.
Definition: dl_timer.h:2482
Definition: dl_timer.h:1074
__STATIC_INLINE uint32_t DL_Timer_getLoadValue(GPTIMER_Regs *gptimer)
Gets the timer LOAD register value.
Definition: dl_timer.h:2343
DL_TIMER_IIDX
Definition: dl_timer.h:1375
Definition: dl_timer.h:1932
uint32_t inputInvMode
Definition: dl_timer.h:1803
DL_TIMER_FORCE_CMPL_OUT
Definition: dl_timer.h:1673
DL_TIMER_CLOCK clockSel
Definition: dl_timer.h:1704
Definition: dl_timer.h:1070
__STATIC_INLINE void DL_Timer_disableShadowFeatures(GPTIMER_Regs *gptimer)
Disable shadow to activate load of buffered registers and register fields.
Definition: dl_timer.h:2312
__STATIC_INLINE bool DL_Timer_isPowerEnabled(GPTIMER_Regs *gptimer)
Returns if power on timer module is enabled.
Definition: dl_timer.h:1970
DL_TIMER_REPEAT_MODE
Definition: dl_timer.h:1529
Definition: dl_timer.h:1225
Definition: dl_timer.h:1112
Definition: dl_timer.h:1400
void DL_Timer_enableCaptureCompareInputFilter(GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex)
Enables the capture compare input filter.
Definition: dl_timer.h:1488
Definition: dl_timer.h:1550
Definition: dl_timer.h:1068
uint16_t counterVal
Definition: dl_timer.h:1730
Definition: dl_timer.h:1268
Definition: dl_timer.h:1453
DL_TIMER_CC_UPDATE_METHOD DL_Timer_getCaptCompUpdateMethod(GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex)
Gets capture compare shadow register update method.
__STATIC_INLINE void DL_Timer_setCCPOutputDisabledAdv(GPTIMER_Regs *gptimer, uint32_t ccpOdisConfig)
Sets CCP Output configuration when timer is disabled for timer instances with more than two CCP chann...
Definition: dl_timer.h:2067
void DL_Timer_setCaptureCompareAction(GPTIMER_Regs *gptimer, uint32_t actionsMask, DL_TIMER_CC_INDEX ccIndex)
Sets actions of the signal generator.
Definition: dl_timer.h:1184
Definition: dl_timer.h:1332
uint32_t in0FiltCtl
Definition: dl_timer.h:1908
void DL_Timer_initCaptureCombinedMode(GPTIMER_Regs *gptimer, DL_Timer_CaptureCombinedConfig *config)
Configure timer in combined pulse-width and period capture Initializes all the common configurable op...
DL_TIMER_CLOCK_DIVIDE divideRatio
Definition: dl_timer.h:1707
DL_TIMER_PUBLISHER_INDEX
Definition: dl_timer.h:1421
uint32_t outDisConf
Definition: dl_timer.h:1875
Definition: dl_timer.h:1080
Definition: dl_timer.h:1533
__STATIC_INLINE void DL_Timer_disablePower(GPTIMER_Regs *gptimer)
Disables power on timer module.
Definition: dl_timer.h:1955
__STATIC_INLINE void DL_Timer_configCrossTriggerEnable(GPTIMER_Regs *gptimer, DL_TIMER_CROSS_TRIGGER_MODE enCrossTrig)
Enable/Disable Cross Timer Trigger.
Definition: dl_timer.h:2199
Definition: dl_timer.h:1299
Definition: dl_timer.h:1064
__STATIC_INLINE void DL_Timer_configCrossTriggerSrc(GPTIMER_Regs *gptimer, DL_TIMER_CROSS_TRIG_SRC ctSource)
Configure Cross Timer Trigger source.
Definition: dl_timer.h:2165
Definition: dl_timer.h:1066
Definition: dl_timer.h:1308
Definition: dl_timer.h:1099
Definition: dl_timer.h:1285
__STATIC_INLINE DL_TIMER_QEI_DIRECTION DL_Timer_getQEIDirection(GPTIMER_Regs *gptimer)
Get direction of Quadrature Encoder Interface (QEI) count.
Definition: dl_timer.h:3468
uint32_t DL_Timer_getFaultSourceConfig(GPTIMER_Regs *gptimer)
__STATIC_INLINE bool DL_Timer_isClockFaultDetectionEnabled(GPTIMER_Regs *gptimer)
Specifies if source clock fault detection is enabled.
Definition: dl_timer.h:3580
__STATIC_INLINE DL_TIMER_DEBUG_RES DL_Timer_getDebugReleaseBehavior(GPTIMER_Regs *gptimer)
Get timer resume behavior after relase/exit of debug mode.
Definition: dl_timer.h:2460
__STATIC_INLINE uint32_t DL_Timer_getFaultConfig(GPTIMER_Regs *gptimer)
Gets Fault Configuration.
Definition: dl_timer.h:3507
Definition: dl_timer.h:1641
uint32_t DL_Timer_getCaptureCompareValue(GPTIMER_Regs *gptimer, DL_TIMER_CC_INDEX ccIndex)
Get Timer Capture Compare value.
__STATIC_INLINE void DL_Timer_setCounterValueAfterEnable(GPTIMER_Regs *gptimer, DL_TIMER_COUNT_AFTER_EN cvae)
Configures counter value after enable.
Definition: dl_timer.h:2575
Definition: dl_timer.h:1404
Definition: dl_timer.h:1379
__STATIC_INLINE DL_TIMER_CROSS_TRIG_SRC DL_Timer_getCrossTriggerSrc(GPTIMER_Regs *gptimer)
Get Cross Timer Trigger source.
Definition: dl_timer.h:2230
DL_TIMER_COMPARE_EDGE_DETECTION_MODE edgeDetectMode
Definition: dl_timer.h:1821
Definition: dl_timer.h:1118
uint32_t inputInvMode
Definition: dl_timer.h:1782
__STATIC_INLINE uint32_t DL_Timer_getRawInterruptStatus(GPTIMER_Regs *gptimer, uint32_t interruptMask)
Check interrupt flag of any timer interrupt.
Definition: dl_timer.h:3767
Definition: dl_timer.h:1134
void DL_Timer_initCompareMode(GPTIMER_Regs *gptimer, DL_Timer_CompareConfig *config)
Configure timer in edge count compare mode Initializes all the common configurable options for the TI...
uint32_t sub1PortConf
Definition: dl_timer.h:1853
Definition: dl_timer.h:1283
Definition: dl_timer.h:1391
DL_TIMER_FAULT_ENTRY_CCP
Definition: dl_timer.h:1281
Definition: dl_timer.h:1128
__STATIC_INLINE void DL_Timer_configFaultOutputAction(GPTIMER_Regs *gptimer, DL_TIMER_FAULT_ENTRY_CCP faultEntry, DL_TIMER_FAULT_EXIT_CCP faultExit, DL_TIMER_CC_INDEX ccIndex)
Configures output behavior upon fault entry and exit.
Definition: dl_timer.h:3655
Definition: dl_timer.h:1480
Definition: dl_timer.h:1346
uint32_t cntCtlConf
Definition: dl_timer.h:1887
Definition: dl_timer.h:1106
__STATIC_INLINE uint8_t DL_Timer_getPublisherChanID(GPTIMER_Regs *gptimer, DL_TIMER_PUBLISHER_INDEX index)
Gets the event publisher channel id.
Definition: dl_timer.h:3832
DL_TIMER_FAULT_EXIT_CCP
Definition: dl_timer.h:1297
__STATIC_INLINE void DL_Timer_reset(GPTIMER_Regs *gptimer)
Resets timer peripheral.
Definition: dl_timer.h:1982
__STATIC_INLINE void DL_Timer_disableEvent(GPTIMER_Regs *gptimer, DL_TIMER_EVENT_ROUTE index, uint32_t eventMask)
Disable timer event.
Definition: dl_timer.h:3905
DL_TIMER startTimer
Definition: dl_timer.h:1743
__STATIC_INLINE void DL_Timer_setTimerCount(GPTIMER_Regs *gptimer, uint32_t value)
Set timer counter value.
Definition: dl_timer.h:2378
__STATIC_INLINE uint32_t DL_Timer_getFaultInputFilterConfig(GPTIMER_Regs *gptimer)
Get Fault Input Filtering Configuration.
Definition: dl_timer.h:3636
Definition: dl_timer.h:1315
Definition: dl_timer.h:1172
Definition: dl_timer.h:1289
Definition: dl_timer.h:1506
DL_TIMER_SEC_COMP_UP_ACT_SEL
Definition: dl_timer.h:1621
Definition: dl_timer.h:1512
Definition: dl_timer.h:1305
Definition: dl_timer.h:1514
Definition: dl_timer.h:1201
void DL_Timer_setSecondCompActionDn(GPTIMER_Regs *gptimer, DL_TIMER_SEC_COMP_DOWN_ACT_SEL secCompDnAct, DL_TIMER_CC_INDEX ccIndex)
Set second comparator down counting timer channel output action.
Definition: dl_timer.h:1124
DL_TIMER_CLOCK_DIVIDE
Definition: dl_timer.h:1058
void DL_Timer_setCaptureCompareValue(GPTIMER_Regs *gptimer, uint32_t value, DL_TIMER_CC_INDEX ccIndex)
Sets Timer Capture Compare Value.
Definition: dl_timer.h:1664
Definition: dl_timer.h:1678
Definition: dl_timer.h:1695
Definition: dl_timer.h:1138
__STATIC_INLINE void DL_Timer_enableFaultInput(GPTIMER_Regs *gptimer)
Enables fault input detection.
Definition: dl_timer.h:3520
Definition: dl_timer.h:1050
Definition: dl_timer.h:1234
DL_TIMER_SEC_COMP_UP_EVT
Definition: dl_timer.h:1599
DL_TIMER_CLOCK
Definition: dl_timer.h:1046
DL_TIMER_CAC
Definition: dl_timer.h:1486
Definition: dl_timer.h:1605
uint32_t period
Definition: dl_timer.h:1721
__STATIC_INLINE DL_TIMER_EXT_TRIG_SEL DL_Timer_getExternalTriggerEvent(GPTIMER_Regs *gptimer)
Gets External Trigger Event.
Definition: dl_timer.h:3241
Definition: dl_timer.h:1088
Definition: dl_timer.h:1097
Definition: dl_timer.h:1122
Definition: dl_timer.h:1934
Definition: dl_timer.h:1318
void DL_Timer_getClockConfig(GPTIMER_Regs *gptimer, DL_Timer_ClockConfig *config)
Get timer source clock configuration.
void DL_Timer_setCaptureCompareInputFilter(GPTIMER_Regs *gptimer, uint32_t cpv, uint32_t fp, DL_TIMER_CC_INDEX ccIndex)
Sets Capture Compare Input Filter.
Definition: dl_timer.h:1431
Definition: dl_timer.h:1626
Definition: dl_timer.h:1531
uint32_t clkSelConf
Definition: dl_timer.h:1863
__STATIC_INLINE DL_TIMER_REPEAT_MODE DL_Timer_getCounterRepeatMode(GPTIMER_Regs *gptimer)
Get timer repeat counter mode.
Definition: dl_timer.h:2624
__STATIC_INLINE bool DL_Timer_isLZEventSuppressionEnabled(GPTIMER_Regs *gptimer)
Checks if suppression of load and zero events is enabled.
Definition: dl_timer.h:2427
© Copyright 1995-2023, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale