File : a-intnam-xi-sam4s.ads
1 ------------------------------------------------------------------------------
2 -- --
3 -- GNAT RUN-TIME LIBRARY (GNARL) COMPONENTS --
4 -- --
5 -- A D A . I N T E R R U P T S . N A M E S --
6 -- --
7 -- S p e c --
8 -- --
9 -- Copyright (C) 1991-2014, Free Software Foundation, Inc. --
10 -- --
11 -- GNAT is free software; you can redistribute it and/or modify it under --
12 -- terms of the GNU General Public License as published by the Free Soft- --
13 -- ware Foundation; either version 3, or (at your option) any later ver- --
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
15 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
16 -- or FITNESS FOR A PARTICULAR PURPOSE. --
17 -- --
18 -- --
19 -- --
20 -- --
21 -- --
22 -- You should have received a copy of the GNU General Public License and --
23 -- a copy of the GCC Runtime Library Exception along with this program; --
24 -- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see --
25 -- <http://www.gnu.org/licenses/>. --
26 -- --
27 -- GNARL was developed by the GNARL team at Florida State University. --
28 -- Extensive contributions were provided by Ada Core Technologies, Inc. --
29 -- --
30 ------------------------------------------------------------------------------
31
32 -- This is the version for Cortex M4 SAM4S targets
33
34 package Ada.Interrupts.Names is
35
36 -- All identifiers in this unit are implementation defined
37
38 pragma Implementation_Defined;
39
40 -- The SAM4S datasheet defines peripheral indentifiers in Table 11-1
41 -- (page 41 of 1100E–ATARM–24-Jul-13). The meaningful number, the ID
42 -- starts at 0. Unfortunately, Interrupt_ID 0 is reserved and the SysTick
43 -- interrupt (a core interrupt) is handled by the runtime like other
44 -- interrupts. So the first interrupt (supply controler) is numbered 2
45 -- while its ID is 0 in the manual. The offset of 2 is reflected in
46 -- s-bbbosu-stm32f4.adb by the First_IRQ constant.
47
48 Sys_Tick_Interrupt : constant Interrupt_ID := 1;
49 SUPC_Interrupt : constant Interrupt_ID := 2;
50 RSTC_Interrupt : constant Interrupt_ID := 3;
51 RTC_Interrupt : constant Interrupt_ID := 4;
52 RTT_Interrupt : constant Interrupt_ID := 5;
53 WDT_Interrupt : constant Interrupt_ID := 6;
54 PMC_Interrupt : constant Interrupt_ID := 7;
55 EEFC0_Interrupt : constant Interrupt_ID := 8;
56 EEFC1_Interrupt : constant Interrupt_ID := 9;
57 UART0_Interrupt : constant Interrupt_ID := 10;
58 UART1_Interrupt : constant Interrupt_ID := 11;
59 SMC_Interrupt : constant Interrupt_ID := 12;
60 PIOA_Interrupt : constant Interrupt_ID := 13;
61 PIOB_Interrupt : constant Interrupt_ID := 14;
62 PIOC_Interrupt : constant Interrupt_ID := 15;
63 USART0_Interrupt : constant Interrupt_ID := 16;
64 USART1_Interrupt : constant Interrupt_ID := 17;
65
66 GSMCI_Interrupt : constant Interrupt_ID := 20;
67 TWI0_Interrupt : constant Interrupt_ID := 21;
68 TWO1_Interrupt : constant Interrupt_ID := 22;
69 SPI_Interrupt : constant Interrupt_ID := 23;
70 SSC_Interrupt : constant Interrupt_ID := 24;
71 TC0_Interrupt : constant Interrupt_ID := 25;
72 TC1_Interrupt : constant Interrupt_ID := 26;
73 TC2_Interrupt : constant Interrupt_ID := 27;
74 TC3_Interrupt : constant Interrupt_ID := 28;
75 TC4_Interrupt : constant Interrupt_ID := 29;
76 TC5_Interrupt : constant Interrupt_ID := 30;
77 ADC_Interrupt : constant Interrupt_ID := 31;
78 DACC_Interrupt : constant Interrupt_ID := 32;
79 PWM_Interrupt : constant Interrupt_ID := 33;
80 CRCCU_Interrupt : constant Interrupt_ID := 34;
81 ACC_Interrupt : constant Interrupt_ID := 35;
82 UDP_Interrupt : constant Interrupt_ID := 36;
83
84 end Ada.Interrupts.Names;