#define INTERRUPT_EXT2 2
#define INTERRUPT_EXT3 3
+#define INTERRUPT_TC0 0
+#define INTERRUPT_TC1 1
+
#define INTERRUPT_TC_MODE_T 0x00
#define INTERRUPT_TC_MODE_CR 0x01
#define INTERRUPT_TC_MODE_CF 0x02
#define INTERRUPT_TC_MATCH_RESET 0x02
#define INTERRUPT_TC_MATCH_STOP 0x04
+#define INTERRUPT_M0 0
+#define INTERRUPT_M1 1
+#define INTERRUPT_M2 2
+#define INTERRUPT_M3 3
+
#define INTERRUPT_TC_CAPT_R 0x01
#define INTERRUPT_TC_CAPT_F 0x02
#define INTERRUPT_TC_CAPT_I 0x04
-#define INTERRUPT_CAP0 0x00
-#define INTERRUPT_CAP1 0x01
-#define INTERRUPT_CAP2 0x02
-#define INTERRUPT_CAP3 0x03
-
-#define INTERRUPT_M0 0x01
-#define INTERRUPT_M1 0x02
-#define INTERRUPT_M2 0x04
-#define INTERRUPT_M3 0x08
-#define INTERRUPT_C0 0x10
-#define INTERRUPT_C1 0x20
-#define INTERRUPT_C2 0x40
-#define INTERRUPT_C3 0x80
+#define INTERRUPT_C0 0
+#define INTERRUPT_C1 1
+#define INTERRUPT_C2 2
+#define INTERRUPT_C3 3
+
+#define INTERRUPT_MATCH0 0x01
+#define INTERRUPT_MATCH1 0x02
+#define INTERRUPT_MATCH2 0x04
+#define INTERRUPT_MATCH3 0x08
+#define INTERRUPT_CAP0 0x10
+#define INTERRUPT_CAP1 0x20
+#define INTERRUPT_CAP2 0x40
+#define INTERRUPT_CAP3 0x80
+
+#define INTERRUPT_PWM0 0x01
+#define INTERRUPT_PWM1 0x02
+#define INTERRUPT_PWM2 0x04
+#define INTERRUPT_PWM3 0x08
+#define INTERRUPT_PWM4 0x10
+#define INTERRUPT_PWM5 0x20
+#define INTERRUPT_PWM6 0x40
#define INTERRUPT_SET 0x00
#define INTERRUPT_USED 0x01
void interrupt_tc_match_config(u8 tcnum,u8 mnum,u32 val,u8 mode);
void interrupt_tc_capt_config(u8 tcnum,u8 cnum,u8 mode);
void interrupt_tc_ir_set(u8 tcnum,u8 tcmc);
+void interrupt_tc_enable(u8 tcnum);
+
+void interrupt_pwm_ir_set(u8 pwm_channel);
void interrupt_handler_reset(void);
void interrupt_handler_undef_instruction(void);