diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2010-04-28 17:17:59 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2010-04-28 17:17:59 +0000 |
commit | 14a78df2be900473fc97472a695a802968eba258 (patch) | |
tree | 28e22e258b6729e8b3024576119993cf1690039b /c/src/lib/libcpu/powerpc/mpc5xx/irq/irq_init.c | |
parent | 2010-04-28 Joel Sherrill <joel.sherrilL@OARcorp.com> (diff) | |
download | rtems-14a78df2be900473fc97472a695a802968eba258.tar.bz2 |
2010-04-28 Joel Sherrill <joel.sherrilL@OARcorp.com>
* mpc5xx/clock/clock.c, mpc5xx/console-generic/console-generic.c,
mpc5xx/irq/irq_init.c, mpc5xx/timer/timer.c: Remove warnings.
Diffstat (limited to '')
-rw-r--r-- | c/src/lib/libcpu/powerpc/mpc5xx/irq/irq_init.c | 77 |
1 files changed, 46 insertions, 31 deletions
diff --git a/c/src/lib/libcpu/powerpc/mpc5xx/irq/irq_init.c b/c/src/lib/libcpu/powerpc/mpc5xx/irq/irq_init.c index 2fb5798057..ac1dffafd8 100644 --- a/c/src/lib/libcpu/powerpc/mpc5xx/irq/irq_init.c +++ b/c/src/lib/libcpu/powerpc/mpc5xx/irq/irq_init.c @@ -23,40 +23,55 @@ #include <mpc5xx.h> #include <libcpu/vectors.h> #include <libcpu/raw_exception.h> -#include <libcpu/irq.h> - +#include <bsp/irq.h> extern rtems_exception_handler_t dispatch_irq_handler; volatile unsigned int ppc_cached_irq_mask; /* - * default on/off function + * default methods */ -static void nop_func(){} +static void nop_hdl(rtems_irq_hdl_param ignored) +{ +} -/* - * default isOn function - */ -static int not_connected(void) {return 0;} +static void nop_irq_enable(const struct __rtems_irq_connect_data__*ignored) +{ +} -/* - * default possible isOn function - */ -static int connected(void) {return 1;} +static void nop_raw_enable( + const struct __rtems_raw_except_connect_data__*ignored +) +{ +} + +static int irq_is_connected(const struct __rtems_irq_connect_data__*ignored) +{ + return 0; +} + +static int raw_is_connected(const struct __rtems_raw_except_connect_data__*ignored) +{ + return 0; +} -static rtems_irq_connect_data rtemsIrq[CPU_IRQ_COUNT]; -static rtems_irq_global_settings initial_config; -static rtems_irq_connect_data defaultIrq = { - /* vector, hdl ,handle , on , off , isOn */ - 0, nop_func ,NULL , nop_func , nop_func , not_connected +static rtems_irq_connect_data rtemsIrq[CPU_IRQ_COUNT]; +static rtems_irq_global_settings initial_config; +static rtems_irq_connect_data defaultIrq = { + 0, /* vector */ + nop_hdl, /* hdl */ + NULL, /* handle */ + nop_irq_enable, /* on */ + nop_irq_enable, /* off */ + irq_is_connected /* isOn */ }; static rtems_irq_prio irqPrioTable[CPU_IRQ_COUNT]={ /* * actual priorities for interrupt : - * 0 means that only current interrupt is masked - * 255 means all other interrupts are masked + * 0 means that only current interrupt is masked + * 255 means all other interrupts are masked */ /* * USIU interrupts. @@ -118,11 +133,11 @@ void CPU_rtems_irq_mng_init(unsigned cpuId) /* * Init initial Interrupt management config */ - initial_config.irqNb = CPU_IRQ_COUNT; + initial_config.irqNb = CPU_IRQ_COUNT; initial_config.defaultEntry = defaultIrq; - initial_config.irqHdlTbl = rtemsIrq; - initial_config.irqBase = CPU_ASM_IRQ_VECTOR_BASE; - initial_config.irqPrioTbl = irqPrioTable; + initial_config.irqHdlTbl = rtemsIrq; + initial_config.irqBase = CPU_ASM_IRQ_VECTOR_BASE; + initial_config.irqPrioTbl = irqPrioTable; if (!CPU_rtems_irq_mngt_set(&initial_config)) { /* @@ -135,17 +150,17 @@ void CPU_rtems_irq_mng_init(unsigned cpuId) * We must connect the raw irq handler for the two * expected interrupt sources : decrementer and external interrupts. */ - vectorDesc.exceptIndex = ASM_DEC_VECTOR; - vectorDesc.hdl.vector = ASM_DEC_VECTOR; - vectorDesc.hdl.raw_hdl = dispatch_irq_handler; - vectorDesc.on = nop_func; - vectorDesc.off = nop_func; - vectorDesc.isOn = connected; + vectorDesc.exceptIndex = ASM_DEC_VECTOR; + vectorDesc.hdl.vector = ASM_DEC_VECTOR; + vectorDesc.hdl.raw_hdl = dispatch_irq_handler; + vectorDesc.on = nop_raw_enable; + vectorDesc.off = nop_raw_enable; + vectorDesc.isOn = raw_is_connected; if (!mpc5xx_set_exception (&vectorDesc)) { BSP_panic("Unable to initialize RTEMS decrementer raw exception\n"); } - vectorDesc.exceptIndex = ASM_EXT_VECTOR; - vectorDesc.hdl.vector = ASM_EXT_VECTOR; + vectorDesc.exceptIndex = ASM_EXT_VECTOR; + vectorDesc.hdl.vector = ASM_EXT_VECTOR; if (!mpc5xx_set_exception (&vectorDesc)) { BSP_panic("Unable to initialize RTEMS external raw exception\n"); } |