OSDN Git Service

6b7b973be49feea0abd0cb3a61bfc3c1094ff74c
[toppersasp4lpc/asp.git] / asp / target / dve68k_gcc / target.tf
1
2 $               パス2のターゲット依存テンプレート(DVE68K/40用)
3
4
5
6 $  ATT_ISRで使用できる割込み番号とそれに対応する割込みハンドラ番号
7
8 $INTNO_ATTISR_VALID = { 1,2,...,7;9,10,...,16;17,18,...,24 }$
9 $INHNO_ATTISR_VALID = { 0x47,0x46,...,0x41;0x4f,0x4e,...,0x48;
10                                                 0x57,0x56,...,0x50 }$
11
12
13 $  DEF_INT/DEF_EXCで使用できる割込みハンドラ番号/CPU例外ハンドラ番号
14
15 $INHNO_DEFINH_VALID = { 0x10,0x11,...,0x1f;0x40,0x41,...,0xff }$
16 $EXCNO_DEFEXC_VALID = { 0x02,0x03,...,0x0f;0x20,0x21,...,0x3f }$
17
18
19 $  CFG_INTで使用できる割込み番号と割込み優先度
20
21 $INTNO_CFGINT_VALID = { 1,2,...,7;9,10,...,31 }$
22 $INTPRI_CFGINT_VALID = { -7,-6,...,-1 }$
23
24
25 $  カーネル管理外の割込み
26
27 $TARGET_INHATR = TA_NONKERNEL$
28
29
30 $  チェック方法の指定
31
32 $CHECK_STKSZ_ALIGN = 4$
33
34
35 $  標準テンプレートファイルのインクルード
36
37 $INCLUDE "kernel/kernel.tf"$
38
39 /*$NL$
40 $SPC$*  Target-dependent Definitions (DVE68K/40)$NL$
41 $SPC$*/$NL$
42 $NL$
43
44
45 $   CFG_INTのターゲット依存のエラーチェックと_kernel_bitpat_cfgintの生成
46
47 $bitpat_cfgint = 0$
48
49 $FOREACH intno INT.ORDER_LIST$
50         $bitpat = (1 << (32 - INT.INTNO[intno]))$
51         $bitpat_cfgint = bitpat_cfgint | bitpat$
52
53         $IF (bitpat & DGA_INT_TRG_LEVEL) != 0$
54                 $IF (INT.INTATR[intno] & TA_EDGE) != 0$
55                         $ERROR INT.TEXT_LINE[intno]$E_RSATR: $FORMAT("Edge trigger (TA_EDGE) is not supported for intno `%1%\' in CFG_INT", INT.INTNO[intno])$$END$
56                 $END$
57         $ELSE$
58         $IF (bitpat & DGA_INT_TRG_EDGE) != 0$
59                 $IF (INT.INTATR[intno] & TA_EDGE) == 0$
60                         $ERROR INT.TEXT_LINE[intno]$E_RSATR: $FORMAT("Level trigger is not supported for intno `%1%\' in CFG_INT", INT.INTNO[intno])$$END$
61                 $END$
62         $END$
63         $END$
64 $END$
65 const uint32_t  _kernel_bitpat_cfgint = UINT32_C($FORMAT("0x%08x", bitpat_cfgint)$);
66 $NL$