]> git.sur5r.net Git - freertos/blob - FreeRTOS/Demo/PIC32MEC14xx_MPLAB/src/MEC14xx/interrupts/girq26.c
Add PIC32MEC14xx port and demo application.
[freertos] / FreeRTOS / Demo / PIC32MEC14xx_MPLAB / src / MEC14xx / interrupts / girq26.c
1 /*****************************************************************************\r
2 * (c) 2013 Microchip Technology Inc. and its subsidiaries.\r
3 * You may use this software and any derivatives exclusively with\r
4 * Microchip products.\r
5 * THIS SOFTWARE IS SUPPLIED BY MICROCHIP "AS IS".\r
6 * NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS SOFTWARE,\r
7 * INCLUDING ANY IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY,\r
8 * AND FITNESS FOR A PARTICULAR PURPOSE, OR ITS INTERACTION WITH MICROCHIP\r
9 * PRODUCTS, COMBINATION WITH ANY OTHER PRODUCTS, OR USE IN ANY APPLICATION.\r
10 * IN NO EVENT WILL MICROCHIP BE LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE,\r
11 * INCIDENTAL OR CONSEQUENTIAL LOSS, DAMAGE, COST OR EXPENSE OF ANY KIND\r
12 * WHATSOEVER RELATED TO THE SOFTWARE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS\r
13 * BEEN ADVISED OF THE POSSIBILITY OR THE DAMAGES ARE FORESEEABLE.\r
14 * TO THE FULLEST EXTENT ALLOWED BY LAW, MICROCHIP'S TOTAL LIABILITY ON ALL\r
15 * CLAIMS IN ANY WAY RELATED TO THIS SOFTWARE WILL NOT EXCEED THE AMOUNT OF\r
16 * FEES, IF ANY, THAT YOU HAVE PAID DIRECTLY TO MICROCHIP FOR THIS SOFTWARE.\r
17 * MICROCHIP PROVIDES THIS SOFTWARE CONDITIONALLY UPON YOUR ACCEPTANCE\r
18 * OF THESE TERMS.\r
19 *****************************************************************************/\r
20 \r
21 /** @file girq26.c\r
22  *Interrupt service routines for MIPS using vanilla GCC and MCHP XC32\r
23  */\r
24 /** @defgroup MEC14xx ISR\r
25  *  @{\r
26  */\r
27 \r
28 \r
29 #include "appcfg.h"\r
30 #include "platform.h"\r
31 #include "MEC14xx/mec14xx.h"\r
32 #include "MEC14xx/mec14xx_girqs.h"\r
33 #include "MEC14xx/mec14xx_gpio.h"\r
34 #include "MEC14xx/mec14xx_trace_func.h"\r
35 \r
36 \r
37 #if GIRQ26_DISAGG == 0\r
38 \r
39 void __attribute__((weak, interrupt, nomips16, section(".girqs")))\r
40 girq26_isr(void)\r
41 {\r
42     JTVIC_GROUP_EN_CLR->w = (1ul<<16);\r
43 }\r
44 \r
45 #else\r
46 \r
47 void __attribute__((weak, interrupt, nomips16))\r
48 girq26_b0(void)\r
49 {\r
50     jtvic_dis_clr_source(MEC14xx_GIRQ26_ID, 0);\r
51 }\r
52 \r
53 void __attribute__((weak, interrupt, nomips16))\r
54 girq26_b1(void)\r
55 {\r
56     jtvic_dis_clr_source(MEC14xx_GIRQ26_ID, 1);\r
57 }\r
58 \r
59 void __attribute__((weak, interrupt, nomips16))\r
60 girq26_b2(void)\r
61 {\r
62     jtvic_dis_clr_source(MEC14xx_GIRQ26_ID, 2);\r
63 }\r
64 \r
65 void __attribute__((weak, interrupt, nomips16))\r
66 girq26_b3(void)\r
67 {\r
68     jtvic_dis_clr_source(MEC14xx_GIRQ26_ID, 3);\r
69 }\r
70 \r
71 void __attribute__((weak, interrupt, nomips16))\r
72 girq26_b4(void)\r
73 {\r
74     jtvic_dis_clr_source(MEC14xx_GIRQ26_ID, 4);\r
75 }\r
76 \r
77 void __attribute__((weak, interrupt, nomips16))\r
78 girq26_b5(void)\r
79 {\r
80     jtvic_dis_clr_source(MEC14xx_GIRQ26_ID, 5);\r
81 }\r
82 \r
83 void __attribute__((weak, interrupt, nomips16))\r
84 girq26_b6(void)\r
85 {\r
86     jtvic_dis_clr_source(MEC14xx_GIRQ26_ID, 6);\r
87 }\r
88 \r
89 void __attribute__((weak, interrupt, nomips16))\r
90 girq26_b7(void)\r
91 {\r
92     jtvic_dis_clr_source(MEC14xx_GIRQ26_ID, 7);\r
93 }\r
94 \r
95 void __attribute__((weak, interrupt, nomips16))\r
96 girq26_b8(void)\r
97 {\r
98     jtvic_dis_clr_source(MEC14xx_GIRQ26_ID, 8);\r
99 }\r
100 \r
101 void __attribute__((weak, interrupt, nomips16))\r
102 girq26_b9(void)\r
103 {\r
104     jtvic_dis_clr_source(MEC14xx_GIRQ26_ID, 9);\r
105 }\r
106 \r
107 void __attribute__((weak, interrupt, nomips16))\r
108 girq26_b10(void)\r
109 {\r
110     jtvic_dis_clr_source(MEC14xx_GIRQ26_ID, 10);\r
111 }\r
112 \r
113 void __attribute__((weak, interrupt, nomips16))\r
114 girq26_b11(void)\r
115 {\r
116     jtvic_dis_clr_source(MEC14xx_GIRQ26_ID, 11);\r
117 }\r
118 \r
119 \r
120 #endif\r
121 \r
122 /* end girq26.c */\r
123 /**   @}\r
124  */\r
125 \r