32 #ifndef __SCT_18XX_43XX_H_
33 #define __SCT_18XX_43XX_H_
47 #define CONFIG_SCT_nEV (16)
48 #define CONFIG_SCT_nRG (16)
49 #define CONFIG_SCT_nOU (16)
73 uint32_t RESERVED1[10];
93 uint32_t RESERVED2[35];
184 #define SCT_CONFIG_16BIT_COUNTER 0x00000000
185 #define SCT_CONFIG_32BIT_COUNTER 0x00000001
187 #define SCT_CONFIG_CLKMODE_BUSCLK (0x0 << 1)
188 #define SCT_CONFIG_CLKMODE_SCTCLK (0x1 << 1)
189 #define SCT_CONFIG_CLKMODE_INCLK (0x2 << 1)
190 #define SCT_CONFIG_CLKMODE_INEDGECLK (0x3 << 1)
192 #define SCT_CONFIG_NORELOADL_U (0x1 << 7)
193 #define SCT_CONFIG_NORELOADH (0x1 << 8)
194 #define SCT_CONFIG_AUTOLIMIT_L (0x1 << 17)
195 #define SCT_CONFIG_AUTOLIMIT_H (0x1 << 18)
200 #define COUNTUP_TO_LIMIT_THEN_CLEAR_TO_ZERO 0
201 #define COUNTUP_TO LIMIT_THEN_COUNTDOWN_TO_ZERO 1
203 #define SCT_CTRL_STOP_L (1 << 1)
204 #define SCT_CTRL_HALT_L (1 << 2)
205 #define SCT_CTRL_CLRCTR_L (1 << 3)
206 #define SCT_CTRL_BIDIR_L(x) (((x) & 0x01) << 4)
207 #define SCT_CTRL_PRE_L(x) (((x) & 0xFF) << 5)
209 #define COUNTUP_TO_LIMIT_THEN_CLEAR_TO_ZERO 0
210 #define COUNTUP_TO LIMIT_THEN_COUNTDOWN_TO_ZERO 1
211 #define SCT_CTRL_STOP_H (1 << 17)
212 #define SCT_CTRL_HALT_H (1 << 18)
213 #define SCT_CTRL_CLRCTR_H (1 << 19)
214 #define SCT_CTRL_BIDIR_H(x) (((x) & 0x01) << 20)
215 #define SCT_CTRL_PRE_H(x) (((x) & 0xFF) << 21)
220 #define SCT_RES_NOCHANGE (0)
221 #define SCT_RES_SET_OUTPUT (1)
222 #define SCT_RES_CLEAR_OUTPUT (2)
223 #define SCT_RES_TOGGLE_OUTPUT (3)
228 typedef enum CHIP_SCT_MATCH_REG {
239 typedef enum CHIP_SCT_EVENT {
330 pSCT->
MATCH[n].U = value;
386 pSCT->
EVEN &= ~(evt);