/* * TOPPERS/OSEK Kernel * Toyohashi Open Platform for Embedded Real-Time Systems/ * OSEK Kernel * * Copyright (C) 2000-2003 by Embedded and Real-Time Systems Laboratory * Toyohashi Univ. of Technology, JAPAN * Copyright (C) 2003 by Naoki Saito * Nagoya Municipal Industrial Research Institute, JAPAN * Copyright (C) 2004 by Embedded and Real-Time Systems Laboratory * Graduate School of Information Science, Nagoya Univ., JAPAN * Copyright (C) 2004-2006 by Witz Corporation, JAPAN * * 上記著作権者は,以下の (1)〜(4) の条件か,Free Software Foundation * によって公表されている GNU General Public License の Version 2 に記 * 述されている条件を満たす場合に限り,本ソフトウェア(本ソフトウェア * を改変したものを含む.以下同じ)を使用・複製・改変・再配布(以下, * 利用と呼ぶ)することを無償で許諾する. * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー * スコード中に含まれていること. * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記 * の無保証規定を掲載すること. * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ * と. * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著 * 作権表示,この利用条件および下記の無保証規定を掲載すること. * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに * 報告すること. * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること. * * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. * */ /* * ターゲットシステムに依存する定義(CQ7144A用) */ #ifndef _SYS_DEFS_H_ #define _SYS_DEFS_H_ /* * スタック先頭番地 */ #define STACK_TOP (0xFFFFFFFC) /* * 割り込みベクタの先頭番地 */ #define VECTOR_TOP (0x0) /* * ターゲット識別マクロ(システム名の定義) */ #define INTERFACE /* * 起動メッセージのターゲットシステム名 */ #define TARGET_NAME "SH2/CQ7144A" /* * 外部RAMを使用するかの定義 */ #define USE_SRAM /* * 割込み番号の定義 */ #define INT_ILGL_OP (4) /* 4 +0x0010 一般不当命令 */ /* 5 +0x0014 システム予約 */ #define INT_SLOT_ILGL (6) /* 6 +0x0018 スロット不当命令 */ /* 7 +0x001C システム予約 */ /* 8 +0x0020 システム予約 */ #define INT_AUD_ADRERR (9) /* 9 +0x0024 CPU/AUD ADDRESS ERROR */ #define INT_DMAC_ADRERR (10) /* 10 +0x0028 DMAC/DTC ADDRESS ERROR */ #define INT_NMI (11) /* 11 +0x002C NMI */ #define INT_USRBRK (12) /* 12 +0x0030 ユーザブレーク */ /* 13 +0x0034 システム予約 */ #define INT_HUDI (14) /* 14 +0x0038 H-UDI*/ /* 15 +0x003C システム予約 */ /* : */ /* 31 +0x007C システム予約 */ #define INT_TRAP20 (32) /* 32 +0x0080 トラップ命令 */ #define INT_TRAP21 (33) /* 33 +0x0084 トラップ命令 */ #define INT_TRAP22 (34) /* 34 +0x0088 トラップ命令 */ #define INT_TRAP23 (35) /* 35 +0x008C トラップ命令 */ #define INT_TRAP24 (36) /* 36 +0x0090 トラップ命令 */ #define INT_TRAP25 (37) /* 37 +0x0094 トラップ命令 */ #define INT_TRAP26 (38) /* 38 +0x0098 トラップ命令 */ #define INT_TRAP27 (39) /* 39 +0x009C トラップ命令 */ #define INT_TRAP28 (40) /* 40 +0x00A0 トラップ命令 */ #define INT_TRAP29 (41) /* 41 +0x00A4 トラップ命令 */ #define INT_TRAP30 (42) /* 42 +0x00A8 トラップ命令 */ #define INT_TRAP31 (43) /* 43 +0x00AC トラップ命令 */ #define INT_TRAP32 (44) /* 44 +0x00B0 トラップ命令 */ #define INT_TRAP33 (45) /* 45 +0x00B4 トラップ命令 */ #define INT_TRAP34 (46) /* 46 +0x00B8 トラップ命令 */ #define INT_TRAP35 (47) /* 47 +0x00BC トラップ命令 */ #define INT_TRAP36 (48) /* 48 +0x00C0 トラップ命令 */ #define INT_TRAP37 (49) /* 49 +0x00C4 トラップ命令 */ #define INT_TRAP38 (50) /* 50 +0x00C8 トラップ命令 */ #define INT_TRAP39 (51) /* 51 +0x00CC トラップ命令 */ #define INT_TRAP40 (52) /* 52 +0x00D0 トラップ命令 */ #define INT_TRAP41 (53) /* 53 +0x00D4 トラップ命令 */ #define INT_TRAP42 (54) /* 54 +0x00D8 トラップ命令 */ #define INT_TRAP43 (55) /* 55 +0x00DC トラップ命令 */ #define INT_TRAP44 (56) /* 56 +0x00E0 トラップ命令 */ #define INT_TRAP45 (57) /* 57 +0x00E4 トラップ命令 */ #define INT_TRAP46 (58) /* 58 +0x00E8 トラップ命令 */ #define INT_TRAP47 (59) /* 59 +0x00EC トラップ命令 */ #define INT_TRAP48 (60) /* 60 +0x00F0 トラップ命令 */ #define INT_TRAP49 (61) /* 61 +0x00F4 トラップ命令 */ #define INT_TRAP50 (62) /* 62 +0x00F8 トラップ命令 */ #define INT_TRAP51 (63) /* 63 +0x00FC トラップ命令 */ #define INT_IRQ0 (64) /* 64 +0x0100 IPRA15-IPRA12 IRQ0*/ #define INT_IRQ1 (65) /* 65 +0x0104 IPRA11-IPRA8 IRQ1*/ #define INT_IRQ2 (66) /* 66 +0x0108 IPRA7-IPRA4 IRQ2*/ #define INT_IRQ3 (67) /* 67 +0x010C IPRA3-IPRA0 IRQ3*/ #define INT_IRQ4 (68) /* 68 +0x0110 IPRB15-IPRB12 IRQ4*/ #define INT_IRQ5 (69) /* 69 +0x0114 IPRB11-IPRB8 IRQ5*/ #define INT_IRQ6 (70) /* 70 +0x0118 IPRB7-IPRB4 IRQ6*/ #define INT_IRQ7 (71) /* 71 +0x011C IPRB3-IPRB0 IRQ7*/ #define INT_DEI0 (72) /* 72 +0x0120 IPRC15-IPRC12 DEI0 */ #define INT_DEI1 (76) /* 76 +0x0130 IPRC11-IPRC8 DEI1 */ #define INT_DEI2 (80) /* 80 +0x0140 IPRC7-IPRC4 DEI2 */ #define INT_DEI3 (84) /* 84 +0x0150 IPRC3-IPRC0 DEI3 */ #define INT_TGIA0 (88) /* 88 +0x0160 IPRD15-IPRD12 TGIA_0 */ #define INT_TGIB0 (89) /* 89 +0x0164 IPRD15-IPRD12 TGIB_0 */ #define INT_TGIC0 (90) /* 90 +0x0168 IPRD15-IPRD12 TGIC_0 */ #define INT_TGID0 (91) /* 91 +0x016C IPRD15-IPRD12 TGID_0 */ #define INT_TCIV0 (92) /* 92 +0x0170 IPRD11-IPRD8 TCIV_0 */ #define INT_TGIA1 (96) /* 96 +0x0180 IPRD7-IPRD4 TGIA_1 */ #define INT_TGIB1 (97) /* 97 +0x0184 IPRD7-IPRD4 TGIB_1 */ #define INT_TCIV1 (100) /* 100 +0x0190 IPRD3-IPRD0 TCIV_1 */ #define INT_TCIU1 (101) /* 101 +0x0194 IPRD3-IPRD0 TCIU_1 */ #define INT_TGIA2 (104) /* 104 +0x01A0 IPRE15-IPRE12 TGIA_2 */ #define INT_TGIB2 (105) /* 105 +0x01A4 IPRE15-IPRE12 TGIB_2 */ #define INT_TCIV2 (108) /* 108 +0x01B0 IPRE11-IPRE8 TCIV_2 */ #define INT_TCIU2 (109) /* 109 +0x01B4 IPRE11-IPRE8 TCIU_2 */ #define INT_TGIA3 (112) /* 112 +0x01C0 IPRE7-IPRE4 TGIA_3 */ #define INT_TGIB3 (113) /* 113 +0x01C4 IPRE7-IPRE4 TGIB_3 */ #define INT_TGIC3 (114) /* 114 +0x01C8 IPRE7-IPRE4 TGIC_3 */ #define INT_TGID3 (115) /* 115 +0x01CC IPRE7-IPRE4 TGID_3 */ #define INT_TCIV3 (116) /* 116 +0x01D0 IPRE3-IPRE0 TCIV_3 */ #define INT_TGIA4 (120) /* 120 +0x01E0 IPRF15-IPRF12 TGIA_4 */ #define INT_TGIB4 (121) /* 121 +0x01E4 IPRF15-IPRF12 TGIB_4 */ #define INT_TGIC4 (122) /* 122 +0x01E8 IPRF15-IPRF12 TGIC_4 */ #define INT_TGID4 (123) /* 123 +0x01EC IPRF15-IPRF12 TGID_4 */ #define INT_TCIV4 (124) /* 124 +0x01F0 IPRF11-IPRF8 TCIV_4 */ #define INT_ERI0 (128) /* 128 +0x0200 IPRF7-IPRF4 ERI_0 */ #define INT_RXI0 (129) /* 129 +0x0204 IPRF7-IPRF4 RXI_0 */ #define INT_TXI0 (130) /* 130 +0x0208 IPRF7-IPRF4 TXI_0 */ #define INT_TEI0 (131) /* 131 +0x020C IPRF7-IPRF4 TEI_0 */ #define INT_ERI1 (132) /* 132 +0x0210 IPRF3-IPRF0 ERI_1 */ #define INT_RXI1 (133) /* 133 +0x0214 IPRF3-IPRF0 RXI_1 */ #define INT_TXI1 (134) /* 134 +0x0218 IPRF3-IPRF0 TXI_1 */ #define INT_TEI1 (135) /* 135 +0x021C IPRF3-IPRF0 TEI_1 */ #define INT_ADI0 (136) /* 136 +0x0220 IPRG15-IPRG12 ADI0 */ #define INT_ADI1 (137) /* 137 +0x0224 IPRG15-IPRG12 ADI1 */ #define INT_SWDTEND (140) /* 140 +0x0230 IPRG11-IPRG8 SWDTEND */ #define CMI0 (144) /* 144 +0x0240 IPRG7-IPRG4 CMI0 */ #define CMI1 (148) /* 148 +0x0250 IPRG3-IPRG0 CMI1 */ #define ITI (152) /* 152 +0x0260 IPRH15-IPRH12 ITI */ /* 153 +0x0264 システム予約 */ /* 154 +0x0268 システム予約 */ /* 155 +0x026C システム予約 */ #define MTUOEI /* 156 +0x0270 IPRH11-IPRH8 MTUOEI */ /* 160 +0x0280 システム予約 */ /* : */ /* 167 +0x029C システム予約 */ #define INT_ERI2 (128) /* 168 +0x02A0 IPRI15-IPRI12 ERI_2 */ #define INT_RXI2 (129) /* 169 +0x02A4 IPRI15-IPRI12 RXI_2 */ #define INT_TXI2 (130) /* 170 +0x02A8 IPRI15-IPRI12 TXI_2 */ #define INT_TEI2 (131) /* 171 +0x02AC IPRI15-IPRI12 TEI_2 */ #define INT_ERI3 (128) /* 172 +0x02B0 IPRI11-IPRI8 ERI_3 */ #define INT_RXI3 (129) /* 173 +0x02B4 IPRI11-IPRI8 RXI_3 */ #define INT_TXI3 (130) /* 174 +0x02B8 IPRI11-IPRI8 TXI_3 */ #define INT_TEI3 (131) /* 175 +0x02BC IPRI11-IPRI8 TEI_3 */ /* 176 +0x02C0 システム予約 */ /* : */ /* 191 +0x02FC システム予約 */ #endif /* _SYS_DEFS_H_ */