[93] | 1 |
|
---|
| 2 | TOPPERS/SSPJ[l
|
---|
| 3 | ^[Qbg˶ |[eBOKCh
|
---|
| 4 |
|
---|
| 5 | Îo[W: Release 1.3.0
|
---|
| 6 | ÅIXV: 2015N511ú
|
---|
| 7 |
|
---|
| 8 | ±ÌhL
|
---|
| 9 | gÍCTOPPERS/SSPJ[lðC¢T|[gÌ^[QbgVXe
|
---|
| 10 | É|[eBO·é½ßÉKvÆÈé^[Qbg˶ÌÀû@ðྷ
|
---|
| 11 | éàÌÅ éD
|
---|
| 12 |
|
---|
| 13 | ----------------------------------------------------------------------
|
---|
| 14 | TOPPERS/SSP Kernel
|
---|
| 15 | Smallest Set Profile Kernel
|
---|
| 16 |
|
---|
| 17 | Copyright (C) 2011-2012 by Meika Sugimoto
|
---|
| 18 | Copyright (C) 2015 by Naoki Saito
|
---|
| 19 | Nagoya Municipal Industrial Research Institute, JAPAN
|
---|
| 20 |
|
---|
| 21 | ãLì ÒÍCȺÌ(1)`(4)Ìðð½·êÉÀèC{\tgEF
|
---|
| 22 | Ai{\tgEFAðüϵ½àÌðÜÞDȺ¯¶jðgpE¡»Eü
|
---|
| 23 | ÏEÄzziȺCpÆÄÔj·é±Æð³Åø·éD
|
---|
| 24 | (1) {\tgEFAð\[XR[hÌ`Åp·éêÉÍCãLÌì
|
---|
| 25 | \¦C±Ìpð¨æѺL̳ÛØKèªC»ÌÜÜÌ`Å\[
|
---|
| 26 | XR[hÉÜÜêÄ¢é±ÆD
|
---|
| 27 | (2) {\tgEFAðCCu`®ÈÇC¼Ì\tgEFAJÉg
|
---|
| 28 | pÅ«é`ÅÄzz·éêÉÍCÄzzɺ¤hL
|
---|
| 29 | gip
|
---|
| 30 | Ò}j
|
---|
| 31 | AÈÇjÉCãLÌì \¦C±Ìpð¨æѺL
|
---|
| 32 | ̳ÛØKèðfÚ·é±ÆD
|
---|
| 33 | (3) {\tgEFAðC@íÉgÝÞÈÇC¼Ì\tgEFAJÉg
|
---|
| 34 | pÅ«È¢`ÅÄzz·éêÉÍCÌ¢¸ê©Ìðð½·±
|
---|
| 35 | ÆD
|
---|
| 36 | (a) Äzzɺ¤hL
|
---|
| 37 | gipÒ}j
|
---|
| 38 | AÈÇjÉCãLÌ
|
---|
| 39 | ì \¦C±Ìpð¨æѺL̳ÛØKèðfÚ·é±ÆD
|
---|
| 40 | (b) ÄzzÌ`ÔðCÊÉèßéû@ÉæÁÄCTOPPERSvWFNgÉ
|
---|
| 41 | ñ·é±ÆD
|
---|
| 42 | (4) {\tgEFAÌpÉæè¼ÚIܽÍÔÚIɶ¶é¢©Èé¹
|
---|
| 43 | Q©çàCãLì Ò¨æÑTOPPERSvWFNgðÆÓ·é±ÆD
|
---|
| 44 | ܽC{\tgEFAÌ[UܽÍGh[U©çÌ¢©Èé
|
---|
| 45 | RÉîÿ©çàCãLì Ò¨æÑTOPPERSvWFNgð
|
---|
| 46 | ÆÓ·é±ÆD
|
---|
| 47 |
|
---|
| 48 | {\tgEFAÍC³ÛØÅñ³êÄ¢éàÌÅ éDãLì Ò¨
|
---|
| 49 | æÑTOPPERSvWFNgÍC{\tgEFAÉÖµÄCÁèÌgpÚI
|
---|
| 50 | ÉηéK«àÜßÄC¢©ÈéÛØàsíÈ¢DܽC{\tgEF
|
---|
| 51 | AÌpÉæè¼ÚIܽÍÔÚIɶ¶½¢©Èé¹QÉÖµÄàC»
|
---|
| 52 | ÌÓCðíÈ¢D
|
---|
| 53 |
|
---|
| 54 | ----------------------------------------------------------------------
|
---|
| 55 |
|
---|
| 56 | Ú
|
---|
| 57 |
|
---|
| 58 | 1. ¤Ê
|
---|
| 59 | 1.1 ^[Qbg˶Ì\¬
|
---|
| 60 | 1.2 ¼OÌÕËÌh~
|
---|
| 61 | 1.3 ½dCN[hÌh~
|
---|
| 62 | 1.4 AZu¾êÆÌwb_t@C̤p
|
---|
| 63 | 1.5 CN[hLqÌû@
|
---|
| 64 | 1.6 NeBJZNVÌoüÌÀ»ÉÖ·é§ñ
|
---|
| 65 | 2. VXe\z«Ì^[Qbg˶
|
---|
| 66 | 2.1 ^[QbgªÌÆ^[Qbg˶ÌfBNg
|
---|
| 67 | 2.2 MakefileÌ^[Qbg˶
|
---|
| 68 | 2.3 J«¼ÆR}h¼ÌÝè
|
---|
| 69 | 2.4 RpCIvVÆIuWFNgt@CÌÝè
|
---|
| 70 | 2.5 Nû@ÌÝè
|
---|
| 71 | 2.6 ˶ÖWÌè`
|
---|
| 72 | 2.7 »Ì¼ÌÝè
|
---|
| 73 | 3. TOPPERS¤Êè`Ì^[Qbg˶
|
---|
| 74 | 3.1 ^[Qbg¯Ê}N
|
---|
| 75 | 3.2 ®^ÌÅålEŬlErbg
|
---|
| 76 | 3.3 TCYÌwè³ê½®^C»ÌÅålEŬlC®èðìé}N
|
---|
| 77 | 3.4 TCYÌwè³ê½®¬_^C»ÌÅålEŬlÌ}N
|
---|
| 78 | 3.5 RpCÌg£@\̽ßÌ}Nè`
|
---|
| 79 | 3.6 WIÈè`Ìã«
|
---|
| 80 | 3.7 AT[V̽ßÌè`
|
---|
| 81 | 4. VXeC^tF[XCiSILjÌ^[Qbg˶
|
---|
| 82 | 4.1 SÝbNóÔÌÇ
|
---|
| 83 | 4.2 ÷ÔÒ¿
|
---|
| 84 | 4.3 vZbTÌGfBA
|
---|
| 85 | 4.4 óÔANZXÖ
|
---|
| 86 | 4.5 I/OóÔANZXÖ
|
---|
| 87 | 5. J[lAPIÌ^[Qbg˶
|
---|
| 88 | 5.1 ^[Qbgè`ÅT|[g·é@\
|
---|
| 89 | 5.2 ÝDæxÌÍÍ
|
---|
| 90 | 5.3 ^CeBbNÌè`
|
---|
| 91 | 5.4 ÌæmÛ̽ßÌ^è`
|
---|
| 92 | 5.5 ÌæmÛ̽ßÌ}N
|
---|
| 93 | 5.6 I[onh@\g£Ì½ßÌè`iIvVj
|
---|
| 94 | 6. J[lÀÌ^[Qbg˶
|
---|
| 95 | 6.1 J[lÀÌ^[Qbg˶̤Ê
|
---|
| 96 | 6.1.1 J[lÀÌ^[Qbg˶Ì\¬vf
|
---|
| 97 | 6.1.2 ^[Qbg˶ÌÖ̽¼K¥
|
---|
| 98 | 6.2 g[XO@\ÖÌÎ
|
---|
| 99 | 6.3 VXeóÔÌÇ
|
---|
| 100 | 6.3.1 SÝbNóÔÌÇ
|
---|
| 101 | 6.3.2 ReLXgÌÇ
|
---|
| 102 | 6.3.3 CPUbNóÔÌÇ
|
---|
| 103 | 6.4 ÝÉÖA·éVXeóÔÌÇ
|
---|
| 104 | 6.4.1 ÝDæx}XNÌÇ
|
---|
| 105 | 6.4.2 ÝvÖ~tOÌÇ
|
---|
| 106 | 6.4.3 ÝvÌNA
|
---|
| 107 | 6.4.4 ÝvÌv[u
|
---|
| 108 | 6.4.5 ÝnhÌæªÆö
|
---|
| 109 | 6.5 ^XNfBXpb`
|
---|
| 110 | 6.5.1 ^XNReLXgubNÆ^XNú»ReLXgubN
|
---|
| 111 | 6.5.2 fBXpb`{Ì
|
---|
| 112 | 6.5.3 ^XNReLXg©çÌfBXpb`
|
---|
| 113 | 6.5.4 fBXpb`Ì®ìJn
|
---|
| 114 | 6.5.5 »ÝÌReLXgðÌÄÄfBXpb`
|
---|
| 115 | 6.5.6 ^XNÌN®
|
---|
| 116 | 6.6 Ýnh
|
---|
| 117 | 6.6.1 ÝnhÌoüû
|
---|
| 118 | 6.6.2 ÝnhÌoüû̶¬
|
---|
| 119 | 6.6.3 ÝnhÌÝè
|
---|
| 120 | 6.6.4 ÝvCÌ®«ÌÝè
|
---|
| 121 | 6.6.5 ÝÇ@\Ìú»ÌÏX
|
---|
| 122 | 6.6.6 ftHgÌÝnh
|
---|
| 123 | 6.6.7 J[lÇOÌÝ
|
---|
| 124 | 6.7 CPUáOnhÆCPUáO¶ÌVXeóÔÌQÆ
|
---|
| 125 | 6.7.1 CPUáOnhÌoüû
|
---|
| 126 | 6.7.2 CPUáOnhÌoüû̶¬
|
---|
| 127 | 6.7.3 CPUáOnhÌÝè
|
---|
| 128 | 6.7.4 CPUáOÇ@\Ìú»ÌÏX
|
---|
| 129 | 6.7.5 ftHgÌCPUáOnh
|
---|
| 130 | 6.7.6 CPUáO¶ÌVXeóÔÌQÆ
|
---|
| 131 | 6.8 J[lÌN®EI¹ÆX^bNÌæÈÇ
|
---|
| 132 | 6.9 J[làÌ`
|
---|
| 133 | [jO
|
---|
| 134 | 6.9.1 rbg}bvT[`
|
---|
| 135 | 6.9.2 rbgtB[h
|
---|
| 136 | 6.10 J[lÀÉÖ·é»Ì¼Ìè`
|
---|
| 137 | 6.10.1 ñ^XNReLXgpÌX^bNÌæ
|
---|
| 138 | 6.10.2 óxÌè`
|
---|
| 139 | 6.11 J[lÀÌ^[Qbg˶̽ßÌl[Lq
|
---|
| 140 | 6.12 ^C}hCo
|
---|
| 141 | 6.12.1 ^C}hCoÌt@C\¬
|
---|
| 142 | 6.12.2 ^C}Ìú»EI¹EÝ
|
---|
| 143 | 6.12.3 «\]¿pVXeÌQÆ̽ßÌ@\
|
---|
| 144 | 7. RtBM
|
---|
| 145 | [^Ýèt@CÌ^[Qbg˶
|
---|
| 146 | 7.1 Ýèt@CÆ^[Qbg˶ÌÊut¯
|
---|
| 147 | 7.2 pX2Ìev[gt@CÌ^[Qbg˶
|
---|
| 148 | 7.2.1 ^[Qbgñ˶ðCN[h·éOÉè`·×«Ï
|
---|
| 149 | 7.2.2 ^[Qbgñ˶Åè`³êéÏ
|
---|
| 150 | 7.3 pX3Ìev[gt@CÌ^[Qbg˶
|
---|
| 151 | 7.4 cfg1_out.cÌNÉKvÈX^uÌè`t@C
|
---|
| 152 | 8. VXeT[rXÌ^[Qbg˶
|
---|
| 153 | 8.1 VXeT[rXÌ^[Qbg˶
|
---|
| 154 | 8.2 VAC^tF[XhCoÌ^[Qbg˶
|
---|
| 155 | 8.2.1 ÏCf[^^CÇÖ
|
---|
| 156 | 8.2.2 foCXT[rX[`
|
---|
| 157 | 8.2.3 R[obN[`
|
---|
| 158 | 8.3 J[lN®bZ[WÌoÍÌ^[Qbg˶è`
|
---|
| 159 | 8.4 TvvOÆeXgvOÌ^[Qbg˶è`
|
---|
| 160 | 9. »Ì¼
|
---|
| 161 | 9.1 hL
|
---|
| 162 | g
|
---|
| 163 | 9.2 pbP[WLqt@C
|
---|
| 164 | 10. t@X
|
---|
| 165 | 10.1 ^[Qbg˶Ìt@Cê
|
---|
| 166 |
|
---|
| 167 |
|
---|
| 168 | 1. ¤Ê
|
---|
| 169 |
|
---|
| 170 | 1.1 ^[Qbg˶Ì\¬
|
---|
| 171 |
|
---|
| 172 | ^[Qbg˶ÍCtargetfBNg̺ÉC^[Qbgn[hEFAÆ
|
---|
| 173 | J«ÌgÝí¹ÉpÓ·éD½¾µC^[Qbg˶ÌÄp«ð
|
---|
| 174 | l¶µCvZbTC`bvCJ«ÌÝÉ˶·éªðCvZbTË
|
---|
| 175 | ¶C`bv˶CJ«˶Ƣ¤`ÅØ誯Äàæ¢DØ誯
|
---|
| 176 | ûÍC^[Qbg˶ÌÀÉC³êÄ¢éDvZbT˶C`bvË
|
---|
| 177 | ¶CJ«˶ÍCarchfBNg̺ÉuD
|
---|
| 178 |
|
---|
| 179 | SSPJ[lÌ^[Qbg˶ÍCVXe\z«iMakefilejÌ^[Qb
|
---|
| 180 | g˶CTOPPERS¤Êè`it_stddef.hjÌ^[Qbg˶CVXeC
|
---|
| 181 | ^tF[XCiSILCsil.hjÌ^[Qbg˶CJ[lAPIikernel.hj
|
---|
| 182 | Ì^[Qbg˶CJ[lÀÌ^[Qbg˶iRtBM
|
---|
| 183 | [^
|
---|
| 184 | Ýèt@CÌ^[Qbg˶ðÜÞjCVXeT[rXÌ^[QbgË
|
---|
| 185 | ¶C^[Qbg˶ÉÖ·éhL
|
---|
| 186 | gÅ\¬³êéD
|
---|
| 187 |
|
---|
| 188 | 1.2 ¼OÌÕËÌh~
|
---|
| 189 |
|
---|
| 190 | TOPPERSvWFNgªñ·é\tgEFA̽ßÉCTOPPERS_ÅnÜéV
|
---|
| 191 | {ð\ñµÄ¢éDwb_t@CÉLq³êCAvP[V©çQ
|
---|
| 192 | ÆÅ«éàV{ÍCTOPPERS_ÅnÜé¼OÆ·éD
|
---|
| 193 |
|
---|
| 194 | ܽC_kernel_ÅnÜéV{ÍCJ[làÌÏâÖ̽ßÉ\ñ
|
---|
| 195 | µÄ¢éDJ[làÌÏâÖ̼OÅCNÉAvP[V
|
---|
| 196 | ̼OÆÕË·éÂ\«ª éàÌÍCl[LqÉXgAbv·é±Æ
|
---|
| 197 | ÅCRpCÉ_kernel_ÅnÜé¼OÉu«·¦é±ÆƵĢéD
|
---|
| 198 |
|
---|
| 199 | 1.3 ½dCN[hÌh~
|
---|
| 200 |
|
---|
| 201 | ·×ÄÌwb_t@CÍC½dÉCN[h³êéÌðh~·é½ßÌð
|
---|
| 202 | RpCLqðüêé±ÆÆ·éDá¦ÎCtarget_config.hÅ êÎCt@
|
---|
| 203 | CÌæªÉ
|
---|
| 204 |
|
---|
| 205 | #ifndef TOPPERS_TARGET_CONFIG_H
|
---|
| 206 | #define TOPPERS_TARGET_CONFIG_H
|
---|
| 207 |
|
---|
| 208 | ðCt@CÌöÉ
|
---|
| 209 |
|
---|
| 210 | #endif /* TOPPERS_TARGET_CONFIG_H */
|
---|
| 211 |
|
---|
| 212 | ðLq·éD
|
---|
| 213 |
|
---|
| 214 | 1.4 AZu¾êÆÌwb_t@C̤p
|
---|
| 215 |
|
---|
| 216 | SSPJ[lÌwb_t@C̽ÍCAZu¾êÌ\[Xt@C©ç
|
---|
| 217 | àCN[hÅ«éæ¤É·é½ßÉCÌ[É]ÁÄLq·éàÌÆ
|
---|
| 218 | ·éD
|
---|
| 219 |
|
---|
| 220 | ETOPPERS_MACRO_ONLYª}Nè`³êÄ¢éêÉÍCAZu¾êÅÍ
|
---|
| 221 | @ðßÅ«È¢Lqi}Nè`ÈOÌLqjðæ¤ÉLq·éD
|
---|
| 222 |
|
---|
| 223 | E³µ®^ÌèlÍCUINT_CâULONG_CÈÇÌ®èðìé½ßÌ}
|
---|
| 224 | @Nðp¢ÄLq·éD½¾µCAZu¾êÌ\[Xt@C©çàC
|
---|
| 225 | @N[hÅ«ét@CÅ ÁÄàCC¾êÌÝÅp¢éèð±êçÌ
|
---|
| 226 | @}NðgÁÄLq·éKvÍÈ¢D
|
---|
| 227 |
|
---|
| 228 | ܽCJ[lÀɨ¢ÄÍCÌ[É]¤àÌÆ·éD
|
---|
| 229 |
|
---|
| 230 | EAZu¾ê©çàp¢éèÌè`É^LXgðp¢éêÉÍC
|
---|
| 231 | @CAST}Nðp¢ÄLq·éD
|
---|
| 232 |
|
---|
| 233 | AZu¾ê©çwb_t@CðCN[h·éÛÉÍCKvɶÄC
|
---|
| 234 | TOPPERS_MACRO_ONLYCUINC_CCULONG_CCCASTð}Nè`µÄ©çCCN[
|
---|
| 235 | hµÈ¯êÎÈçÈ¢D
|
---|
| 236 |
|
---|
| 237 | 1.5 CN[hLqÌû@
|
---|
| 238 |
|
---|
| 239 | J«ÅpÓ³êÄ¢éWwb_t@C¨æÑincludefBNgºÌ
|
---|
| 240 | Wwb_t@CÍCu#include <...>vÉæèCN[h·éD
|
---|
| 241 |
|
---|
| 242 | »Ì¼Ìwb_t@CÍCu#include "..."vÉæèCN[h·éDwb
|
---|
| 243 | _t@CªCJgfBNgâCN[h·ét@CƯ¶fB
|
---|
| 244 | NgÈOÌfBNgÉu©êÄ¢éêÉÍCÌæ¤ÉpXwèð
|
---|
| 245 | s¤D
|
---|
| 246 |
|
---|
| 247 | E^[Qbg˶itarget/<^[Qbg¼>jÌfBNgÉu©êÄ¢é
|
---|
| 248 | @êÍCpXwèðsí¸Ct@C¼ÌÝðLq·éD
|
---|
| 249 | áj#include "target_config.h"
|
---|
| 250 |
|
---|
| 251 | EarchfBNgºÌfBNgÉu©êÄ¢éêÉÍCarchfBN
|
---|
| 252 | @g©çÌÎpXÅLq·éD
|
---|
| 253 | áj#include "m68k_gcc/prc_config.h"
|
---|
| 254 |
|
---|
| 255 | E»Ì¼ÌêÉÍC\[XvOÌ[gfBNgiconfigureªu
|
---|
| 256 | @©êÄ¢éfBNgj©çÌÎpXÅLq·éD
|
---|
| 257 | áj#include "pdic/upd72001/upd72001.h"
|
---|
| 258 |
|
---|
| 259 | EJ[lð\¬·ét@C©çCkernelfBNgºÌwb_t@C
|
---|
| 260 | @ðCN[h·éêÍCpXwèðsí¸Ct@C¼ÌÝðLq·éD
|
---|
| 261 | áj#include "kernel_impl.h"
|
---|
| 262 |
|
---|
| 263 | 1.6 NeBJZNVÌoüÌÀ»ÉÖ·é§ñ
|
---|
| 264 |
|
---|
| 265 | J[làÅp¢éNeBJZNVÌoüðÀ»·éêÉÍC
|
---|
| 266 | Ì2ÂÌðð½·æ¤ÉÀµÈ¯êÎÈçÈ¢D
|
---|
| 267 |
|
---|
| 268 | (1-6-1) oü©ç²¯½_ÅÍCÝÌÖ~^ª®¹µÄ¢È¯
|
---|
| 269 | êÎÈçÈ¢Dá¦ÎCÝÖ~^½ßðÀsµÄ©çÀÛÉݪ
|
---|
| 270 | Ö~^³êéÜŽ½ß©x·évZbTÌêÉÍCoüÌ
|
---|
| 271 | ÉNOP½ßðüêéÈÇÌû@ÅCoü𲯽_ÅÍCݪÖ~^
|
---|
| 272 | ³ê½óÔÉÈÁÄ¢é±ÆðÛصȯêÎÈçÈ¢D
|
---|
| 273 |
|
---|
| 274 | (1-6-2) ãÌf[^\¢ª«ÏíéÂ\«ª é±ÆðC½ç©Ìû
|
---|
| 275 | @ÅRpCÉmç¹È¯êÎÈçÈ¢DGNUJ«ÅÍCÌ¢¸ê©Ì
|
---|
| 276 | û@ű̧ñ𽷱ƪūéD
|
---|
| 277 |
|
---|
| 278 | (a) NeBJZNVÌoüÌSÌܽÍoüÌ{¿IȪ
|
---|
| 279 | iïÌIÉÍCÝÖ~^·éjðiCCÅÈ¢jÊí
|
---|
| 280 | ÌÖÉæèÀ»·éD
|
---|
| 281 |
|
---|
| 282 | (b) NeBJZNVÌoüÌ{¿IȪðCCAZu
|
---|
| 283 | ÉæÁÄÀ»µÄ¢éêÉÍC»ÌCCAZuÌclobberÏ
|
---|
| 284 | XgÉ"memory"ðÇÁ·éD
|
---|
| 285 |
|
---|
| 286 | (c) NeBJZNVÌoüÌ{¿IȪªC}NâCC
|
---|
| 287 | ÖÄoµÅÀ»µÄ¢éêÉÍCNeBJZNVÉüé
|
---|
| 288 | ÌÅãÆoéÌæªÉCAsm("":::"memory")Æ¢¤LqðüêéD
|
---|
| 289 |
|
---|
| 290 | ±Ìæ¤È§ñðݯéRÉ¢ÄÍCuTOPPERS/ASPJ[l Ývv
|
---|
| 291 | ÌuJ[lÌf[^\¢Éηévolatileé¾É¢ÄvÌßðQÆ·é±
|
---|
| 292 | ÆD
|
---|
| 293 |
|
---|
| 294 | 2. VXe\z«Ì^[Qbg˶
|
---|
| 295 |
|
---|
| 296 | ±ÌÍÌà¾ÍCGNUJ«iGCCCGASCBINUTILSCGNU Makejðp¢é±Æ
|
---|
| 297 | ðzèµÄLqµÄ éD»êÈOÌJ«ðp¢éêÉÍCJ«É
|
---|
| 298 | í¹ÄC³·éKvª éD
|
---|
| 299 |
|
---|
| 300 | 2.1 ^[QbgªÌÆ^[Qbg˶ÌfBNg
|
---|
| 301 |
|
---|
| 302 | Vµ¢^[Qbg˶ð쬷éÍCܸC^[QbgªÌðèßéD^[
|
---|
| 303 | QbgªÌÍCVXeªÌÆJ«ªÌð"_"ÅAµ½àÌÆ·éDVX
|
---|
| 304 | eªÌÉp¢é¶Íp¬¶ÆÆ"_"ÉCJ«ªÌÉp¢é¶Í
|
---|
| 305 | p¬¶ÆÉÀè·éDGNUJ«ÌJ«ªÌÍC"gcc"Æ·éDá
|
---|
| 306 | ¦ÎCVXeªÌª"dve68k"ÅCGNUJ«ðp¢éêÉÍC^[Qbg
|
---|
| 307 | ªÌÍ"dve68k_gcc"ÆÈéD
|
---|
| 308 |
|
---|
| 309 | ^[Qbg˶Ìt@Cðu½ßÉCtargetfBNg̺ÉC^[
|
---|
| 310 | QbgªÌð¼ÌÆ·éfBNgð쬷éD±êð^[Qbg˶fB
|
---|
| 311 | NgÆÄÔD
|
---|
| 312 |
|
---|
| 313 | ^[Qbg˶©çvZbT˶â`bv˶ðØ誯éêÉÍC
|
---|
| 314 | ˶ªÌðèßéD˶ªÌÍCvZbTâ`bv̪ÌÆJ«ª
|
---|
| 315 | Ìð"_"ÅAµ½àÌÆ·éDvZbTâ`bv̪ÌÉp¢é¶ÍCp
|
---|
| 316 | ¬¶ÆÆ"_"ÉÀè·éDá¦ÎCvZbTªÌª"m68k"ÅCGNUJ
|
---|
| 317 | «ðp¢éêÉÍC˶ªÌÍ"m68k_gcc"ÆÈéD
|
---|
| 318 |
|
---|
| 319 | ܽC^[Qbg˶©çJ«˶ðØ誯éêÉÍCJ«
|
---|
| 320 | ªÌð˶ªÌÆ·éDá¦ÎCGNUJ«˶Ì˶ªÌÍC"gcc"
|
---|
| 321 | ÆÈéD
|
---|
| 322 |
|
---|
| 323 | ±êçÌ˶Ìt@Cðu½ßÉCarchfBNg̺ÉC˶ª
|
---|
| 324 | Ìð¼ÌÆ·éfBNgð쬷éD
|
---|
| 325 |
|
---|
| 326 | ȨCGNUJ«ÈOÌJ«ðp¢éêÉÍCRtBM
|
---|
| 327 | [V
|
---|
| 328 | XNvgiconfigurejCTvÌMakefileisample/MakefilejCêÌ
|
---|
| 329 | [eBeBvOiutils/genoffsetCutils/makedepjðC»ÌJ
|
---|
| 330 | «pÉpÓ·éKvª éêª éD»ÌêÉÍC±êçÌt@CðC
|
---|
| 331 | ^[Qbg˶fBNg©J«˶fBNgÉuàÌÆ·
|
---|
| 332 | éDܽCJ«pÌvWFNgt@CªKvÈêÉÍC^[Qbg
|
---|
| 333 | ˶fBNgÉuàÌÆ·éD
|
---|
| 334 |
|
---|
| 335 | 2.2 MakefileÌ^[Qbg˶
|
---|
| 336 |
|
---|
| 337 | MakefileÌ^[Qbg˶ÍC^[Qbg˶fBNgÉu¢½
|
---|
| 338 | Makefile.targetܽͻ±©çCN[h³êét@CivZbTE`b
|
---|
| 339 | vEJ«˶ÅpÓ³êét@CÈÇjÉÜßéD
|
---|
| 340 |
|
---|
| 341 | 2.3 J«¼ÆR}h¼ÌÝè
|
---|
| 342 |
|
---|
| 343 | J«¼ÆR}h¼ðÝè·é½ßÉCMakefileÌ^[Qbg˶Å
|
---|
| 344 | ÌÏðè`·éD
|
---|
| 345 |
|
---|
| 346 | (2-3-1) TOOL J«¼
|
---|
| 347 |
|
---|
| 348 | J«¼Éè`·éDGNUJ«ðp¢éêÉÍCgccÉè`·éD
|
---|
| 349 |
|
---|
| 350 | (2-3-2) GCC_TARGET GNUJ«Ì^[Qbg¼
|
---|
| 351 |
|
---|
| 352 | GNUJ«ðp¢éêÉCGNUJ«ðconfigure·éêÉwè·é^[
|
---|
| 353 | Qbg¼Éè`·éD±±Åwèµ½^[Qbg¼ÍCJ«ÌR}h¼
|
---|
| 354 | ÌæªÉt^³êé¶ñÆÈéDá¦ÎCGCC_TARGETðm68k-unknown-elfÉ
|
---|
| 355 | è`µ½êÉÍCRpCƵÄm68k-unknown-elf-gccªgíêéD±Ì
|
---|
| 356 | Ϫè`³êÈ¢êÉÍCPÈégccªgíêéD
|
---|
| 357 |
|
---|
| 358 | (2-3-3) CC CRpChCo̼Ì
|
---|
| 359 | (2-3-4) CXX C++RpChCo̼Ì
|
---|
| 360 | (2-3-5) AS AZu̼Ì
|
---|
| 361 | (2-3-6) LD J̼Ì
|
---|
| 362 | (2-3-7) AR A[JCo̼Ì
|
---|
| 363 | (2-3-8) NM nmvO̼Ì
|
---|
| 364 | (2-3-9) RANLIB ranlibvO̼Ì
|
---|
| 365 | (2-3-10) OBJCOPY objcopyvO̼Ì
|
---|
| 366 | (2-3-11) OBJDUMP objdumpvO̼Ì
|
---|
| 367 |
|
---|
| 368 | GNUJ«ÈOÌJ«ðp¢éêÉC»ê¼êÌR}h̼ÌÉè`
|
---|
| 369 | ·éDηéR}hªÈ¢êâCR}hp[^ªÙÈéêÉÍC
|
---|
| 370 | MakefileÅ»ÌR}hðÄÑoµÄ¢éªðÏX·éKvª éD
|
---|
| 371 |
|
---|
| 372 | GNUJ«ÅÍC±êçÍGCC_TARGETðp¢Äè`³êéÌÅCè`·éKv
|
---|
| 373 | ÍÈ¢D
|
---|
| 374 |
|
---|
| 375 | 2.4 RpCIvVÆIuWFNgt@CÌÝè
|
---|
| 376 |
|
---|
| 377 | MakefileÌ^[Qbg˶ÅȺÅྷéÏðè`·éÉÍC":="ð
|
---|
| 378 | p¢ÄC»êÜÅÌè`ÉÇÁ·é`Ås¤Dá¦ÎCRpCÉηé»
|
---|
| 379 | ̼ÌIvVƵÄu-Wall -g -O2vðÇÁµ½¢êÉÍCuCOPTS :=
|
---|
| 380 | $(COPTS) -Wall -g -O2vÆ¢¤LqðMakefileÌ^[Qbg˶ÉÜßéD
|
---|
| 381 |
|
---|
| 382 | (2-4-1) COPTS RpCÉηé»Ì¼ÌIvV
|
---|
| 383 | (2-4-2) CDEFS }Nè`IvVi-DIvVj
|
---|
| 384 | (2-4-3) INCLUDES wb_t@CÌu©ê½fBNgwèI
|
---|
| 385 | vVi-IIvVj
|
---|
| 386 | (2-4-4) LDFLAGS JÉηé»Ì¼ÌIvV
|
---|
| 387 | (2-4-5) LIBS CuNwè̽ßÌIvV
|
---|
| 388 |
|
---|
| 389 | ^[QbgÉ˶µÄC·×ÄÌ\[Xt@CɤʷéRpCIvV
|
---|
| 390 | ÌÇÁªKvÈêÉÍCIvVÌíÞÉãɦµ½ÏÉè`·éD
|
---|
| 391 |
|
---|
| 392 | ÙÆñÇÌêÉC^[Qbg˶fBNgÌMakefile.targetÉÍCÈ
|
---|
| 393 | ºÌLqðÜßéKvª éD
|
---|
| 394 |
|
---|
| 395 | ----------------------------------------
|
---|
| 396 | INCLUDES := $(INCLUDES) -I$(TARGETDIR)
|
---|
| 397 | ----------------------------------------
|
---|
| 398 |
|
---|
| 399 | ±±ÅTARGETDIRÍC^[Qbg˶fBNgÉè`³êÄ¢éDܽ
|
---|
| 400 | SRCDIRÍCMakefileɨ¢ÄC\[XvOÌ[gfBNg
|
---|
| 401 | iconfigureªu©êÄ¢éfBNgjÉè`³êÄ¢éD
|
---|
| 402 |
|
---|
| 403 | RpCÌâèÅCxbZ[Wªoé±Æðh°È¢óµÈOÅÍC
|
---|
| 404 | COPTSÉ-WerrorðÇÁ·é±Æð§·éD
|
---|
| 405 |
|
---|
| 406 | ----------------------------------------
|
---|
| 407 | COPTS := $(COPTS) -Werror
|
---|
| 408 | ----------------------------------------
|
---|
| 409 |
|
---|
| 410 | J[lÌRpCÉCdereferencing type-punned pointer will break
|
---|
| 411 | strict-aliasing rulesÆ¢¤xªoéêÉÍCȺðÇÁ·éÆæ¢D±
|
---|
| 412 | ÌxbZ[WÉÖ·éÚ×ÍCuTOPPERS/ASPJ[l ÝvvÌu^
|
---|
| 413 | LXgɺ¤xbZ[WvÌßðQÆ·é±ÆD
|
---|
| 414 |
|
---|
| 415 | ----------------------------------------
|
---|
| 416 | KERNEL_CFLAGS := $(KERNEL_CFLAGS) -fno-strict-aliasing
|
---|
| 417 | ----------------------------------------
|
---|
| 418 |
|
---|
| 419 | ܽCAZu¾êx̯ʼªCC¾êx̯ʼÌæªÉ"_"ª
|
---|
| 420 | t¢½àÌÉÈéêÉÍCCDEFSÉ-DTOPPERS_LABEL_ASMðÇÁ·éD
|
---|
| 421 |
|
---|
| 422 | (2-4-6) SYSSVC_DIR VXeT[rXÌ\[Xªu©ê½fBNg
|
---|
| 423 | (2-4-7) SYSSVC_ASMOBJS AZu¾êÅLq³ê½VXeT[rXÌ
|
---|
| 424 | IuWFNg
|
---|
| 425 | (2-4-8) SYSSVC_COBJS C¾êÅLq³ê½VXeT[rXÌIuWFNg
|
---|
| 426 | (2-4-9) SYSSVC_CFLAGS VXeT[rXÉηéRpCIvV
|
---|
| 427 | (2-4-10) SYSSVC_LIBS VXeT[rXÉηéCuNwè
|
---|
| 428 |
|
---|
| 429 | ^[QbgÉ˶µÄCVXeT[rXiVXeO^XNâfoCXh
|
---|
| 430 | CoÈÇjÌ\[Xªu©ê½fBNgCVXeT[rXð\¬·é
|
---|
| 431 | IuWFNgt@CÌXgC»êçðRpC·éÛÉKp·éRp
|
---|
| 432 | CIvVC»Ì\¬ÉKvÈCuNwèðÇÁ·éêÉÍC
|
---|
| 433 | ãɦµ½ÏÉè`·éD
|
---|
| 434 |
|
---|
| 435 | (2-4-11) KERNEL_DIR J[lÌ\[Xªu©ê½fBNg
|
---|
| 436 | (2-4-12) KERNEL_ASMOBJS AZu¾êÅLq³ê½J[lÌIuWFNg
|
---|
| 437 | (2-4-13) KERNEL_COBJS C¾êÅLq³ê½J[lÌIuWFNg
|
---|
| 438 | (2-4-14) KERNEL_CFLAGS J[lÉηéRpCIvV
|
---|
| 439 |
|
---|
| 440 | ^[QbgÉ˶µÄCJ[lÌ\[Xªu©ê½fBNgCJ[l
|
---|
| 441 | ð\¬·éIuWFNgt@CÌXgC»êçðRpC·éÛÉKp
|
---|
| 442 | ·éRpCIvVðÇÁ·éêÉÍCãɦµ½ÏÉè`·éD
|
---|
| 443 |
|
---|
| 444 | ÙÆñÇÌêÉC^[Qbg˶fBNgÌMakefile.targetÉÍCÈ
|
---|
| 445 | ºÌLqðÜßéKvª éD
|
---|
| 446 |
|
---|
| 447 | ----------------------------------------
|
---|
| 448 | KERNEL_DIR := $(KERNEL_DIR) $(TARGETDIR)
|
---|
| 449 | KERNEL_ASMOBJS := $(KERNEL_ASMOBJS) target_support.o
|
---|
| 450 | KERNEL_COBJS := $(KERNEL_COBJS) target_config.o target_timer.o
|
---|
| 451 | ----------------------------------------
|
---|
| 452 |
|
---|
| 453 | (2-4-15) CFG_TABS RtBM
|
---|
| 454 | [^ÉηéIvV
|
---|
| 455 |
|
---|
| 456 | ^[QbgÉ˶µÄCRtBM
|
---|
| 457 | [^ÉηéIvVðÇÁ·éê
|
---|
| 458 | ÉÍCãɦµ½ÏÉè`·éDïÌIÉÍCRtBM
|
---|
| 459 | [^Ìlæ
|
---|
| 460 | ¾V{e[uÌ^[Qbg˶itarget_def.csvjª éêÉÍC
|
---|
| 461 | »êðwè·éIvVðÇÁ·éKvª éD
|
---|
| 462 |
|
---|
| 463 | ÙÆñÇÌêÉC^[Qbg˶fBNgÌMakefile.targetÉÍCÈ
|
---|
| 464 | ºÌLqðÜßéKvª éD
|
---|
| 465 |
|
---|
| 466 | ----------------------------------------
|
---|
| 467 | CFG_TABS := $(CFG_TABS) --cfg1-def-table $(TARGETDIR)/target_def.csv
|
---|
| 468 | ----------------------------------------
|
---|
| 469 |
|
---|
| 470 | (2-4-16) CFG1_OUT_LDFLAGS cfg1_out.cÉηéNIvV
|
---|
| 471 |
|
---|
| 472 | ^[QbgÉ˶µÄCcfg1_out.cðN·éÛÉKp·éIvVðÇ
|
---|
| 473 | Á·éêÉÍCãɦµ½ÏÉè`·éD
|
---|
| 474 |
|
---|
| 475 | (2-4-17) CFG_OBJS VXeRtBM
|
---|
| 476 | [V̽ßÌIu
|
---|
| 477 | WFNg
|
---|
| 478 |
|
---|
| 479 | ^[QbgÉ˶µÄCVXeRtBM
|
---|
| 480 | [V̽ßÌIuWFN
|
---|
| 481 | gt@Cðikernel_cfg.oÈOÉjÇÁ·éêÉÍCãɦµ½ÏÉè
|
---|
| 482 | `·éD±ÌêCÇÁµ½IuWFNgt@CÌì¬[iRpC^
|
---|
| 483 | AZu[Æ˶ÖWì¬[jðCMakefileÌ^[Qbg˶É
|
---|
| 484 | Lq·éKvª éD
|
---|
| 485 |
|
---|
| 486 | (2-4-18) CFG2_OUT
|
---|
| 487 |
|
---|
| 488 | ^[QbgÉ˶µÄCRtBM
|
---|
| 489 | [^ÌpX2Åkernel_cfg.cÆ
|
---|
| 490 | kernel_cfg.hÈOÌt@C𶬷éêÉÍCãɦµ½ÏÉè`·éD
|
---|
| 491 |
|
---|
| 492 | (2-4-19) OMIT_WARINIG_ALL
|
---|
| 493 | (2-4-20) OMIT_OPTIMIZATION
|
---|
| 494 |
|
---|
| 495 | TvÌMakefileÅÍCRpCÉηéIvVÉu-Wall -g -O2v
|
---|
| 496 | ðÇÁ·éD-WallðÇÁµ½È¢êÉÍCMakefileÌ^[Qbg˶Å
|
---|
| 497 | OMIT_WARNING_ALLð"true"Éè`·éD-O2ðÇÁµ½È¢êÉÍC
|
---|
| 498 | MakefileÌ^[Qbg˶ÅOMIT_OPTIMIZATIONð"true"Éè`·éD
|
---|
| 499 |
|
---|
| 500 | 2.5 Nû@ÌÝè
|
---|
| 501 |
|
---|
| 502 | (2-5-1) LDSCRIPT JXNvgÌt@C¼
|
---|
| 503 |
|
---|
| 504 | J«ÉWÌJXNvgªgpÅ«È¢êÉÍC^[Qbg˶
|
---|
| 505 | ÅJXNvgðpÓµC»Ìt@C¼ð±ÌÏÉè`·éD
|
---|
| 506 |
|
---|
| 507 | (2-5-2) TEXT_START_ADDRESS eLXgZNVÌæªÔn
|
---|
| 508 | (2-5-3) DATA_START_ADDRESS f[^ZNVÌæªÔn
|
---|
| 509 |
|
---|
| 510 | eZNVÌæªÔnÌwèªKvÈêÉÍC±êçÌÏÉæªÔnð
|
---|
| 511 | è`·éD
|
---|
| 512 |
|
---|
| 513 | (2-5-4) START_OBJS æªÉN·×«W
|
---|
| 514 | [¼
|
---|
| 515 | (2-5-5) END_OBJS ÅãÉN·×«W
|
---|
| 516 | [¼
|
---|
| 517 |
|
---|
| 518 | ^[QbgÉæÁÄÍC[hW
|
---|
| 519 | [ÌæªÆÅãÉN·×«W
|
---|
| 520 | [
|
---|
| 521 | ðC^[Qbg˶ÅpÓ·éKvª éD½ÌêCX^[gAbv
|
---|
| 522 | W
|
---|
| 523 | [ð[hW
|
---|
| 524 | [ÌæªÉN·éKvª éD
|
---|
| 525 |
|
---|
| 526 | [hW
|
---|
| 527 | [ÌæªÉN·×«vOª éêÉÍCMakefile
|
---|
| 528 | Ì^[Qbg˶ɨ¢ÄC»ÌIuWFNgt@C¼ðSTART_OBJSÉè
|
---|
| 529 | `µC»êÉηéRpC[Æ˶ÖWì¬[ðè`·éD[
|
---|
| 530 | hW
|
---|
| 531 | [ÌÅãÉN·×«W
|
---|
| 532 | [ª éêÉÍC»ÌIuWF
|
---|
| 533 | Ngt@C¼ðEND_OBJSÉè`µC»êÉηéRpC[Æ˶Ö
|
---|
| 534 | Wì¬[ðè`·éDܽCWÌX^[gAbvW
|
---|
| 535 | [icrt0.oj
|
---|
| 536 | ðNµÈ¢æ¤ÉCLDFLAGSÉ-nostdlibðÇÁ·éKvª éD³ç
|
---|
| 537 | ÉC-nostdlibð¯é±ÆÅWCuªN³êÈÈé½ßC
|
---|
| 538 | LIBSÉ-lgccðÇÁµÈ¯êÎÈçÈ¢D
|
---|
| 539 |
|
---|
| 540 | á¦ÎCX^[gAbvW
|
---|
| 541 | [Ì\[Xt@Cªstart.SÌêÉÍC
|
---|
| 542 | MakefileÌ^[Qbg˶ÉÌæ¤ÈLqðüêéÆæ¢D
|
---|
| 543 |
|
---|
| 544 | ----------------------------------------
|
---|
| 545 | # X^[gAbvW
|
---|
| 546 | [ÌIuWFNgt@C¼
|
---|
| 547 | START_OBJS = start.o
|
---|
| 548 |
|
---|
| 549 | # X^[gAbvW
|
---|
| 550 | [ÌRpC[
|
---|
| 551 | $(START_OBJS): %.o: %.S
|
---|
| 552 | $(CC) -c $(CFLAGS) $(KERNEL_CFLAGS) $<
|
---|
| 553 |
|
---|
| 554 | # X^[gAbvW
|
---|
| 555 | [Ì˶ÖWì¬[
|
---|
| 556 | $(START_OBJS:.o=.d): %.d: %.S
|
---|
| 557 | @$(PERL) $(SRCDIR)/utils/makedep -C $(CC) $(MAKEDEP_OPTS) \
|
---|
| 558 | -O "$(CFLAGS) $(KERNEL_CFLAGS)" $< >> Makefile.depend
|
---|
| 559 |
|
---|
| 560 | # JÉηéIvV
|
---|
| 561 | LDFLAGS := -nostdlib $(LDFLAGS)
|
---|
| 562 | LIBS := $(LIBS) -lgcc
|
---|
| 563 | ----------------------------------------
|
---|
| 564 |
|
---|
| 565 | ܽCGNUJ«ÅCRpCÉWÌcrtbegin.oÆcrtend.oðp¢éê
|
---|
| 566 | ÉÍCMakefile Ì^[Qbg˶ÉÌæ¤ÈLqðüêéÆæ¢D
|
---|
| 567 |
|
---|
| 568 | ----------------------------------------
|
---|
| 569 | # IuWFNgt@C¼
|
---|
| 570 | START_OBJS = $(shell $(CC) -print-file-name=crtbegin.o)
|
---|
| 571 | END_OBJS = $(shell $(CC) -print-file-name=crtend.o)
|
---|
| 572 |
|
---|
| 573 | # ˶ÖWì¬[
|
---|
| 574 | $(START_OBJS:.o=.d): %.d:
|
---|
| 575 | $(END_OBJS:.o=.d): %.d:
|
---|
| 576 |
|
---|
| 577 | # JÉηéIvV
|
---|
| 578 | LDFLAGS := -nostdlib $(LDFLAGS)
|
---|
| 579 | LIBS := $(LIBS) -lgcc
|
---|
| 580 | ----------------------------------------
|
---|
| 581 |
|
---|
| 582 | ±ÌêC±êçÌt@CðRpC·é±ÆÍÈ¢½ßCRpC[
|
---|
| 583 | ÍsvÅ éDܽC˶ÖWì¬[Í_~[Åæ¢i˶ÖWì¬[
|
---|
| 584 | ªÈ¢ÆG[ÉÈéjD
|
---|
| 585 |
|
---|
| 586 | (2-5-6) HIDDEN_OBJS wèµÈÄàN³êéW
|
---|
| 587 | [¼
|
---|
| 588 |
|
---|
| 589 | [hW
|
---|
| 590 | [ÉN·×«W
|
---|
| 591 | [ðCJÉηép[^Å
|
---|
| 592 | ÍÈCJXNvgÉiá¦ÎCGNUJ«ÌJXNvgÌ
|
---|
| 593 | STARTUPðgÁÄjLq·éêÉÍC»ÌIuWFNgt@C¼ðC
|
---|
| 594 | iSTART_OBJSܽÍEND_OBJSÅÍÈjHIDDEN_OBJSÉè`µC»êÉηéR
|
---|
| 595 | pC[Æ˶ÖWì¬[ðè`·éDHIDDEN_OBJSÉè`µ½
|
---|
| 596 | W
|
---|
| 597 | [ÍCJÉηép[^©çÍO³êéDLIBSÆLDFLAGSÉÂ
|
---|
| 598 | ¢ÄÍCSTART_OBJSܽÍEND_OBJSðp¢éêƯlÅ éD
|
---|
| 599 |
|
---|
| 600 | á¦ÎCX^[gAbvW
|
---|
| 601 | [Ì\[Xt@Cªstart.SÅCstart.oð
|
---|
| 602 | N·é±ÆðJXNvgÉLq·éêÉÍCMakefileÌ^[Qb
|
---|
| 603 | g˶ÉÌæ¤ÈLqðüêéÆæ¢D
|
---|
| 604 |
|
---|
| 605 | ----------------------------------------
|
---|
| 606 | # X^[gAbvW
|
---|
| 607 | [ÌIuWFNgt@C¼
|
---|
| 608 | HIDDEN_OBJS = start.o
|
---|
| 609 |
|
---|
| 610 | # X^[gAbvW
|
---|
| 611 | [ÌRpC[
|
---|
| 612 | $(HIDDEN_OBJS): %.o: %.S
|
---|
| 613 | $(CC) -c $(CFLAGS) $(KERNEL_CFLAGS) $<
|
---|
| 614 |
|
---|
| 615 | # X^[gAbvW
|
---|
| 616 | [Ì˶ÖWì¬[
|
---|
| 617 | $(HIDDEN_OBJS:.o=.d): %.d: %.S
|
---|
| 618 | @$(PERL) $(SRCDIR)/utils/makedep -C $(CC) $(MAKEDEP_OPTS) \
|
---|
| 619 | -O "$(CFLAGS) $(KERNEL_CFLAGS)" $< >> Makefile.depend
|
---|
| 620 |
|
---|
| 621 | # JÉηéIvV
|
---|
| 622 | LDFLAGS := -nostdlib $(LDFLAGS)
|
---|
| 623 | LIBS := $(LIBS) -lgcc
|
---|
| 624 | ----------------------------------------
|
---|
| 625 |
|
---|
| 626 | 2.6 ˶ÖWÌè`
|
---|
| 627 |
|
---|
| 628 | RtBM
|
---|
| 629 | [^ÌepXÉεÄC^[Qbg˶Ìt@CÖÌ˶Ö
|
---|
| 630 | Wðè`·éDïÌIÉÍCpX1CpX2CpX3ªË¶·ét@CðC»ê
|
---|
| 631 | ¼êcfg1_out.cCkernel_cfg.timestampC$(OBJFILE)Éηé˶ÖWÌ`Å
|
---|
| 632 | Lq·éD
|
---|
| 633 |
|
---|
| 634 | ÙÆñÇÌêÉC^[Qbg˶fBNgÌMakefile.targetÉÍCÈ
|
---|
| 635 | ºÌLqðÜßéKvª éD
|
---|
| 636 |
|
---|
| 637 | ----------------------------------------
|
---|
| 638 | cfg1_out.c: $(TARGETDIR)/target_def.csv
|
---|
| 639 | kernel_cfg.timestamp: $(TARGETDIR)/target.tf
|
---|
| 640 | $(OBJFILE): $(TARGETDIR)/target_check.tf
|
---|
| 641 | ----------------------------------------
|
---|
| 642 |
|
---|
| 643 | 2.7 »Ì¼ÌÝè
|
---|
| 644 |
|
---|
| 645 | (2-7-1) CLEAN_FILES cleanÉæèí·ét@C¼
|
---|
| 646 |
|
---|
| 647 | cleanÉæèí·ét@Cð^[Qbg˶ÅÇÁµ½¢êÉÍCt@
|
---|
| 648 | C¼ð±ÌÏÉÇÁè`·éD
|
---|
| 649 |
|
---|
| 650 | (2-7-2) REALCLEAN_FILES realcleanÉæèí·ét@C¼
|
---|
| 651 |
|
---|
| 652 | realcleanÉæèí·ét@Cð^[Qbg˶ÅÇÁµ½¢êÉÍC
|
---|
| 653 | t@C¼ð±ÌÏÉÇÁè`·éD
|
---|
| 654 |
|
---|
| 655 |
|
---|
| 656 | 3. TOPPERS¤Êè`Ì^[Qbg˶
|
---|
| 657 |
|
---|
| 658 | TOPPERS¤Êè`it_stddef.hjÌ^[Qbg˶ÍCtarget_stddef.hܽ
|
---|
| 659 | Í»±©çCN[h³êét@CivZbTE`bvEJ«˶
|
---|
| 660 | ÅpÓ³êéwb_t@CÈÇjÉÜßéD
|
---|
| 661 |
|
---|
| 662 | 3.1 ^[Qbg¯Ê}N
|
---|
| 663 |
|
---|
| 664 | AvP[VâVXeT[rXÅ^[Qbgð¯Ê·é½ßÉC
|
---|
| 665 | "TOPPERS_"ÉVXeªÌðå¶Éµ½¶ñðAµ½àÌiá¦ÎC
|
---|
| 666 | "TOPPERS_DVE68K"jð}Nè`·éD
|
---|
| 667 |
|
---|
| 668 | ܽC^[Qbg˶©çvZbT˶â`bv˶ðØ誯½ê
|
---|
| 669 | ÉÍC"TOPPERS_"É˶ªÌðå¶Éµ½¶ñðAµ½àÌiá¦
|
---|
| 670 | ÎC"TOPPERS_M68K"jð}Nè`·éD
|
---|
| 671 |
|
---|
| 672 | 3.2 ®^ÌÅålEŬlErbg
|
---|
| 673 |
|
---|
| 674 | (3-2-1) INT_MAX intÉi[Å«éÅåliC90j
|
---|
| 675 | (3-2-2) INT_MIN intÉi[Å«éŬliC90j
|
---|
| 676 | (3-2-3) UINT_MAX unsigned intÉi[Å«éÅåliC90j
|
---|
| 677 | (3-2-4) LONG_MAX longÉi[Å«éÅåliC90j
|
---|
| 678 | (3-2-5) LONG_MIN longÉi[Å«éŬliC90j
|
---|
| 679 | (3-2-6) ULONG_MAX unsigned longÉi[Å«éÅåliC90j
|
---|
| 680 | (3-2-7) CHAR_BIT char^ÌrbgiC90j
|
---|
| 681 |
|
---|
| 682 | ®^ÌÅålEŬlErbgðC±êçÌV{É}NÉè`·éD
|
---|
| 683 |
|
---|
| 684 | ±êçÌ}NÍCC90ɵ½àÌÅ éDJ«ÉC90ɵ½
|
---|
| 685 | limits.hªpÓ³êÄ¢éêÉÍC±êçÌ}Nðè`·é±ÆÉã¦ÄC
|
---|
| 686 | limits.hðCN[h·êÎæ¢D
|
---|
| 687 |
|
---|
| 688 | 3.3 TCYÌwè³ê½®^C»ÌÅålEŬlC®èðìé}N
|
---|
| 689 |
|
---|
| 690 | (3-3-1) int8_t t«8rbg®iIvVCC99j
|
---|
| 691 | (3-3-2) uint8_t ³µ8rbg®iIvVCC99j
|
---|
| 692 | (3-3-3) int16_t t«16rbg®iC99j
|
---|
| 693 | (3-3-4) uint16_t ³µ16rbg®iC99j
|
---|
| 694 | (3-3-5) int32_t t«32rbg®iC99j
|
---|
| 695 | (3-3-6) uint32_t ³µ32rbg®iC99j
|
---|
| 696 | (3-3-7) int64_t t«64rbg®iIvVCC99j
|
---|
| 697 | (3-3-8) uint64_t ³µ64rbg®iIvVCC99j
|
---|
| 698 | (3-3-9) int128_t t«128rbg®iIvVCC99j
|
---|
| 699 | (3-3-10) uint128_t ³µ128rbg®iIvVCC99j
|
---|
| 700 | (3-3-11) int_least8_t 8rbgÈãÌt«®iC99j
|
---|
| 701 | (3-3-12) uint_least8_t 8rbgÈã̳µ®iC99j
|
---|
| 702 | (3-3-13) intptr_t |C^ði[Å«éTCYÌt«®iC99j
|
---|
| 703 | (3-3-14) uintptr_t |C^ði[Å«éTCY̳µ®iC99j
|
---|
| 704 | (3-3-15) INT8_MAX int8_tÉi[Å«éÅåliIvVCC99j
|
---|
| 705 | (3-3-16) INT8_MIN int8_tÉi[Å«éŬliIvVCC99j
|
---|
| 706 | (3-3-17) UINT8_MAX uint8_tÉi[Å«éÅåliIvVCC99j
|
---|
| 707 | (3-3-18) INT16_MAX int16_tÉi[Å«éÅåliC99j
|
---|
| 708 | (3-3-19) INT16_MIN int16_tÉi[Å«éŬliC99j
|
---|
| 709 | (3-3-20) UINT16_MAX uint16_tÉi[Å«éÅåliC99j
|
---|
| 710 | (3-3-21) INT32_MAX int32_tÉi[Å«éÅåliC99j
|
---|
| 711 | (3-3-22) INT32_MIN int32_tÉi[Å«éŬliC99j
|
---|
| 712 | (3-3-23) UINT32_MAX uint32_tÉi[Å«éÅåliC99j
|
---|
| 713 | (3-3-24) INT64_MAX int64_tÉi[Å«éÅåliIvVCC99j
|
---|
| 714 | (3-3-25) INT64_MIN int64_tÉi[Å«éŬliIvVCC99j
|
---|
| 715 | (3-3-26) UINT64_MAX uint64_tÉi[Å«éÅåliIvVCC99j
|
---|
| 716 | (3-3-27) INT128_MAX int128_tÉi[Å«éÅåliIvVCC99j
|
---|
| 717 | (3-3-28) INT128_MIN int128_tÉi[Å«éŬliIvVCC99j
|
---|
| 718 | (3-3-29) UINT128_MAX uint128_tÉi[Å«éÅåliIvVCC99j
|
---|
| 719 | (3-3-30) INT_LEAST8_MAX int_least8_tÉi[Å«éÅåliC99j
|
---|
| 720 | (3-3-31) INT_LEAST8_MIN int_least8_tÉi[Å«éŬliC99j
|
---|
| 721 | (3-3-32) UINT_LEAST8_MAX uint_least8_tÉi[Å«éÅåliC99j
|
---|
| 722 | (3-3-33) INT8_C(val) int_least8_t^Ìèðìé}NiC99j
|
---|
| 723 | (3-3-34) UINT8_C(val) uint_least8_t^Ìèðìé}NiC99j
|
---|
| 724 | (3-3-35) INT16_C(val) int16_t^Ìèðìé}NiC99j
|
---|
| 725 | (3-3-36) UINT16_C(val) uint16_t^Ìèðìé}NiC99j
|
---|
| 726 | (3-3-37) INT32_C(val) int32_t^Ìèðìé}NiC99j
|
---|
| 727 | (3-3-38) UINT32_C(val) uint32_t^Ìèðìé}NiC99j
|
---|
| 728 | (3-3-39) INT64_C(val) int64_t^Ìèðìé}NiIvVCC99j
|
---|
| 729 | (3-3-40) UINT64_C(val) uint64_t^Ìèðìé}NiIvVCC99j
|
---|
| 730 | (3-3-41) INT128_C(val) int128_t^Ìèðìé}NiIvVCC99j
|
---|
| 731 | (3-3-42) UINT128_C(val) uint128_t^Ìèðìé}NiIvVCC99j
|
---|
| 732 |
|
---|
| 733 | wè³ê½TCYÌ®^ðC±êçÌV{É^è`·éDܽCf[^
|
---|
| 734 | ^Éi[Å«éÅålEŬlÆC®èðìé}NðC±êçÌV{
|
---|
| 735 | É}Nè`·éD
|
---|
| 736 |
|
---|
| 737 | ±êçÌf[^^¨æÑ}NÍCC99ɵ½àÌÅ éDJ«ÉC99
|
---|
| 738 | ɵ½stdint.hªpÓ³êÄ¢éêÉÍC±êçÌf[^^¨æÑ}N
|
---|
| 739 | ðè`·é±ÆÉã¦ÄCstdint.hðCN[h·êÎæ¢D
|
---|
| 740 |
|
---|
| 741 | ãÅIvVÆLqµ½àÌÍCY·éf[^^ªRpCÅT|[g
|
---|
| 742 | ³êÄ¢éêÉÌÝè`·é±Æð¦·D
|
---|
| 743 |
|
---|
| 744 | 3.4 TCYÌwè³ê½®¬_^C»ÌÅålEŬlÌ}N
|
---|
| 745 |
|
---|
| 746 | (3-4-1) float32_t IEEE754Ì32rbgP¸x®¬_iIv
|
---|
| 747 | Vj
|
---|
| 748 | (3-4-2) double64_t IEEE754Ì64rbg{¸x®¬_iIv
|
---|
| 749 | Vj
|
---|
| 750 | (3-4-3) FLOAT32_MIN float32_tÉi[Å«éŬ̳K»³ê½³Ì
|
---|
| 751 | ®¬_iIvVj
|
---|
| 752 | (3-4-4) FLOAT32_MAX float32_tÉi[Å«é\»Â\ÈÅåÌLÀ®
|
---|
| 753 | ¬_iIvVj
|
---|
| 754 | (3-4-5) DOUBLE64_MIN double64_tÉi[Å«éŬ̳K»³ê½³Ì
|
---|
| 755 | ®¬_iIvVj
|
---|
| 756 | (3-4-6) DOUBLE64_MAX double64_tÉi[Å«é\»Â\ÈÅåÌLÀ®
|
---|
| 757 | ¬_iIvVj
|
---|
| 758 |
|
---|
| 759 | wè³ê½TCYE\»`®Ì®¬_^ðC±êçÌV{É^è`·
|
---|
| 760 | éDܽCf[^^Éi[Å«éÅålEŬlðC±êçÌV{É}N
|
---|
| 761 | è`·éD
|
---|
| 762 |
|
---|
| 763 | ¢¸êàCY·éf[^^ªRpCÅT|[g³êÄ¢éêÉÌÝè
|
---|
| 764 | `·éD
|
---|
| 765 |
|
---|
| 766 | 3.5 RpCÌg£@\̽ßÌ}Nè`
|
---|
| 767 |
|
---|
| 768 | RpCÌg£@\ðp¢é½ßÌ}NƵÄCKvɶÄCȺÌ}
|
---|
| 769 | NÌè`ðÜßéD
|
---|
| 770 |
|
---|
| 771 | (3-5-1) inlineiIvVCftHgꢏ`j
|
---|
| 772 | (3-5-2) InlineiIvVCftHgÍstatic inlinej
|
---|
| 773 |
|
---|
| 774 | CCÖÅ é±Æð¦·wèDInlineÍCRpCPÊÉ[J
|
---|
| 775 | ÈCCÖÅ é±Æð¦·D
|
---|
| 776 |
|
---|
| 777 | (3-5-3) asmiIvVCftHgꢏ`j
|
---|
| 778 | (3-5-4) AsmiIvVCftHgꢏ`j
|
---|
| 779 |
|
---|
| 780 | CCAZuðLq·é½ßÌwèDAsmÍCÅK»ÉæèíµÄÍ
|
---|
| 781 | ÈçÈ¢±Æð¦·D±êçÍC^[Qbg˶ÅÌÝg¤}NÅ é½
|
---|
| 782 | ßC^[Qbg˶ÅgíÈ¢Èçè`·éKvÍÈ¢D
|
---|
| 783 |
|
---|
| 784 | (3-5-5) offsetof(structure, field)iIvVCftHgÌè` èj
|
---|
| 785 |
|
---|
| 786 | \¢ÌstructureÌÅÌCtB[hfieldÌItZbgðßé}ND
|
---|
| 787 |
|
---|
| 788 | (3-5-6) alignof(type)iIvVCftHgÌè` èj
|
---|
| 789 |
|
---|
| 790 | f[^^typeÌACgPÊðßé}ND
|
---|
| 791 |
|
---|
| 792 | (3-5-7) NoReturniIvVCftHgꢏ`j
|
---|
| 793 |
|
---|
| 794 | ^[·é±ÆÌÈ¢ÖÅ é±Æð¦·wèD±êÍC^[Qbg˶
|
---|
| 795 | ÌÝg¤}NÅ é½ßC^[Qbg˶ÅgíÈ¢Èçè`·éKv
|
---|
| 796 | ÍÈ¢D
|
---|
| 797 |
|
---|
| 798 | 3.6 WIÈè`Ìã«
|
---|
| 799 |
|
---|
| 800 | t_stddef.hÉÜÜêéTOPPERS¤Êè`ÌWIÈè`ðã«·éêÉÍC
|
---|
| 801 | ȺÌ}Nðè`·éD
|
---|
| 802 |
|
---|
| 803 | (3-6-1) TOPPERS_booliIvVCftHgÍintj
|
---|
| 804 | (3-6-2) TOPPERS_sizeiIvVCftHgÍuintptr_tj
|
---|
| 805 | (3-6-3) TOPPERS_fpiIvVCftHgͼÆÝ·«ÌÈ¢Ö|C^j
|
---|
| 806 |
|
---|
| 807 | »ê¼êCbool_tCSIZECFPÉ^è`·×«f[^^D
|
---|
| 808 |
|
---|
| 809 | (3-6-4) UINT_C(val)iIvVCftHgÍUðtÁj
|
---|
| 810 | (3-6-5) ULONG_C(val)iIvVCftHgÍULðtÁj
|
---|
| 811 |
|
---|
| 812 | »ê¼êCunsigned uint^Cunsigned long^Ìèðìé½ßÌ}ND
|
---|
| 813 |
|
---|
| 814 | (3-6-6) NULLiIvVCftHgÍ0j
|
---|
| 815 |
|
---|
| 816 | C90ÌC¾ê«ÅÍCNULLÌè`Ístddef.hÉÜÜêÄ¢é½ßC±êð
|
---|
| 817 | CN[hµÄàæ¢D
|
---|
| 818 |
|
---|
| 819 | (3-6-7) ERCD(mercd, sercd)iIvVj
|
---|
| 820 | (3-6-8) MERCD(ercd)iIvVj
|
---|
| 821 | (3-6-9) SERCD(ercd)iIvVj
|
---|
| 822 |
|
---|
| 823 | ERCDCMERCDCSERCDÌWÌè`ÍCt«®ª2ÌâÅ\»³êĨèC
|
---|
| 824 | EVtgZqi>>jªZpVtg³êé±Æð¼èµÄ¢éD½ÌRp
|
---|
| 825 | Cű̼説è§ÂªC»¤ÅÈ¢êÉÍC^[Qbg˶űê
|
---|
| 826 | çÌè`ðã«·éKvª éD
|
---|
| 827 |
|
---|
| 828 | (3-6-10) ALIGN_TYPE(addr, type)iIvVj
|
---|
| 829 |
|
---|
| 830 | AhXaddrªCf[^^typeÌACgPÊÉACµÄ¢é©
|
---|
| 831 | `FbN·é}ND
|
---|
| 832 |
|
---|
| 833 | 3.7 AT[V̽ßÌè`
|
---|
| 834 |
|
---|
| 835 | t_stddef.hÉÍCassertÌè`ªÜÜêéDassertª¸sµ½êiassertÌ
|
---|
| 836 | p[^ªfalseÉÈÁ½êjÌðC^[Qbg˶ÉpÓ·éKvª
|
---|
| 837 | éD±êçÌè`ÍCassert}Nðgp·éOÅ êÎCt_stddef.hÈ~
|
---|
| 838 | ÉCN[h³êét@CÉÜÜêÄ¢Äàæ¢DȨCassertð³øÉ
|
---|
| 839 | ·éiNDEBUGð}Nè`µÄRpC·éjêÉÍC±êçðpÓ·é
|
---|
| 840 | KvÍÈ¢D
|
---|
| 841 |
|
---|
| 842 | (3-7-1) TOPPERS_assert_abort(void)
|
---|
| 843 |
|
---|
| 844 | assertª¸sµ½êÉCvOðâ~³¹éÖDVXeJÍf
|
---|
| 845 | obKÉƷ̪zIÅ éDVXeÒÉÍáOðsí¹é±
|
---|
| 846 | ÆÉÈéD
|
---|
| 847 |
|
---|
| 848 | {Öð³À[vÅÀ·éÛÍCȺÌ`®Æ·é±Æ(TECSÌp[TÌ
|
---|
| 849 | §ÀÉí¹é½ßjD
|
---|
| 850 |
|
---|
| 851 | Inline void
|
---|
| 852 | TOPPERS_assert_abort(void)
|
---|
| 853 | {
|
---|
| 854 | while(1)
|
---|
| 855 | {
|
---|
| 856 | }
|
---|
| 857 | }
|
---|
| 858 |
|
---|
| 859 | (3-7-2) TOPPERS_assert_fail(exp, file, line)
|
---|
| 860 |
|
---|
| 861 | assertª¸sµ½Ìîñð\¦/L^·é½ßÌ}NDVXeO@\ð
|
---|
| 862 | p¢éêÉÍCt_syslog.hÉVXeO@\ÉL^·é½ßÌè`ªÜÜ
|
---|
| 863 | êÄ¢éÌÅC^[Qbg˶ÅpÓ·éKvÍÈ¢D
|
---|
| 864 |
|
---|
| 865 |
|
---|
| 866 | 4. VXeC^tF[XCiSILjÌ^[Qbg˶
|
---|
| 867 |
|
---|
| 868 | VXeC^tF[XCiSILCsil.hjÌ^[Qbg˶Ìè`ÍC
|
---|
| 869 | target_sil.hܽͻ±©çCN[h³êét@CivZbTE`b
|
---|
| 870 | vEJ«˶ÅpÓ³êéwb_t@CÈÇjÉÜßéD
|
---|
| 871 |
|
---|
| 872 | SILÌT[rXR[ÍCCÓÌVXeóÔÅÄÑo·±ÆªÅ«éD»Ì½
|
---|
| 873 | ßCSILÌ^[Qbg˶ÌÖÍCCÓÌVXeóÔÅÄÑo¹éæ¤É
|
---|
| 874 | ÀµÈ¯êÎÈçÈ¢D
|
---|
| 875 |
|
---|
| 876 | 4.1 SÝbNóÔÌÇ
|
---|
| 877 |
|
---|
| 878 | SILÌ^[Qbg˶ÅÍCSÝbNóÔÖJÚ·é@\ÆC³ÌóÔ
|
---|
| 879 | Öß·@\i³ÌóÔðL¯·é½ßÉÏðg¤jðñ·éDSÝb
|
---|
| 880 | NóÔÅ é©ð»Ê·é@\Íñ·éKvªÈ¢D
|
---|
| 881 |
|
---|
| 882 | SILÌ@\ÍCJ[lðgpµÈ¢êÉàgpÅ«éKvª éD»Ì½ßC
|
---|
| 883 | SÝbNóÔÖÌJÚƳÌóÔÖÌAÍCJ[lðp¢¸Cv
|
---|
| 884 | ZbTÌ\[Xð¼Úì·é±ÆÉæÁÄÀ»·éDܽCSÝb
|
---|
| 885 | NóÔÖÌJÚƳÌóÔÖÌAÍCSÝbNóÔâCPUbNóÔÅ
|
---|
| 886 | às¦éKvª éD
|
---|
| 887 |
|
---|
| 888 | Ûì@\ðÁ½J[lÅÍC[U^XN©çvZbTÌ\[Xð¼
|
---|
| 889 | Úì·é±ÆªÅ«È¢½ßC[U^XN©çͱêçÌ@\ðp¢é±
|
---|
| 890 | ƪūȢDp¢½êÌU¢Í^[QbgvZbTÉ˶·éªCT
|
---|
| 891 | ^IÉÍCÁ ½ßá½ÈÇÌCPUáOª¶·é±ÆÉÈéD
|
---|
| 892 |
|
---|
| 893 | (4-1-1) SIL_PRE_LOC
|
---|
| 894 |
|
---|
| 895 | SÝbNtOÌóÔðÛ¶·é½ßÌÏðè`·é}ND^¼Ì
|
---|
| 896 | ãÉCϼ𱯽àÌÉè`·éDϼÍC¼Ì¼OÆÕ˵Ȣæ¤
|
---|
| 897 | ÉC"TOPPERS_"ÅnÜé¼OÉ·éD
|
---|
| 898 |
|
---|
| 899 | (4-1-2) SIL_LOC_INT()
|
---|
| 900 |
|
---|
| 901 | »ÝÌSÝbNtOÌóÔðSIL_PRE_LOCÅè`µ½ÏÉÛ¶µCS
|
---|
| 902 | ÝbNóÔÉJÚ³¹é}ND±Ì}NðÀ»·éÛÉÍCu1.6
|
---|
| 903 | NeBJZNVÌoüÌÀ»ÉÖ·é§ñvÌßÉLq³êÄ¢
|
---|
| 904 | é§ñÉ]íȯêÎÈçÈ¢D
|
---|
| 905 |
|
---|
| 906 | (4-1-3) SIL_UNL_INT()
|
---|
| 907 |
|
---|
| 908 | SIL_LOC_INT()ÉæÁÄÏÉÛ¶µ½óÔÉß·}ND±Ì}NðÀ»·
|
---|
| 909 | éÛÉÍCu1.6 NeBJZNVÌoüÌÀ»ÉÖ·é§ñvÌ
|
---|
| 910 | ßÉLq³êÄ¢é§ñÉ]íȯêÎÈçÈ¢D
|
---|
| 911 |
|
---|
| 912 | 4.2 ÷ÔÒ¿
|
---|
| 913 |
|
---|
| 914 | (4-2-1) void sil_dly_nse(ulong_t dlytim)
|
---|
| 915 |
|
---|
| 916 | dlytimÅwè³ê½ÈãÌÔiPÊÍimbjC[vÈÇÉæÁÄÒÂÖ
|
---|
| 917 | D
|
---|
| 918 |
|
---|
| 919 | ȺÌÖÆ¿ÈðCAZu¾êÅLq·éû@ðCWIÈÀ
|
---|
| 920 | û@Æ·éDAZu¾êÅLq·éÌÍCRpCÌÅK»É˶µÈ
|
---|
| 921 | ¢æ¤É·é½ßÅ éDܽ±ÌÖÍCLbV
|
---|
| 922 | Ìe¿ðó¯È¢æ
|
---|
| 923 | ¤ÉCÅ«éÀèANZXðsíÈ¢æ¤ÉÀ·×«Å éD
|
---|
| 924 |
|
---|
| 925 | void sil_dly_nse(ulong_t dlytim)
|
---|
| 926 | {
|
---|
| 927 | dlytim -= SIL_DLY_TIM1;
|
---|
| 928 | if (ʪ0æèå«¢) {
|
---|
| 929 | do {
|
---|
| 930 | dlytim -= SIL_DLY_TIM2;
|
---|
| 931 | } while (ʪ0æèå«¢);
|
---|
| 932 | }
|
---|
| 933 | }
|
---|
| 934 |
|
---|
| 935 | ±ÌÖÌ®ìÍÌÊèÅ éDdlytimªSIL_DLY_TIM1ȺÌêÉÍCÅ
|
---|
| 936 | Ìif¶Ì𪬧¹¸C·®É֩粯éDdlytimªSIL_DLY_TIM1æ
|
---|
| 937 | èå«C(SIL_DLY_TIM1+SIL_DLY_TIM2)ȺÌêÉÍCÅÌif¶ÌðÍ
|
---|
| 938 | ¬§·éªCdo[vÍ1ñàñç¸É֩粯éDdlytimª
|
---|
| 939 | (SIL_DLY_TIM1+SIL_DLY_TIM2)æèå«C(SIL_DLY_TIM1+SIL_DLY_TIM2*2)È
|
---|
| 940 | ºÌêÉÍCdo[vð1ñ¾¯ñÁÄ֩粯éD»ÌãCdlytimª
|
---|
| 941 | SIL_DLY_TIM2å«ÈéxÉCwhile[vðñéñª1ñ¸Â¦éD
|
---|
| 942 |
|
---|
| 943 | ȨC±ÌÖðAZu¾êiܽÍCC¾êjÅLq·éêCÇÌt@
|
---|
| 944 | CÉLq·é©ªâèÉÈéDSILÌ^[Qbg˶ÉÍCWÅÍCAZ
|
---|
| 945 | u¾êiܽÍCC¾êjÌÖè`ðLq·é½ßÌt@CðpÓµÄ
|
---|
| 946 | ¢È¢D^[Qbg˶ÅpÓµÄà梪CáOIÉCJ[lÀÌ^[
|
---|
| 947 | Qbg˶W
|
---|
| 948 | [itarget_support.SܽÍtarget_config.cjÉLqµÄ
|
---|
| 949 | à梱ÆÉ·éD
|
---|
| 950 |
|
---|
| 951 | (4-2-2) SIL_DLY_TIM1iIvVj
|
---|
| 952 | (4-2-3) SIL_DLY_TIM2iIvVj
|
---|
| 953 |
|
---|
| 954 | sil_dly_nseðãLÌWIÈû@ÅÀ»µ½êC±Ì2ÂÌèð^[Qb
|
---|
| 955 | g˶Å}Nè`·éD
|
---|
| 956 |
|
---|
| 957 | SIL_DLY_TIM2ÍCãLÌÖɨ¢ÄCdo[v1ñÌÀsÔiPÊÍimbj
|
---|
| 958 | ÉÝè·éD^[QbgvZbT̽ßZbgÉàæéªC¨¨æ»C¸Z
|
---|
| 959 | ½ßÆðªò½ße1ñÌÀsÔÉÈéDSIL_DLY_TIM2ªÜêÎCÖÄ
|
---|
| 960 | oµàÜß½SÌÌÔªdlytimÅwè³ê½ÈãÌÔÉÈéæ¤ÉC
|
---|
| 961 | SIL_DLY_TIM1ðßéD
|
---|
| 962 |
|
---|
| 963 | ¦ºLÌàeÍC»_ÅSSPJ[lÅÍ¢T|[gÅ éD
|
---|
| 964 |
|
---|
| 965 | ±Ì2ÂÌèlÌèðx·évOƵÄCtestfBNgÉC
|
---|
| 966 | test_dlynseðpӵĢéDtest_dlynseðÀs·éÆCÌæ¤Èoͪ¾
|
---|
| 967 | çêéD
|
---|
| 968 |
|
---|
| 969 | -- for fitting parameters --
|
---|
| 970 | sil_dly_nse(0): 430 OK
|
---|
| 971 | sil_dly_nse(420): 430 OK
|
---|
| 972 | sil_dly_nse(510): 520 OK
|
---|
| 973 | sil_dly_nse(600): 610 OK
|
---|
| 974 | <ª>
|
---|
| 975 | -- for checking boundary conditions --
|
---|
| 976 | sil_dly_nse(421): 520 OK
|
---|
| 977 | sil_dly_nse(511): 610 OK
|
---|
| 978 | sil_dly_nse(601): 700 OK
|
---|
| 979 |
|
---|
| 980 | "for fitting parameters"ɱoÍÍCsil_dly_nse(dlytim)ðÄÑoµ½ê
|
---|
| 981 | ÌÒ¿Ôðªèµ½ÊÅ éD±ÌvOðp¢ÄC":"ÌE¤Ì
|
---|
| 982 | lªCdlytimæèàå«¢ÍÍÅÈé×ߢlÉÈéæ¤ÉC2ÂÌèlð
|
---|
| 983 | ²®·éD"for checking boundary conditions"ɱoÍÍCvOÌ
|
---|
| 984 | ëð`FbN·é½ßÌàÌÅC":"ÌE¤ÌlªCdlytimæèàå«¢
|
---|
| 985 | ±ÆðmF·éiߢlÉÈéKvÍÈ¢jD
|
---|
| 986 |
|
---|
| 987 | 4.3 vZbTÌGfBA
|
---|
| 988 |
|
---|
| 989 | (4-3-1) SIL_ENDIAN_BIG
|
---|
| 990 | (4-3-2) SIL_ENDIAN_LITTLE
|
---|
| 991 |
|
---|
| 992 | vZbTÌGfBAÉæèC¢¸ê©ÐûÌV{ð}Nè`·éD
|
---|
| 993 |
|
---|
| 994 | (4-3-3) TOPPERS_SIL_REV_ENDIAN_UINT16iIvVj
|
---|
| 995 | (4-3-4) TOPPERS_SIL_REV_ENDIAN_UINT32iIvVj
|
---|
| 996 |
|
---|
| 997 | »ê¼êC16rbgC32rbg̳µ®ÌGfBAð½]³¹é}
|
---|
| 998 | NDvZbTªGfBA½]̽ß̽ßðÂêÉÍC»Ì½ß
|
---|
| 999 | ðp¢ÄÀ»·éD±êçÌV{ð}Nè`µÈ¢êÉÍCftH
|
---|
| 1000 | gÌè`ªgíêéD
|
---|
| 1001 |
|
---|
| 1002 | 4.4 óÔANZXÖ
|
---|
| 1003 |
|
---|
| 1004 | (4-4-1) TOPPERS_OMIT_SIL_ACCESS
|
---|
| 1005 |
|
---|
| 1006 | WÌóÔANZXÖðgp¹¸C^[Qbg˶ÅpÓ·éê
|
---|
| 1007 | ÉÍC±ÌV{ð}Nè`·éD
|
---|
| 1008 |
|
---|
| 1009 | (4-4-2) TOPPERS_OMIT_SIL_REH_LEM
|
---|
| 1010 | (4-4-3) TOPPERS_OMIT_SIL_WRH_LEM
|
---|
| 1011 | (4-4-4) TOPPERS_OMIT_SIL_REH_BEM
|
---|
| 1012 | (4-4-5) TOPPERS_OMIT_SIL_WRH_BEM
|
---|
| 1013 | (4-4-6) TOPPERS_OMIT_SIL_REW_LEM
|
---|
| 1014 | (4-4-7) TOPPERS_OMIT_SIL_WRW_LEM
|
---|
| 1015 | (4-4-8) TOPPERS_OMIT_SIL_REW_BEM
|
---|
| 1016 | (4-4-9) TOPPERS_OMIT_SIL_WRW_BEM
|
---|
| 1017 |
|
---|
| 1018 | »ê¼êCWÌsil_reh_lemCsil_wrh_lemCsil_reh_bemCsil_wrh_bemC
|
---|
| 1019 | sil_rew_lemCsil_wrw_lemCsil_rew_bemCsil_wrw_bemðgp¹¸C^[Qb
|
---|
| 1020 | g˶ÅpÓ·éêÉÍC±êçÌV{ð}Nè`·éD
|
---|
| 1021 |
|
---|
| 1022 | 4.5 I/OóÔANZXÖ
|
---|
| 1023 |
|
---|
| 1024 | óÔÆÍÊÉI/OóÔðÂvZbTÅÍCI/OóÔÉ éfoCX
|
---|
| 1025 | WX^ðANZX·é½ßÌÖƵÄCsil_reb_iopCsil_wrb_iopC
|
---|
| 1026 | sil_reh_iopCsil_wrh_iopCsil_reh_lepCsil_wrh_lepCsil_reh_bepC
|
---|
| 1027 | sil_wrh_bepCsil_rew_iopCsil_wrw_iopCsil_rew_lepCsil_wrw_lepC
|
---|
| 1028 | sil_rew_bepCsil_wrw_bepÌÅKvÈàÌðC^[Qbg˶ÅpÓ·éD
|
---|
| 1029 |
|
---|
| 1030 |
|
---|
| 1031 | 5. J[lAPIÌ^[Qbg˶
|
---|
| 1032 |
|
---|
| 1033 | J[lAPIikernel.hjÌ^[Qbg˶Ìè`ÍCtarget_kernel.hܽ
|
---|
| 1034 | Í»±©çCN[h³êét@CivZbTE`bvEJ«˶
|
---|
| 1035 | ÅpÓ³êéwb_t@CÈÇjÉÜßéD
|
---|
| 1036 |
|
---|
| 1037 | 5.1 ^[Qbgè`ÅT|[g·é@\
|
---|
| 1038 |
|
---|
| 1039 | (5-1-1) TOPPERS_TARGET_SUPPORT_DIS_INT dis_intðT|[g·é
|
---|
| 1040 | (5-1-2) TOPPERS_TARGET_SUPPORT_ENA_INT ena_intðT|[g·é
|
---|
| 1041 |
|
---|
| 1042 | dis_intCena_intCT|[g·éêÉC»ê¼êÌV{ð}N
|
---|
| 1043 | è`·éD
|
---|
| 1044 |
|
---|
| 1045 | 5.2 ÝDæxÌÍÍ
|
---|
| 1046 |
|
---|
| 1047 | (5-2-1) TMIN_INTPRI ÝDæxÌŬliÅlj
|
---|
| 1048 | (5-2-2) TMAX_INTPRI ÝDæxÌÅåliÅálj
|
---|
| 1049 |
|
---|
| 1050 | »ê¼êCJ[lÇÌÝDæxÌŬliDæxªÅjCJ[l
|
---|
| 1051 | ÇÌÝDæxÌÅåliDæxªÅájÉè`·éDTMAX_INTPRIÍ-1
|
---|
| 1052 | ÉÅè³êÄ¢éªCÎ̫̽ßÉC^[Qbg˶Åè`·é±Æɵ
|
---|
| 1053 | Ä¢éD
|
---|
| 1054 |
|
---|
| 1055 | 5.3 ^CeBbNÌè`
|
---|
| 1056 |
|
---|
| 1057 | (5-3-1) TIC_NUME ^CeBbNÌüú̪q
|
---|
| 1058 | (5-3-2) TIC_DENO ^CeBbNÌüú̪ê
|
---|
| 1059 |
|
---|
| 1060 | ^CeBbNÌüúisignal_timeðÄÑo·üújðC~bPÊÅC
|
---|
| 1061 | TIC_NUME/TIC_DENOÉè`·éDá¦ÎC^CeBbNÌüúª1/30bÌê
|
---|
| 1062 | ÉÍCTIC_NUMEð100ÉCTIC_DENOð3Éè`·êÎæ¢D
|
---|
| 1063 |
|
---|
| 1064 | ^CeBbNÌüúÍC1~bÆ·éiÂÜèCTIC_NUMECTIC_DENOÆà1
|
---|
| 1065 | Éè`·éj±Æð§·éªCV~
|
---|
| 1066 | [V«â«\Ìá¢vZb
|
---|
| 1067 | TÅ»êªKØÅÈ¢êÉÍC»êÈOÌlƵÄàæ¢D»ÌêÅàC
|
---|
| 1068 | Â\ÈÀèC1~bÌ{Å éiÂÜèCTIC_DENOð1Éè`·éj±Æª
|
---|
| 1069 | ]ܵ¢D
|
---|
| 1070 |
|
---|
| 1071 | TIC_NUMEÆTIC_DENOÌè`ðÏX·é±ÆÅC^CeBbNÌüúðÏXÅ
|
---|
| 1072 | «éæ¤É^C}hCoðÀ·éêÉÍC±Ì2ÂÌèÌè`ÍftH
|
---|
| 1073 | glð^¦Ä¢é±ÆÉÈéD»±ÅC±êçÌè`ðu#ifndef TIC_NUMEv
|
---|
| 1074 | u#endifvÅÍñÅLq·éD
|
---|
| 1075 |
|
---|
| 1076 | 5.4 ÌæmÛ̽ßÌ^è`
|
---|
| 1077 |
|
---|
| 1078 | (5-4-1) TOPPERS_STK_T X^bNÌæðmÛ·é½ßÌ^iIvVj
|
---|
| 1079 |
|
---|
| 1080 | X^bNÌæÍCWÅÍCintptr_t^ÌzñƵÄmÛ·éªCæèå«¢PÊÅ
|
---|
| 1081 | AC³¹½¢ÈÇÌRÅC»êÈOÌ^ÌzñƵÄmÛ·éêÉÍC
|
---|
| 1082 | »ê¼êTOPPERS_STK_TÆðCzñÌx[XÆÈéf[^^É}Nè`·éD
|
---|
| 1083 |
|
---|
| 1084 | 5.5 ÌæmÛ̽ßÌ}N
|
---|
| 1085 |
|
---|
| 1086 | (5-5-1) TOPPERS_ROUND_SZiIvVj
|
---|
| 1087 | (5-5-2) TOPPERS_COUNT_SZiIvVj
|
---|
| 1088 |
|
---|
| 1089 | TOPPERS_COUNT_SZ(sz, unit)ÍCsz/unitðØèã°½lðßé}NÅCT
|
---|
| 1090 | CYªszÌÌæðTCYªunitÌf[^^ÌzñÅmÛ·éêÌvf
|
---|
| 1091 | ðßé½ßÉp¢éDTOPPERS_ROUND_SZ(sz, unit)ÍCsz/unitðØèã°
|
---|
| 1092 | ½àÌÉunit𩯽lðßé}NÅCTCYªszÌÌæðTCY
|
---|
| 1093 | ªunitÌf[^^ÌzñÅmÛ·éêÌg[^TCYðßé½ßÉp¢
|
---|
| 1094 | éD
|
---|
| 1095 |
|
---|
| 1096 | »ê¼êCWÌTOPPERS_ROUND_SZCTOPPERS_COUNT_SZªKØÅÈC^[Qb
|
---|
| 1097 | g˶ÅpÓ·éêÉÍC±êçÌV{ðKØÈlÉ}Nè`·éD
|
---|
| 1098 |
|
---|
| 1099 | 6. J[lÀÌ^[Qbg˶
|
---|
| 1100 |
|
---|
| 1101 | 6.1 J[lÀÌ^[Qbg˶̤Ê
|
---|
| 1102 |
|
---|
| 1103 | 6.1.1 J[lÀÌ^[Qbg˶Ì\¬vf
|
---|
| 1104 |
|
---|
| 1105 | J[lÀÌ^[Qbg˶ÍCȺÌvfÅ\¬³êéD
|
---|
| 1106 |
|
---|
| 1107 | (a) J[lÀÌ^[Qbg˶Ìè`
|
---|
| 1108 |
|
---|
| 1109 | J[lÀÌ^[Qbgñ˶©çQƳêé^[Qbg˶Ìè`ÍC
|
---|
| 1110 | target_config.hܽͻ±©çCN[h³êét@CivZbTE`b
|
---|
| 1111 | vEJ«˶ÅpÓ³êéwb_t@CÈÇjÉÜßéD
|
---|
| 1112 |
|
---|
| 1113 | ^[QbgÌn[hEFA¹iÝnhÔâCPUáOnhÔC
|
---|
| 1114 | foCXWX^ÌÔnÈÇjÌè`ÍCVXeT[rXâAvP[V
|
---|
| 1115 | ÉàLpÅ é½ßCJ[lÀÌÝÉLpÈè`ðÜÞt@CÆÍØ
|
---|
| 1116 | 誯ÄCƧµ½wb_t@CÉÜßéD±Ìwb_t@CÌWIÈ
|
---|
| 1117 | ¼ÌðCVXeªÌ.hiܽÍC`bvªÌ.hCvZbTªÌ.hjÆ·éD
|
---|
| 1118 |
|
---|
| 1119 | (b) J[lÀÌ^[Qbg˶W
|
---|
| 1120 | [
|
---|
| 1121 |
|
---|
| 1122 | J[lÀÌ^[Qbg˶ÌÏè`âÖðÜÞW
|
---|
| 1123 | [DC¾êÅL
|
---|
| 1124 | q³êéªðtarget_config.cCAZu¾êÅLq³êéªð
|
---|
| 1125 | target_support.SÉÜßéDvZbTE`bvEJ«˶ðØ誯
|
---|
| 1126 | é±ÆâCt@Cªå«ÈéêÉ¡Ìt@Cɪ·é±ÆàÂ\
|
---|
| 1127 | Å éD
|
---|
| 1128 |
|
---|
| 1129 | (c) J[lÀÌ^[Qbg˶̽ßÌl[Lq
|
---|
| 1130 |
|
---|
| 1131 | J[lÀÌ^[Qbg˶ÌϼâÖ¼ðCæªÉ_kernel_ðt^
|
---|
| 1132 | µ½¼OÉl[·é½ßÌW
|
---|
| 1133 | [Dtarget_rename.defðpÓµCc[
|
---|
| 1134 | iutils/genrenamejÉæèCtarget_rename.hÆtarget_unrename.h𶬷
|
---|
| 1135 | éDvZbTE`bvEJ«˶ðØ誯éêÉÍCl[L
|
---|
| 1136 | qàØ誯éD
|
---|
| 1137 |
|
---|
| 1138 | ¦
|
---|
| 1139 | (d) ^C}hCo
|
---|
| 1140 |
|
---|
| 1141 | J[lÉ^CeBbNðÊm·éisignal_timeðüúIÉÄÑo·j½ß
|
---|
| 1142 | Ì^C}hCoÌwb_t@CCÀt@CCVXeRtBM
|
---|
| 1143 | [
|
---|
| 1144 | Vt@CðC»ê¼êCtarget_timer.hCtarget_timer.cC
|
---|
| 1145 | target_timer.cfgÉÜßéDvZbTE`bvEJ«˶ðØ誯
|
---|
| 1146 | é±ÆàÂ\Å éD
|
---|
| 1147 |
|
---|
| 1148 | (e) RtBM
|
---|
| 1149 | [^Ýèt@C
|
---|
| 1150 |
|
---|
| 1151 | RtBM
|
---|
| 1152 | [^ÌÝèt@CÌ^[Qbg˶ðCtarget_def.csvC
|
---|
| 1153 | target.tfCtarget_check.tfÉpÓ·éDRtBM
|
---|
| 1154 | [^Ýèt@CÌ
|
---|
| 1155 | Lqû@É¢ÄÍCVÍÅྷéD
|
---|
| 1156 |
|
---|
| 1157 | 6.1.2 ^[Qbg˶ÌÖ̽¼K¥
|
---|
| 1158 |
|
---|
| 1159 | J[lÀÌ^[Qbg˶ð\¬·éÖÌÅCt_ÅnÜéàÌÍ^
|
---|
| 1160 | XNReLXgêpCi_ÅnÜéàÌÍñ^XNReLXgêpCx_Ån
|
---|
| 1161 | ÜéàÌÍ¢¸êÌReLXg©çÅàÄÑo·±ÆªÅ«éÖÅ éD
|
---|
| 1162 |
|
---|
| 1163 | 6.2 g[XO@\ÖÌÎ
|
---|
| 1164 |
|
---|
| 1165 | J[lÌg[XO@\ÌÅCÝnhCCPUáOnhÌJn
|
---|
| 1166 | EI¹Ìg[XOæ¾ÍC^[Qbg˶ÅÀ·éKvª éDÙÆñ
|
---|
| 1167 | ÇÌ^[QbgVXeɨ¢ÄC»êçÌÍAZu¾êÅLq³êÄ
|
---|
| 1168 | ¨èC^[Qbgñ˶ü¯Ìg[XO}NƯ¶û@ig[XO
|
---|
| 1169 | }NðCg[XOæ¾ÌC¾êLqÉ}Nè`·éû@jÍCp¢
|
---|
| 1170 | é±ÆªÅ«È¢D
|
---|
| 1171 |
|
---|
| 1172 | »±ÅCAZu¾êÅLq³êÄ¢éÉg[XOæ¾ðß
|
---|
| 1173 | ÞêÉÍCg[XO}Nªè`³êÄ¢êÎC»êª½Éè`³êÄ
|
---|
| 1174 | ¢é©Í³µÄCWIÈg[XOÖªC¾êÅLq³êÄ¢éÆzè
|
---|
| 1175 | µÄC»êðÄÑo·æ¤ÉR[fBO·éD
|
---|
| 1176 |
|
---|
| 1177 | ïÌIÉÍCºÌ\̶¤É¦µ½g[XO}Nªè`³êÄ¢êÎC
|
---|
| 1178 | \ÌE¤É¦µ½C¾êLqƯÌðs¤æ¤ÉR[fBO·éD
|
---|
| 1179 |
|
---|
| 1180 | g[XO}N g[XOæ¾
|
---|
| 1181 | -----------------------------------------------
|
---|
| 1182 | LOG_INH_ENTER log_inh_enter(inhno)
|
---|
| 1183 | LOG_INH_LEAVE log_inh_leave(inhno)
|
---|
| 1184 | LOG_EXC_ENTER log_exc_enter(excno)
|
---|
| 1185 | LOG_EXC_LEAVE log_exc_leave(excno)
|
---|
| 1186 |
|
---|
| 1187 | 6.3 VXeóÔÌÇ
|
---|
| 1188 |
|
---|
| 1189 | SSPJ[lðV½È^[QbgVXeÉ|[eBO·éÛÉCÅàdvÈ
|
---|
| 1190 | ìÆÍCJ[lªè`·éVXeóÔðCn[hEFAivZbTjã
|
---|
| 1191 | ÅÇÌæ¤ÉÀ»·é©Å éDȺÌà¾ÍCTOPPERSV¢ãJ[lɨ¯
|
---|
| 1192 | éVXeóÔÌè`EÓ¡ðmÁÄ¢é±ÆðOñÉLqµÄ¢éD
|
---|
| 1193 |
|
---|
| 1194 | 6.3.1 SÝbNóÔÌÇ
|
---|
| 1195 |
|
---|
| 1196 | SÝbNóÔÍCNMIð·×ÄÌÝð}XNµ½óÔÅ éDS
|
---|
| 1197 | ÝbNóÔðÇ·é@\ÍCVXeC^tF[XCiSILjÉ
|
---|
| 1198 | æÁÄñ³êCJ[lÍSÝbNóÔðǵȢD
|
---|
| 1199 |
|
---|
| 1200 | SÝbNóÔÅÍCsns_kerÆext_kerÈOÌJ[lÌT[rXR[
|
---|
| 1201 | ðÄÔ±ÆÍÅ«È¢àÌƵĨèCÄñ¾êÉͽªN±é©ÛصÄ
|
---|
| 1202 | ¢È¢Dsns_kerÆext_ker©çÄÑo·ÍCg[XOæ¾ÆSILÌ
|
---|
| 1203 | T[rXR[ðÆCcall_exit_kernelÌÝÅ éD»Ì½ßC
|
---|
| 1204 | call_exit_kernel©çÄÑo·àÌð¢ÄCJ[lÌ^[Qbg˶Ì
|
---|
| 1205 | ÖªCSÝbNóÔÅÄÑo³êéóµÍl¦éKvªÈ¢D
|
---|
| 1206 |
|
---|
| 1207 | 6.3.2 ReLXgÌÇ
|
---|
| 1208 |
|
---|
| 1209 | PʪÀs³êéReLXgÍC^XNReLXgÆñ^XNRe
|
---|
| 1210 | LXgɪ޳êéD
|
---|
| 1211 |
|
---|
| 1212 | ^[Qbg˶ÍCÀsÌPʪC^XNReLXgÅÀs³êÄ
|
---|
| 1213 | ¢é©ñ^XNReLXgÅÀs³êÄ¢é©ð»Ê·é@\ðñ·éD
|
---|
| 1214 | ܽCCPUáOª¶µ½ReLXgÉ¢Ļʷé@\ðñ·éD
|
---|
| 1215 |
|
---|
| 1216 | ^[Qbg˶ÅÍCÝnhÆCPUáOnhÌüûÅñ^X
|
---|
| 1217 | NReLXgÉØè·¦C»êçÌoûųÌReLXgÉß·DÜ
|
---|
| 1218 | ½CfBXpb`ÌàÅêIÉñ^XNReLXgÉØè·¦éD
|
---|
| 1219 |
|
---|
| 1220 | (6-3-2-1) bool_t sense_context(void)
|
---|
| 1221 |
|
---|
| 1222 | ÀsÌPʪC^XNReLXgÅÀs³êÄ¢éêÉÍfalseCñ
|
---|
| 1223 | ^XNReLXgÅÀs³êÄ¢éêÉÍtrueðÔ·ÖD±ÌÖÍC
|
---|
| 1224 | CPUbNóÔÅàCPUbNðóÔÅàÄÑo¹éæ¤ÉÀµÈ¯êÎÈ
|
---|
| 1225 | çÈ¢D
|
---|
| 1226 |
|
---|
| 1227 | 6.3.3 CPUbNóÔÌÇ
|
---|
| 1228 |
|
---|
| 1229 | ^[Qbg˶ÍCCPUbNóÔÖJÚ·é@\CCPUbNðóÔÖJ
|
---|
| 1230 | Ú·é@\CCPUbNóÔÅ é©ð»Ê·é@\ðñ·éD
|
---|
| 1231 |
|
---|
| 1232 | (6-3-3-1) void t_lock_cpu(void)
|
---|
| 1233 | (6-3-3-2) void i_lock_cpu(void)
|
---|
| 1234 | (6-3-3-3) void x_lock_cpu(void)
|
---|
| 1235 |
|
---|
| 1236 | CPUbNðóÔ©çCCPUbNóÔÖJÚ³¹éÖD±êçÌÖÍC
|
---|
| 1237 | CPUbNóÔÅÄÑo³êé±ÆÍÈCÄÑo³ê½êÌ®ìÍÛØ·é
|
---|
| 1238 | KvªÈ¢D
|
---|
| 1239 |
|
---|
| 1240 | ±êçÌÖðÀ»·éÛÉÍCu1.6 NeBJZNVÌoüÌ
|
---|
| 1241 | À»ÉÖ·é§ñvÌßÉLq³êÄ¢é§ñÉ]íȯêÎÈçÈ¢D
|
---|
| 1242 |
|
---|
| 1243 | (6-3-3-4) void t_unlock_cpu(void)
|
---|
| 1244 | (6-3-3-5) void i_unlock_cpu(void)
|
---|
| 1245 | (6-3-3-6) void x_unlock_cpu(void)
|
---|
| 1246 |
|
---|
| 1247 | CPUbNóÔ©çCCPUbNðóÔÖJÚ³¹éÖD±êçÌÖÍC
|
---|
| 1248 | CPUbNðóÔÅÄÑo³êé±ÆÍÈCÄÑo³ê½êÌ®ìÍÛØ
|
---|
| 1249 | ·éKvªÈ¢D
|
---|
| 1250 |
|
---|
| 1251 | ^XNReLXgÅCPUbNóÔÉJÚµ½êÉÍCCPUbNðóÔ
|
---|
| 1252 | ÉßéÌÍ^XNReLXgÉÀçêCñ^XNReLXgÅCPUbNð
|
---|
| 1253 | óÔÉßé±ÆÍÈ¢D¾¢·¦éÆCt_unlock_cpuªÄÑo³êéÌÍC
|
---|
| 1254 | t_lock_cpuÉæÁÄCPUbNóÔÉÈÁÄ¢éÅ éDi_lock_cpuÉæÁÄ
|
---|
| 1255 | CPUbNóÔÉÈÁÄ¢éÉÍCt_unlock_cpuªÄÑo³êé±ÆÍÈ¢D
|
---|
| 1256 |
|
---|
| 1257 | ¯lÉCñ^XNReLXgÅCPUbNóÔÉJÚµ½êÉÍCCPUb
|
---|
| 1258 | NðóÔÉßéÌÍñ^XNReLXgÉÀçêC^XNReLXgÅ
|
---|
| 1259 | CPUbNðóÔÉßé±ÆÍÈ¢D¾¢·¦éÆCi_unlock_cpuªÄÑo³
|
---|
| 1260 | êéÌÍCi_lock_cpuÉæÁÄCPUbNóÔÉÈÁÄ¢éÅ éD
|
---|
| 1261 | t_lock_cpuÉæÁÄCPUbNóÔÉÈÁÄ¢éÉÍCi_unlock_cpuªÄÑo
|
---|
| 1262 | ³êé±ÆÍÈ¢D
|
---|
| 1263 |
|
---|
| 1264 | ±êçÌÖðÀ»·éÛÉÍCu1.6 NeBJZNVÌoüÌ
|
---|
| 1265 | À»ÉÖ·é§ñvÌßÉLq³êÄ¢é§ñÉ]íȯêÎÈçÈ¢D
|
---|
| 1266 |
|
---|
| 1267 | (6-3-3-7) bool_t t_sense_lock(void)
|
---|
| 1268 | (6-3-3-8) bool_t i_sense_lock(void)
|
---|
| 1269 | (6-3-3-9) bool_t x_sense_lock(void)
|
---|
| 1270 |
|
---|
| 1271 | »ÝÌVXeóÔªCCPUbNóÔÌêÍtrueCCPUbNðóÔÌê
|
---|
| 1272 | ÉÍfalseðÔ·ÖD
|
---|
| 1273 |
|
---|
| 1274 | ±êçÌÖªSÝbNóÔÅÄÑo³êéóµÍl¦éKvªÈ¢±
|
---|
| 1275 | Æ©çCSÝbNóÔÆCPUbNóÔðæÊÅ«éKvÍÈ¢DNMIÈ
|
---|
| 1276 | OÉJ[lÌÇOÌÝðݯȢêÉÍCSÝbNóÔÆ
|
---|
| 1277 | CPUbNóÔªS¯êÌóÔÅà©ÜíÈ¢D
|
---|
| 1278 |
|
---|
| 1279 | 6.4 ÝÉÖA·éVXeóÔÌÇ
|
---|
| 1280 |
|
---|
| 1281 | 6.4.1 ÝDæx}XNÌÇ
|
---|
| 1282 |
|
---|
| 1283 | ^[Qbg˶ÍCÝDæx}XNðÝè·é@\ÆCÝDæx}
|
---|
| 1284 | XNðQÆ·é@\ðñ·éD
|
---|
| 1285 |
|
---|
| 1286 | (6-4-1-1) void x_set_ipm(PRI intpri)
|
---|
| 1287 | (6-4-1-2) void t_set_ipm(PRI intpri)
|
---|
| 1288 | (6-4-1-3) void i_set_ipm(PRI intpri)
|
---|
| 1289 |
|
---|
| 1290 | ÝDæx}XNÌlðintpriÉÝè·éÖD
|
---|
| 1291 |
|
---|
| 1292 | ±êçÌÖÍCCPUbNóÔÅàCPUbNðóÔÅàÄÑo¹éæ¤É
|
---|
| 1293 | À·é̪]ܵ¢D½¾µCx_set_ipmÆt_set_ipmÍC^[Qbgñ˶
|
---|
| 1294 | ªCPUbNðóÔÅÄÑo·±ÆÍÈ¢½ßCCPUbNðóÔÅÄÑ
|
---|
| 1295 | o³ê½êÌ®ìÍÛØ·éKvªÈ¢Di_set_ipmÍCCPUbNóÔÅà
|
---|
| 1296 | CPUbNðóÔÅàÄÑo¹éæ¤ÉÀµÈ¯êÎÈçÈ¢D
|
---|
| 1297 |
|
---|
| 1298 | ܽC±êçÌÖÍCVALID_INTPRI_CHGIPM(intpri)ªtrueðÔ·intpriÉÎ
|
---|
| 1299 | µÄÌÝÄÎêéDintpriÉ»¤ÅÈ¢lªn³ê½êÌ®ìÍÛØ·éK
|
---|
| 1300 | vªÈ¢D
|
---|
| 1301 |
|
---|
| 1302 | (6-4-1-4) PRI x_get_ipm(void)
|
---|
| 1303 | (6-4-1-5) PRI t_get_ipm(void)
|
---|
| 1304 | (6-4-1-6) PRI i_get_ipm(void)
|
---|
| 1305 |
|
---|
| 1306 | ÝDæx}XNÌlðQƵÄÔ·ÖD
|
---|
| 1307 |
|
---|
| 1308 | ±êçÌÖÍCCPUbNóÔÅàCPUbNðóÔÅàÄÑo¹éæ¤É
|
---|
| 1309 | À·é̪]ܵ¢D½¾µCx_get_ipmÆt_get_ipmÍC^[Qbgñ˶
|
---|
| 1310 | ªCPUbNðóÔÅÄÑo·±ÆÍÈ¢½ßCCPUbNðóÔÅÄÑ
|
---|
| 1311 | o³ê½êÌ®ìÍÛØ·éKvªÈ¢Di_get_ipmÍCCPUbNóÔÅà
|
---|
| 1312 | CPUbNðóÔÅàÄÑo¹éæ¤ÉÀµÈ¯êÎÈçÈ¢D
|
---|
| 1313 |
|
---|
| 1314 | ÝDæx}XNðp¢ÄJ[lÇÌÝð·×Ä}XNµ½óÔÍC
|
---|
| 1315 | CPUbNóÔÆæÊÅ«é±ÆªKvÅ éDïÌIÉÍCCPUbNðó
|
---|
| 1316 | Ôɨ¢ÄCx_set_ipmðp¢ÄJ[lÇÌÝð·×Ä}XNµ½ê
|
---|
| 1317 | ÅàCx_sense_lockÍfalseðÔ·D
|
---|
| 1318 |
|
---|
| 1319 | »êÉεÄCÝDæx}XNðp¢ÄNMIð·×ÄÌÝð}XN
|
---|
| 1320 | Å«éêC»ÌóÔÆSÝbNóÔðæÊÅ«éKvÍÈCS¯
|
---|
| 1321 | êÌóÔÅà©ÜíÈ¢D
|
---|
| 1322 |
|
---|
| 1323 | 6.4.2 ÝvÖ~tOÌÇ
|
---|
| 1324 |
|
---|
| 1325 | ^[Qbg˶ÍCÝvÖ~tOðZbg·é@\ÆNA·é@
|
---|
| 1326 | \ðñ·éD
|
---|
| 1327 |
|
---|
| 1328 | (6-4-2-1) bool_t VALID_INTNO_DISINT(INTNO intno)
|
---|
| 1329 |
|
---|
| 1330 | intnoªCdis_int^ena_intÉηéÝÔƵÄLøÈlÅ éêÉ
|
---|
| 1331 | trueC»¤ÅÈ¢êÉfalseðÔ·}NDÝvÖ~tOªZbg^
|
---|
| 1332 | NAÅ«È¢intnoÉεÄÍC±Ì}NªfalseðÔ·æ¤É·éD
|
---|
| 1333 |
|
---|
| 1334 | (6-4-2-2) bool_t x_disable_int(INTNO intno)
|
---|
| 1335 | (6-4-2-3) bool_t t_disable_int(INTNO intno)
|
---|
| 1336 | (6-4-2-4) bool_t i_disable_int(INTNO intno)
|
---|
| 1337 |
|
---|
| 1338 | intnoÅwè³ê½ÝvCÉηéÝvÖ~tOðZbgµC
|
---|
| 1339 | trueðÔ·ÖDwè³ê½ÝvCÉεÄCÝ®«ªÝè³
|
---|
| 1340 | êĢȢêÉÍCfalseðÔ·D
|
---|
| 1341 |
|
---|
| 1342 | ±êçÌÖÍC^[Qbgñ˶ªCPUbNðóÔÅÄÑo·±ÆÍÈ
|
---|
| 1343 | ¢½ßCCPUbNðóÔÅÄÑo³ê½êÌ®ìÍÛØ·éKvªÈ¢D
|
---|
| 1344 | ½¾µC^[Qbg˶©çCPUbNðóÔÅÄÑo·êÉÍCÛØ·
|
---|
| 1345 | éKvª éD
|
---|
| 1346 |
|
---|
| 1347 | ܽC±êçÌÖÍCVALID_INTNO_DISINT(intno)ªtrueÆÈéintnoÉε
|
---|
| 1348 | ÄÌÝÄÎêéDintnoÉ»¤ÅÈ¢lªn³ê½êÌ®ìÍÛØ·éKvª
|
---|
| 1349 | ȢD
|
---|
| 1350 |
|
---|
| 1351 | dis_intT[rXR[ðT|[g·éêiTOPPERS_SUPPORT_DIS_INTð}N
|
---|
| 1352 | è`·éêjÉÍCt_disable_intªpÓ³êĢȯêÎÈçÈ¢D
|
---|
| 1353 |
|
---|
| 1354 | (6-4-2-5) bool_t x_enable_int(INTNO intno)
|
---|
| 1355 | (6-4-2-6) bool_t t_enable_int(INTNO intno)
|
---|
| 1356 | (6-4-2-7) bool_t i_enable_int(INTNO intno)
|
---|
| 1357 |
|
---|
| 1358 | intnoÅwè³ê½ÝvCÉηéÝvÖ~tOðNAµC
|
---|
| 1359 | trueðÔ·ÖDwè³ê½ÝvCÉεÄCÝ®«ªÝè³
|
---|
| 1360 | êĢȢêÉÍCfalseðÔ·D
|
---|
| 1361 |
|
---|
| 1362 | ±êçÌÖÍC^[Qbgñ˶ªCPUbNðóÔÅÄÑo·±ÆÍÈ
|
---|
| 1363 | ¢½ßCCPUbNðóÔÅÄÑo³ê½êÌ®ìÍÛØ·éKvªÈ¢D
|
---|
| 1364 | ½¾µC^[Qbg˶©çCPUbNðóÔÅÄÑo·êÉÍCÛØ·
|
---|
| 1365 | éKvª éD
|
---|
| 1366 |
|
---|
| 1367 | ܽC±êçÌÖÍCVALID_INTNO_DISINT(intno)ªtrueÆÈéintnoÉε
|
---|
| 1368 | ÄÌÝÄÎêéDintnoÉ»¤ÅÈ¢lªn³ê½êÌ®ìÍÛØ·éKvª
|
---|
| 1369 | ȢD
|
---|
| 1370 |
|
---|
| 1371 | ena_intT[rXR[ðT|[g·éêiTOPPERS_SUPPORT_ENA_INTð}N
|
---|
| 1372 | è`·éêjÉÍCt_enable_intªpÓ³êĢȯêÎÈçÈ¢D
|
---|
| 1373 |
|
---|
| 1374 | 6.4.3 ÝvÌNA
|
---|
| 1375 |
|
---|
| 1376 | (6-4-3-1) void x_clear_int(INTNO intno)
|
---|
| 1377 | (6-4-3-2) void t_clear_int(INTNO intno)
|
---|
| 1378 | (6-4-3-3) void i_clear_int(INTNO intno)
|
---|
| 1379 |
|
---|
| 1380 | intnoÅwè³ê½ÝvCªGbWgKÅ éêÉCgK³ê
|
---|
| 1381 | ½ÝvðNA·éÖDintnoÅwè³ê½ÝvCªx
|
---|
| 1382 | gKÅ éêÉͽàµÈ¢D
|
---|
| 1383 |
|
---|
| 1384 | SSPJ[lÌ^[Qbgñ˶ÅÍC±êçÌÖðÄÑoµÄ¢È¢ªC
|
---|
| 1385 | ^[Qbg˶âVXeT[rXÅÄÑo·Â\«ª¢½ßCpÓ·é
|
---|
| 1386 | ±ÆƵĢéD»Ì½ßC±êçÌÖªÇÌæ¤ÈVXeóÔÅÄÑo
|
---|
| 1387 | ¹é©ÍC^[Qbg˶àÅêѵĢêÎæ¢D
|
---|
| 1388 |
|
---|
| 1389 | 6.4.4 ÝvÌv[u
|
---|
| 1390 |
|
---|
| 1391 | (6-4-4-1) bool_t x_probe_int(INTNO intno)
|
---|
| 1392 | (6-4-4-2) bool_t t_probe_int(INTNO intno)
|
---|
| 1393 | (6-4-4-3) bool_t i_probe_int(INTNO intno)
|
---|
| 1394 |
|
---|
| 1395 | intnoÅwè³ê½ÝvCÉεÄCݪv³êÄ¢éêÉ
|
---|
| 1396 | trueC»¤ÅÈ¢êÉfalseðÔ·ÖD
|
---|
| 1397 |
|
---|
| 1398 | SSPJ[lÌ^[Qbgñ˶ÅÍC±êçÌÖðÄÑoµÄ¢È¢ªC
|
---|
| 1399 | ^[Qbg˶âVXeT[rXÅÄÑo·Â\«ª¢½ßCpÓ·é
|
---|
| 1400 | ±ÆƵĢéD»Ì½ßC±êçÌÖªÇÌæ¤ÈVXeóÔÅÄÑo
|
---|
| 1401 | ¹é©ÍC^[Qbg˶àÅêѵĢêÎæ¢D
|
---|
| 1402 |
|
---|
| 1403 | 6.4.5 ÝnhÌæªÆö
|
---|
| 1404 |
|
---|
| 1405 | (6-4-5-1) void i_begin_int(INTNO intno)
|
---|
| 1406 |
|
---|
| 1407 | intnoÅwè³ê½ÝvCÉηéÝnhÌæªÅs¤×«
|
---|
| 1408 | ðs¤ÖD±±Ås¤×«ÆµÄÍCÝvCªGbWg
|
---|
| 1409 | KÅ éêÌgK³ê½ÝvÌNAª°çêéD
|
---|
| 1410 |
|
---|
| 1411 | intnoÉεÄo^³ê½ÝT[rX[`ðÄÑo·ÝnhÌ
|
---|
| 1412 | æªÅÄÑo³êéD»Ì½ß±ÌÖÍCÝnhÌæªiÊíÍ
|
---|
| 1413 | CPUbNðóÔjÅÄÑo¹éæ¤ÉÀµÈ¯êÎÈçÈ¢D
|
---|
| 1414 |
|
---|
| 1415 | (6-4-5-2) void i_end_int(INTNO intno)
|
---|
| 1416 |
|
---|
| 1417 | intnoÅwè³ê½ÝvCÉηéÝnhÌöÅs¤×«
|
---|
| 1418 | ðs¤ÖD±±Ås¤×«ÆµÄÍCÝRg[iIRCjÉ
|
---|
| 1419 | ηéÝÌI¹ðÊmª°çêéD
|
---|
| 1420 |
|
---|
| 1421 | intnoÉεÄo^³ê½ÝT[rX[`ðÄÑo·ÝnhÌ
|
---|
| 1422 | öÅÄÑo³êéD»Ì½ß±ÌÖÍCÝnhÌöiÊíÍ
|
---|
| 1423 | CPUbNðóÔjÅÄÑo¹éæ¤ÉÀµÈ¯êÎÈçÈ¢D
|
---|
| 1424 |
|
---|
| 1425 | 6.5 ^XNfBXpb`
|
---|
| 1426 |
|
---|
| 1427 |
|
---|
| 1428 | 6.5.1 fBXpb`Ì®ìJn
|
---|
| 1429 |
|
---|
| 1430 | (6-5-1-1) void start_dispatch(void)
|
---|
| 1431 |
|
---|
| 1432 | fBXpb`Ì®ìJnistart_dispatchjÍCJ[lN®ÉCJ[l
|
---|
| 1433 | Ìú»©çÄÑo³êéDstart_dispatchÍC^[·é±ÆÌÈ
|
---|
| 1434 | ¢ÖÅ éD
|
---|
| 1435 |
|
---|
| 1436 | start_dispatchÍCñ^XNReLXgÅCNMIð·×ÄÌÝð}X
|
---|
| 1437 | Nµ½óÔiSÝbNóÔƯÌóÔjÅÄÑo³êéDstart_dispatch
|
---|
| 1438 | àÅC^XNReLXgÉØè·¦CCPUbNóÔEÝDæx}XNS
|
---|
| 1439 | ðóÔɵȯêÎÈçÈ¢D
|
---|
| 1440 |
|
---|
| 1441 | ReLXgðØèÖ¦½ãÍ^[Qbgñ˶ÖdispatcherðÄÑo·D
|
---|
| 1442 |
|
---|
| 1443 | start_dispatchÌàeÍÌÊèDdispatcher©çªÔé±ÆÍlÊ·éKvÍ
|
---|
| 1444 | ȢD
|
---|
| 1445 |
|
---|
| 1446 | ----------------------------------------
|
---|
| 1447 | void
|
---|
| 1448 | start_dispatch(void)
|
---|
| 1449 | {
|
---|
| 1450 | ^XNReLXgÉØè·¦é
|
---|
| 1451 | CPUbNóÔEÝDæx}XNSðóÔÉ·é
|
---|
| 1452 | dispatcherɪò·é
|
---|
| 1453 | }
|
---|
| 1454 | ----------------------------------------
|
---|
| 1455 |
|
---|
| 1456 | 6.6 Ýnh
|
---|
| 1457 |
|
---|
| 1458 | 6.6.1 ÝnhÌoüû
|
---|
| 1459 |
|
---|
| 1460 | J[lÇÌÝÌoüûÌû@ÍCvZbTÉæÁÄå«ÙÈ
|
---|
| 1461 | éªC¨¨æ»ÌàeÍÌÊèD
|
---|
| 1462 |
|
---|
| 1463 | ----------------------------------------
|
---|
| 1464 | void
|
---|
| 1465 | <ÝÌoüû>(void)
|
---|
| 1466 | {
|
---|
| 1467 | ÈÆàJ[lÇÌÝðÖ~µ½óÔÉ·é c (*f)
|
---|
| 1468 | XNb`WX^ðX^bNÉÛ¶·é
|
---|
| 1469 | if (^XNReLXgÅݶ) {
|
---|
| 1470 | ñ^XNReLXgÉØè·¦é
|
---|
| 1471 | }
|
---|
| 1472 |
|
---|
| 1473 | ±ÌÝæèàDæxÌ¢ÝÌÝðó¯t¯çêéæ¤ÉµÄC
|
---|
| 1474 | CPUbNðóÔÉ·é
|
---|
| 1475 | #ifdef LOG_INH_ENTER
|
---|
| 1476 | log_inh_enter(ÝnhÔ);
|
---|
| 1477 | #endif /* LOG_INH_ENTER */
|
---|
| 1478 | ÝnhðÄÑo·
|
---|
| 1479 | #ifdef LOG_INH_LEAVE
|
---|
| 1480 | log_inh_leave(ÝnhÔ);
|
---|
| 1481 | #endif /* LOG_INH_LEAVE */
|
---|
| 1482 |
|
---|
| 1483 | ret_int:
|
---|
| 1484 | if (^XNReLXgÅݶ) {
|
---|
| 1485 | iÈÆàjJ[lÇÌÝðÖ~µ½óÔÉ·é c (*d)
|
---|
| 1486 | if (reqflg) {
|
---|
| 1487 | reqflg = false;
|
---|
| 1488 | CPUbNóÔÉ·é c (*e)
|
---|
| 1489 | search_schedtskðÄÑoµCÅDæÊ^XNðßé
|
---|
| 1490 | ÅDæÊÌ^XNIDðøɵÄrun_taskɪò·é
|
---|
| 1491 | }
|
---|
| 1492 | }
|
---|
| 1493 | Ý©çÌ^[ãÉCCPUbNðóÔÉßéæ¤Éõ·é
|
---|
| 1494 | XNb`WX^ðX^bN©çA·é
|
---|
| 1495 | Ý©çÌ^[
|
---|
| 1496 | }
|
---|
| 1497 | ----------------------------------------
|
---|
| 1498 |
|
---|
| 1499 | ÝÌót¯Éæè·×ÄÌݪÖ~³êÈ¢vZbTÅÍC(*f)É
|
---|
| 1500 | ¨¢ÄCÈÆàJ[lÇÌÝðÖ~·éD±ÌRÍÌÊèÅ
|
---|
| 1501 | éD
|
---|
| 1502 |
|
---|
| 1503 | ÝÌüûɨ¢ÄCX^bNðñ^XNReLXgpÌX^bNÉ
|
---|
| 1504 | Øè·¦éOɽdݪ¶·éÆC^XNÌX^bNÌæªgp³êéD
|
---|
| 1505 | ãLÌæ¤ÈvZbTÅÍCX^bNÌØ·¦OÉCÅåÅÝDæxÌ
|
---|
| 1506 | iªÌ½dݪ¶·é±Æðh®±ÆÍÅ«¸Ce^XNÌX^bN
|
---|
| 1507 | ÌæðmÛ·éÛÉC»Ìªð©ñÅm۵ȯêÎÈçÈ¢De^XNÌ
|
---|
| 1508 | X^bNÌæðÈé׬³·é½ßÉÍCX^bNðÈé×gpµÈ¢
|
---|
| 1509 | àÉC½dÝðÖ~·é̪]ܵ¢D»Ì½ßCXNb`WX^ð
|
---|
| 1510 | X^bNÉÛ¶·éOÉCÝðÖ~·éD½¾µCÝÌÖ~ÉK
|
---|
| 1511 | vÈÅáÀÌWX^É¢ÄÍCÝÌÖ~Éæ§ÁÄX^bNÉÛ¶·
|
---|
| 1512 | éKvª éD
|
---|
| 1513 |
|
---|
| 1514 | ¯ḻÆÍCJ[lÇOÌÝÉàÄÍÜéD·Èí¿CJ[l
|
---|
| 1515 | ÇOÌÝÉ¢ÄàCX^bNðÈé×gpµÈ¢àÉÖ~·é̪
|
---|
| 1516 | ]ܵ¢D±Ì±Æ©çCJ[lÇOÌÝðgp·éêÉÍC(*f)
|
---|
| 1517 | ɨ¢ÄC·×ÄÌÝðÖ~µ½óÔÉ·é̪]ܵ¢±ÆÉÈéDÜ
|
---|
| 1518 | ½CJ[lÇOÌÝɨ¢ÄàCñ^XNReLXgpÌX^b
|
---|
| 1519 | NÉØè·¦é±Æª]ܵ¢ªC±êÍJ[lÌÇOÅ éD
|
---|
| 1520 |
|
---|
| 1521 | (*d)ɨ¢ÄÍCJ[lÇÌÝðÖ~·é¾¯ÅCCPUbNóÔÉ·
|
---|
| 1522 | éKvÍÈ¢Dá¦ÎCCPUbNóÔÅ é±Æð¦·ÏðpӵĢéê
|
---|
| 1523 | ÉÍC(*d)Ì_ÅÍ»ÌÏðCPUbNóÔð¦·lÉÏX·éKvÍÈ
|
---|
| 1524 | C(*e)ɨ¢ÄÏX·êÎæ¢D
|
---|
| 1525 |
|
---|
| 1526 | ÝÌoüûðAZu¾êÅLq·éêÉÍCg[XOæ¾
|
---|
| 1527 | ÍCu6.2 g[XO@\ÖÌÎvÌßÅLqµ½û@ÅR[fB
|
---|
| 1528 | O·é±ÆD
|
---|
| 1529 |
|
---|
| 1530 | 6.6.2 ÝnhÌoüû̶¬
|
---|
| 1531 |
|
---|
| 1532 | ÝxNgðn[hEFAÅÀ»µÄ¢éêÈÇCÝnhÉ
|
---|
| 1533 | oüûðpÓµ½ûªø¦ªÇ¢^[Qbg̽ßÉCÝnh
|
---|
| 1534 | Éoüû𶬷é@\ðpӵĢéD
|
---|
| 1535 |
|
---|
| 1536 | ȺÌ}NÍCWÌÝÇ@\Ìú»ðp¢½êÌÝC^[
|
---|
| 1537 | Qbgñ˶ÅgíêéDÝÇ@\Ìú»ð^[Qbg˶
|
---|
| 1538 | ÅpÓµC»ÌűêçÌ}NðgíÈ¢êÉÍC±êçÌ}Nðp
|
---|
| 1539 | Ó·éKvÍÈ¢D
|
---|
| 1540 |
|
---|
| 1541 | (6-6-2-1) INT_ENTRY(inhno, inthdr)
|
---|
| 1542 |
|
---|
| 1543 | ÝnhÔªinhnoCÝnhÌÖ¼ªinthdrÅ éÝn
|
---|
| 1544 | hÌoüûÌxðìé}NDINTHDR_ENTRYðp¢ÄÝn
|
---|
| 1545 | hÉoüû𶬷éêÉÍCÌæ¤Éè`·éD
|
---|
| 1546 |
|
---|
| 1547 | #define INT_ENTRY(inhno, inthdr) _kernel_##inthdr##_##inhno
|
---|
| 1548 |
|
---|
| 1549 | ÝnhÉoüûðìéKvªÈ¢êÉÍCÌæ¤Éè`µ
|
---|
| 1550 | ÄCÝnhÌÖ¼ð»ÌÜÜÔ·D
|
---|
| 1551 |
|
---|
| 1552 | #define INT_ENTRY(inhno, inthdr) inthdr
|
---|
| 1553 |
|
---|
| 1554 | (6-6-2-2) INTHDR_ENTRY(inhno, inhno_num, inthdr)
|
---|
| 1555 |
|
---|
| 1556 | ÝnhÔªinhnoCÝnhÌÖ¼ªinthdrÅ éÝn
|
---|
| 1557 | hÌoüû𶬷é}NDinhno_numÉÍCAZu¾êLqp
|
---|
| 1558 | ÉCÝnhÔªlÅn³êéDÝnhÉoüûð
|
---|
| 1559 | ìéKvªÈ¢êÉÍCóÉè`·éD
|
---|
| 1560 |
|
---|
| 1561 | 6.6.3 ÝnhÌÝè
|
---|
| 1562 |
|
---|
| 1563 | (6-6-3-1) bool_t VALID_INHNO_DEFINH(INHNO inhno)iIvVj
|
---|
| 1564 |
|
---|
| 1565 | inhnoªCDEF_INHÉηéÝnhÔƵÄLøÈlÅ éêÉ
|
---|
| 1566 | trueC»¤ÅÈ¢êÉfalseðÔ·}ND
|
---|
| 1567 |
|
---|
| 1568 | SSPJ[lÌ^[Qbgñ˶ÅÍC±Ì}NÍgíêĢȢ½ßC^[
|
---|
| 1569 | Qbg˶ÅgíÈ¢ÈçCpÓ·éKvªÈ¢D
|
---|
| 1570 |
|
---|
| 1571 | (6-6-3-2) void x_define_inh(INHNO inhno, FP int_entry)
|
---|
| 1572 |
|
---|
| 1573 | inhnoÅwè³ê½ÝnhÌoüûÌÔnðint_entryÉÝè·éD
|
---|
| 1574 |
|
---|
| 1575 | ±ÌÖÍCWÌÝÇ@\Ìú»ðp¢½êÌÝC^[Qb
|
---|
| 1576 | gñ˶©çÄÑo³êéDÝÇ@\Ìú»ð^[Qbg˶
|
---|
| 1577 | ÅpÓµC»ÌűÌÖðÄÑo³È¢êÉÍC±ÌÖðpÓ·é
|
---|
| 1578 | KvÍÈ¢D
|
---|
| 1579 |
|
---|
| 1580 | ±ÌÖÍC^[Qbgñ˶ÌJ[lú»©çÄÑo³êé½ßC
|
---|
| 1581 | J[lÌú»iNMIð·×ÄÌݪ}XN³êÄ¢éj©çÄ
|
---|
| 1582 | Ño¹éæ¤ÉÀ·êÎæ¢D
|
---|
| 1583 |
|
---|
| 1584 | wè³ê½ÝnhÔªDEF_INHÉηéàÌƵÄLøÈlÅÈ¢ê
|
---|
| 1585 | Ì®ìÍÛØ·éKvªÈ¢iassertÅG[Æ·é̪]ܵ¢jD±ê
|
---|
| 1586 | ÍCRtBM
|
---|
| 1587 | [^ªCpX2Ìev[gt@CÌ^[Qbg˶
|
---|
| 1588 | Åè`·éINHNO_DEFINH_VALIDðp¢ÄG[ðo·é½ßÅ éD
|
---|
| 1589 |
|
---|
| 1590 | 6.6.4 ÝvCÌ®«ÌÝè
|
---|
| 1591 |
|
---|
| 1592 | (6-6-4-1) bool_t VALID_INTNO_CFGINT(INTNO intno)iIvVj
|
---|
| 1593 |
|
---|
| 1594 | intnoªCCFG_INTÉηéÝÔƵÄLøÈlÅ éêÉtrueC»¤
|
---|
| 1595 | ÅÈ¢êÉfalseðÔ·}NDÝvCÌ®«ðÝèÅ«È¢
|
---|
| 1596 | intnoÉεÄÍC±Ì}NªfalseðÔ·æ¤É·éD
|
---|
| 1597 |
|
---|
| 1598 | SSPJ[lÌ^[Qbgñ˶ÅÍC±Ì}NÍgíêĢȢ½ßC^[
|
---|
| 1599 | Qbg˶ÅgíÈ¢ÈçCpÓ·éKvªÈ¢D
|
---|
| 1600 |
|
---|
| 1601 | (6-6-4-2) void x_config_int(INTNO intno, ATR intatr, PRI intpri)
|
---|
| 1602 |
|
---|
| 1603 | intnoÅwè³ê½ÝvCÌÝ®«ðCintatrÅwè³ê½Êè
|
---|
| 1604 | ÉÝè·éDܽCÝDæxðCintpriÅwè³ê½lÉÝè·éD
|
---|
| 1605 |
|
---|
| 1606 | ±ÌÖÍCWÌÝÇ@\Ìú»ðp¢½êÌÝC^[Qb
|
---|
| 1607 | gñ˶©çÄÑo³êéDÝÇ@\Ìú»ð^[Qbg˶
|
---|
| 1608 | ÅpÓµC»ÌűÌÖðÄÑo³È¢êÉÍC±ÌÖðpÓ·é
|
---|
| 1609 | KvÍÈ¢D
|
---|
| 1610 |
|
---|
| 1611 | ±ÌÖÍC^[Qbgñ˶ÌJ[lú»©çÄÑo³êé½ßC
|
---|
| 1612 | J[lÌú»iNMIð·×ÄÌݪ}XN³êÄ¢éj©çÄ
|
---|
| 1613 | Ño¹éæ¤ÉÀ·êÎæ¢D
|
---|
| 1614 |
|
---|
| 1615 | intatrƵÄÝèÅ«éÝ®«ÍÌÊèD
|
---|
| 1616 |
|
---|
| 1617 | TA_ENAINT 0x01 ÝvÖ~tOðNA
|
---|
| 1618 | TA_EDGE 0x02 GbWgK
|
---|
| 1619 |
|
---|
| 1620 | ±Ì¼ÉC^[Qbgè`ÅÝ®«ðÇÁµÄàæ¢D^[Qbgè`Å
|
---|
| 1621 | ÇÁ·é½ßÉCȺ̮«¼ª\ñ³êÄ¢éD
|
---|
| 1622 |
|
---|
| 1623 | TA_POSEDGE |WeBuGbWgK
|
---|
| 1624 | TA_NEGEDGE lKeBuGbWgK
|
---|
| 1625 | TA_BOTHEDGE ¼GbWgK
|
---|
| 1626 | TA_LOWLEVEL [xgK
|
---|
| 1627 | TA_HIGHLEVEL nCxgK
|
---|
| 1628 |
|
---|
| 1629 | ±êçÌ®«¼ð^[Qbgè`ÅÇÁ·éêÉÍC»Ì®«lðèµC
|
---|
| 1630 | è`ðtarget_kernel.hiܽÍC»±©çCN[h³êét@CjÉÜ
|
---|
| 1631 | ßéDܽCRtBM
|
---|
| 1632 | [^ev[gt@C©çQÆÅ«éæ¤ÉC
|
---|
| 1633 | target_def.csviܽÍC»±©çCN[h³êét@CjÉÜßCR
|
---|
| 1634 | tBM
|
---|
| 1635 | [^ev[gt@CÌ^[Qbgñ˶ÅG[ÆÈç
|
---|
| 1636 | È¢æ¤ÉCtarget.tfiܽÍC»±©çCN[h³êét@CjÅ
|
---|
| 1637 | TARGET_INTATRÉÝè·éD
|
---|
| 1638 |
|
---|
| 1639 | wè³ê½ÝÔªCFG_INTÉηéàÌƵÄLøÈlÅÈ¢êâC»
|
---|
| 1640 | ÌÝvCÉεÄÝèÅ«È¢®«ðwèµ½êCÝèÅ«È¢
|
---|
| 1641 | ÝDæxðwèµ½êÌ®ìÍÛØ·éKvªÈ¢iassertÅG[Æ
|
---|
| 1642 | ·é̪]ܵ¢jD±Ìæ¤ÈP[XÍCRtBM
|
---|
| 1643 | [^ÅG[ð
|
---|
| 1644 | o·×«Å éDRtBM
|
---|
| 1645 | [^ev[gt@CÌ^[QbgñË
|
---|
| 1646 | ¶ÍCpX2Ìev[gt@CÌ^[Qbg˶Åè`·é
|
---|
| 1647 | INTNO_CFGINT_VALIDCTARGET_INTATRCINTPRI_CFGINT_VALIDðp¢ÄG[ð
|
---|
| 1648 | o·éªCWÌÝ®«iTA_ENAINTCTA_EDGEjªÝèÅ«È¢êâC
|
---|
| 1649 | ÝèÅ«È¢®«âÝDæxªÝvCÉæÁÄÙÈéêÉÍC
|
---|
| 1650 | RtBM
|
---|
| 1651 | [^ev[gt@CÌ^[Qbg˶ÅoµÈ¯ê
|
---|
| 1652 | ÎÈçÈ¢D
|
---|
| 1653 |
|
---|
| 1654 | 6.6.5 ÝÇ@\Ìú»ÌÏX
|
---|
| 1655 |
|
---|
| 1656 | (6-6-5-1) OMIT_INITIALIZE_INTERRUPTiIvVj
|
---|
| 1657 |
|
---|
| 1658 | ÝÇ@\Ìú»ð^[Qbg˶ÅpÓµC^[Qbgñ˶
|
---|
| 1659 | ÉÜÜêéWÌÝÇ@\Ìú»ðp¢È¢êÉÍC±ÌV
|
---|
| 1660 | {ð}Nè`·éD
|
---|
| 1661 |
|
---|
| 1662 | ±ÌV{ð}Nè`·éÆCINHINIBCINTINIBCinitialize_interrupt
|
---|
| 1663 | Ìè`ªCJ[lÌ^[Qbgñ˶©çæè©êéDܽC
|
---|
| 1664 | TNUM_INHNOCtnum_inhnoCinhinib_tableCTNUM_INTNOCtnum_intnoC
|
---|
| 1665 | intinib_tableÌè`ÆCÝnhÌoüû𶬷é½ßÌLq
|
---|
| 1666 | iINTHDR_ENTRY}NÌXgjªCRtBM
|
---|
| 1667 | [^ÌpX2Ìev[
|
---|
| 1668 | gt@CÌ^[Qbgñ˶ÉæÁÄkernel_cfg.cɶ¬³êÈÈéD
|
---|
| 1669 | ½¾µCRtBM
|
---|
| 1670 | [^ÌpX2Ìev[gt@CÌ^[Qbg˶
|
---|
| 1671 | ÅCUSE_INHINIB_TABLEÆUSE_INTINIB_TABLEðÝè·é±ÆÅC»Ìê
|
---|
| 1672 | ªðkernel_cfg.cɶ¬·é±ÆªÂ\Å éD
|
---|
| 1673 |
|
---|
| 1674 | (6-6-5-2) void initialize_interrupt(void)iIvVj
|
---|
| 1675 |
|
---|
| 1676 | OMIT_INITIALIZE_INTERRUPTð}Nè`µ½êÉÍC±ÌÖð^[Qbg
|
---|
| 1677 | ˶ÅpÓ·éDOMIT_INITIALIZE_INTERRUPTð}Nè`·é±ÆÉæèæ
|
---|
| 1678 | è©êé»Ì¼Ìf[^^CÏC}NÍC±ÌÖÅgp·éêÉÌ
|
---|
| 1679 | ÝpÓ·êÎæ¢D
|
---|
| 1680 |
|
---|
| 1681 | 6.6.6 ftHgÌÝnh
|
---|
| 1682 |
|
---|
| 1683 | (6-6-6-1) default_int_handler(void)iIvVj
|
---|
| 1684 |
|
---|
| 1685 | RtBM
|
---|
| 1686 | [^ÉæèÝnhÌe[u𶬷éêÈÇÉÍC
|
---|
| 1687 | Ýnhðo^µÈ©Á½ÝnhÔÉεÄCftHgÌ
|
---|
| 1688 | ÝnhƵÄCdefault_int_handlerðo^·éD
|
---|
| 1689 |
|
---|
| 1690 | default_int_handlerÍCWÌàÌð^[Qbg˶ÅpÓ·éªC[U
|
---|
| 1691 | ªpÓµ½àÌÅu«·¦çêéæ¤ÉCOMIT_DEFAULT_INT_HANDLERð}N
|
---|
| 1692 | è`µ½êÉÍC^[Qbg˶Åè`µÈ¢æ¤É·éDȨC[U
|
---|
| 1693 | ªpÓ·éê̼ÌÍC_kernel_default_int_handlerÆÈéD
|
---|
| 1694 |
|
---|
| 1695 | 6.6.7 J[lÇOÌÝ
|
---|
| 1696 |
|
---|
| 1697 | J[lÇOÌÝnhÍCJ[làÌÝoüûðoR¹
|
---|
| 1698 | ¸ÉÀs·é̪î{Å éD
|
---|
| 1699 |
|
---|
| 1700 | ½¾µC·×ÄÌÝů¶AhXɪò·évZbTÅÍCJ[l
|
---|
| 1701 | àÌÝoüûðSoR¹¸ÉJ[lÇOÌÝnhðÀ
|
---|
| 1702 | s·é±ÆªÅ«È¢½ßCÝoüûÌÈé×¢^C~OÅC
|
---|
| 1703 | J[lÇOÌÝÅ é©ð»ÊµCàeðª¯éKvª éDï
|
---|
| 1704 | ÌIÉÍCJ[lÇOÌÝÌoüûÅÍCI[onhÌ
|
---|
| 1705 | â~Æ®ìJnðsÁÄÍÈçÈ¢DܽCreqflgð`FbNµC^XNØ·
|
---|
| 1706 | ¦â^XNáO[`ÌÄoµðs¤KvªÈ¢D³çÉCNMIÌoüû
|
---|
| 1707 | ÅÍCg[XOæ¾ilog_inh_enter¨æÑlog_inh_leavejðÄ
|
---|
| 1708 | ÑoµÄÍÈçÈ¢D
|
---|
| 1709 |
|
---|
| 1710 | J[lÇOÌÝnhðÀs·éÛÉCJ[làÌÝoüû
|
---|
| 1711 | ÌêªðoR·éêÉÍCCPUáOªN±éÂ\«ðÉ͸ç·ÆÆà
|
---|
| 1712 | ÉCCPUáOðN±·Â\«ª éêÉÍC»ÌÂ\«ð^[Qbg˶Ì
|
---|
| 1713 | [U[Y}j
|
---|
| 1714 | AÉLڵȯêÎÈçÈ¢D
|
---|
| 1715 |
|
---|
| 1716 | ÉCJ[lÇOÌÝÌÝèû@ÉÖµÄCuTOPPERSV¢ãJ[l
|
---|
| 1717 | dlvÌu6.6.8 J[lÇOÌÝÌÝèû@vÌßÌ3ÂÌû@
|
---|
| 1718 | Ì¢¸êðÌp·é©ðè·éD
|
---|
| 1719 |
|
---|
| 1720 | (a-1)ܽÍ(a-2)ðÌpµCJ[lÇOƵ½ÝÉεÄCJ[l
|
---|
| 1721 | ÌAPIÉæéÝnhÌo^ÆÝvCÌ®«ÌÝèðT|[g
|
---|
| 1722 | µÈ¢êÉÍC»êÉãíéû@ð^[Qbg˶Ì[U[Y}j
|
---|
| 1723 | A
|
---|
| 1724 | ÉLq·éD
|
---|
| 1725 |
|
---|
| 1726 | (a-1)ܽÍ(a-2)ðÌpµÄJ[lÌAPIÉæéÝnhÌo^â
|
---|
| 1727 | ÝvCÌ®«ÌÝèðT|[g·éêâC(b)ðÌpµ½êÉÍC^[
|
---|
| 1728 | Qbg˶ɨ¢Ä»êðÀ»·éKvª éD
|
---|
| 1729 |
|
---|
| 1730 | J[lÇOÌÝÉεÄCDEF_INHÉæéÝnhÌo^ðT|[
|
---|
| 1731 | g·éÉÍCÌÝèªKvÉÈéD
|
---|
| 1732 |
|
---|
| 1733 | ETARGET_INHATRÉCTA_NONKERNELðÝè·éD
|
---|
| 1734 |
|
---|
| 1735 | E(a-1)ܽÍ(a-2)ðÌpµ½êÉÍCINHNO_DEFINH_VALIDÉCJ[lÇ
|
---|
| 1736 | @OƵ½ÝÉηéÝnhÔðÜßéDܽC
|
---|
| 1737 | @VALID_INHNO_DEFINHðCJ[lÇOƵ½ÝnhÔðLøÈ
|
---|
| 1738 | @lÆ»è·éæ¤É·éD
|
---|
| 1739 |
|
---|
| 1740 | E(a-1)ܽÍ(a-2)ðÌpµ½êÉÍCINHNO_FIX_KERNELÉJ[lÇÆ
|
---|
| 1741 | @µ½ÝnhÔÌXgðCINHNO_FIX_NONKERNELÉJ[lÇO
|
---|
| 1742 | @Ƶ½ÝnhÔÌXgÝè·éD
|
---|
| 1743 |
|
---|
| 1744 | EDEF_INHªJ[lÇOÌÝÉÎÅ«éæ¤É·éDWÌÝÇ
|
---|
| 1745 | @@\Ìú»ðp¢éêÉÍCx_define_inhðJ[lÇOÌ
|
---|
| 1746 | @ÝÉγ¹éD
|
---|
| 1747 |
|
---|
| 1748 | EKvÈêÉÍCTA_NONKERNEL®«ªÝè³ê½ÝnhðJ[l
|
---|
| 1749 | @ÇOƵ¤æ¤ÉCJ[làÌÝoüûðC³·éDWÌ
|
---|
| 1750 | @ÝÇ@\Ìú»ðp¢éêCJ[lÇOÌÝÉεÄ
|
---|
| 1751 | @ÍCJ[làÌÝoüû𶬹¸CAvP[Vªo^µ
|
---|
| 1752 | @½Ýnhð¼ÚÄÑo·æ¤ÉC^[Qbgñ˶ÉæèÝè³
|
---|
| 1753 | @êé½ßC^[Qbg˶ÅÍηéKvªÈ¢D
|
---|
| 1754 |
|
---|
| 1755 | J[lÇOÌÝÉεÄCCFG_INTÉæéÝvCÌ®«ÌÝ
|
---|
| 1756 | èðT|[g·éÉÍCÌÝèªKvÉÈéD
|
---|
| 1757 |
|
---|
| 1758 | E(a-1)ܽÍ(a-2)ðÌpµ½êÉÍCINTNO_CFGINT_VALIDÉCJ[lÇ
|
---|
| 1759 | @OƵ½ÝÉηéÝÔðÜßéDܽCVALID_INTNO_CFGINT
|
---|
| 1760 | @ðCJ[lÇOƵ½ÝÔðLøÈlÆ»è·éæ¤É·éD
|
---|
| 1761 |
|
---|
| 1762 | E(a-1)ܽÍ(a-2)ðÌpµ½êÉÍCINTNO_FIX_KERNELÉJ[lÇÆ
|
---|
| 1763 | @µ½ÝÔÌXgðCINTNO_FIX_NONKERNELÉJ[lÇOƵ½
|
---|
| 1764 | @ÝÔÌXgÝè·éD
|
---|
| 1765 |
|
---|
| 1766 | EINTPRI_CFGINT_VALIDÉCJ[lÇOÌÝÆÈéDæxðÜßéD
|
---|
| 1767 |
|
---|
| 1768 | ECFG_INTªJ[lÇOÌÝÉÎÅ«éæ¤É·éDWÌÝÇ
|
---|
| 1769 | @@\Ìú»ðp¢éêÉÍCx_config_intðJ[lÇOÌ
|
---|
| 1770 | @ÝÉγ¹éD
|
---|
| 1771 |
|
---|
| 1772 | chg_ipmÉæèCiNMIÈOÌjJ[lÇOÌÝð}XNÅ«éæ¤É
|
---|
| 1773 | ·éêÉÍCÌÝèªKvÉÈéD
|
---|
| 1774 |
|
---|
| 1775 | EVALID_INTPRI_CHGIPMðCJ[lÇOÌÝÆÈéDæxðLøÈlÆ
|
---|
| 1776 | @»è·éæ¤É·éD
|
---|
| 1777 |
|
---|
| 1778 | Et_set_ipmðCJ[lÇOÌÝÆÈéDæxðµ¦éæ¤É·éD
|
---|
| 1779 |
|
---|
| 1780 | 6.7 CPUáOnhÆCPUáO¶ÌVXeóÔÌQÆ
|
---|
| 1781 |
|
---|
| 1782 | 6.7.1 CPUáOnhÌoüû
|
---|
| 1783 |
|
---|
| 1784 | CPUáOÌoüûÌû@ÍvZbTÉæÁÄå«ÙÈéªC¨¨æ»Ì
|
---|
| 1785 | àeÍÌÊèD
|
---|
| 1786 |
|
---|
| 1787 | ----------------------------------------
|
---|
| 1788 | void
|
---|
| 1789 | <CPUáOÌoüû>(void)
|
---|
| 1790 | {
|
---|
| 1791 | XNb`WX^ðX^bNÉÛ¶·é
|
---|
| 1792 | if (J[lÇOÌCPUáO) {
|
---|
| 1793 | if (^XNReLXgÅCPUáO¶) {
|
---|
| 1794 | ñ^XNReLXgÉØè·¦é
|
---|
| 1795 | }
|
---|
| 1796 | VXeóÔiReLXgÍjðCCPUáO¶ÌóÔÉ·é
|
---|
| 1797 | CPUáOnhðCCPUáOÌîñðL¯µÄ¢éÌæÌæªÔnð
|
---|
| 1798 | p[^ip_excinfjƵÄÄÑo·
|
---|
| 1799 | if (^XNReLXgÅCPUáO¶) {
|
---|
| 1800 | ^XNReLXgÉØè·¦é
|
---|
| 1801 | }
|
---|
| 1802 | CPUáO©çÌ^[ãÉCCPUáO¶ÌVXeóÔÉ
|
---|
| 1803 | ßéæ¤Éõ·é
|
---|
| 1804 | }
|
---|
| 1805 | else {
|
---|
| 1806 | if (^XNReLXgÅCPUáO¶) {
|
---|
| 1807 | ñ^XNReLXgÉØè·¦é
|
---|
| 1808 | }
|
---|
| 1809 | VXeóÔiReLXgÍjðCCPUáO¶ÌóÔÉ·é
|
---|
| 1810 | @iCPUáO¶ÌÝDæx}XNæèàDæxÌ¢Ý
|
---|
| 1811 | ÌÝðó¯t¯çêéæ¤ÉµÄCCPUbNðóÔÉ·éj
|
---|
| 1812 |
|
---|
| 1813 | #ifdef LOG_EXC_ENTER
|
---|
| 1814 | log_exc_enter(CPUáOnhÔ);
|
---|
| 1815 | #endif /* LOG_EXC_ENTER */
|
---|
| 1816 | CPUáOnhðCCPUáOÌîñðL¯µÄ¢éÌæÌæªÔnð
|
---|
| 1817 | p[^ip_excinfjƵÄÄÑo·
|
---|
| 1818 | #ifdef LOG_EXC_LEAVE
|
---|
| 1819 | log_exc_leave(CPUáOnhÔ);
|
---|
| 1820 | #endif /* LOG_EXC_LEAVE */
|
---|
| 1821 |
|
---|
| 1822 | ret_exc:
|
---|
| 1823 | if (^XNReLXgÅCPUáO¶) {
|
---|
| 1824 | iÈÆàjJ[lÇÌÝðÖ~µ½óÔÉ·é c (*d)
|
---|
| 1825 | ^XNReLXgÉØè·¦é
|
---|
| 1826 | if (reqflg) {
|
---|
| 1827 | reqflg = false;
|
---|
| 1828 | CPUbNóÔÉ·é c (*e)
|
---|
| 1829 | search_schedtskðÄÑoµCÅDæÊ^XNðßé
|
---|
| 1830 | ÅDæÊÌ^XNIDðøɵÄrun_taskɪò·é
|
---|
| 1831 | }
|
---|
| 1832 | }
|
---|
| 1833 | CPUáO©çÌ^[ãÉCCPUbNðóÔÉßéæ¤Éõ·é
|
---|
| 1834 | }
|
---|
| 1835 | XNb`WX^ðX^bN©çA·é
|
---|
| 1836 | CPUáO©çÌ^[
|
---|
| 1837 | }
|
---|
| 1838 | ----------------------------------------
|
---|
| 1839 |
|
---|
| 1840 | CPUáOnhÍCñReLXgÉØè·¦é±Æð¢ÄÍCCPUáO
|
---|
| 1841 | ¶Æ¯¶VXeóÔÅÄÑo³È¯êÎÈçÈ¢Dá¦ÎCCPUáOªCPU
|
---|
| 1842 | bNóÔŶµ½êÉÍCPUbNóÔCCPUbNðóÔŶµ½
|
---|
| 1843 | êÉÍCPUbNðóÔÅCCPUáOnhðÄÑo³È¯êÎÈçÈ¢D
|
---|
| 1844 | CPUbNóÔŶµ½CPUáOÍCJ[lÇOÌCPUáOÆÈé½ßCJ[
|
---|
| 1845 | lÇÌCPUáOnhÉ¢ÄÍCCPUbNðóÔÅÄÑo·±ÆÉ
|
---|
| 1846 | ÈéD
|
---|
| 1847 |
|
---|
| 1848 | J[lÇOÌCPUáOÅ é±ÆÍCexc_sense_unlockªfalseðÔ·ð
|
---|
| 1849 | ÆC^XNReLXgÅ é±Æð²×È¢¾¯Ìá¢Å èCÙÚ¯¶R[
|
---|
| 1850 | hÅ»è·é±ÆªÅ«éD
|
---|
| 1851 |
|
---|
| 1852 | ãÌR[hÅÍCJ[lÇOÌCPUáOÉεÄCg[XOæ¾
|
---|
| 1853 | ilog_exc_enter¨æÑlog_exc_leavejðÄÑoµÄ¢È¢ªCSÝb
|
---|
| 1854 | NóÔ©NMIÌÉCPUáOª¶µ½êðO·êÎCÄÑoµÄà©
|
---|
| 1855 | ÜíÈ¢DSÝbNóÔ©NMIÌɶµ½CPUáOÌêÉÍC
|
---|
| 1856 | g[XOæ¾ðÄÑoµÄÍÈçÈ¢D
|
---|
| 1857 |
|
---|
| 1858 | CPUáOnhðÀs·éÛÉoR·éªÅÍCCPUáOªN±éÂ\«ð
|
---|
| 1859 | É͸ç·ÆÆàÉCCPUáOðN±·Â\«ª éêiá¦ÎCXNb`
|
---|
| 1860 | WX^ðX^bNÉÛ¶·éÉCoXG[ÈÇÌCPUáOª¶·éÂ\
|
---|
| 1861 | «ªl¦çêéjÉÍC»ÌÂ\«ð^[Qbg˶Ì[U[Y}j
|
---|
| 1862 | A
|
---|
| 1863 | ÉLڵȯêÎÈçÈ¢D
|
---|
| 1864 |
|
---|
| 1865 | ret_excÈ~ÌÍCÝÌoüûÌret_intÈ~ÌƯ¶Å é
|
---|
| 1866 | ½ßC^[QbgÉæÁÄÍC¤ÊÌ[`ðp¢é±ÆªÅ«éÂ\«ª
|
---|
| 1867 | éD
|
---|
| 1868 |
|
---|
| 1869 | CPUáOÌoüûðAZu¾êÅLq·éêÉÍCg[XOæ¾
|
---|
| 1870 | ÍCu6.2 g[XO@\ÖÌÎvÌßÅLqµ½û@ÅR[fB
|
---|
| 1871 | O·é±ÆD
|
---|
| 1872 |
|
---|
| 1873 | 6.7.2 CPUáOnhÌoüû̶¬
|
---|
| 1874 |
|
---|
| 1875 | CPUáOxNgðn[hEFAÅÀ»µÄ¢éêÈÇCCPUáOnh
|
---|
| 1876 | ÉoüûðpÓµ½ûªø¦ªÇ¢^[Qbg̽ßÉCCPUáOnh
|
---|
| 1877 | Éoüû𶬷é@\ðpӵĢéD
|
---|
| 1878 |
|
---|
| 1879 | ȺÌ}NÍCWÌCPUáOÇ@\Ìú»ðp¢½êÌÝC^[
|
---|
| 1880 | Qbgñ˶ÅgíêéDCPUáOÇ@\Ìú»ð^[Qbg˶
|
---|
| 1881 | ÅpÓµC»ÌűêçÌ}NðgíÈ¢êÉÍC±êçÌ}Nðp
|
---|
| 1882 | Ó·éKvÍÈ¢D
|
---|
| 1883 |
|
---|
| 1884 | (6-7-2-1) EXC_ENTRY(excno, exchdr)
|
---|
| 1885 |
|
---|
| 1886 | CPUáOnhÔªexcnoCCPUáOnhÌÖ¼ªexchdrÅ éCPUá
|
---|
| 1887 | OnhÌoüûÌxðìé}NDEXCHDR_ENTRYðp¢ÄCPUáO
|
---|
| 1888 | nhÉoüû𶬷éêÉÍCÌæ¤Éè`·éD
|
---|
| 1889 |
|
---|
| 1890 | #define EXC_ENTRY(excno, exchdr) _kernel_##exchdr##_##excno
|
---|
| 1891 |
|
---|
| 1892 | CPUáOnhÉoüûðìéKvªÈ¢êÉÍCÌæ¤Éè`µ
|
---|
| 1893 | ÄCCPUáOnhÌÖ¼ð»ÌÜÜÔ·D
|
---|
| 1894 |
|
---|
| 1895 | #define EXC_ENTRY(excno, exchdr) exchdr
|
---|
| 1896 |
|
---|
| 1897 | (6-7-2-2) EXCHDR_ENTRY(excno, excno_num, exchdr)
|
---|
| 1898 |
|
---|
| 1899 | CPUáOnhÔªexcnoCCPUáOnhÌÖ¼ªexchdrÅ éCPUá
|
---|
| 1900 | OnhÌoüû𶬷é}NDexcno_numÉÍCAZu¾êL
|
---|
| 1901 | qpÉCCPUáOnhÔªlÅn³êéDCPUáOnhÉoüû
|
---|
| 1902 | ðìéKvªÈ¢êÉÍCóÉè`·éD
|
---|
| 1903 |
|
---|
| 1904 | 6.7.3 CPUáOnhÌÝè
|
---|
| 1905 |
|
---|
| 1906 | (6-7-3-1) bool_t VALID_EXCNO_DEFEXC(EXCNO excno)iIvVj
|
---|
| 1907 |
|
---|
| 1908 | excnoªCDEF_EXCÉηéCPUáOnhÔƵÄLøÈlÅ éêÉ
|
---|
| 1909 | trueC»¤ÅÈ¢êÉfalseðÔ·}ND
|
---|
| 1910 |
|
---|
| 1911 | SSPJ[lÌ^[Qbgñ˶ÅÍC±Ì}NÍgíêĢȢ½ßC^[
|
---|
| 1912 | Qbg˶ÅgíÈ¢ÈçCpÓ·éKvªÈ¢D
|
---|
| 1913 |
|
---|
| 1914 | (6-7-3-2) void x_define_exc(EXCNO excno, FP exc_entry)
|
---|
| 1915 |
|
---|
| 1916 | excnoÅwè³ê½CPUáOnhÌoüûÌÔnðexc_entryÉÝè·éD
|
---|
| 1917 |
|
---|
| 1918 | ±ÌÖÍCWÌCPUáOÇ@\Ìú»ðp¢½êÌÝC^[Qb
|
---|
| 1919 | gñ˶©çÄÑo³êéDCPUáOÇ@\Ìú»ð^[Qbg˶
|
---|
| 1920 | ÅpÓµC»ÌűÌÖðÄÑo³È¢êÉÍC±ÌÖðpÓ·é
|
---|
| 1921 | KvÍÈ¢D
|
---|
| 1922 |
|
---|
| 1923 | ±ÌÖÍC^[Qbgñ˶ÌJ[lú»©çÄÑo³êé½ßC
|
---|
| 1924 | J[lÌú»iNMIð·×ÄÌݪ}XN³êÄ¢éj©çÄ
|
---|
| 1925 | Ño¹éæ¤ÉÀ·êÎæ¢D
|
---|
| 1926 |
|
---|
| 1927 | wè³ê½CPUáOnhÔªDEF_EXCÉηéàÌƵÄLøÈlÅÈ¢
|
---|
| 1928 | êÌ®ìÍÛØ·éKvªÈ¢iassertÅG[Æ·é̪]ܵ¢jD±
|
---|
| 1929 | êÍCRtBM
|
---|
| 1930 | [^ªCpX2Ìev[gt@CÌ^[Qbg˶
|
---|
| 1931 | Åè`·éEXCNO_DEFEXC_VALIDðp¢ÄG[ðo·é½ßÅ éD
|
---|
| 1932 |
|
---|
| 1933 | 6.7.4 CPUáOÇ@\Ìú»ÌÏX
|
---|
| 1934 |
|
---|
| 1935 | (6-7-4-1) OMIT_INITIALIZE_EXCEPTIONiIvVj
|
---|
| 1936 |
|
---|
| 1937 | CPUáOÇ@\Ìú»ð^[Qbg˶ÅpÓµC^[Qbgñ˶
|
---|
| 1938 | ÉÜÜêéWÌÝÇ@\Ìú»ðp¢È¢êÉÍC±ÌV
|
---|
| 1939 | {ð}Nè`·éD
|
---|
| 1940 |
|
---|
| 1941 | ±ÌV{ð}Nè`·éÆCEXCINIBÆinitialize_exceptionÌè`ªC
|
---|
| 1942 | J[lÌ^[Qbgñ˶©çæè©êéDܽCTNUM_EXCNOC
|
---|
| 1943 | tnum_excnoCexcinib_tableÌè`ÆCCPUáOnhÌoüûð¶¬
|
---|
| 1944 | ·é½ßÌLqiEXCHDR_ENTRY}NÌXgjðCRtBM
|
---|
| 1945 | [^Ìp
|
---|
| 1946 | X2Ìev[gt@CÌ^[Qbgñ˶ÉæÁÄkernel_cfg.cɶ¬
|
---|
| 1947 | ³êÈÈéD
|
---|
| 1948 |
|
---|
| 1949 | (6-7-4-2) void initialize_exception(void)iIvVj
|
---|
| 1950 |
|
---|
| 1951 | OMIT_INITIALIZE_EXCEPTIONð}Nè`µ½êÉÍC±ÌÖð^[Qbg
|
---|
| 1952 | ˶ÅpÓ·éDOMIT_INITIALIZE_EXCEPTIONð}Nè`·é±ÆÉæèæ
|
---|
| 1953 | è©êé»Ì¼Ìf[^^CÏC}NÍC±ÌÖÅgp·éêÉÌ
|
---|
| 1954 | ÝpÓ·êÎæ¢D
|
---|
| 1955 |
|
---|
| 1956 | 6.7.5 ftHgÌCPUáOnh
|
---|
| 1957 |
|
---|
| 1958 | (6-7-5-1) default_exc_handler(void)iIvVj
|
---|
| 1959 |
|
---|
| 1960 | RtBM
|
---|
| 1961 | [^ÉæèCPUáOnhÌe[u𶬷éêÈÇÉÍC
|
---|
| 1962 | CPUáOnhðo^µÈ©Á½CPUáOnhÔÉεÄCftHg
|
---|
| 1963 | ÌCPUáOnhƵÄCdefault_exc_handlerðo^·éD
|
---|
| 1964 |
|
---|
| 1965 | default_exc_handlerÍCWÌàÌð^[Qbg˶ÅpÓ·éªC[U
|
---|
| 1966 | ªpÓµ½àÌÅu«·¦çêéæ¤ÉCOMIT_DEFAULT_EXC_HANDLERð}N
|
---|
| 1967 | è`µ½êÉÍC^[Qbg˶Åè`µÈ¢æ¤É·éDȨC[U
|
---|
| 1968 | ªpÓ·éê̼ÌÍC_kernel_default_exc_handlerÆÈéD
|
---|
| 1969 |
|
---|
| 1970 | 6.8 J[lÌN®EI¹ÆX^bNÌæÈÇ
|
---|
| 1971 |
|
---|
| 1972 | (6-8-1) X^[gAbvW
|
---|
| 1973 | [
|
---|
| 1974 |
|
---|
| 1975 | J[lÌX^[gAbvW
|
---|
| 1976 | [ÍCVXeÌZbgãÉÅÉÀs
|
---|
| 1977 | ³êévOÅ éDX^[gAbvW
|
---|
| 1978 | [ÍCWIÉÍCvZb
|
---|
| 1979 | T˶ܽÍ`bv˶ÅpӵȺÌðs¤ªC»êɱ¾íéK
|
---|
| 1980 | vÍÈ¢DïÌIÉÍCJ«ÉpÓ³êÄ¢éX^[gAbvW
|
---|
| 1981 | [
|
---|
| 1982 | ðp¢éû@i±ÌêC^[Qbg˶ÅmainÖðpÓ·éKvª éj
|
---|
| 1983 | âCAvP[VÅpÓ·éêªl¦çêéD
|
---|
| 1984 |
|
---|
| 1985 | (a) vZbTóÔÌú»
|
---|
| 1986 |
|
---|
| 1987 | vZbT[hCX^bN|C^Ct[|C^CvZbTÌó
|
---|
| 1988 | Ôðú»·éDܽCNMIð·×ÄÌÝð}XNµ½óÔiSÝ
|
---|
| 1989 | bNóÔƯÌóÔjÆ·éDDRAMRg[Ìú»ÈÇCð
|
---|
| 1990 | ANZX·é½ßÉKvÈú»ð±±ÅsÁÄàæ¢iÌ
|
---|
| 1991 | hardware_init_hookÅsÁÄàæ¢jD
|
---|
| 1992 |
|
---|
| 1993 | (b) hardware_init_hookðÄÑo·
|
---|
| 1994 |
|
---|
| 1995 | VXeÌZbgã·®És¤KvÌ é^[QbgVXe˶Ìú»
|
---|
| 1996 | ðs¤½ßÉChardware_init_hookðÄÑo·Dhardware_init_hookªp
|
---|
| 1997 | Ó³êĢȢêÍC½àµÈ¢DGNUJ«ÅÍCJXNvgÌ
|
---|
| 1998 | weak definitionÉæèChardware_init_hookªpÓ³êĢȢêÌlð0
|
---|
| 1999 | Æ·é±ÆÅC±êðÀ»Å«éDweak definitionÌ@\ð½È¢J«
|
---|
| 2000 | ÅÍChardware_init_hookðK¸ÄÑo·±ÆÉ·éD
|
---|
| 2001 |
|
---|
| 2002 | hardware_init_hookÍC^[Qbg˶ÅpÓ·é̪WÅ éªCVX
|
---|
| 2003 | eÌZbgã·®És¤KvÌ éú»ðÇÁ·é½ßÉCAv
|
---|
| 2004 | P[VÅpÓµ½àÌðp¢éêà éD
|
---|
| 2005 |
|
---|
| 2006 | ANZXÉKvÈú»ðhardware_init_hookÅs¤êÉÍC±
|
---|
| 2007 | êðÄÑo·_ÅÉANZX·é±ÆªÅ«È¢½ßCÖiTu[
|
---|
| 2008 | `jðÄÑo·½ßÉX^bNðgp·évZbTÅÍCßèÔnðÄp
|
---|
| 2009 | WX^ÉüêÄÄÑo·Æ¢Á½HvªKvÅ éD±ÌêC
|
---|
| 2010 | hardware_init_hookðC¾êÅLq·é±ÆÍÅ«ÈÈéªCâÞð¦È¢D
|
---|
| 2011 |
|
---|
| 2012 | (c) bssZNVÆdataZNVÌú»
|
---|
| 2013 |
|
---|
| 2014 | bssZNVðNAµCdataZNVÉúlðÝè·éD
|
---|
| 2015 |
|
---|
| 2016 | ½¾µCJ[l{ÌÍCkerflgªfalsei0jÉú»³êé±ÆÈOÉC
|
---|
| 2017 | ±êçÌZNVªú»³êé±ÆÉ˶µÄ¢È¢½ßCX^[gAb
|
---|
| 2018 | vW
|
---|
| 2019 | [ðAvP[VÅpÓ·éêÅCVXeT[rXâAv
|
---|
| 2020 | P[Vª±êçÌZNVªú»³êé±ÆÉ˶µÄ¢È¢ê
|
---|
| 2021 | ÉÍCVXeÌN®ÔðZk·é½ßÉCkerflgðfalseÉú»·é¾¯
|
---|
| 2022 | Å\ªÅ éD
|
---|
| 2023 |
|
---|
| 2024 | (d) software_init_hookðÄÑo·
|
---|
| 2025 |
|
---|
| 2026 | J«iÁÉCujÉ˶µÄKvÈú»ðs¤½ßÉC
|
---|
| 2027 | software_init_hookðÄÑo·Dsoftware_init_hookªpÓ³êĢȢê
|
---|
| 2028 | ÍC½àµÈ¢DGNUJ«ÅÍCJXNvgÌweak definitionÉ
|
---|
| 2029 | æèCsoftware_init_hookªpÓ³êĢȢêÌlð0Æ·é±ÆÅC±ê
|
---|
| 2030 | ðÀ»Å«éDweak definitionÌ@\ð½È¢J«ÅÍC
|
---|
| 2031 | software_init_hookðK¸ÄÑo·±ÆÉ·éD
|
---|
| 2032 |
|
---|
| 2033 | software_init_hookÍC^[Qbg˶ÅpÓ·é̪WÅ éD
|
---|
| 2034 |
|
---|
| 2035 | (e) sta_kerÖªò
|
---|
| 2036 |
|
---|
| 2037 | sta_kerðÄÑo·Dsta_kerÍCNMIð·×ÄÌÝð}XNµ½óÔ
|
---|
| 2038 | iSÝbNóÔƯÌóÔjÅÄÑo³È¯êÎÈçÈ¢Dsta_ker©
|
---|
| 2039 | çÍ^[·é±ÆªÈ¢½ßCX^[gAbvW
|
---|
| 2040 | [ÉßÁÄé±
|
---|
| 2041 | ÆÍl¦éKvªÈ¢D
|
---|
| 2042 |
|
---|
| 2043 | (6-8-2) void target_initialize(void)
|
---|
| 2044 |
|
---|
| 2045 | ^[Qbg˶Ìú»ðs¤ÖDsta_kerÌÅÅÄÑo³êéDvZb
|
---|
| 2046 | TE`bvEJ«˶Ìú»ðC»êçÌ˶ÉØ誯é±Æ
|
---|
| 2047 | àÂ\Å éD
|
---|
| 2048 |
|
---|
| 2049 | ±ÌÖÍC ÜÅàJ[lÌ^[Qbg˶Ìú»ðs¤½ß
|
---|
| 2050 | ÌàÌÅ éDAvP[VÉKvÈú»ÍCú»[`Ås
|
---|
| 2051 | ¤Ìªî{Å éªCVXeÌZbgã·®És¤Kvª éêÉÍC
|
---|
| 2052 | hardware_init_hookðp¢éD
|
---|
| 2053 |
|
---|
| 2054 | (6-8-3) void call_exit_kernel(void)
|
---|
| 2055 |
|
---|
| 2056 | ñ^XNReLXgÉØè·¦ÄCexit_kernelÖªò·éÖDext_ker©
|
---|
| 2057 | çÄÑo³êéDexit_kernel©çÍ^[·é±ÆªÈ¢½ßC±ÌÖÉ
|
---|
| 2058 | ßÁÄé±ÆÍl¦éKvªÈ¢D
|
---|
| 2059 |
|
---|
| 2060 | ñ^XNReLXgÉØè·¦éÌÍCI¹[`ðCñ^XNR
|
---|
| 2061 | eLXgpÌX^bNÅÀs·é½ßÅ éDI¹[`ð^XNpÌ
|
---|
| 2062 | X^bNÅÀs·éÆCe^XNÌX^bNÌæÌTCYðè·éÛÉCI
|
---|
| 2063 | ¹[`ªgp·éX^bNÌæðl¶µÈ¯êÎÈçÈ¢D±êÉÍC
|
---|
| 2064 | I¹[`ªgp·éX^bNÌæªå«¢êÉe^XNÌX^bN
|
---|
| 2065 | Ìæð³ÊÉ嫵ȯêÎÈçÈ¢±ÆÉÁ¦ÄCÓ}µÈ¢X^bNI[
|
---|
| 2066 | o[t[ª¶·éÂ\«ðßéÆ¢¤âèª éD
|
---|
| 2067 |
|
---|
| 2068 | ±ÌÖÍCSÝbNóÔÅÄÎêé½ßCSÝbNóÔ©çÄ
|
---|
| 2069 | Ño·±ÆªÅ«È¢ÖðÄÎÈ¢æ¤ÉÀµÈ¯êÎÈçÈ¢D
|
---|
| 2070 |
|
---|
| 2071 | (6-8-4) void target_exit(void)
|
---|
| 2072 |
|
---|
| 2073 | ^[Qbg˶ÌI¹ðs¤ÖD±ÌÖÍCJ[lI¹ÌÅ
|
---|
| 2074 | ãÉÄÑo³êC^[µÄÍÈçÈ¢DvZbTE`bvEJ«Ë
|
---|
| 2075 | ¶ÌI¹ðC»êçÌ˶ÉØ誯é±ÆàÂ\Å éD
|
---|
| 2076 |
|
---|
| 2077 | ±ÌÖÅÍCÅÉCatexitÉæÁÄo^³ê½ÖÆfXgN^ðÄÑ
|
---|
| 2078 | o·±ÆðÓ}µÄ¨èCWIÉÍCsoftware_term_hookðÄÑo·D
|
---|
| 2079 | software_term_hookªpÓ³êĢȢêÍC½àµÈ¢DGNUJ«ÅÍC
|
---|
| 2080 | JXNvgÌweak definitionÉæèCsoftware_term_hookªpÓ³ê
|
---|
| 2081 | ĢȢêÌlð0Æ·é±ÆÅC±êðÀ»Å«éDweak definitionÌ@
|
---|
| 2082 | \ð½È¢J«ÅÍCsoftware_term_hookðK¸ÄÑo·±ÆÉ·éD
|
---|
| 2083 |
|
---|
| 2084 | ±ÌÖÍCSÝbNóÔÅÄÎêé½ßCSÝbNóÔ©çÄ
|
---|
| 2085 | Ño·±ÆªÅ«È¢ÖðÄÎÈ¢æ¤ÉÀµÈ¯êÎÈçÈ¢D
|
---|
| 2086 |
|
---|
| 2087 | {Öð³À[vÅÀ·éÛÍCȺÌ`®Æ·é±Æ(TECSÌp[TÌ
|
---|
| 2088 | §ÀÉí¹é½ßjD
|
---|
| 2089 |
|
---|
| 2090 | void
|
---|
| 2091 | target_exit( void )
|
---|
| 2092 | {
|
---|
| 2093 |
|
---|
| 2094 | /*
|
---|
| 2095 | * ^[Qbg˶Ì
|
---|
| 2096 | */
|
---|
| 2097 |
|
---|
| 2098 |
|
---|
| 2099 | while (true)
|
---|
| 2100 | {
|
---|
| 2101 | }
|
---|
| 2102 | }
|
---|
| 2103 |
|
---|
| 2104 |
|
---|
| 2105 | 6.9 J[làÌ`
|
---|
| 2106 | [jO
|
---|
| 2107 |
|
---|
| 2108 | 6.9.1 rbg}bvT[`
|
---|
| 2109 |
|
---|
| 2110 | (6-9-1-1) OMIT_BITMAP_SEARCHiIvVj
|
---|
| 2111 | (6-9-1-2) uint_t bitmap_search(uint16_t bitmap)iIvVj
|
---|
| 2112 |
|
---|
| 2113 | ^[Qbgñ˶ÅCuint16_t^Ì®libitmapjÌ1ÌrbgÌàCÅ
|
---|
| 2114 | àºÊiEjÌàÌðT[`µC»ÌrbgÔðÔ·Öbitmap_searchðp
|
---|
| 2115 | ӵĢéD±±ÅCrbgÔÍźÊrbgð0ƵCbitmapÉ0ðwèµ
|
---|
| 2116 | ÄÍÈçÈ¢àÌƵĢéD
|
---|
| 2117 |
|
---|
| 2118 | rbgT[`½ßðÂvZbTÅÍCbitmap_searchðCrbgT[`½ß
|
---|
| 2119 | ðg¤æ¤É«¼µ½ûªø¦ªÇ¢êª éD±Ìæ¤ÈêÉÍC^[
|
---|
| 2120 | Qbg˶ÅrbgT[`½ßðgÁ½bitmap_searchðè`µC
|
---|
| 2121 | OMIT_BITMAP_SEARCHð}Nè`·éD
|
---|
| 2122 |
|
---|
| 2123 | WCuÉrbgT[`½ßðp¢½ffsª éêCbitmap_searchð
|
---|
| 2124 | (ffs(bitmap) - 1)Éè`·éÆæ¢D
|
---|
| 2125 |
|
---|
| 2126 | (6-9-1-3) uint16_t PRIMAP_BIT(PRI pri)iIvVj
|
---|
| 2127 |
|
---|
| 2128 | rbgT[`½ßÌT[`ûüªtÈÇÌRÅCDæxÆrbgÆÌÎð
|
---|
| 2129 | ÏXµ½¢êÉÍCPRIMAP_BITð}Nè`·éD
|
---|
| 2130 |
|
---|
| 2131 | 6.10 J[lÀÉÖ·é»Ì¼Ìè`
|
---|
| 2132 |
|
---|
| 2133 | 6.10.1 ñ^XNReLXgpÌX^bNÌæ
|
---|
| 2134 |
|
---|
| 2135 | (6-10-1-1) DEFAULT_ISTKSZ
|
---|
| 2136 |
|
---|
| 2137 | DEF_ICSÉæèñ^XNReLXgpÌX^bNÌæªwè³êÈ¢êÌC
|
---|
| 2138 | ftHgÌX^bNÌæÌTCYD
|
---|
| 2139 |
|
---|
| 2140 | ¦
|
---|
| 2141 | (6-10-1-2) DEFAULT_ISTKiIvVj
|
---|
| 2142 |
|
---|
| 2143 | DEF_ICSÉæèñ^XNReLXgpÌX^bNÌæªwè³êÈ¢êÌC
|
---|
| 2144 | ftHgÌX^bNÌæÌæªÔnD±Ì}Nªè`³êÈ¢êÉÍC
|
---|
| 2145 | TCYªDEFAULT_ISTKSZÌX^bNÌæªCzñÉæèmÛ³êéD
|
---|
| 2146 |
|
---|
| 2147 | (6-10-1-3) STK_T *TOPPERS_ISTKPT(STK_T *istk, SIZE istksz)iIvVj
|
---|
| 2148 |
|
---|
| 2149 | ñ^XNReLXgpÌX^bN|C^ÌúlðÛ·éÏiistkptj
|
---|
| 2150 | ðp¢éêÉC±ÌV{ÉCX^bNÌæÌæªÔniistkjÆX^b
|
---|
| 2151 | NÌæÌTCYiistkszj©çCX^bN|C^Ìúlðßé}Nð
|
---|
| 2152 | è`·éD
|
---|
| 2153 |
|
---|
| 2154 | 6.10.2 óxÌè`
|
---|
| 2155 |
|
---|
| 2156 | (6-10-2-1) TOPPERS_EMPTY_LABEL(type, symbol)iIvVj
|
---|
| 2157 |
|
---|
| 2158 | NG[ðh®½ßÉCf[^^typeÌzñÅ éÏsymbolÉè`ð^
|
---|
| 2159 | ¦é½ßÌ}ND^¦½è`ªQƳêé±ÆÍÈ¢½ßCÇÌæ¤Èè`
|
---|
| 2160 | ð^¦Äàæ¢D
|
---|
| 2161 |
|
---|
| 2162 | ftHgÅÍCsymbolðCvf^ªtypeÅTCYª0ÌzñÉè`µÄ¢éD
|
---|
| 2163 | TCYª0ÌzñªG[ÆÈçÈ¢RpCiGCCͱêÉYjðp¢é
|
---|
| 2164 | êÉÍC^[Qbg˶Åè`·éKvÍÈ¢D
|
---|
| 2165 |
|
---|
| 2166 | 6.11 g[XO@\ÉÖ·éÝè
|
---|
| 2167 |
|
---|
| 2168 | SSPJ[lÌ\[XR[hÉÍCJ[lÌÀsg[XOðæ¾·é½ß
|
---|
| 2169 | Ì}NªßñÅ éDftHgÅÍC±êçÌ}NÍóÉè`³
|
---|
| 2170 | êÄg[XOÌæ¾ÍsíÈ¢ªC±êçÌ}NðKØÉè`·é±Æ
|
---|
| 2171 | Åg[XOÌæ¾ðs¤±ÆªÅ«éD
|
---|
| 2172 |
|
---|
| 2173 | 6.11.1 æ¾Å«ég[XOÌíÞÆ}N
|
---|
| 2174 |
|
---|
| 2175 | æ¾Å«ég[XOÌíÞÆC»êðæ¾·é½ßÉè`·é}NÍ
|
---|
| 2176 | ÌÊèÅ éD
|
---|
| 2177 |
|
---|
| 2178 | (a) J[lÌ®ìJnÆI¹
|
---|
| 2179 |
|
---|
| 2180 | Ì}Nðè`·é±ÆÅCJ[lÌ®ìJnÆI¹Ìg[XO
|
---|
| 2181 | ðæ¾·é±ÆªÅ«éD
|
---|
| 2182 |
|
---|
| 2183 | LOG_KER_ENTER J[lª®ìðJn·é¼Oiú»Ì®¹ãj
|
---|
| 2184 | LOG_KER_LEAVE J[lÌI¹iext_kerjªÄÎê½¼ãiI¹
|
---|
| 2185 | ÌÀsOj
|
---|
| 2186 |
|
---|
| 2187 | (b) PÊÌÀsJnÆI¹
|
---|
| 2188 |
|
---|
| 2189 | Ì}Nðè`·é±ÆÅCÝnhiINHjCÝT[rX[`
|
---|
| 2190 | iISRjCüúnhiCYCjCA[nhiALMjCCPUáOnh
|
---|
| 2191 | iEXCjC^XNáO[`iTEXjÌÀsJnOÆI¹ãÌg[X
|
---|
| 2192 | Oðæ¾·é±ÆªÅ«éD
|
---|
| 2193 |
|
---|
| 2194 | LOG_<Pʪ>_ENTER PÊÌÀsJn¼O
|
---|
| 2195 | LOG_<Pʪ>_LEAVE PÊÌI¹¼ã
|
---|
| 2196 |
|
---|
| 2197 | ÝnhÍCAvP[Vªo^µ½àÌÌÝðÎÛƵCÝ
|
---|
| 2198 | T[rX[`ðÄÑo·½ßÉJ[làɶ¬³êéàÌÍÎÛƵÈ
|
---|
| 2199 | ¢D^XNÌÀsJnÆI¹ÍC¼Ìû@Åæ¾Å«é½ßC±Ìû@ÍpÓ
|
---|
| 2200 | µÄ¢È¢D
|
---|
| 2201 |
|
---|
| 2202 | ȨCÝnhÆCPUáOnhÌÀsJnÆI¹Ìg[XOæ¾
|
---|
| 2203 | ÍC^[Qbg˶ÅÀ·éKvª éDÚµÍCu6.2 g[XO
|
---|
| 2204 | @\ÖÌÎvu6.6.1 ÝnhÌoüûvu6.7.2 CPUáOnh
|
---|
| 2205 | ÌoüûvÌßðQÆ·é±ÆD
|
---|
| 2206 |
|
---|
| 2207 | (c) ^XNóÔÌÏ»
|
---|
| 2208 |
|
---|
| 2209 | Ì}Nðè`·é±ÆÅC^XNóԪϻµ½Ìg[XOðæ¾
|
---|
| 2210 | ·é±ÆªÅ«éD½¾µCÀsóÔÆÀsÂ\óÔÌÔÌJÚÍC¼Ìû@
|
---|
| 2211 | Åæ¾Å«é½ßC±Ì}NÅÍæ¾Å«È¢D
|
---|
| 2212 |
|
---|
| 2213 | LOG_TSKSTAT ^XNóÔÌÏ»
|
---|
| 2214 |
|
---|
| 2215 | (d) fBXpb`ÌÀsJnÆI¹
|
---|
| 2216 |
|
---|
| 2217 | Ì}Nðè`·é±ÆÅCfBXpb`ªÀsJn·éÆCI¹·é
|
---|
| 2218 | Ìg[XOðæ¾·é±ÆªÅ«éD
|
---|
| 2219 |
|
---|
| 2220 | LOG_DSP_ENTER fBXpb`ÌÀsJn
|
---|
| 2221 | LOG_DSP_LEAVE fBXpb`ÌI¹
|
---|
| 2222 |
|
---|
| 2223 | fBXpb`ÌÀsJnÍC^XNªÀsóÔ©çÀsÂ\óÔÉJÚ·é
|
---|
| 2224 | ^C~OÅ é½ßCÀsÂ\óÔÖJÚ·é^XNÌTCBÖÌ|C^ðp
|
---|
| 2225 | [^Æ·éDtÉCfBXpb`ÌI¹ÍC^XNªÀsÂ\óÔ©ç
|
---|
| 2226 | ÀsóÔÉJÚ·é^C~OÅ é½ßCÀsóÔÖJÚ·é^XNÌTCBÖ
|
---|
| 2227 | Ì|C^ðp[^Æ·éD
|
---|
| 2228 |
|
---|
| 2229 | SSPJ[lÅÍCÀsÅ«é^XNªÈCJ[lªAChóÔÉÈéê
|
---|
| 2230 | ÉÍCfBXpb`ÌɯÜéD»Ì½ßCAChóÔÖÌJÚÆA
|
---|
| 2231 | ChóÔ©ç¼ÌóÔÖÌJÚÍC±Ì}NÅÍæ¾Å«È¢D
|
---|
| 2232 |
|
---|
| 2233 | ȨCfBXpb`ÌÀsJnÆI¹Ìg[XOæ¾ÍC^[QbgË
|
---|
| 2234 | ¶ÅÀ·éKvª éDÚµÍCÆu6.5.2 fBXpb`{ÌvÌßð
|
---|
| 2235 | QÆ·é±ÆD
|
---|
| 2236 |
|
---|
| 2237 | (e) T[rXR[ÌüûÆoû
|
---|
| 2238 |
|
---|
| 2239 | Ì}Nðè`·é±ÆÅCeT[rXR[ÌüûÆoûÌg[XO
|
---|
| 2240 | ðæ¾·é±ÆªÅ«éD
|
---|
| 2241 |
|
---|
| 2242 | LOG_<T[rXR[Ìå¶\L>_ENTER T[rXR[¼Ìüû
|
---|
| 2243 | LOG_<T[rXR[Ìå¶\L>_LEAVE T[rXR[¼Ìoû
|
---|
| 2244 |
|
---|
| 2245 | »ê¼êÌ}N̼Ìâp[^ÌÚ×É¢ÄÍCJ[lÌ\[XR[
|
---|
| 2246 | hðQÆ·é±ÆD
|
---|
| 2247 |
|
---|
| 2248 | 6.12 J[lÀÌ^[Qbg˶̽ßÌl[Lq
|
---|
| 2249 |
|
---|
| 2250 | J[làɶÄgíêéÖâÏÈÇ̼ÌÅCIuWFNgt@C
|
---|
| 2251 | ÌV{\Éo^³êÄO©çQÆÅ«é¼ÌÍCC¾êxÅCæª
|
---|
| 2252 | ª"_kernel_"ܽÍ"_KERNEL_"Å é¼ÌƵȯêÎÈçÈ¢ªCSSPJ[l
|
---|
| 2253 | ÅÍC\[XR[hðRpNgÉۿ±êðÀ»·é½ßÉCl[
|
---|
| 2254 | Lqt@Cð±üµÄ¢éD
|
---|
| 2255 |
|
---|
| 2256 | ïÌIÉÍCl[·×«¼ÌðXgAbvµ½xxx_rename.defðpÓµC
|
---|
| 2257 | ±Ìt@C©çc[iutils/genrenamejÉæèC¼Ìðl[·é½ß
|
---|
| 2258 | Ì}Nè`ðÜÞxxx_rename.hÆC»êçÌ}Nè`ðð·é½ßÌ
|
---|
| 2259 | xxx_unrename.h𶬷éDc[ÌN®û@ÍÌÊèÅ éD
|
---|
| 2260 |
|
---|
| 2261 | % genrename xxx
|
---|
| 2262 |
|
---|
| 2263 | xxx_rename.defÉÍCl[·×«¼Ìð1sÉ1ÂLq·éDxxxxÆ¢¤¼
|
---|
| 2264 | ̪Lq³êÄ¢éêCxxx_rename.hÉÍÌæ¤ÈLqª¶¬³êéD
|
---|
| 2265 |
|
---|
| 2266 | #define xxxx _kernel_xxxx
|
---|
| 2267 | #ifdef TOPPERS_LABEL_ASM
|
---|
| 2268 | #define _xxxx __kernel_xxxx
|
---|
| 2269 | #endif /* TOPPERS_LABEL_ASM */
|
---|
| 2270 |
|
---|
| 2271 | ܽCxxx_unrename.hÉÍÌæ¤ÈLqª¶¬³êéD
|
---|
| 2272 |
|
---|
| 2273 | #undef xxxx
|
---|
| 2274 | #ifdef TOPPERS_LABEL_ASM
|
---|
| 2275 | #undef _xxxx
|
---|
| 2276 | #endif /* TOPPERS_LABEL_ASM */
|
---|
| 2277 |
|
---|
| 2278 | xxx_rename.defÌÉÍC¼Ìl[LqðæèÞ½ßÉCuINCLUDE
|
---|
| 2279 | "yyy"vܽÍuINCLUDE <yyy>vÆ¢¤LqðÜßé±ÆªÅ«éD±ÌLq
|
---|
| 2280 | ª³êÄ¢éêCxxx_rename.hÉÍu#include "yyy_rename.h"vܽÍ
|
---|
| 2281 | u#include <yyy_rename.h>vÆ¢¤LqªCxxx_unrename.hÉÍu#include
|
---|
| 2282 | "yyy_unrename.h"vܽÍu#include <yyy_unrename.h>vÆ¢¤Lqª¶¬³
|
---|
| 2283 | êéD
|
---|
| 2284 |
|
---|
| 2285 | xxx_rename.defÌÌ"#"ÅnÜésÍRgƵÄÇÝòγêéDܽC
|
---|
| 2286 | ósà³³êéD
|
---|
| 2287 |
|
---|
| 2288 | J[lÌ^[Qbgñ˶Ågíêé¼Ìðl[·é½ßÉCkernel
|
---|
| 2289 | fBNgÉCkernel_rename.defÆC»±©ç¶¬µ½kernel_rename.h¨
|
---|
| 2290 | æÑkernel_unrename.hªpÓ³êÄ¢éDkernel_rename.defÉÍC
|
---|
| 2291 | uINCLUDE "target"vÆ¢¤LqªÜÜêĨèC^[Qbg˶Ìl[
|
---|
| 2292 | LqðæèÞæ¤ÉÈÁÄ¢éD^[Qbg˶Åè`µC^[Qbg
|
---|
| 2293 | ñ˶ÅQƳêé¼ÌÍC^[Qbg˶Ìl[LqÉÜßéD
|
---|
| 2294 |
|
---|
| 2295 | ^[Qbg˶ÅÍC^[Qbg˶Ågíêé¼Ìðl[·é½ß
|
---|
| 2296 | ÉCtarget_rename.defÆC»±©ç¶¬µ½target_rename.h¨æÑ
|
---|
| 2297 | target_unrename.hðpÓ·éD^[Qbg˶©çvZbTE`bvEJ
|
---|
| 2298 | «˶ðØ誯éêÉÍCtarget_rename.defÉINCLUDELqðüêC
|
---|
| 2299 | vZbTE`bvEJ«˶Ìl[LqðæèÞæ¤É·éD
|
---|
| 2300 |
|
---|
| 2301 | 6.13 ^C}hCo
|
---|
| 2302 |
|
---|
| 2303 | ^C}hCoÍCJ[lÉ^CeBbNðÊm·é½ßÌ^C}hC
|
---|
| 2304 | oÅ éD
|
---|
| 2305 |
|
---|
| 2306 | 6.13.1 ^C}hCoÌt@C\¬
|
---|
| 2307 |
|
---|
| 2308 | ^C}hCoðgÝÞ½ßÌÃIAPIðLqµ½VXeRtBM
|
---|
| 2309 | [
|
---|
| 2310 | Vt@CðCtarget_timer.cfgÉpÓ·éD±Ìt@CÉÍC^C}
|
---|
| 2311 | hCoðú»·é½ßÌú»[`ÌÇÁC^C}hCoðI¹³
|
---|
| 2312 | ¹é½ßÌI¹[`ÌÇÁC^C}Ý̽ßÌÝnhÌ
|
---|
| 2313 | è`iܽÍCÝT[rX[`ÌÇÁjC^C}Ý̽ßÌ
|
---|
| 2314 | ÝvCÌ®«ÌÝèÌÃIAPIÈÇðÜÞ±ÆÉÈéD
|
---|
| 2315 |
|
---|
| 2316 | ^C}hCoðÄÑo·½ßÉKvÈè`ðÜÞwb_t@CðC
|
---|
| 2317 | target_timer.hÉpÓ·éDܽC^C}hCoÌÀt@Cð
|
---|
| 2318 | target_timer.cÉpÓ·éD
|
---|
| 2319 |
|
---|
| 2320 | ^CeBbNÌÊmÉæès¤Ì½ÍC^XNÌN®âÒ¿ððs
|
---|
| 2321 | ¤àÌÅ é½ßC^C}ÝÌÝDæxÍCÝÌÅÅáÌDæ
|
---|
| 2322 | xÅ\ªÅ éD½¾µCüúnhâA[nhÌÀsJnxêª
|
---|
| 2323 | âèÉÈéêÉÍC^C}ÝÌÝDæxðæè¢lÉÝèµ½¢D
|
---|
| 2324 | »±ÅC^C}ÝÌÝDæxðÏX·éû@ðC^[Qbg˶Ì
|
---|
| 2325 | [U[Y}j
|
---|
| 2326 | AÉLڷ׫ŠéD
|
---|
| 2327 |
|
---|
| 2328 | 6.13.2 ^C}Ìú»EI¹EÝ
|
---|
| 2329 |
|
---|
| 2330 | (6-13-2-1) void target_timer_initialize(intptr_t exinf)
|
---|
| 2331 |
|
---|
| 2332 | ^C}ðú»µC^C}ÝðüúIɶ³¹éÖD^C}ÝÌ
|
---|
| 2333 | üúÍCTIC_NUMEÆTIC_DENOÅwè³ê½ÔÆêv³¹éiu5.3 ^C
|
---|
| 2334 | eBbNÌè`vÌßðQÆjD
|
---|
| 2335 |
|
---|
| 2336 | ±ÌÖÍCtarget_timer.cfgÉLq·éÃIAPIÉæèCú»[`Æ
|
---|
| 2337 | µÄJ[lÉo^·é±ÆðzèµÄ¢éD
|
---|
| 2338 |
|
---|
| 2339 | (6-13-2-2) void target_timer_terminate(intptr_t exinf)
|
---|
| 2340 |
|
---|
| 2341 | ^C}Ì®ìðâ~³¹C^C}Ýð¶µÈ¢æ¤É·éÖD
|
---|
| 2342 |
|
---|
| 2343 | ±ÌÖÍCtarget_timer.cfgÉLq·éÃIAPIÉæèCI¹[`
|
---|
| 2344 | ƵÄJ[lÉo^·é±ÆðzèµÄ¢éD
|
---|
| 2345 |
|
---|
| 2346 | (6-13-2-3) void target_timer_handler(void)
|
---|
| 2347 | Ü½Í void target_timer_isr(intptr_t exinf)
|
---|
| 2348 |
|
---|
| 2349 | ^C}ÝÉæèN®³êéÝvODÝnhƵÄ
|
---|
| 2350 | À»·éêÉÍtarget_timer_handlerCÝT[rX[`ƵÄÀ»
|
---|
| 2351 | ·éêÉÍtarget_timer_isr̼ÌÆ·éD^[Qbgñ˶Ì
|
---|
| 2352 | signal_timeðÄÑo·D
|
---|
| 2353 |
|
---|
| 2354 | target_timer_handlerÍCWIÉÍÌæ¤Éè`·éD
|
---|
| 2355 |
|
---|
| 2356 | ----------------------------------------
|
---|
| 2357 | void
|
---|
| 2358 | target_timer_handler(void)
|
---|
| 2359 | {
|
---|
| 2360 | i_begin_int(<^C}ÝÌÝÔ>);
|
---|
| 2361 | signal_time();
|
---|
| 2362 | i_end_int(<^C}ÝÌÝÔ>);
|
---|
| 2363 | }
|
---|
| 2364 | ----------------------------------------
|
---|
| 2365 |
|
---|
| 2366 | ±ÌÖÍCtarget_timer.cfgÉLq·éÃIAPIÉæèCÝnhÜ
|
---|
| 2367 | ½ÍÝT[rX[`ƵÄJ[lÉo^·é±ÆðzèµÄ¢éD
|
---|
| 2368 |
|
---|
| 2369 | 6.13.3 «\]¿pVXeÌQÆ̽ßÌ@\
|
---|
| 2370 |
|
---|
| 2371 | «\]¿pVXeÌQÆ@\iget_utmjðT|[g·éêÉÍC^C
|
---|
| 2372 | }hCoÅCȺÌf[^^âÖÈÇðpÓ·éD
|
---|
| 2373 |
|
---|
| 2374 | (6-13-3-1) CLOCK
|
---|
| 2375 |
|
---|
| 2376 | ^C}lÌà\»Ì½ßÌf[^^D
|
---|
| 2377 |
|
---|
| 2378 | (6-13-3-2) CLOCK target_timer_get_current(void)
|
---|
| 2379 |
|
---|
| 2380 | ^C}Ì»ÝlðÇÝoµCà\»ÅÔ·ÖD^C}lÍCÔÌoßÆ
|
---|
| 2381 | ÆàÉÁ·é±ÆðzèµÄ¢éDn[hEFAÌ^C}ªC^C}lª¸
|
---|
| 2382 | ·éàÌÅ éêÉÍC±ÌÖàÅÁ·élÆÈéæ¤ÉÏ··éD
|
---|
| 2383 |
|
---|
| 2384 | (6-13-3-3) bool_t target_timer_probe_int(void)
|
---|
| 2385 |
|
---|
| 2386 | ^C}Ývð`FbN·éÖD^C}ݪv³êÄ¢éêÉ
|
---|
| 2387 | trueCv³êĢȢêÉfalseðÔ·D
|
---|
| 2388 |
|
---|
| 2389 | (6-13-3-4) TO_USEC(clock)
|
---|
| 2390 |
|
---|
| 2391 | ^C}lÌà\»ðC1ÊbPÊÉÏ··é½ßÌ}NiܽÍÖjD
|
---|
| 2392 | targettimer_get_currentÅÇÝoµ½lðC^C}ݶ©çÌoßÔ
|
---|
| 2393 | iPÊ: 1ÊbjÉÏ··é½ßÉp¢éD
|
---|
| 2394 |
|
---|
| 2395 | 7. RtBM
|
---|
| 2396 | [^Ýèt@CÌ^[Qbg˶
|
---|
| 2397 |
|
---|
| 2398 | 7.1 Ýèt@CÆ^[Qbg˶ÌÊut¯
|
---|
| 2399 |
|
---|
| 2400 | SSPJ[lÌRtBM
|
---|
| 2401 | [^ÍCÝèt@CÌLqÉ]ÁÄt@CÌ
|
---|
| 2402 | ¶¬¨æÑG[`FbNðs¤DRtBM
|
---|
| 2403 | [^ÌÝèt@CÉÍC
|
---|
| 2404 | ȺÌ4ª éD
|
---|
| 2405 |
|
---|
| 2406 | (a) ÃIAPIe[u
|
---|
| 2407 |
|
---|
| 2408 | ÃIAPIÌêÆCeÃIAPIÌp[^É¢ÄLqµ½t@CDÃI
|
---|
| 2409 | APIðg£·éêÈOÍÏX·éKvªÈ¢½ßC^[Qbgñ˶ÅpÓ
|
---|
| 2410 | µÄ¢éikernel/kernel_api.csvjD
|
---|
| 2411 |
|
---|
| 2412 | (b) læ¾V{e[u
|
---|
| 2413 |
|
---|
| 2414 | RtBM
|
---|
| 2415 | [^ÌpX1ɨ¢ÄCp[^vZpC¾êt@CÉoÍ
|
---|
| 2416 | µClðß½¢V{iêÊÉÍ®jðLq·é½ßÌt@CD^[Qb
|
---|
| 2417 | gñ˶ÅÍC^[QbgÉ˶¹¸ÉKvÆÈéV{ðLqµ½t@
|
---|
| 2418 | CðpӵĢéikernel/kernel_def.csvjD
|
---|
| 2419 |
|
---|
| 2420 | ^[QbgÉ˶µÄKvÆÈéV{ª éêÉÍCtargetfBNg
|
---|
| 2421 | Éu©ê½target_def.csvÉLq·éDtarget_def.csvÉLqµÄlð
|
---|
| 2422 | ßé±ÆªÅ«éV{ÍCkernel/kernel_int.h¨æÑ»±©çCN[
|
---|
| 2423 | h³êét@CÅè`³êĢȯêÎÈçÈ¢Dkernel_int.h©çÍC
|
---|
| 2424 | target_stddef.hCtarget_kernel.hCtarget_config.hðiÔÚIÉjCN[
|
---|
| 2425 | hµÄ¢é½ßC±êçÌt@C¨æÑ»±©çCN[h³êét@C
|
---|
| 2426 | Åè`³êé^[Qbg˶ÌV{ÍCtarget_def.csvÉLq·é±
|
---|
| 2427 | ƪūéD
|
---|
| 2428 |
|
---|
| 2429 | ±±Ålðß½V{ÌlÍCRtBM
|
---|
| 2430 | [^ÌpX2¨æÑpX3Ì
|
---|
| 2431 | ev[gt@CÅQÆ·é±ÆªÅ«éD
|
---|
| 2432 |
|
---|
| 2433 | (c) pX2Ìev[gt@C
|
---|
| 2434 |
|
---|
| 2435 | RtBM
|
---|
| 2436 | [^ÌpX2ÍCev[gt@CÉ]ÁÄCJ[lÌ\
|
---|
| 2437 | ¬Eú»t@Cikernel_cfg.cjC\¬Eú»wb_t@C
|
---|
| 2438 | ikernel_cfg.hjÈÇ𶬷éD±Ìev[gt@CÍC^[Qbg
|
---|
| 2439 | ñ˶Æ^[Qbg˶ÉØèª¯Ä éªC¼Ìt@CÌ^[Qbg
|
---|
| 2440 | ˶ÆÍtÉC^[Qbg˶©ç^[Qbgñ˶ðCN[h·
|
---|
| 2441 | é`ÉÈÁÄ¢éD
|
---|
| 2442 |
|
---|
| 2443 | ïÌIÉÍCtargetfBNgÉu©ê½target.tfÅCKvÈÏðè`µ
|
---|
| 2444 | ½ãCev[gt@CÌ^[Qbgñ˶ikernel/kernel.tfjðC
|
---|
| 2445 | N[h·éDkernel.tfÅÍCJ[lÌ^[Qbgñ˶Ågp·éÏ
|
---|
| 2446 | è`𶬷éDkernel.tfðCN[hµ½ãCtarget.tfÅÍCJ[
|
---|
| 2447 | lÌ^[Qbg˶Ågp·éÏè`𶬷éDtarget.tf©çCv
|
---|
| 2448 | ZbT˶C`bv˶ðCJ«˶ðØ誯Äàæ¢D
|
---|
| 2449 |
|
---|
| 2450 | (d) pX3Ìev[gt@C
|
---|
| 2451 |
|
---|
| 2452 | RtBM
|
---|
| 2453 | [^ÌpX3ÍCev[gt@CÉ]ÁÄCÃIAPIÌê
|
---|
| 2454 | Êè®p[^Ì`FbNðs¤D±Ìev[gt@CàC^[Qb
|
---|
| 2455 | gñ˶Æ^[Qbg˶ÉØèª¯Ä èC^[Qbg˶©ç^[
|
---|
| 2456 | Qbgñ˶ðCN[h·é`ÉÈÁÄ¢éD
|
---|
| 2457 |
|
---|
| 2458 | ïÌIÉÍCtargetfBNgÉu©ê½target_check.tfÅCKvÈÏð
|
---|
| 2459 | è`µ½ãCev[gt@CÌ^[Qbgñ˶
|
---|
| 2460 | ikernel/kernel_check.tfjðCN[h·éDkernel_check.tfÅÍCJ[
|
---|
| 2461 | lÌ^[Qbgñ˶Åú»ubNÉo͵½êÊè®p[^
|
---|
| 2462 | Ì`FbNðs¤Dkernel_check.tfðCN[hµ½ãCtarget_check.tf
|
---|
| 2463 | ÅÍC^[QbgÉ˶·é`FbNðs¤Dtarget_check.tf©çCvZb
|
---|
| 2464 | T˶C`bv˶ðCJ«˶ðØ誯Äàæ¢D
|
---|
| 2465 |
|
---|
| 2466 | ȨCRtBM
|
---|
| 2467 | [^ÌÚ×dlÆÝèt@CÌLqû@É¢ÄÍC
|
---|
| 2468 | ÊrPDFt@CÌ`ÅzzµÄ¢éuTOPPERSV¢ãJ[lpRtBM
|
---|
| 2469 |
|
---|
| 2470 | [^dlv¨æÑuTOPPERSV¢ãJ[lpRtBM
|
---|
| 2471 | [^à }N
|
---|
| 2472 | vZbTdlvðQÆ·é±ÆD
|
---|
| 2473 |
|
---|
| 2474 | 7.2 pX2Ìev[gt@CÌ^[Qbg˶
|
---|
| 2475 |
|
---|
| 2476 | ȺÅÍCpX2Ìev[gt@CÌ^[Qbg˶ðLq·éãÅK
|
---|
| 2477 | vÈÉ¢ÄྷéD
|
---|
| 2478 |
|
---|
| 2479 | 7.2.1 ^[Qbgñ˶ðCN[h·éOÉè`·×«Ï
|
---|
| 2480 |
|
---|
| 2481 | target.tf©çkernel.tfðCN[h·éOÉCÌÏðè`µÄ¨©È
|
---|
| 2482 | ¯êÎÈçÈ¢D
|
---|
| 2483 |
|
---|
| 2484 | (7-2-1) INTNO_ATTISR_VALID ATT_ISRÅgpÅ«éÝÔ
|
---|
| 2485 | (7-2-2) INHNO_ATTISR_VALID INTNO_ATTISR_VALIDÉηénhÔ
|
---|
| 2486 | (7-2-3) INHNO_DEFINH_VALID DEF_INTÅgpÅ«éÝnhÔ
|
---|
| 2487 | (7-2-4) EXCNO_DEFEXC_VALID DEF_EXCÅgpÅ«éCPUáOnhÔ
|
---|
| 2488 | (7-2-5) INTNO_CFGINT_VALID CFG_INTÅgpÅ«éÝÔ
|
---|
| 2489 | (7-2-6) INTPRI_CFGINT_VALID CFG_INTÅgpÅ«éÝDæx
|
---|
| 2490 |
|
---|
| 2491 | APIÅgpÅ«éÝÔ^ÝnhÔ^CPUáOnhÔ^
|
---|
| 2492 | ÝDæxÌXgðCeÏÉè`·éDINHNO_ATTISR_VALIDÉÍC
|
---|
| 2493 | INTNO_ATTISR_VALIDÉXgAbvµ½ÝÔÉηéÝnh
|
---|
| 2494 | ÔÌXgðè`·éD
|
---|
| 2495 |
|
---|
| 2496 | (7-2-7) TARGET_TSKATRiIvVj ^[Qbgè`Ì^XN®«
|
---|
| 2497 | (7-2-8) TARGET_ISRATRiIvVj ^[Qbgè`ÌISR®«
|
---|
| 2498 | (7-2-9) TARGET_INHATRiIvVj ^[Qbgè`ÌÝnh®«
|
---|
| 2499 | (7-2-10) TARGET_INTATRiIvVj ^[Qbgè`ÌÝ®«
|
---|
| 2500 | (7-2-11) TARGET_EXCATRiIvVj ^[Qbgè`ÌCPUáOnh®«
|
---|
| 2501 |
|
---|
| 2502 | eIuWFNgÌ®«ðC^[Qbgè`Ég£·éêÉCY·éIuWF
|
---|
| 2503 | Ng®«ð¦·ÏÉCg£Égp·érbgÌ_aðè`·éD±êÉæ
|
---|
| 2504 | èCg£Égp·érbgªÝè³êÄ¢éêÉCG[ÉÈéÌðh®D
|
---|
| 2505 |
|
---|
| 2506 | (7-2-12) INTNO_FIX_KERNELiIvVj J[lÇÉÅè³êÄ¢é
|
---|
| 2507 | ÝÔ
|
---|
| 2508 | (7-2-13) INHNO_FIX_KERNELiIvVj J[lÇÉÅè³êÄ¢é
|
---|
| 2509 | ÝnhÔ
|
---|
| 2510 | (7-2-14) INHNO_FIX_NONKERNELiIvVj J[lÇOÉÅè³êÄ¢é
|
---|
| 2511 | ÝÔ
|
---|
| 2512 | (7-2-15) INHNO_FIX_NONKERNELiIvVj J[lÇOÉÅè³êÄ¢é
|
---|
| 2513 | ÝnhÔ
|
---|
| 2514 |
|
---|
| 2515 | J[lÇܽÍJ[lÇOÉÅè³êÄ¢éݪ éêÉÍC
|
---|
| 2516 | »êçÌÝÔÆÝnhÔÌXgðCeÏÉè`·éD
|
---|
| 2517 |
|
---|
| 2518 | (7-2-16) USE_INHINIB_TABLEiIvVj
|
---|
| 2519 |
|
---|
| 2520 | OMIT_INITIALIZE_INTERRUPTðè`µ½ªCÝnhÌú»ÉKvÈî
|
---|
| 2521 | ñðkernel_cfg.cɶ¬µ½¢êÉÍC±ÌÏð1ÉÝè·éDïÌIÉÍC
|
---|
| 2522 | TNUM_INHNOCtnum_inhnoCinhinib_tableÌè`ÆCÝnhÌoüû
|
---|
| 2523 | 𶬷é½ßÌLqiINTHDR_ENTRY}NÌXgjªC^[Qbgñ
|
---|
| 2524 | ˶ÉæÁĶ¬³êéD
|
---|
| 2525 |
|
---|
| 2526 | (7-2-17) USE_INTINIB_TABLEiIvVj
|
---|
| 2527 |
|
---|
| 2528 | OMIT_INITIALIZE_INTERRUPTðè`µ½ªCÝvCÌú»ÉKvÈ
|
---|
| 2529 | îñðkernel_cfg.cɶ¬µ½¢êÉÍC±ÌÏð1ÉÝè·éDïÌIÉ
|
---|
| 2530 | ÍCTNUM_INTNOCtnum_intnoCintinib_tableÌè`ªC^[Qbgñ˶É
|
---|
| 2531 | æÁĶ¬³êéD
|
---|
| 2532 |
|
---|
| 2533 | (7-2-18) TARGET_MIN_STKSZiIvVj
|
---|
| 2534 |
|
---|
| 2535 | ^[Qbgè`ÅC^XNÌX^bNTCYÌŬlðÝè·éêÉÍC±
|
---|
| 2536 | ÌÏðX^bNTCYÌŬlÉè`·éD
|
---|
| 2537 |
|
---|
| 2538 | (7-2-19) CHECK_STKSZ_ALIGNiIvVj
|
---|
| 2539 |
|
---|
| 2540 | X^bNÌæÌTCYª élÌ{ÅȯêÎÈçÈ¢êÉC±ÌÏð
|
---|
| 2541 | »ÌlÉè`·éD±ÌÏðè`·é±ÆÅCkernel.tfɨ¢ÄCX^bN
|
---|
| 2542 | ÌæÌTCYª³µÈ¢i±ÌÏÉè`µ½lÌ{ÅÈ¢jêÌG[
|
---|
| 2543 | ð`FbN·éæ¤ÉÈéD`FbNªKvÈ¢êÉÍC±ÌÏðè`µ
|
---|
| 2544 | ȢD
|
---|
| 2545 |
|
---|
| 2546 | 7.2.2 ^[Qbgñ˶Åè`³êéÏ
|
---|
| 2547 |
|
---|
| 2548 | kernel.tfÌÅÍÌϪè`³êé½ßCkernel.tfðCN[hµ½
|
---|
| 2549 | ãCtarget.tfÌűêçðQÆ·é±ÆªÅ«éD
|
---|
| 2550 |
|
---|
| 2551 | (7-2-1) INTNO[inhno] inhnoðηéintnoÉÏ··é½ßÌAzzñ
|
---|
| 2552 | (7-2-2) INHNO[intno] intnoðηéinhnoÉÏ··é½ßÌAzzñ
|
---|
| 2553 |
|
---|
| 2554 | 7.3 pX3Ìev[gt@CÌ^[Qbg˶
|
---|
| 2555 |
|
---|
| 2556 | ȺÅÍCpX3Ìev[gt@CÌ^[Qbg˶ðLq·éãÅK
|
---|
| 2557 | vÈÉ¢ÄྷéD
|
---|
| 2558 |
|
---|
| 2559 | target_check.tf©çkernel_check.tfðCN[h·éOÉCKvɶÄC
|
---|
| 2560 | ÌÏðè`µÄ¨©È¯êÎÈçÈ¢D
|
---|
| 2561 |
|
---|
| 2562 | (7-3-1) CHECK_FUNC_ALIGNiIvVj@ÖÌACPÊ
|
---|
| 2563 | (7-3-2) CHECK_FUNC_NONNULLiIvVjÖÌñNULL`FbN
|
---|
| 2564 | (7-3-3) CHECK_STACK_ALIGNiIvVj X^bNÌæÌACPÊ
|
---|
| 2565 | (7-3-4) CHECK_STACK_NONNULLiIvVjX^bNÌæÌñNULL`FbN
|
---|
| 2566 | (7-3-5) CHECK_MPF_ALIGNiIvVj Åè·v[ÌæÌACPÊ
|
---|
| 2567 | (7-3-6) CHECK_MPF_NONNULLiIvVj Åè·v[ÌæÌñNULL`FbN
|
---|
| 2568 |
|
---|
| 2569 | Ö^X^bNÌæ^Åè·v[ÌæÌæªÔnÌACgÌ
|
---|
| 2570 | `FbNðs¤êÉÍC»ê¼êCCHECK_FUNC_ALIGN^CHECK_STACK_ALIGN^
|
---|
| 2571 | CHECK_MPF_ALIGNðACPÊÉè`·éDÖ^X^bNÌæ^Åè·
|
---|
| 2572 | v[ÌæÌæªÔnªNULLÅÈ¢©Ì`FbNðs¤êÉÍC»ê¼ê
|
---|
| 2573 | CHECK_FUNC_NONNULL^CHECK_STACK_NONNULL^CHECK_MPF_NONNULLð1Éè`·éD
|
---|
| 2574 | `FbNªKvÈ¢êÉÍCY·éÏðè`µÈ¢D
|
---|
| 2575 |
|
---|
| 2576 | 7.4 cfg1_out.cÌNÉKvÈX^uÌè`t@C
|
---|
| 2577 |
|
---|
| 2578 | RtBM
|
---|
| 2579 | [^ÉÖµÄ^[Qbg˶ÉpÓ·éKvª ét@CÆ
|
---|
| 2580 | µÄCÝèt@CÈOÉCcfg1_out.cðN·é½ßÉKvÈX^uÌè
|
---|
| 2581 | `t@Cª éD
|
---|
| 2582 |
|
---|
| 2583 | RtBM
|
---|
| 2584 | [^ÌpX1ÅÍCÃIAPIÌ®è®p[^ÌlðCR
|
---|
| 2585 | pCðp¢Äßé½ßÉCcfg1_out.c𶬷éD±êðRpCC
|
---|
| 2586 | NµÄIuWFNgt@C𶬷éÛÉCX^[gAbvW
|
---|
| 2587 | [©
|
---|
| 2588 | çQƳêéV{Ìè`ð^¦éKvª éD
|
---|
| 2589 |
|
---|
| 2590 | ±Ìè`ð^¦é½ßÉCcfg1_out.c©çC^[Qbg˶Ì
|
---|
| 2591 | target_cfg1_out.hðCN[hµÄ¢éDtarget_cfg1_out.hiܽÍC»
|
---|
| 2592 | ±©çCN[h³êét@CjÉÍCX^[gAbvW
|
---|
| 2593 | [©çQ
|
---|
| 2594 | ƳêéV{ÌX^uÌè`ðÜßéDT^IÉÍCȺÌæ¤Èè`ð
|
---|
| 2595 | ÜßéKvª éD
|
---|
| 2596 |
|
---|
| 2597 | ----------------------------------------
|
---|
| 2598 | void sta_ker(void)
|
---|
| 2599 | {
|
---|
| 2600 | }
|
---|
| 2601 |
|
---|
| 2602 | void hardware_init_hook(void)
|
---|
| 2603 | {
|
---|
| 2604 | }
|
---|
| 2605 |
|
---|
| 2606 | void software_init_hook(void)
|
---|
| 2607 | {
|
---|
| 2608 | }
|
---|
| 2609 |
|
---|
| 2610 | const SIZE _kernel_istksz = 0;
|
---|
| 2611 |
|
---|
| 2612 | STK_T *const _kernel_istk = NULL;
|
---|
| 2613 | ----------------------------------------
|
---|
| 2614 |
|
---|
| 2615 |
|
---|
| 2616 | 8. VXeT[rXÌ^[Qbg˶
|
---|
| 2617 |
|
---|
| 2618 | 8.1 VXeT[rXÌ^[Qbg˶
|
---|
| 2619 |
|
---|
| 2620 | VA|[gâVXeO^XNÖAÌèÈÇCVXeT[rXÌ
|
---|
| 2621 | \¬ðè·é½ßÌè`ðtarget_syssvc.hܽͻ±©çCN[h³ê
|
---|
| 2622 | ét@CivZbTE`bvEJ«˶ÅpÓ³êéwb_t@C
|
---|
| 2623 | ÈÇjÉÜßéD
|
---|
| 2624 |
|
---|
| 2625 | ȨCTOPPERSgÝR|[lgVXeª±ü³êéÆC±Ìt@CÌ
|
---|
| 2626 | àeÍR|[lgLqt@CÉLq³êé±ÆÉÈèC±Ìt@CÍ
|
---|
| 2627 | ³ÈéiܽÍCåÉk¬³êéj©ÝÅ éD
|
---|
| 2628 |
|
---|
| 2629 | 8.2 VXeO@\Ì^[Qbg˶è`
|
---|
| 2630 |
|
---|
| 2631 | VXeO@\ðgp·éêÅCX^[gAbvW
|
---|
| 2632 | [ÅbssZNV
|
---|
| 2633 | ÌNAðȪµÄ¢éêÉÍCsyslog_logmaskÆsyslog_lowmask_notð
|
---|
| 2634 | 0Éú»·éR[hðÇÁ·éD±êÍCVXeO@\ªú»³êéO
|
---|
| 2635 | Éoͳê½OîñðCáxoÍ@\ðp¢ÄoÍ·é½ßÅ éD
|
---|
| 2636 |
|
---|
| 2637 | ^[Qbg˶Åñ·×«VXeO@\̽ßÌè`ÍÌÊèÅ
|
---|
| 2638 | éD
|
---|
| 2639 |
|
---|
| 2640 | (8-2-1) TCNT_SYSLOG_BUFFER
|
---|
| 2641 |
|
---|
| 2642 | VXeO@\ÌOobt@ÌTCYðè`·é}NDè`µÈ¢ê
|
---|
| 2643 | ÌftHglÍ32D
|
---|
| 2644 |
|
---|
| 2645 | (8-2-2) void target_fput_log(char c)
|
---|
| 2646 |
|
---|
| 2647 | VXeOÌáxoÍ̽ß̶oÍÖD^[Qbg˶Ìû@ÅC
|
---|
| 2648 | ¶cð\¦/oÍ/Û¶·éD
|
---|
| 2649 |
|
---|
| 2650 | ±ÌÖÍCGggÉÀµÈ¯êÎÈçÈ¢D±ÌÖàÅr¼§
|
---|
| 2651 | äªKvÈêÉÍCSILðp¢ÄSÝbNóÔÉ·é±ÆDܽCS
|
---|
| 2652 | ÝbNóÔÅÄÎêéêª é½ßCSÝbNóÔ©çÄÑo·
|
---|
| 2653 | ±ÆªÅ«È¢ÖðÄÎÈ¢æ¤ÉÀµÈ¯êÎÈçÈ¢D
|
---|
| 2654 |
|
---|
| 2655 | áxoÍðVA|[goRÅs¤êÅCVAC^tF[Xh
|
---|
| 2656 | CoÆ|[gð¤pµÈ¢±Æª]ܵ¢ªC|[gª«èÈ¢½ßÉâ
|
---|
| 2657 | Þ𦸤p·éêÉÍC¼Òª£µÈ¢æ¤ÉÓªKvÅ éDïÌ
|
---|
| 2658 | IÉÍC¼Òª¯¶ÝèÅVAI/OfoCXðg¤æ¤ÉµCVAC
|
---|
| 2659 | ^tF[XhCoÌ®ìÉáxoͪsíêÄà·µx¦È¢æ¤É
|
---|
| 2660 | Ýv·éDܽCáxoͪ®ìJnãÉVAC^tF[XhC
|
---|
| 2661 | oªVAI/OfoCXðú»·éÆC¶»¯ªN±éÂ\«ª é½ßC
|
---|
| 2662 | ¤p·é|[gÍCáxoÍ@\¤Åú»µCVAC^tF[X
|
---|
| 2663 | hCoÅÍú»µÈ¢æ¤É·éÆæ¢D
|
---|
| 2664 |
|
---|
| 2665 | ȨC±ÌÖÌ{ÌðCÇÌt@CÉLq·é©ªâèÉÈéDVXe
|
---|
| 2666 | T[rXÌ^[Qbg˶ÉÍCWÅÍCÖè`ðLq·é½ßÌt@
|
---|
| 2667 | CðpӵĢȢD^[Qbg˶ÅpÓµÄà梪CáOIÉCJ[
|
---|
| 2668 | lÀÌ^[Qbg˶W
|
---|
| 2669 | [itarget_config.cjÉLqµÄàæ¢D
|
---|
| 2670 | ±ÌêCtarget_fput_logðCl[Lqitarget_rename.defÈÇjÉÜ
|
---|
| 2671 | ßÄÍÈçÈ¢D
|
---|
| 2672 |
|
---|
| 2673 | 8.3 O^XNÌ^[Qbg˶è`
|
---|
| 2674 |
|
---|
| 2675 | ^[Qbg˶Åñ·×«O^XN̽ßÌè`ÍÌÊèÅ éD±
|
---|
| 2676 | êçÌè`ÍCtarget_syssvc.hܽͻ±©çCN[h³êét@CÉ
|
---|
| 2677 | ÜßéD
|
---|
| 2678 |
|
---|
| 2679 | (8-3-1) LOGTASK_PRIORITYiIvVj
|
---|
| 2680 |
|
---|
| 2681 | O^XNÌDæxðè`·é}NDè`µÈ¢êÌftHglÍ3D
|
---|
| 2682 |
|
---|
| 2683 | (8-3-2) LOGTASK_STACK_SIZEiIvVj
|
---|
| 2684 |
|
---|
| 2685 | O^XNÌX^bNTCYðè`·é}NDè`µÈ¢êÌftHg
|
---|
| 2686 | lÍ1024D
|
---|
| 2687 |
|
---|
| 2688 | (8-3-3) LOGTASK_PORTIDiIvVj
|
---|
| 2689 |
|
---|
| 2690 | O^XNÌoÍæÌVA|[gÔDè`µÈ¢êÌftHglÍ1D
|
---|
| 2691 |
|
---|
| 2692 | (8-3-4) LOGTASK_INTERVALiIvVj
|
---|
| 2693 |
|
---|
| 2694 | O^XNÌ®ìÔuiPÊÍ~bjDè`µÈ¢êÌftHglÍ10D
|
---|
| 2695 |
|
---|
| 2696 | (8-3-5) LOGTASK_FLUSH_WAITiIvVj
|
---|
| 2697 |
|
---|
| 2698 | OoÍðÒ¿í¹éɨ¢ÄC^XNðÒ½¹éPÊÆÈéÔiP
|
---|
| 2699 | ÊÍ~bjDè`µÈ¢êÌftHglÍ1D
|
---|
| 2700 |
|
---|
| 2701 | 8.4 VAC^tF[XhCoÌ^[Qbg˶
|
---|
| 2702 |
|
---|
| 2703 | ^[Qbg˶Åñ·×«VAC^tF[XhCo̽ßÌè`
|
---|
| 2704 | ÍÌÊèÅ éD±êçÌè`ÍCÊÉwèªÈ¢ÀèCtarget_serial.hÜ
|
---|
| 2705 | ½Í»±©çCN[h³êét@CÉÜßCKvÈRtBM
|
---|
| 2706 | [V
|
---|
| 2707 | îñðtarget_serial.cfgÉLq·éDÖÌÀ̪KvÈêÉÍC
|
---|
| 2708 | target_serial.cÌt@CðpÓ·éD
|
---|
| 2709 |
|
---|
| 2710 | VAC^tF[XhCoÌÅC^[QbgÌVAI/OfoCXÉ
|
---|
| 2711 | ˶·éªðCVAI/OfoCXhCoÆÄÔDVAI/OfoCX
|
---|
| 2712 | hCoÍC¨¨æ»CITRONfoCXhCoÝvKChCÌPDICÉ
|
---|
| 2713 | ·éDPDICÉ·ét@CÅC¼ÌVXeÉà¤ÊÉg¦éÂ\«ª
|
---|
| 2714 | éêÉÍCpdicfBNgÉuD
|
---|
| 2715 |
|
---|
| 2716 | 8.4.1 ÏCf[^^CÇÖ
|
---|
| 2717 |
|
---|
| 2718 | (8-4-1) TNUM_PORT
|
---|
| 2719 |
|
---|
| 2720 | VAC^tF[XhCoªT|[g·éVA|[gðè`·é
|
---|
| 2721 | }ND±Ì}NÌè`ÍCtarget_syssvc.hܽͻ±©çCN[h³
|
---|
| 2722 | êét@CÉÜßéD
|
---|
| 2723 |
|
---|
| 2724 | (8-4-2) void sio_initialize(intptr_t exinf)iIvVj
|
---|
| 2725 |
|
---|
| 2726 | VAI/OfoCXhCoÌú»Dtarget_serial.cfgÉC±ÌÖ
|
---|
| 2727 | ðú»[`ƵÄo^·éÃIAPIðÜßéD
|
---|
| 2728 |
|
---|
| 2729 | (8-4-3) void sio_terminate(intptr_t exinf)iIvVj
|
---|
| 2730 |
|
---|
| 2731 | VAI/OfoCXhCoÌI¹Dtarget_serial.cfgÉC±ÌÖð
|
---|
| 2732 | I¹[`ƵÄo^·éÃIAPIðÜßéD
|
---|
| 2733 |
|
---|
| 2734 | (8-4-4) void sio_isr(intptr_t exinf)
|
---|
| 2735 |
|
---|
| 2736 | VAI/OfoCXÌÝT[rX[`Dtarget_serial.cfgÉC±Ì
|
---|
| 2737 | ÖðÝT[rX[`ƵÄo^·éÃIAPIðÜßéDܽC»ÌÃ
|
---|
| 2738 | IAPIÉKvÈVAI/OfoCXÌÝÔÈÇÍCtarget_serial.hÅ}
|
---|
| 2739 | Nè`·éDÝT[rX[`ÅÍÈCÝnhÆ·é±Æ
|
---|
| 2740 | àÅ«éD
|
---|
| 2741 |
|
---|
| 2742 | (8-4-5) SIOPCB
|
---|
| 2743 |
|
---|
| 2744 | VAI/O|[gÇubNÌf[^^itarget_serial.hÉÍCf[^^
|
---|
| 2745 | Ìé¾¾¯ÜÜêÄ¢êÎæ¢jD
|
---|
| 2746 |
|
---|
| 2747 | (8-4-6) SIO_RDY_SNDÆSIO_RDY_RCV
|
---|
| 2748 |
|
---|
| 2749 | MÂ\R[obN̯ÊÔðSIO_RDY_SNDÉCóMÊmR[obN̯
|
---|
| 2750 | ÊÔðSIO_RDY_RCVÉ}Nè`·éDR[obNÌÖ~^ÂðsȤT[
|
---|
| 2751 | rXR[isio_ena_cbrÆsio_dis_cbrjÅp¢éD
|
---|
| 2752 |
|
---|
| 2753 | 8.4.2 foCXT[rX[`
|
---|
| 2754 |
|
---|
| 2755 | ȺÌfoCXT[r[`ÍCiÈÆàjVAI/O|[g©çÌ
|
---|
| 2756 | ݪ}XN³ê½óÔÅÄÑo³êéDܽC^XNReLXgCñ^
|
---|
| 2757 | XNReLXgÌ¢¸êÅÄÑo³êéêà éi¢¸êÅÄÑo³êÄ
|
---|
| 2758 | à®ì·éæ¤ÉµÈ¯êÎÈçÈ¢jD
|
---|
| 2759 |
|
---|
| 2760 | (8-4-2-1) SIOPCB *sio_opn_por(ID siopid, intptr_t exinf)
|
---|
| 2761 |
|
---|
| 2762 | siopidÅwè³êéVAI/O|[gðI[v·éÖDexinfÍVA
|
---|
| 2763 | I/O|[gÉηég£îñÅCR[obNðÄÔÉ|[gðæÊ·é½
|
---|
| 2764 | ßÉn·D
|
---|
| 2765 |
|
---|
| 2766 | (8-4-2-2) void sio_cls_por(SIOPCB *siopcb)
|
---|
| 2767 |
|
---|
| 2768 | siopcbÅwè³êéVAI/O|[gðN[Y·éÖD
|
---|
| 2769 |
|
---|
| 2770 | (8-4-2-3) bool_t sio_snd_chr(SIOPCB *siopcb, char c)
|
---|
| 2771 |
|
---|
| 2772 | siopcbÅwè³êéVAI/O|[gÉCcŦ³êé¶ðM·éÖD
|
---|
| 2773 | ¶ðMWX^Éüê½êÉÍtrueðCOÉMµ½¶ÌMªIíÁ
|
---|
| 2774 | ĢȢ½ßÉC¶ðMWX^ÉüêçêÈ©Á½êÉÍfalseðÔ·D
|
---|
| 2775 |
|
---|
| 2776 | (8-4-2-4) int_t sio_rcv_chr(SIOPCB *siopcb)
|
---|
| 2777 |
|
---|
| 2778 | siopcbÅwè³êéVAI/O|[g©ç¶ðÇÞÖD¶ðóMµÄ¢
|
---|
| 2779 | ½êCÇñ¾¶ÌR[hͳÌlƵÄÔµC¶ðóMµÄ¢È¢ê
|
---|
| 2780 | ÉÍ-1ðÔ·D
|
---|
| 2781 |
|
---|
| 2782 | (8-4-2-5) void sio_ena_cbr(SIOPCB *siopcb, uint_t cbrtn)
|
---|
| 2783 |
|
---|
| 2784 | siopcbÅwè³êéVAI/O|[g©çÌCcbrtnÅwè³êéR[ob
|
---|
| 2785 | Nð·éDcbrtnÉÍCSIO_RDY_SND©SIO_RDY_RCVðwèÅ«éD
|
---|
| 2786 |
|
---|
| 2787 | (8-4-2-6) void sio_dis_cbr(SIOPCB *siopcb, uint_t cbrtn)
|
---|
| 2788 |
|
---|
| 2789 | siopcbÅwè³êéVAI/O|[g©çÌCcbrtnÅwè³êéR[ob
|
---|
| 2790 | NðÖ~·éDcbrtnÉÍCSIO_RDY_SND©SIO_RDY_RCVðwèÅ«éD
|
---|
| 2791 |
|
---|
| 2792 | 8.4.3 R[obN[`
|
---|
| 2793 |
|
---|
| 2794 | ^[Qbg˶ÍCKvÈ^C~OÅCVAC^tF[XhCo
|
---|
| 2795 | Ì^[Qbgñ˶ÉÜÜêéȺÌR[obN[`ðÄÑoѾ³
|
---|
| 2796 | ȯêÎÈçÈ¢D½¾µC»ê¼êÌR[obNªÖ~³êÄ¢éÍC
|
---|
| 2797 | R[obN[`ðÄÑoµÄÍÈçÈ¢D
|
---|
| 2798 |
|
---|
| 2799 | R[obN[`ÍCiÈÆàjVAI/O|[g©çÌݪÖ
|
---|
| 2800 | ~³ê½óÔÅCñ^XNReLXgÅÄÑo·DexinfÉÍCVAI/O
|
---|
| 2801 | |[gÌI[vÉwè³ê½g£îñðn·D
|
---|
| 2802 |
|
---|
| 2803 | (8-4-3-1) void sio_irdy_snd(intptr_t exinf)
|
---|
| 2804 |
|
---|
| 2805 | MÂ\R[obN[`DVAI/O|[gÉεĶªMÅ«é
|
---|
| 2806 | óÔÉÈÁ½êÉÄÑo·DVAC^tF[XhCoÍC±ÌR[
|
---|
| 2807 | obN[`ÌÅCsio_snd_chrðÄÑoµÄ̶ðM·é©C
|
---|
| 2808 | M·×«¶ªÈ¢êÉÍMÂ\R[obNðÖ~·éD
|
---|
| 2809 |
|
---|
| 2810 | (8-4-3-2) void sio_irdy_rcv(intptr_t exinf)
|
---|
| 2811 |
|
---|
| 2812 | óMÊmR[obN[`DVAI/O|[g©ç¶ðóMµ½êÉ
|
---|
| 2813 | ÄÑo·DVAC^tF[XhCoÍC±ÌR[obN[`Ì
|
---|
| 2814 | ÅCK¸sio_rcv_chrðÄÑoµÄóMµ½¶ðæèo·D
|
---|
| 2815 |
|
---|
| 2816 | 8.5 J[lN®bZ[WÌoÍÌ^[Qbg˶è`
|
---|
| 2817 |
|
---|
| 2818 | ^[Qbg˶Åñ·×«J[lN®bZ[WÌoÍ̽ßÌè`Í
|
---|
| 2819 | ÌÊèÅ éD
|
---|
| 2820 |
|
---|
| 2821 | (8-5-1) TARGET_NAME
|
---|
| 2822 |
|
---|
| 2823 | ^[Qbg̼ÌÉè`·éD
|
---|
| 2824 |
|
---|
| 2825 | (8-5-2) TARGET_COPYRIGHTiIvVj
|
---|
| 2826 |
|
---|
| 2827 | J[lN®bZ[WÉC^[Qbg˶Ìì \¦ðÇÁ·é½ßÌ
|
---|
| 2828 | }NDftHgÅÍC^[Qbg˶Ìì \¦ðÇÁµÈ¢D
|
---|
| 2829 |
|
---|
| 2830 | 8.6 TvvOÆeXgvOÌ^[Qbg˶è`
|
---|
| 2831 |
|
---|
| 2832 | ^[Qbg˶Åñ·×«TvvO¨æÑeXgvOÌ
|
---|
| 2833 | ½ßÌè`ÍÌÊèÅ éD±êçÌè`ÍCtarget_test.hiܽͻêç
|
---|
| 2834 | ©çCN[h³êét@CjÉÜßéD
|
---|
| 2835 |
|
---|
| 2836 | (8-6-1) STACK_SIZEiIvVj
|
---|
| 2837 |
|
---|
| 2838 | TvvO¨æÑeXgvOÌ^XNÌX^bNTCYðè`
|
---|
| 2839 | ·é}NDè`µÈ¢êÌftHglÍ4096DftHgÝèÅÍ
|
---|
| 2840 | ªs«·éêâCV~
|
---|
| 2841 | [V«ÈÇÅå«¢X^bNÌæªKv
|
---|
| 2842 | ÈêÉÍC^[Qbg˶űÌ}NðÝè·éX^bNTCYÉè`
|
---|
| 2843 | ·éD
|
---|
| 2844 |
|
---|
| 2845 | (8-6-2) CPUEXC1iIvVj
|
---|
| 2846 |
|
---|
| 2847 | TvvO¨æÑeXgvOÅp¢éCPUáOÌCPUáOnh
|
---|
| 2848 | Ôðè`·é}ND±Ì}Nðè`µÈ¢êCCPUáOnhðg
|
---|
| 2849 | ¤ªªTvvO©çO³êéDCPUáOnhÌeXgð·é
|
---|
| 2850 | eXgvOÍRpCÅ«È¢D
|
---|
| 2851 |
|
---|
| 2852 | (8-6-3) RAISE_CPU_EXCEPTIONiIvVj
|
---|
| 2853 |
|
---|
| 2854 | CPUEXC1Éè`µ½CPUáO𶳹éC¾êÌvOðè`·é}ND
|
---|
| 2855 | CPUEXC1ðè`µ½êÉÍK¸è`µÈ¯êÎÈçÈ¢D
|
---|
| 2856 |
|
---|
| 2857 | (8-6-4) CANNOT_RETURN_CPUEXCiIvVj
|
---|
| 2858 |
|
---|
| 2859 | ^[QbgVXȩñÉæèCCPUáOnh©ç^[µ½ãÉC^
|
---|
| 2860 | XNÌÀsðp±Å«È¢êÉè`·é}ND±Ì}Nðè`·éÆC
|
---|
| 2861 | CPUáOnhÌeXgð·éeXgvO©çCCPUáOnh©ç
|
---|
| 2862 | ^[µ½ã̪O³êéDTvvOÌYªÍ³µ
|
---|
| 2863 | ®ìµÈ¢D
|
---|
| 2864 |
|
---|
| 2865 | (8-6-5) TASK_PORTIDiIvVj
|
---|
| 2866 |
|
---|
| 2867 | TvvOɨ¢ÄCR}h¶ðÇÝÞVA|[gÔð
|
---|
| 2868 | è`·é}NDè`µÈ¢êÌftHglÍ1D
|
---|
| 2869 |
|
---|
| 2870 | (8-6-6) LOOP_REFiIvVj
|
---|
| 2871 |
|
---|
| 2872 | TvvOɨ¢ÄCvZbT̬xðvª·é½ßÌ[vñ
|
---|
| 2873 | ðè`·é}NDè`µÈ¢êÌftHglÍ1000000DftHgÝè
|
---|
| 2874 | ÅÍClªå«ß¬ÄvªÉÔª©©è·¬éêâClª¬³ß¬Ävª
|
---|
| 2875 | ʪÀèµÈ¢êÉC^[Qbg˶űÌ}NðÝè·é[vñ
|
---|
| 2876 | Éè`·éD
|
---|
| 2877 |
|
---|
| 2878 | (8-6-7) MEASURE_TWICEiIvVj
|
---|
| 2879 |
|
---|
| 2880 | TvvOɨ¢ÄCvZbT̬xð2xvª·éêÉè`·é
|
---|
| 2881 | }NDV~
|
---|
| 2882 | [V«ÈÇvZbT̬xªÏ®·é«ÅC1xÌ
|
---|
| 2883 | vªÅÍvªÊªÀèµÈ¢êÉè`·éD
|
---|
| 2884 |
|
---|
| 2885 | (8-6-8) TASK_LOOPiIvVj
|
---|
| 2886 |
|
---|
| 2887 | TvvOɨ¢ÄCvZbT̬xðvª¹¸ÉC^XNàÅÌ
|
---|
| 2888 | [vñðÅè·éêÉC[vñðè`·é}ND[vSÌÌÀ
|
---|
| 2889 | sÔª0.4böxÉÈéæ¤È[vñðC±Ì}NÉè`·éD
|
---|
| 2890 |
|
---|
| 2891 | 9. »Ì¼
|
---|
| 2892 |
|
---|
| 2893 | 9.1 hL
|
---|
| 2894 | g
|
---|
| 2895 |
|
---|
| 2896 | ^[Qbg˶Ì[U[Y}j
|
---|
| 2897 | AðCtarget_user.txtÉpÓ·éDv
|
---|
| 2898 | ZbTE`bvEJ«˶Ì[U[Y}j
|
---|
| 2899 | AðØ誯Äàæ
|
---|
| 2900 | ¢µCt@Cªå«ÈéêÉÍ¡Ìt@CɪµÄ梪C»Ì
|
---|
| 2901 | êÉÍCtarget_user.txtÉ»êçÌt@C¼ðLq·é±ÆD
|
---|
| 2902 |
|
---|
| 2903 | ^[Qbg˶Ì[U[Y}j
|
---|
| 2904 | AÉÍCÈÆàÌæ¤Èàeð
|
---|
| 2905 | Lq·é±Æª]ܵ¢D
|
---|
| 2906 |
|
---|
| 2907 | (1) εĢé^[QbgVXeÌíÞE\¬Co[WÔ
|
---|
| 2908 | E^[Qbgn[hEFAi{[hj̼ÌÆεĢé\¬
|
---|
| 2909 | E^[QbgªÌ
|
---|
| 2910 | E^[Qbgñ˶Ìo[WÔ
|
---|
| 2911 | EvZbTC`bvCJ«˶Ì\¬Æo[WÔ
|
---|
| 2912 | Egp·éPDICÆo[WÔ
|
---|
| 2913 |
|
---|
| 2914 | (2) gp·éJ«Ʈìص½ðio[WCIvVj
|
---|
| 2915 | E¾êniRpCCAZuCJj
|
---|
| 2916 | EfobO«
|
---|
| 2917 |
|
---|
| 2918 | (3) ^[Qbgè`ÌKè
|
---|
| 2919 |
|
---|
| 2920 | (3-1) f[^^ÉÖ·éKè
|
---|
| 2921 | Eint_t^Clong_t^ÌTCY
|
---|
| 2922 | Echar^Cint_least8_t^Cvoid *^Cintptr_t^ÌTCY
|
---|
| 2923 | Eint8_t^Cuint8_t^Cint64_t^Cuint64_t^Cint128_t^C
|
---|
| 2924 | @uint128_t^Cfloat32_t^Cdouble64_t^ÌT|[gÌL³
|
---|
| 2925 |
|
---|
| 2926 | (3-2) ÝÉÖ·éKè
|
---|
| 2927 | EÝnhÔÆÝÔÌÄC¼ÒÌÎ
|
---|
| 2928 | EÝDæxÌiKiTMIN_INTPRIÌlj
|
---|
| 2929 | Edis_intÆena_intÌT|[gÌL³C»Ì§À
|
---|
| 2930 | ECFG_INŢÀÆg£i^[Qbgè`ÅgpÅ«éÝ®«j
|
---|
| 2931 | ETOPPERSWÝf©ç̻̼ÌíE
|
---|
| 2932 |
|
---|
| 2933 | (3-3) J[lÇOÌÝÉÖ·éKè
|
---|
| 2934 | ETMIN_INTPRIÍÅè©ÝèÅ«é©C»ÌÝèû@
|
---|
| 2935 | ENMIÈOÉJ[lÇOÌÝðݯé©iݯçêéæ¤É·é©j
|
---|
| 2936 | EJ[lÇOÌÝÌÝèû@
|
---|
| 2937 | EJ[lÇOÌÝÉεÄDEF_INHCCFG_INTðT|[g·é©
|
---|
| 2938 | EJ[lÇOÌÝnhªÀsJn³êéÌVXeóÔÆ
|
---|
| 2939 | @ReLXg
|
---|
| 2940 | EÝnhÌI¹Ésíêé
|
---|
| 2941 | EJ[lÇOÌÝnhÌLqû@
|
---|
| 2942 | EJ[làÌÝoüûÅN±éÂ\«Ì éCPUáO
|
---|
| 2943 |
|
---|
| 2944 | (3-4) CPUáOÉÖ·éKè
|
---|
| 2945 | ECPUáOnhÔÌÄ
|
---|
| 2946 | EÝDæx}XNðTMIN_INTPRIƯ¶©»êæèà¢lÉÝèµÄ
|
---|
| 2947 | @¢éóÔŶµ½CPUáOðCJ[lÇOÌCPUáOƵ¤©
|
---|
| 2948 | EJ[làÌCPUáOoüûÅN±éÂ\«Ì éCPUáO
|
---|
| 2949 |
|
---|
| 2950 | (3-5) «\]¿pVXeÌQÆÉÖ·éKè
|
---|
| 2951 | Eget_utmÌT|[gÌL³C»Ì§À
|
---|
| 2952 |
|
---|
| 2953 | (3-6) »Ì¼
|
---|
| 2954 | E»Ì¼Ì§À
|
---|
| 2955 | E»Ì¼Ìg£@\
|
---|
| 2956 |
|
---|
| 2957 | (4) J[lÌN®^I¹ÉÖ·éîñ
|
---|
| 2958 | EpӵĢéX^[gAbvW
|
---|
| 2959 | [Ìàe
|
---|
| 2960 | EX^[gAbvW
|
---|
| 2961 | [©çhardware_init_hookðÄÑoµÄ¢éê
|
---|
| 2962 | @ÉÍChardware_init_hookðAvP[VÅpÓ·éêÌì¬
|
---|
| 2963 | @û@â§ÀÈÇ
|
---|
| 2964 | EJ[lðI¹µ½ãÌU¢
|
---|
| 2965 |
|
---|
| 2966 | (5) }bv
|
---|
| 2967 | EftHgÌ}bvC»ÌÏXû@
|
---|
| 2968 |
|
---|
| 2969 | (6) ^C}hCoÖAÌîñ
|
---|
| 2970 | E^CeBbNÌüúC»ÌÏXû@
|
---|
| 2971 | Egp·é\[Xi^C}j
|
---|
| 2972 | E^C}ÝÌÝDæxÌÏXû@
|
---|
| 2973 | EI[o^C}ÝÌÝDæxÌÏXû@
|
---|
| 2974 |
|
---|
| 2975 | (7) VAC^tF[XhCoÌîñ
|
---|
| 2976 | Egp·é\[XiSIORg[j
|
---|
| 2977 | EÊMp[^i{[[gCrbgCpeBÌL³CXgbvrbgj
|
---|
| 2978 |
|
---|
| 2979 | (8) VXe\zè
|
---|
| 2980 |
|
---|
| 2981 | (9) ^[QbgVXeÅLÌÓ
|
---|
| 2982 | E^XNReLXgÉÜÜêéWX^CÜÜêÈ¢WX^
|
---|
| 2983 |
|
---|
| 2984 | (10) ÞÌ^[QbgÉ|[eBO·éJÒü¯ÌQlîñ
|
---|
| 2985 |
|
---|
| 2986 | (11) fBNg\¬Et@C\¬
|
---|
| 2987 |
|
---|
| 2988 | (12) o[Wð
|
---|
| 2989 |
|
---|
| 2990 | ܽCKvɶÄC^[Qbg˶ÌÝvðCtarget_design.txtÉp
|
---|
| 2991 | Ó·éDvZbTE`bvEJ«˶ÉÖ·éÝvðØ誯Ä
|
---|
| 2992 | à梵Ct@Cªå«ÈéêÉÍ¡Ìt@CɪµÄà梪C
|
---|
| 2993 | »ÌêÉÍCtarget_design.txtÉ»êçÌt@C¼ðLq·é±ÆD
|
---|
| 2994 |
|
---|
| 2995 | 9.2 pbP[WLqt@C
|
---|
| 2996 |
|
---|
| 2997 | [XpbP[WiÂÊpbP[W¨æÑÈÕpbP[Wjð쬷é½ß
|
---|
| 2998 | ÉCpbP[WÉÜßét@CðLqµ½pbP[WLqt@CðpÓ·
|
---|
| 2999 | éDpbP[WLqt@C̼ÌÍCÂÊpbP[WpðMANIFESTCÈÕpb
|
---|
| 3000 | P[WpðE_PACKAGEÆ·éD
|
---|
| 3001 |
|
---|
| 3002 | á¦ÎCarch/arm_gccfBNgÉu©ê½MANIFESTt@Cðp¢ÄÂÊ
|
---|
| 3003 | pbP[Wð쬷éêÉÍCÌR}hðÀs·éD
|
---|
| 3004 |
|
---|
| 3005 | % utils/makerelease arch/arm_gcc/MANIFEST
|
---|
| 3006 |
|
---|
| 3007 | ±ÌR}hÉæèCRELEASE/ssp_arch_arm_gcc-<o[WÔ>.tar.gzª
|
---|
| 3008 | 쬳êéDܽCtarget/at91skyeye_gccfBNgÉu©ê½E_PACKAGE
|
---|
| 3009 | t@Cðp¢ÄÈÕpbP[Wð쬷éêÉÍCÌR}hðÀs·
|
---|
| 3010 | éD
|
---|
| 3011 |
|
---|
| 3012 | % utils/makerelease target/cq_starm_gcc/E_PACKAGE
|
---|
| 3013 |
|
---|
| 3014 | ±ÌR}hÉæèCRELEASE/ssp_cq_starm_gcc_gcc-<o[WÔ>.tar.gz
|
---|
| 3015 | ªì¬³êéiRELEASEfBNgªÈ¢êÉÍCfBNgªìçê
|
---|
| 3016 | éjD
|
---|
| 3017 |
|
---|
| 3018 | ȨCmakerelease[eBeBÍCSSPJ[lÌ\[Xt@Cªu©ê
|
---|
| 3019 | ½fBNgªCsspÆ¢¤¼ÌÅ é±Æð¼èµÄ¢éiÙÈé¼ÌÌê
|
---|
| 3020 | ÅàpbP[WÍì¬Å«éªCpbP[WðWJµ½ÉWJ³êéfB
|
---|
| 3021 | NgªsspÅÈÈéjDܽCWÌtarR}hªGNU tarÅ é±Æ
|
---|
| 3022 | i³mÉÍCzIvVÉεĢé±ÆjðzèµÄ¢éD
|
---|
| 3023 |
|
---|
| 3024 | pbP[WLqt@CÉÍCpbP[WÉÜßét@C¼ðCpbP[W
|
---|
| 3025 | Lqt@Cªu©ê½fBNg©çÌÎpX¼ÅC1sÉ1¸ÂLq
|
---|
| 3026 | ·éDܽCKvɶÄCȺÌfBNeBuðÜßéD
|
---|
| 3027 |
|
---|
| 3028 | (a) E_PACKAGE <ÈÕpbP[W¼>
|
---|
| 3029 |
|
---|
| 3030 | ÈÕpbP[W¼ðwè·éDÈÕpbP[WLqt@CiE_PACKAGEjÌæ
|
---|
| 3031 | ªÉLq·éDÈÕpbP[W¼ÍCssp_<^[QbgªÌ>Æ·éDá¦ÎC
|
---|
| 3032 | ^[QbgªÌªcq_starm_gccÌêÉÍCssp_cq_starm_gccÆÈéDÂ
|
---|
| 3033 | ÊpbP[WÆæÊ·é½ßÉCÈÕpbP[WÌt@C¼ÉÍ"target"ð
|
---|
| 3034 | ÜßÈ¢D
|
---|
| 3035 |
|
---|
| 3036 | (b) PACKAGE <ÂÊpbP[W¼>
|
---|
| 3037 |
|
---|
| 3038 | ÂÊpbP[W¼ðwè·éDÂÊpbP[WLqt@CiMANIFESTjÌæ
|
---|
| 3039 | ªÉLq·éDܽC»±©çCN[h³êéet@CÌæªÉàLq
|
---|
| 3040 | µC»êðCN[hµÄ¢éÂÊpbP[W¼ðwè·éD^[QbgË
|
---|
| 3041 | ¶ÌÂÊpbP[W¼ÍCÂÊpbP[WLqt@Cªu©ê½fBN
|
---|
| 3042 | gÌÎpXÌ"/"ð"_"Éu«·¦½¶ñðC"ssp_"ÌãÉÂÈ°½à
|
---|
| 3043 | ÌÆ·éDá¦ÎCÂÊpbP[WLqt@Cªarch/arm_gcc/MANIFESTÌê
|
---|
| 3044 | ÉÍCssp_arch_arm_gccÆÈéD
|
---|
| 3045 |
|
---|
| 3046 | (c) VERSION <o[WÔ>
|
---|
| 3047 |
|
---|
| 3048 | pbP[WÌo[WÔðwè·éDÈÕpbP[WLqt@C¨æÑ
|
---|
| 3049 | ÂÊpbP[WLqt@CÌÉLq·éDÈÕpbP[Wɨ¢ÄCo[
|
---|
| 3050 | WÔðpbP[W»µ½útÆ·éêÉÍCpbP[WÔÌãíè
|
---|
| 3051 | É%dateÆLq·éD
|
---|
| 3052 |
|
---|
| 3053 | o[WÔÌt^û@É¢ÄÍCuTOPPERS/SSPJ[l [U[Y}
|
---|
| 3054 | j
|
---|
| 3055 | AvÌu2.2 ÈÕpbP[Wv¨æÑu2.3 ÂÊpbP[WvÌßðQ
|
---|
| 3056 | Æ·é±ÆD
|
---|
| 3057 |
|
---|
| 3058 | (d) INCLUDE <t@C¼>
|
---|
| 3059 |
|
---|
| 3060 | ÊÌpbP[WLqt@CðCN[h·éDÈÕpbP[WLqt@C
|
---|
| 3061 | ©çÍCÂÊpbP[WLqt@CÌÝðCN[h·éÌð´¥Æ·
|
---|
| 3062 | éDÂÊpbP[WLqt@C©çCN[h³êét@CÅwè³
|
---|
| 3063 | êéÂÊpbP[W¼ÍC·×ÄêvµÄ¢È¯êÎÈçÈ¢D
|
---|
| 3064 |
|
---|
| 3065 |
|
---|
| 3066 | 10. t@X
|
---|
| 3067 |
|
---|
| 3068 | 10.1 ^[Qbg˶Ìt@Cê
|
---|
| 3069 |
|
---|
| 3070 | WIÈ^[Qbg˶Ìt@C\¬ÍÌÊèÅ éD
|
---|
| 3071 |
|
---|
| 3072 | Makefile.target MakefileÌ^[Qbg˶iQÍjD
|
---|
| 3073 |
|
---|
| 3074 | target_stddef.h TOPPERS¤Êè`it_stddef.hjÌ^[Qbg˶iR
|
---|
| 3075 | ÍjDAvP[VÆJ[l̼û©çCN[
|
---|
| 3076 | h³êéD
|
---|
| 3077 | target_sil.h VXeC^tF[XCisil.hjÌ^[QbgË
|
---|
| 3078 | ¶iSÍjDAvP[VÆJ[l̼û©ç
|
---|
| 3079 | CN[h³êéD
|
---|
| 3080 | target_kernel.h J[lAPIikernel.hjÌ^[Qbg˶iTÍjD
|
---|
| 3081 | AvP[VÆJ[l̼û©çCN[h³
|
---|
| 3082 | êéD
|
---|
| 3083 |
|
---|
| 3084 | target_config.h J[lÀÌ^[Qbg˶Ìwb_t@CiU
|
---|
| 3085 | ÍjDJ[lÌÝ©çCN[h³êéD
|
---|
| 3086 | target_config.c J[lÀÌ^[Qbg˶ÌC¾êÅLq³êé
|
---|
| 3087 | ªiUÍCIvVjD
|
---|
| 3088 | target_support.S J[lÀÌ^[Qbg˶ÌAZu¾êÅL
|
---|
| 3089 | q³êéªiUÍCIvVjD
|
---|
| 3090 | target_rename.def J[lÀÌ^[Qbg˶̽ßÌl[Lq
|
---|
| 3091 | i6.12ßjD
|
---|
| 3092 | target_rename.h target_rename.def©ç¶¬³êét@Ci6.12ßjD
|
---|
| 3093 | target_unrename.h target_rename.def©ç¶¬³êét@Ci6.12ßjD
|
---|
| 3094 | target_timer.cfg ^C}hCoÌVXeRtBM
|
---|
| 3095 | [Vt@
|
---|
| 3096 | Ci6.13ßjD
|
---|
| 3097 | target_timer.h ^C}hCoÌwb_t@Ci6.13ßjDJ[l
|
---|
| 3098 | ÌÝ©çCN[h³êéD
|
---|
| 3099 | target_timer.c ^C}hCoÌÀt@Ci6.13ßCIvVjD
|
---|
| 3100 | VXeªÌ.h ^[QbgÌn[hEFA¹iÝnhÔâ
|
---|
| 3101 | CPUáOnhÔCfoCXWX^ÌÔnÈÇjÌ
|
---|
| 3102 | è`ðÜÞwb_t@CDAvP[VÆJ[l
|
---|
| 3103 | ̼û©çCN[h³êéiUÍCIvVjD
|
---|
| 3104 |
|
---|
| 3105 | target_def.csv RtBM
|
---|
| 3106 | [^Ìlæ¾V{e[uÌ^[Qb
|
---|
| 3107 | g˶iVÍCIvVjD
|
---|
| 3108 | target.tf RtBM
|
---|
| 3109 | [^ÌpX2Ìev[gt@CÌ
|
---|
| 3110 | ^[Qbg˶i7.2ßjD
|
---|
| 3111 | target_check.tf RtBM
|
---|
| 3112 | [^ÌpX3Ìev[gt@Ci7.3
|
---|
| 3113 | ßjD
|
---|
| 3114 | target_cfg1_out.h cfg1_out.cÌNÉKvÈX^uÌè`t@Ci7.4
|
---|
| 3115 | ßjD
|
---|
| 3116 |
|
---|
| 3117 | target_syssvc.h VXeT[rXÌ^[Qbg˶è`i8.0ßjD
|
---|
| 3118 | target_serial.cfg VAhCoÌVXeRtBM
|
---|
| 3119 | [Vt@
|
---|
| 3120 | Ci8.3ßjD
|
---|
| 3121 | target_serial.h VAhCoÌwb_t@Ci8.3ßjDVA
|
---|
| 3122 | hCoÌÝ©çCN[h³êéD
|
---|
| 3123 | target_serial.c VAhCoÌÀt@Ci8.3ßCIvVjD
|
---|
| 3124 | target_test.h eXgvOÌ^[Qbg˶è`i8.4ßjD
|
---|
| 3125 |
|
---|
| 3126 | target_user.txt [U[Y}j
|
---|
| 3127 | Ai9.1ßj
|
---|
| 3128 | target_design.txt Ývi9.1ßCIvVj
|
---|
| 3129 | MANIFEST ÂÊpbP[WÉÜßét@CÌXgi9.2ßCIv
|
---|
| 3130 | Vj
|
---|
| 3131 | E_PACKAGE ÈÕpbP[WÉÜßét@CÌXgi9.2ßCIv
|
---|
| 3132 | Vj
|
---|
| 3133 |
|
---|
| 3134 | Èã
|
---|