first button test using interrupts (untested!)
[my-code/arm.git] / betty / interrupts.h
index c1a4f04..194dd9a 100644 (file)
 #define INTERRUPT_EINT3                        17
 #define INTERRUPT_ADC                  18
 
 #define INTERRUPT_EINT3                        17
 #define INTERRUPT_ADC                  18
 
-#define INTERRUPT_IRQ                  0
-#define INTERRUPT_VIRQ                 1
-#define INTERRUPT_FIQ                  2
+#define INTERRUPT_MODE_IRQ             0
+#define INTERRUPT_MODE_VIRQ            1
+#define INTERRUPT_MODE_FIQ             2
 
 #define INTERRUPT_EXT_MODE_EDGE                0
 #define INTERRUPT_EXT_MODE_LEVEL       1
 #define INTERRUPT_EXT_POLAR_LOW                0
 #define INTERRUPT_EXT_POLAR_HIGH       1
 
 #define INTERRUPT_EXT_MODE_EDGE                0
 #define INTERRUPT_EXT_MODE_LEVEL       1
 #define INTERRUPT_EXT_POLAR_LOW                0
 #define INTERRUPT_EXT_POLAR_HIGH       1
+#define INTERRUPT_EXT_NOWAKE           0
+#define INTERRUPT_EXT_WAKEUP           1
+
+#define INTERRUPT_EXT0                 0
+#define INTERRUPT_EXT1                 1
+#define INTERRUPT_EXT2                 2
+#define INTERRUPT_EXT3                 3
 
 #define INTERRUPT_SET                  0x00
 #define INTERRUPT_USED                 0x01
 
 #define INTERRUPT_SET                  0x00
 #define INTERRUPT_USED                 0x01
@@ -62,6 +69,7 @@ void interrupt_soft_clear(u8 src_number);
 void interrupt_clear(u8 src_number);
 void interrupt_soft_enable(u8 src_number);
 int interrupt_enable(u8 src_number,u8 mode,u8 priority,u32 callback_addr);
 void interrupt_clear(u8 src_number);
 void interrupt_soft_enable(u8 src_number);
 int interrupt_enable(u8 src_number,u8 mode,u8 priority,u32 callback_addr);
+void interrupt_ext_ir_config(u8 eint,u8 wakeup,u8 mode,u8 polarity);
 
 void interrupt_handler_reset(void);
 void interrupt_handler_undef_instruction(void);
 
 void interrupt_handler_reset(void);
 void interrupt_handler_undef_instruction(void);