diff packages/hal/arm/xscale/pxa2x0/current/src/pxa2x0_misc.c @ 744:42861b9d6e75

Minor improvement for extended IRQ support
author gthomas
date Mon, 24 Feb 2003 18:09:45 +0000
parents 646a29ef8e22
children 99158cb29a49
line wrap: on
line diff
--- a/packages/hal/arm/xscale/pxa2x0/current/src/pxa2x0_misc.c
+++ b/packages/hal/arm/xscale/pxa2x0/current/src/pxa2x0_misc.c
@@ -166,16 +166,16 @@ int hal_IRQ_handler(void)
 {
     cyg_uint32 sources, index;
 
+    sources = *PXA2X0_ICIP;
+
 #ifdef HAL_EXTENDED_IRQ_HANDLER
     // Use platform specific IRQ handler, if defined
     // Note: this macro should do a 'return' with the appropriate
     // interrupt number if such an extended interrupt exists.  The
     // assumption is that the line after the macro starts 'normal' processing.
-    HAL_EXTENDED_IRQ_HANDLER(index);
+    HAL_EXTENDED_IRQ_HANDLER(sources);
 #endif
 
-    sources = *PXA2X0_ICIP;
-
     if ( sources & 0xff0000 )
         index = 16;
     else if ( sources & 0xff00 )
@@ -258,7 +258,7 @@ void hal_interrupt_unmask(int vector)
 void hal_interrupt_acknowledge(int vector)
 {
 
-#ifdef HAL_EXTENDED_INTERRUPT_UNMASK
+#ifdef HAL_EXTENDED_INTERRUPT_ACKNOWLEDGE
     // Use platform specific handling, if defined
     // Note: this macro should do a 'return' for "extended" values of 'vector'
     // Normal vectors are handled by code subsequent to the macro call.