summaryrefslogtreecommitdiffstats
path: root/firmware/export/as3525.h
diff options
context:
space:
mode:
authorRafaël Carré <rafael.carre@gmail.com>2010-05-26 16:03:01 +0000
committerRafaël Carré <rafael.carre@gmail.com>2010-05-26 16:03:01 +0000
commit7ad50c6f5935cbde4c96e742b90ce629dd325217 (patch)
tree3aea33c0b0b57bc1f07ef607c095d429fcd02142 /firmware/export/as3525.h
parentf0f5a6419ab788edfdee23009a4095a68106206d (diff)
downloadrockbox-7ad50c6f5935cbde4c96e742b90ce629dd325217.tar.gz
rockbox-7ad50c6f5935cbde4c96e742b90ce629dd325217.tar.bz2
rockbox-7ad50c6f5935cbde4c96e742b90ce629dd325217.zip
as3525: write irq/fiq handlers in C
Declare VIC registers holding function pointers as volatile pointers to function pointers and access them directly without casting UIRQ() is an IRQ handler too, even if it doesn't return git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26313 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/export/as3525.h')
-rw-r--r--firmware/export/as3525.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/firmware/export/as3525.h b/firmware/export/as3525.h
index a58a0ae0ad..6b0e85f9c5 100644
--- a/firmware/export/as3525.h
+++ b/firmware/export/as3525.h
@@ -441,9 +441,9 @@ CE lines
#define VIC_SOFT_INT (*(volatile unsigned long*)(VIC_BASE+0x18))
#define VIC_SOFT_INT_CLEAR (*(volatile unsigned long*)(VIC_BASE+0x1C))
#define VIC_PROTECTION (*(volatile unsigned long*)(VIC_BASE+0x20))
-#define VIC_VECT_ADDR (*(volatile unsigned long*)(VIC_BASE+0x30))
-#define VIC_DEF_VECT_ADDR (*(volatile unsigned long*)(VIC_BASE+0x34))
-#define VIC_VECT_ADDRS ((volatile unsigned long*)(VIC_BASE+0x100))
+#define VIC_VECT_ADDR ((void (* volatile *) (void)) (VIC_BASE+0x30))
+#define VIC_DEF_VECT_ADDR ((void (* volatile *) (void)) (VIC_BASE+0x34))
+#define VIC_VECT_ADDRS ((void (* volatile *) (void)) (VIC_BASE+0x100))
#define VIC_VECT_CNTLS ((volatile unsigned long*)(VIC_BASE+0x200))
/* Interrupt sources (for vectors setup) */