/* * Motorola MC9328MXL Interrupt handler * * Copyright (c) 2010 embedded brains GmbH. * * Copyright (c) 2004 by Jay Monkman * * The license and distribution terms for this file may be * found in the file LICENSE in this distribution or at * http://www.rtems.org/license/LICENSE. */ #include #include #include #include #include void bsp_interrupt_dispatch(void) { rtems_vector_number vector = MC9328MXL_AITC_NIVECSR >> 16; bsp_interrupt_handler_dispatch(vector); } rtems_status_code bsp_interrupt_raise(rtems_vector_number vector) { bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); return RTEMS_UNSATISFIED; } rtems_status_code bsp_interrupt_clear(rtems_vector_number vector) { bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); return RTEMS_UNSATISFIED; } rtems_status_code bsp_interrupt_vector_is_enabled( rtems_vector_number vector, bool *enabled ) { bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); bsp_interrupt_assert(enabled != NULL); *enabled = false; return RTEMS_UNSATISFIED; } void bsp_interrupt_vector_enable(rtems_vector_number vector) { bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); if (vector < MC9328MXL_NUM_INTS) MC9328MXL_AITC_INTENNUM = vector; } void bsp_interrupt_vector_disable(rtems_vector_number vector) { bsp_interrupt_assert(bsp_interrupt_is_valid_vector(vector)); if (vector < MC9328MXL_NUM_INTS) MC9328MXL_AITC_INTDISNUM = vector; } rtems_status_code bsp_interrupt_facility_initialize(void) { _CPU_ISR_install_vector(ARM_EXCEPTION_IRQ, _ARMV4_Exception_interrupt, NULL); return RTEMS_SUCCESSFUL; }