]> git.sur5r.net Git - freertos/blob
dc7c00f7981816bbe718c6f5b4f46a1ddd4d605f
[freertos] /
1 /*******************************************************************************\r
2  * (c) Copyright 2007-2013 Microsemi SoC Products Group.  All rights reserved.\r
3  * \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
7  *\r
8  * SVN $Revision: 5259 $\r
9  * SVN $Date: 2013-03-21 12:58:05 +0000 (Thu, 21 Mar 2013) $\r
10  */\r
11 #include "cortex_nvic.h"\r
12 #include "../../CMSIS/mss_assert.h"\r
13 \r
14 \r
15 /***************************************************************************//**\r
16  * \r
17  */\r
18 void NVIC_init( void )\r
19 {\r
20     /*\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
24      *\r
25      * Simply remove the call to NVIC_init() from your application code.\r
26      */\r
27     ASSERT(0);\r
28 }\r
29 \r
30 /***************************************************************************//**\r
31  * \r
32  */\r
33 void NVIC_set_handler\r
34 (\r
35     uint32_t interrupt_number,\r
36     hal_nvic_irq_handler_t handler\r
37 )\r
38 {\r
39     /*\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
43      *\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
47      * fabric:\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
67      */\r
68     ASSERT(0);\r
69 }\r
70 \r
71 /***************************************************************************//**\r
72  * \r
73  */\r
74 void NVIC_set_priority\r
75 (\r
76     uint32_t interrupt_number,\r
77     uint8_t priority_level\r
78 )\r
79 {\r
80     /*\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
84      *\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
88      *      - FabricIrq0_IRQn\r
89      *      - FabricIrq1_IRQn\r
90      *      - FabricIrq2_IRQn\r
91      *      - FabricIrq3_IRQn\r
92      *      - FabricIrq4_IRQn\r
93      *      - FabricIrq5_IRQn\r
94      *      - FabricIrq6_IRQn\r
95      *      - FabricIrq7_IRQn\r
96      *      - FabricIrq8_IRQn\r
97      *      - FabricIrq9_IRQn\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
104      */\r
105     ASSERT(0);\r
106 }\r
107 \r
108 /***************************************************************************//**\r
109  * \r
110  */\r
111 void NVIC_enable_interrupt( uint32_t interrupt_number )\r
112 {\r
113     /*\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
117      *\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
137      */\r
138     ASSERT(0);\r
139 }\r
140 \r
141 /***************************************************************************//**\r
142  * \r
143  */\r
144 void NVIC_disable_interrupt( uint32_t interrupt_number )\r
145 {\r
146     /*\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
150      *\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
170      */\r
171     ASSERT(0);\r
172 }\r
173 \r
174 /***************************************************************************//**\r
175  * \r
176  */\r
177 void NVIC_clear_interrupt( uint32_t interrupt_number )\r
178 {\r
179     /*\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
183      *\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
203      */\r
204     ASSERT(0);\r
205 }\r