bsp/mpc55xx: Fix INTC initialization

This commit is contained in:
Sebastian Huber
2012-11-13 12:20:59 +01:00
parent 6c4541048a
commit bd75e589e1

View File

@@ -135,8 +135,10 @@ static int mpc55xx_external_exception_handler( BSP_Exception_frame *frame, unsig
return 0; return 0;
} }
rtems_status_code bsp_interrupt_facility_initialize() rtems_status_code bsp_interrupt_facility_initialize(void)
{ {
rtems_vector_number vector;
/* Install exception handler */ /* Install exception handler */
if (ppc_exc_set_handler( ASM_EXT_VECTOR, mpc55xx_external_exception_handler)) { if (ppc_exc_set_handler( ASM_EXT_VECTOR, mpc55xx_external_exception_handler)) {
return RTEMS_IO_ERROR; return RTEMS_IO_ERROR;
@@ -144,6 +146,11 @@ rtems_status_code bsp_interrupt_facility_initialize()
/* Initialize interrupt controller */ /* Initialize interrupt controller */
/* Disable all interrupts */
for (vector = MPC55XX_IRQ_MIN; vector <= MPC55XX_IRQ_MAX; ++vector) {
INTC.PSR [vector].B.PRI = MPC55XX_INTC_DISABLED_PRIORITY;
}
/* Software vector mode */ /* Software vector mode */
INTC.MCR.B.VTES = 0; INTC.MCR.B.VTES = 0;
INTC.MCR.B.HVEN = 0; INTC.MCR.B.HVEN = 0;