1 #ifndef __DRV_TIMER_H__ 2 #define __DRV_TIMER_H__ 3 4 #include "board.h" 5 6 #ifdef __cplusplus 7 extern "C" { 8 #endif 9 10 #define TTC_CLK_CNTRL(hw_base) __REG32(hw_base + 0x00) 11 #define TTC_CLK_CNTRL_PS_EN_MASK 0x00000001 /**< Prescale enable */ 12 #define TTC_CLK_CNTRL_PS_VAL_MASK 0x0000001E /**< Prescale value */ 13 #define TTC_CLK_CNTRL_PS_VAL_SHIFT 1 /**< Prescale shift */ 14 #define TTC_CLK_CNTRL_PS_DISABLE 16 /**< Prescale disable */ 15 #define TTC_CLK_CNTRL_SRC_MASK 0x00000020 /**< Clock source */ 16 #define TTC_CLK_CNTRL_EXT_EDGE_MASK 0x00000040 /**< External Clock edge */ 17 18 #define TTC_CNT_CNTRL(hw_base) __REG32(hw_base + 0x0C) 19 #define TTC_CNT_CNTRL_DIS_MASK 0x00000001 /**< Disable the counter */ 20 #define TTC_CNT_CNTRL_INT_MASK 0x00000002 /**< interval mode */ 21 #define TTC_CNT_CNTRL_DECR_MASK 0x00000004 /**< Decrement mode */ 22 #define TTC_CNT_CNTRL_MATCH_MASK 0x00000008 /**< Match mode */ 23 #define TTC_CNT_CNTRL_RST_MASK 0x00000010 /**< Reset counter */ 24 #define TTC_CNT_CNTRL_EN_WAVE_MASK 0x00000020 /**< Enable waveform */ 25 #define TTC_CNT_CNTRL_POL_WAVE_MASK 0x00000040 /**< Waveform polarity */ 26 #define TTC_CNT_CNTRL_RESET_VALUE 0x00000021 /**< Reset value */ 27 28 #define TTC_COUNT_VALUE(hw_base) __REG32(hw_base + 0x18) 29 #define TTC_INTERVAL_VAL(hw_base) __REG32(hw_base + 0x24) 30 #define TTC_MATCH_0(hw_base) __REG32(hw_base + 0x30) 31 #define TTC_MATCH_1(hw_base) __REG32(hw_base + 0x3C) 32 #define TTC_MATCH_2(hw_base) __REG32(hw_base + 0x48) 33 34 #define TTC_ISR(hw_base) __REG32(hw_base + 0x54) 35 #define TTC_IXR_INTERVAL_MASK 0x00000001 /**< interval Interrupt */ 36 #define TTC_IXR_MATCH_0_MASK 0x00000002 /**< Match 1 Interrupt */ 37 #define TTC_IXR_MATCH_1_MASK 0x00000004 /**< Match 2 Interrupt */ 38 #define TTC_IXR_MATCH_2_MASK 0x00000008 /**< Match 3 Interrupt */ 39 #define TTC_IXR_CNT_OVR_MASK 0x00000010 /**< Counter Overflow */ 40 #define TTC_IXR_ALL_MASK 0x0000001F /**< All valid Interrupts */ 41 42 #define TTC_IER(hw_base) __REG32(hw_base + 0x60) 43 44 #ifdef __cplusplus 45 } 46 #endif 47 48 #endif 49