2007-12-05 Joel Sherrill <joel.sherrill@oarcorp.com>

* irq/irq_init.c: Spacing.
This commit is contained in:
Joel Sherrill
2007-12-05 22:24:05 +00:00
parent 7302f4c51f
commit 9e602b0ad9
2 changed files with 59 additions and 28 deletions

View File

@@ -1,3 +1,7 @@
2007-12-04 Joel Sherrill <joel.sherrill@oarcorp.com>
* clock/clock.c: Fix typo.
2007-12-04 Till Straumann <strauman@slac.stanford.edu> 2007-12-04 Till Straumann <strauman@slac.stanford.edu>
* irq/irq_init.c: removed unnecessary code (alredy * irq/irq_init.c: removed unnecessary code (alredy

View File

@@ -35,11 +35,11 @@ static int not_connected() {return 0;}
*/ */
static int connected() {return 1;} static int connected() {return 1;}
static rtems_irq_connect_data rtemsIrq[BSP_IRQ_NUMBER]; static rtems_irq_connect_data rtemsIrq[BSP_IRQ_NUMBER];
static rtems_irq_global_settings initial_config; static rtems_irq_global_settings initial_config;
static rtems_irq_connect_data defaultIrq = { static rtems_irq_connect_data defaultIrq = {
/* vectorIdex, hdl , handle , on , off , isOn */ /* vectorIdex, hdl , handle , on , off , isOn */
0, nop_func , NULL , nop_func , nop_func , not_connected 0, nop_func , NULL , nop_func , nop_func , not_connected
}; };
static rtems_irq_prio irqPrioTable[BSP_IRQ_NUMBER]={ static rtems_irq_prio irqPrioTable[BSP_IRQ_NUMBER]={
/* /*
@@ -65,30 +65,57 @@ void BSP_rtems_irq_mng_init(unsigned cpuId)
/* /*
* Initialize Rtems management interrupt table * Initialize Rtems management interrupt table
*/ */
/* /*
* re-init the rtemsIrq table * re-init the rtemsIrq table
*/ */
for (i = 0; i < BSP_IRQ_NUMBER; i++) { for (i = 0; i < BSP_IRQ_NUMBER; i++) {
rtemsIrq[i] = defaultIrq; rtemsIrq[i] = defaultIrq;
rtemsIrq[i].name = i; rtemsIrq[i].name = i;
} }
/* /*
* Init initial Interrupt management config * Init initial Interrupt management config
*/ */
initial_config.irqNb = BSP_IRQ_NUMBER; initial_config.irqNb = BSP_IRQ_NUMBER;
initial_config.defaultEntry = defaultIrq; initial_config.defaultEntry = defaultIrq;
initial_config.irqHdlTbl = rtemsIrq; initial_config.irqHdlTbl = rtemsIrq;
initial_config.irqBase = BSP_LOWEST_OFFSET; initial_config.irqBase = BSP_LOWEST_OFFSET;
initial_config.irqPrioTbl = irqPrioTable; initial_config.irqPrioTbl = irqPrioTable;
if (!BSP_rtems_irq_mngt_set(&initial_config)) { if (!BSP_rtems_irq_mngt_set(&initial_config)) {
/* /*
* put something here that will show the failure... * put something here that will show the failure...
*/ */
BSP_panic("Unable to initialize RTEMS interrupt Management!!! System locked\n"); BSP_panic(
} "Unable to initialize RTEMS interrupt Management!!! System locked\n"
);
}
#ifdef TRACE_IRQ_INIT /*
* 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 = decrementer_exception_vector_prolog_code;
vectorDesc.hdl.raw_hdl_size =
(unsigned) decrementer_exception_vector_prolog_code_size;
vectorDesc.on = nop_func;
vectorDesc.off = nop_func;
vectorDesc.isOn = connected;
if (!ppc_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.hdl.raw_hdl = external_exception_vector_prolog_code;
vectorDesc.hdl.raw_hdl_size =
(unsigned) external_exception_vector_prolog_code_size;
if (!ppc_set_exception (&vectorDesc)) {
BSP_panic("Unable to initialize RTEMS external raw exception\n");
}
#ifdef TRACE_IRQ_INIT
printk("RTEMS IRQ management is now operationnal\n"); printk("RTEMS IRQ management is now operationnal\n");
#endif #endif
} }