summaryrefslogtreecommitdiffstats
path: root/c
diff options
context:
space:
mode:
authorJennifer Averett <Jennifer.Averett@OARcorp.com>2005-04-15 18:00:39 +0000
committerJennifer Averett <Jennifer.Averett@OARcorp.com>2005-04-15 18:00:39 +0000
commit8a463b47389abb76d85e553015bfe027699d9ebb (patch)
tree370dd12e9b70e4666a9fff76d7485c2be22276d1 /c
parent2005-04-15 Jennifer Averett <jennifer.averett@oarcorp.com> (diff)
downloadrtems-8a463b47389abb76d85e553015bfe027699d9ebb.tar.bz2
2005-04-15 Jennifer Averett <jennifer.averett@oarcorp.com>
PR 779/bsp * irq/irq.c, irq/irq.h: add parameter to new exception interrupt handlers in powerpc bsps
Diffstat (limited to 'c')
-rw-r--r--c/src/lib/libbsp/powerpc/mbx8xx/ChangeLog6
-rw-r--r--c/src/lib/libbsp/powerpc/mbx8xx/irq/irq.c2
-rw-r--r--c/src/lib/libbsp/powerpc/mbx8xx/irq/irq.h7
3 files changed, 13 insertions, 2 deletions
diff --git a/c/src/lib/libbsp/powerpc/mbx8xx/ChangeLog b/c/src/lib/libbsp/powerpc/mbx8xx/ChangeLog
index dc28da9f70..fcddd1d711 100644
--- a/c/src/lib/libbsp/powerpc/mbx8xx/ChangeLog
+++ b/c/src/lib/libbsp/powerpc/mbx8xx/ChangeLog
@@ -1,3 +1,9 @@
+2005-04-15 Jennifer Averett <jennifer.averett@oarcorp.com>
+
+ PR 779/bsp
+ * irq/irq.c, irq/irq.h: add parameter to new exception
+ interrupt handlers in powerpc bsps
+
2005-02-17 Ralf Corsepius <ralf.corsepius@rtems.org>
* startup/bspstart.c: include <rtems/powerpc/powerpc.h>.
diff --git a/c/src/lib/libbsp/powerpc/mbx8xx/irq/irq.c b/c/src/lib/libbsp/powerpc/mbx8xx/irq/irq.c
index 501168ec91..cac7f03954 100644
--- a/c/src/lib/libbsp/powerpc/mbx8xx/irq/irq.c
+++ b/c/src/lib/libbsp/powerpc/mbx8xx/irq/irq.c
@@ -411,7 +411,7 @@ void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
new_msr = msr | MSR_EE;
_CPU_MSR_SET(new_msr);
- rtems_hdl_tbl[BSP_DECREMENTER].hdl();
+ rtems_hdl_tbl[BSP_DECREMENTER].hdl(rtems_hdl_tbl[BSP_DECREMENTER].handle);
_CPU_MSR_SET(msr);
return;
diff --git a/c/src/lib/libbsp/powerpc/mbx8xx/irq/irq.h b/c/src/lib/libbsp/powerpc/mbx8xx/irq/irq.h
index b7d10150af..d6c8c0fb92 100644
--- a/c/src/lib/libbsp/powerpc/mbx8xx/irq/irq.h
+++ b/c/src/lib/libbsp/powerpc/mbx8xx/irq/irq.h
@@ -148,7 +148,8 @@ typedef enum {
typedef unsigned char rtems_irq_prio;
struct __rtems_irq_connect_data__; /* forward declaratiuon */
-typedef void (*rtems_irq_hdl) (void);
+typedef void *rtems_irq_hdl_param;
+typedef void (*rtems_irq_hdl) (rtems_irq_hdl_param);
typedef void (*rtems_irq_enable) (const struct __rtems_irq_connect_data__*);
typedef void (*rtems_irq_disable) (const struct __rtems_irq_connect_data__*);
typedef int (*rtems_irq_is_enabled) (const struct __rtems_irq_connect_data__*);
@@ -163,6 +164,10 @@ typedef struct __rtems_irq_connect_data__ {
*/
rtems_irq_hdl hdl;
/*
+ * Handler handle to store private data
+ */
+ rtems_irq_hdl_param handle;
+ /*
* function for enabling interrupts at device level (ONLY!).
* The BSP code will automatically enable it at SIU level and CPM level.
* RATIONALE : anyway such code has to exist in current driver code.