Changeset 53


Ignore:
Timestamp:
Sep 7, 2012, 4:06:35 PM (12 years ago)
Author:
ertl-hiro
Message:

ターゲット依存部のリネーム抜けの修正.README.txtにポーティングの際の必要事項を追記。

Location:
asp_wo_cfg/trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • asp_wo_cfg/trunk/README.txt

    r49 r53  
    66TOPPERS/ASPカーネル without Configurator(以下,ASP_WO_CFGカーネル)は,
    77コンフィギュレータなしでTOPPERS/ASPカーネルを使いたいという要望に対応し
    8 て,ASPカーネルを改造して作成したものです.
     8て,ASPカーネルを改造して作成したものです.改造にあたっては,ASPカーネ
     9ルの動的機能生成拡張パッケージのコードも活用しました.
    910
    1011【使用方法】
     
    5657【ポーティングにあたって】
    5758
    58 コンフィギュレータを使わないとい趣旨からは,offset.hの自動生成も使わな
    59 いのが望ましいと考えます.ターゲット毎にoffset.hを準備する方法を推奨し
    60 ます.
     59ASPカーネルのターゲット依存部に対して,以下の修正が必要です.
     60
     61(1) 割込み要求ライン属性の設定方法と,割込みハンドラおよびCPU例外ハンド
     62ラの登録方法が,大幅に変更されています.cfg_int,def_inh,def_excの各サー
     63ビスコールは,カーネル内の標準的なデータ構造に登録内容を書き込みます.
     64それらの処理が終わった後,カーネルの起動前に,ターゲット依存部の
     65target_prepare が呼ばれます.
     66
     67        void target_prepare(void)
     68
     69target_prepareの中では,カーネル内の標準的なデータ構造を読み込んで,割
     70込み要求ラインの属性の設定と,割込みハンドラおよびCPU例外ハンドラの登録
     71処理を行って下さい.
     72
     73この変更に伴って,以下のマクロと関数(または,それに変わるマクロと関数
     74など)は不要になります.
     75
     76        void x_config_int(INTNO intno, ATR intatr, PRI intpri)
     77
     78        INT_ENTRY(inhno, inthdr)
     79        INTHDR_ENTRY(inhno, inhno_num, inthdr)
     80        void x_define_inh(INHNO inhno, FP int_entry)
     81
     82        EXC_ENTRY(excno, exchdr)
     83        EXCHDR_ENTRY(excno, excno_num, exchdr)
     84        void x_define_exc(EXCNO excno, FP exc_entry)
     85
     86(2) cre_tsk,att_isr,cfg_int,def_inh,def_excでターゲット依存にエラー
     87チェックを行うための以下の関数が必要になります.ターゲット依存にチェッ
     88クすべきエラーがない場合には,こららの関数を,常にE_OKを返す関数として
     89実装してください.
     90
     91        ER target_check_ctsk(ID tskid, const T_CTSK *pk_ctsk)
     92        ER target_check_aisr(const T_CISR *pk_cisr)
     93        ER target_check_cint(INTNO intno, const T_CINT *pk_cint)
     94        ER target_check_dinh(INHNO inhno, const T_DINH *pk_dinh)
     95        ER target_check_dexc(EXCNO excno, const T_DEXC *pk_dexc)
     96
     97(3) ターゲット依存部にコンフィギュレーションファイル(例えば,
     98target_timer.cfgやtarget_serial.cfg)があった場合,その内容を,初期化処
     99理(例えば,target_timer_initializeやsio_initialize)に追加します.
     100
     101また,コンフィギュレータを使わないとい趣旨からは,offset.hの自動生成も
     102使わないのが望ましいと考えます.ターゲット毎にoffset.hを準備する方法を
     103推奨します.
    61104
    62105以上
  • asp_wo_cfg/trunk/target/macosx_gcc/target_rename.def

    r49 r53  
    1616call_exit_kernel
    1717start_r
     18target_check_cint
     19target_check_dexc
    1820target_initialize
    1921target_prepare
  • asp_wo_cfg/trunk/target/macosx_gcc/target_rename.h

    r49 r53  
    2525#define call_exit_kernel                        _kernel_call_exit_kernel
    2626#define start_r                                         _kernel_start_r
     27#define target_check_cint                       _kernel_target_check_cint
     28#define target_check_dexc                       _kernel_target_check_dexc
    2729#define target_initialize                       _kernel_target_initialize
    2830#define target_prepare                          _kernel_target_prepare
     
    7173#define _call_exit_kernel                       __kernel_call_exit_kernel
    7274#define _start_r                                        __kernel_start_r
     75#define _target_check_cint                      __kernel_target_check_cint
     76#define _target_check_dexc                      __kernel_target_check_dexc
    7377#define _target_initialize                      __kernel_target_initialize
    7478#define _target_prepare                         __kernel_target_prepare
  • asp_wo_cfg/trunk/target/macosx_gcc/target_unrename.h

    r49 r53  
    2626#undef call_exit_kernel
    2727#undef start_r
     28#undef target_check_cint
     29#undef target_check_dexc
    2830#undef target_initialize
    2931#undef target_prepare
     
    7274#undef _call_exit_kernel
    7375#undef _start_r
     76#undef _target_check_cint
     77#undef _target_check_dexc
    7478#undef _target_initialize
    7579#undef _target_prepare
Note: See TracChangeset for help on using the changeset viewer.