Ignore:
Timestamp:
Jun 27, 2017, 10:53:32 AM (7 years ago)
Author:
ertl-honda
Message:

3.1.0を反映

File:
1 edited

Legend:

Unmodified
Added
Removed
  • asp3_wo_tecs/trunk/arch/arm_m_gcc/common/core_kernel.trb

    r304 r306  
    11# ======================================================================
    2 # 
     2#
    33#   TOPPERS/ASP Kernel
    44#       Toyohashi Open Platform for Embedded Real-Time Systems/
    55#       Advanced Standard Profile Kernel
    6 # 
     6#
    77#   Copyright (C) 2000-2003 by Embedded and Real-Time Systems Laboratory
    88#                               Toyohashi Univ. of Technology, JAPAN
    99#   Copyright (C) 2005-2015 by Embedded and Real-Time Systems Laboratory
    1010#               Graduate School of Information Science, Nagoya Univ., JAPAN
    11 # 
     11#
    1212#   ä¸Šè¨˜è‘—作権è€
    1313は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
     
    4646#       å
    4747è²¬ã™ã‚‹ã“と.
    48 # 
     48#
    4949#   æœ¬ã‚½ãƒ•ãƒˆã‚¦ã‚§ã‚¢ã¯ï¼Œç„¡ä¿è¨¼ã§æä¾›ã•ã‚Œã¦ã„るものである.上記著作権è€
    5050お
     
    5353#   ã‚¢ã®åˆ©ç”¨ã«ã‚ˆã‚Šç›´æŽ¥çš„または間接的に生じたいかなる損害に関しても,そ
    5454#   ã®è²¬ä»»ã‚’負わない.
    55 # 
     55#
    5656#   @(#) $Id: core.tf 322 2015-04-30 13:23:48Z ertl-ishikawa $
    5757#
    5858# =====================================================================
    5959
    60 # 
     60#
    6161#     ãƒ‘ス2のアーキテクチャ依存テンプレート(ARM-M用)
    62 # 
    63 
    64 # 
     62#
     63
     64#
    6565#  有効な割込み番号,割込みハンドラ番号
    66 # 
    67 $INTNO_VALID = Array(15..$TMAX_INTNO.val)
     66#
     67$INTNO_VALID = Array(15..$TMAX_INTNO)
    6868$INHNO_VALID = $INTNO_VALID
    6969
    70 # 
     70#
    7171#  有効なCPU例外番号
    7272#  7,8はエミュレートされた例外
    73 # 
     73#
    7474$EXCNO_VALID = [ 2,3,4,5,6,7,8,11,12,14 ]
    7575
    76 # 
     76#
    7777#  CRE_ISRで使用できる割込み番号とそれに対応する割込みハンドラ番号
    78 # 
     78#
    7979$INTNO_CREISR_VALID = $INTNO_VALID
    8080$INHNO_CREISR_VALID = $INHNO_VALID
    8181
    82 # 
     82#
    8383#  DEF_INT/DEF_EXCで使用できる割込みハンドラ番号/CPU例外ハンドラ番号
    84 # 
     84#
    8585$INHNO_DEFINH_VALID = $INHNO_VALID
    8686$EXCNO_DEFEXC_VALID = $EXCNO_VALID
    8787
    88 # 
     88#
    8989#  CFG_INTで使用できる割込み番号と割込み優å
    9090ˆåº¦
     
    9696#  そのため,カーネル管理外の割込みでのみ指定可能.
    9797$INTNO_CFGINT_VALID = $INTNO_VALID
    98 $INTPRI_CFGINT_VALID = Array(-(1 << $TBITW_IPRI.val)..-2)
    99 
    100 # 
     98$INTPRI_CFGINT_VALID = Array(-(1 << $TBITW_IPRI)..-2)
     99
     100#
    101101#  kernel/kernel.tf のターゲット依存部
    102 # 
    103 
    104 # 
     102#
     103
     104#
    105105#  TSKINICTXBの初期化æƒ
    106106報を生成
    107 # 
     107#
    108108def GenerateTskinictxb(key, params)
    109109   return("{" \
     
    114114end
    115115
    116 # 
     116#
    117117#  標準テンプレートファイルのインクルード
    118 # 
     118#
    119119IncludeTrb("kernel/kernel.trb")
    120120
     
    124124 */
    125125
    126 /* 
     126/*
    127127 *  ベクターテーブル
    128  */ 
     128 */
    129129__attribute__ ((section(".vector")))
    130130const FP _kernel_vector_table[] = {
     
    143143$INTNO_VALID.each { |inhno|
    144144    #if $cfgData[:DEF_INH][inhno]) && ((INH.INHATR[inhno] & TA_NONKERNEL) != 0)$
    145     inh = $cfgData[:DEF_INH].select { |k,v| 
     145    inh = $cfgData[:DEF_INH].select { |k,v|
    146146        (v[:inhno] == inhno) && (v[:inhatr] & $TA_NONKERNEL)
    147147    }
     
    158158$kernelCfgC.add("const FP _kernel_exc_tbl[] = {")
    159159Array(0..14).each { |excno|
    160     exc = $cfgData[:DEF_EXC].select { |k,v| 
     160    exc = $cfgData[:DEF_EXC].select { |k,v|
    161161        (v[:excno] == excno)
    162162    }
     
    170170}
    171171$INTNO_VALID.each { |inhno|
    172     inh = $cfgData[:DEF_INH].select { |k,v| 
     172    inh = $cfgData[:DEF_INH].select { |k,v|
    173173        (v[:inhno] == inhno)
    174174    }
     
    183183$kernelCfgC.add2("};")
    184184
    185 # 
     185#
    186186#  _kernel_bitpat_cfgintの生成
    187 # 
     187#
    188188
    189189bitpat_cfgint_num = 0
     
    199199Array(0..(bitpat_cfgint_num-1)).each { |num|
    200200    Array((num*32)..((num*32)+31)).each { |inhno|
    201         inh = $cfgData[:DEF_INH].select { |k,v| 
     201        inh = $cfgData[:DEF_INH].select { |k,v|
    202202            (v[:inhno] == inhno)
    203203        }
     
    210210$kernelCfgC.add2("};")
    211211
    212 # 
     212#
    213213#  割込み優å
    214214ˆåº¦ãƒ†ãƒ¼ãƒ–ル(å†
    215215部表現)
    216 # 
     216#
    217217$kernelCfgC.add("const uint32_t _kernel_int_iipm_tbl[] = {")
    218218Array(0..14).each { |excno|
     
    220220}
    221221$INTNO_VALID.each { |intno|
    222     int = $cfgData[:CFG_INT].select { |k,v| 
     222    int = $cfgData[:CFG_INT].select { |k,v|
    223223        (v[:intno] == intno)
    224224    }
Note: See TracChangeset for help on using the changeset viewer.