1 /****************************************************************************** 2 * * 3 * License Agreement * 4 * * 5 * Copyright (c) 2009 Altera Corporation, San Jose, California, USA. * 6 * All rights reserved. * 7 * * 8 * Permission is hereby granted, free of charge, to any person obtaining a * 9 * copy of this software and associated documentation files (the "Software"), * 10 * to deal in the Software without restriction, including without limitation * 11 * the rights to use, copy, modify, merge, publish, distribute, sublicense, * 12 * and/or sell copies of the Software, and to permit persons to whom the * 13 * Software is furnished to do so, subject to the following conditions: * 14 * * 15 * The above copyright notice and this permission notice shall be included in * 16 * all copies or substantial portions of the Software. * 17 * * 18 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * 19 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * 20 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * 21 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * 22 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * 23 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * 24 * DEALINGS IN THE SOFTWARE. * 25 * * 26 * * 27 ******************************************************************************/ 28 29 /* 30 * Support for the Nios II internal interrupt controller. 31 */ 32 33 #ifndef __ALT_NIOS2_GEN2_IRQ_H__ 34 #define __ALT_NIOS2_GEN2_IRQ_H__ 35 36 #ifdef __cplusplus 37 extern "C" 38 { 39 #endif /* __cplusplus */ 40 41 /* 42 * The macro ALTERA_NIOS2_GEN2_IRQ_INSTANCE is used by the alt_irq_init() 43 * function in the auto-generated file alt_sys_init.c to create an 44 * instance of this interrupt controller device driver state if this 45 * module contains an interrupt controller. 46 * Only one instance of a Nios II is allowed so this macro is just empty. 47 */ 48 49 #define ALTERA_NIOS2_GEN2_IRQ_INSTANCE(name, state) 50 51 /* 52 * altera_nios2_gen2_irq_init() is called by the auto-generated function 53 * alt_irq_init() once for the Nios II if it contains an interrupt controller. 54 * The altera_nios2_gen2_irq_init() routine is called using the 55 * ALTERA_NIOS2_GEN2_IRQ_INIT macro given below. 56 * 57 * This function initializes the internal interrupt controller 58 * so is not called if the Nios II contains an external interrupt 59 * controller port (because the internal interrupt controller 60 * is removed if this port is present). 61 */ 62 63 extern void altera_nios2_gen2_irq_init( void ); 64 65 /* 66 * The macro ALTERA_NIOS2_GEN2_IRQ_INIT is used by the alt_irq_init() routine 67 * in the auto-generated file alt_sys_init.c to initialize an instance 68 * of the interrupt controller device driver state. 69 */ 70 71 #define ALTERA_NIOS2_GEN2_IRQ_INIT(name, state) altera_nios2_gen2_irq_init() 72 73 #ifdef __cplusplus 74 } 75 #endif /* __cplusplus */ 76 77 #endif /* __ALT_NIOS2_ULTRA_IRQ_H__ */ 78