1 /*******************************************************************************
\r
2 * (c) Copyright 2007-2013 Microsemi SoC Products Group. All rights reserved.
\r
4 * Legacy Actel HAL Cortex NVIC control functions.
\r
5 * The use of these functions should be replaced by calls to the equivalent
\r
6 * CMSIS function in your application code.
\r
8 * SVN $Revision: 5259 $
\r
9 * SVN $Date: 2013-03-21 12:58:05 +0000 (Thu, 21 Mar 2013) $
\r
11 #include "cortex_nvic.h"
\r
12 #include "../../CMSIS/mss_assert.h"
\r
15 /***************************************************************************//**
\r
18 void NVIC_init( void )
\r
21 * Please use the NVIC control functions provided by the SmartFusion2 CMSIS
\r
22 * Hardware Abstraction Layer. The use of the Actel HAL NVIC control
\r
23 * functions is obsolete on SmartFusion2 devices.
\r
25 * Simply remove the call to NVIC_init() from your application code.
\r
30 /***************************************************************************//**
\r
33 void NVIC_set_handler
\r
35 uint32_t interrupt_number,
\r
36 hal_nvic_irq_handler_t handler
\r
40 * Please use the NVIC control functions provided by the SmartFusion2 CMSIS
\r
41 * Hardware Abstraction Layer. The use of the Actel HAL NVIC control
\r
42 * functions is obsolete on SmartFusion2 devices.
\r
44 * Please remove the call to NVIC_set_handler() from your application code
\r
45 * and provide a function using one of the following function prototypes to
\r
46 * handle interrupts from peripherals implemeted in the SmartFusion2 FPGA
\r
48 * - void FabricIrq0_IRQHandler(void)
\r
49 * - void FabricIrq1_IRQHandler(void)
\r
50 * - void FabricIrq2_IRQHandler(void)
\r
51 * - void FabricIrq3_IRQHandler(void)
\r
52 * - void FabricIrq4_IRQHandler(void)
\r
53 * - void FabricIrq5_IRQHandler(void)
\r
54 * - void FabricIrq6_IRQHandler(void)
\r
55 * - void FabricIrq7_IRQHandler(void)
\r
56 * - void FabricIrq8_IRQHandler(void)
\r
57 * - void FabricIrq9_IRQHandler(void)
\r
58 * - void FabricIrq10_IRQHandler(void)
\r
59 * - void FabricIrq11_IRQHandler(void)
\r
60 * - void FabricIrq12_IRQHandler(void)
\r
61 * - void FabricIrq13_IRQHandler(void)
\r
62 * - void FabricIrq14_IRQHandler(void)
\r
63 * - void FabricIrq15_IRQHandler(void)
\r
64 * The function to implement depends on which MSS_INT_F2M[n] signal is used
\r
65 * in your Libero design to connect the interrupt signal of the peripheral
\r
66 * generating the interrupt.
\r
71 /***************************************************************************//**
\r
74 void NVIC_set_priority
\r
76 uint32_t interrupt_number,
\r
77 uint8_t priority_level
\r
81 * Please use the NVIC control functions provided by the SmartFusion2 CMSIS
\r
82 * Hardware Abstraction Layer. The use of the Actel HAL NVIC control
\r
83 * functions is obsolete on SmartFusion2 devices.
\r
85 * Please replace calls to NVIC_set_priority() with a call to the CMSIS
\r
86 * void NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) function where
\r
87 * IRQn is one of the following values:
\r
98 * - FabricIrq10_IRQn
\r
99 * - FabricIrq11_IRQn
\r
100 * - FabricIrq12_IRQn
\r
101 * - FabricIrq13_IRQn
\r
102 * - FabricIrq14_IRQn
\r
103 * - FabricIrq15_IRQn
\r
108 /***************************************************************************//**
\r
111 void NVIC_enable_interrupt( uint32_t interrupt_number )
\r
114 * Please use the NVIC control functions provided by the SmartFusion2 CMSIS
\r
115 * Hardware Abstraction Layer. The use of the Actel HAL NVIC control
\r
116 * functions is obsolete on SmartFusion2 devices.
\r
118 * Please replace calls to NVIC_enable_interrupt() with a call to the CMSIS
\r
119 * void NVIC_EnableIRQ(IRQn_Type IRQn) function where IRQn is one of the
\r
120 * following values:
\r
121 * - FabricIrq0_IRQn
\r
122 * - FabricIrq1_IRQn
\r
123 * - FabricIrq2_IRQn
\r
124 * - FabricIrq3_IRQn
\r
125 * - FabricIrq4_IRQn
\r
126 * - FabricIrq5_IRQn
\r
127 * - FabricIrq6_IRQn
\r
128 * - FabricIrq7_IRQn
\r
129 * - FabricIrq8_IRQn
\r
130 * - FabricIrq9_IRQn
\r
131 * - FabricIrq10_IRQn
\r
132 * - FabricIrq11_IRQn
\r
133 * - FabricIrq12_IRQn
\r
134 * - FabricIrq13_IRQn
\r
135 * - FabricIrq14_IRQn
\r
136 * - FabricIrq15_IRQn
\r
141 /***************************************************************************//**
\r
144 void NVIC_disable_interrupt( uint32_t interrupt_number )
\r
147 * Please use the NVIC control functions provided by the SmartFusion2 CMSIS
\r
148 * Hardware Abstraction Layer. The use of the Actel HAL NVIC control
\r
149 * functions is obsolete on SmartFusion2 devices.
\r
151 * Please replace calls to NVIC_disable_interrupt() with a call to the CMSIS
\r
152 * void NVIC_DisableIRQ(IRQn_Type IRQn) function where IRQn is one of the
\r
153 * following values:
\r
154 * - FabricIrq0_IRQn
\r
155 * - FabricIrq1_IRQn
\r
156 * - FabricIrq2_IRQn
\r
157 * - FabricIrq3_IRQn
\r
158 * - FabricIrq4_IRQn
\r
159 * - FabricIrq5_IRQn
\r
160 * - FabricIrq6_IRQn
\r
161 * - FabricIrq7_IRQn
\r
162 * - FabricIrq8_IRQn
\r
163 * - FabricIrq9_IRQn
\r
164 * - FabricIrq10_IRQn
\r
165 * - FabricIrq11_IRQn
\r
166 * - FabricIrq12_IRQn
\r
167 * - FabricIrq13_IRQn
\r
168 * - FabricIrq14_IRQn
\r
169 * - FabricIrq15_IRQn
\r
174 /***************************************************************************//**
\r
177 void NVIC_clear_interrupt( uint32_t interrupt_number )
\r
180 * Please use the NVIC control functions provided by the SmartFusion2 CMSIS
\r
181 * Hardware Abstraction Layer. The use of the Actel HAL NVIC control
\r
182 * functions is obsolete on SmartFusion2 devices.
\r
184 * Please replace calls to NVIC_clear_interrupt() with a call to the CMSIS
\r
185 * void NVIC_ClearPendingIRQ(IRQn_Type IRQn) function where IRQn is one of the
\r
186 * following values:
\r
187 * - FabricIrq0_IRQn
\r
188 * - FabricIrq1_IRQn
\r
189 * - FabricIrq2_IRQn
\r
190 * - FabricIrq3_IRQn
\r
191 * - FabricIrq4_IRQn
\r
192 * - FabricIrq5_IRQn
\r
193 * - FabricIrq6_IRQn
\r
194 * - FabricIrq7_IRQn
\r
195 * - FabricIrq8_IRQn
\r
196 * - FabricIrq9_IRQn
\r
197 * - FabricIrq10_IRQn
\r
198 * - FabricIrq11_IRQn
\r
199 * - FabricIrq12_IRQn
\r
200 * - FabricIrq13_IRQn
\r
201 * - FabricIrq14_IRQn
\r
202 * - FabricIrq15_IRQn
\r