Changeset 315 for rubycfg_asp/trunk/asp_dcre/arch/rx630_ccrx/prc_config.c
- Timestamp:
- Jul 23, 2017, 2:29:40 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
rubycfg_asp/trunk/asp_dcre/arch/rx630_ccrx/prc_config.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 10 10 * Copyright (C) 2008-2010 by Witz Corporation, JAPAN 11 11 * 12 * ä¸è¨èä½æ¨©è 13 ã¯ï¼ä»¥ä¸ã® (1)ï½(4) ã®æ¡ä»¶ãï¼Free Software Foundation 14 * ã«ãã£ã¦å 15 ¬è¡¨ããã¦ãã GNU General Public License ã® Version 2 ã«è¨ 16 * è¿°ããã¦ããæ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§ã¢ï¼æ¬ã½ããã¦ã§ã¢ 17 * ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ã使ç¨ã»è¤è£½ã»æ¹å¤ã»åé 18 å¸ï¼ä»¥ä¸ï¼ 19 * å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼ 20 * (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½ 21 * 権表示ï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼ 22 * ã¹ã³ã¼ãä¸ã«å«ã¾ãã¦ãããã¨ï¼ 23 * (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 24 * ç¨ã§ããå½¢ã§åé 25 å¸ããå ´åã«ã¯ï¼åé 26 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨ 27 * è 28 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ 29 * ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 30 * (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 31 * ç¨ã§ããªãå½¢ã§åé 32 å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã 33 * ã¨ï¼ 34 * (a) åé 35 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨è 36 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è 37 * ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 38 * (b) åé 39 å¸ã®å½¢æ 40 ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSããã¸ã§ã¯ãã« 41 * å ±åãããã¨ï¼ 42 * (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ 43 * 害ãããï¼ä¸è¨èä½æ¨©è 44 ããã³TOPPERSããã¸ã§ã¯ããå 45 責ãããã¨ï¼ 46 * 47 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 48 ã 49 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ãã®é©ç¨å¯è½æ§ã 50 * å«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´ 51 * æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ãã®è²¬ä»»ãè² ããªãï¼ 52 * 53 */ 54 55 /* 56 * ããã»ããµä¾åã¢ã¸ã¥ã¼ã«ï¼RX630ç¨ï¼ 12 * 上記著作権者は,以下の (1)~(4) の条件か,Free Software Foundation 13 * によって公表されている GNU General Public License の Version 2 に記 14 * 述されている条件を満たす場合に限り,本ソフトウェア(本ソフトウェア 15 * を改変したものを含む.以下同じ)を使用・複製・改変・再配布(以下, 16 * 利用と呼ぶ)することを無償で許諾する. 17 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作 18 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー 19 * スコード中に含まれていること. 20 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使 21 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用 22 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記 23 * の無保証規定を掲載すること. 24 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使 25 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ 26 * と. 27 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著 28 * 作権表示,この利用条件および下記の無保証規定を掲載すること. 29 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに 30 * 報告すること. 31 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損 32 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること. 33 * 34 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 35 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,その適用可能性も 36 * 含めて,いかなる保証も行わない.また,本ソフトウェアの利用により直 37 * 接的または間接的に生じたいかなる損害に関しても,その責任を負わない. 38 * 39 */ 40 41 /* 42 * プロセッサ依存モジュール(RX630用) 57 43 */ 58 44 … … 62 48 63 49 /* 64 * å²è¾¼ã¿çºçåæ°ãä¿åããå¤æ°50 * 割込み発生回数を保存する変数 65 51 */ 66 52 uint16_t intnest; 67 53 68 54 /* 69 * CPU ããã¯ãã©ã°å®ç¾ã®ããã®å¤æ°55 * CPUロックフラグ実現のための変数 70 56 */ 71 57 #if TIPM_LOCK != -15 72 bool_t lock_flag; /* CPUããã¯ãã©ã°ã®å¤ãä¿æããå¤æ° */ 73 uint32_t saved_ipl; /* å²è¾¼ã¿åªå 74 度ã¬ãã«ãä¿åããå¤æ° */ 58 bool_t lock_flag; /* CPUロックフラグの値を保持する変数 */ 59 uint32_t saved_ipl; /* 割込み優先度レベルを保存する変数 */ 75 60 #endif /* TIPM_LOCK != -15 */ 76 61 77 62 78 63 /* 79 * ããã»ããµä¾åã®åæå64 * プロセッサ依存の初期化 80 65 */ 81 66 void … … 83 68 { 84 69 /* 85 * å²è¾¼ã¿çºçåæ°ã®åæå 86 * 87 * ã¹ã¿ã¼ãã¢ããã¯å 88 ¨å²è¾¼ã¿ããã¯ç¶æ 89 & éã¿ã¹ã¯ã³ã³ããã¹ã 90 * ã«ã¦åä½ãããã, éã¿ã¹ã¯ã³ã³ããã¹ãã«å½è£ 91 ãã. 70 * 割込み発生回数の初期化 71 * 72 * スタートアップは全割込みロック状態 & 非タスクコンテキスト 73 * にて動作するため, 非タスクコンテキストに偽装する. 92 74 */ 93 75 intnest = 1U; … … 95 77 #if TIPM_LOCK != -15 96 78 /* 97 * CPU ããã¯ãã©ã°å®ç¾ã®ããã®å¤æ°ã®åæå79 * CPUロックフラグ実現のための変数の初期化 98 80 */ 99 81 lock_flag = true; … … 104 86 105 87 /* 106 * ããã»ããµä¾åã®çµäºå¦ç88 * プロセッサ依存の終了処理 107 89 */ 108 90 void … … 110 92 { 111 93 /* 112 * ç¹ã«å¿ 113 è¦ãªå¦çã¯ãªã 114 */ 115 } 116 117 118 /* 119 * CPUä¾å¤ã®çºçç¶æ³ã®ãã°åºå 94 * 特に必要な処理はない 95 */ 96 } 97 98 99 /* 100 * CPU例外の発生状況のログ出力 120 101 * 121 * CPUä¾å¤ãã³ãã©ã®ä¸ããï¼CPUä¾å¤æ 122 å ±ãã¤ã³ã¿ï¼p_excinfï¼ãå¼æ°ã¨ã 123 * ã¦å¼ã³åºããã¨ã§ï¼CPUä¾å¤ã®çºçç¶æ³ãã·ã¹ãã ãã°ã«åºåããï¼ 102 * CPU例外ハンドラの中から,CPU例外情報ポインタ(p_excinf)を引数とし 103 * て呼び出すことで,CPU例外の発生状況をシステムログに出力する. 124 104 */ 125 105 #ifdef SUPPORT_XLOG_SYS … … 152 132 153 133 /* 154 * å²è¾¼ã¿è¦æ±ã©ã¤ã³ã®å±æ§ã®è¨å®134 * 割込み要求ラインの属性の設定 155 135 * 156 * ASP ã«ã¼ãã«ã§ã®å©ç¨ãæ³å®ãã¦ï¼ãã©ã¡ã¼ã¿ã¨ã©ã¼ã¯ã¢ãµã¼ã·ã§ã³ã§ãã§ã157 * ã¯ãã¦ããï¼cfg_intãµã¼ãã¹ã³ã¼ã«ãè¨ããå ´åã«ã¯ï¼ã¨ã©ã¼ãè¿ããã158 * ã«ãã¹ãã§ãããï¼136 * ASPカーネルでの利用を想定して,パラメータエラーはアサーションでチェッ 137 * クしている.cfg_intサービスコールを設ける場合には,エラーを返すよう 138 * にすべきであろう. 159 139 */ 160 140 void … … 177 157 178 158 /* 179 * å²è¾¼ã¿ã®ãã¹ã¯ 180 * 181 * å²è¾¼ã¿ãåãä»ããã¾ã¾ï¼ã¬ãã«ããªã¬ï¼ã¨ãã¸ããªã¬ã®è¨å®ãï¼å² 182 * è¾¼ã¿åªå 183 度ã®è¨å®ãè¡ãã®ã¯å±éºãªããï¼å²è¾¼ã¿å±æ§ã«ãããããï¼ 184 * ä¸æ¦ãã¹ã¯ããï¼ 159 * 割込みのマスク 160 * 161 * 割込みを受け付けたまま,レベルトリガ/エッジトリガの設定や,割 162 * 込み優先度の設定を行うのは危険なため,割込み属性にかかわらず, 163 * 一旦マスクする. 185 164 */ 186 165 ( void )x_disable_int( intno ); 187 166 188 167 /* 189 * ã¬ãã«ããªã¬/ã¨ãã¸ããªã¬ã®è¨å®190 * 191 * IRQ ã®ã¿ãµãã¼ããã168 * レベルトリガ/エッジトリガの設定 169 * 170 * IRQのみサポートする 192 171 */ 193 172 if( INTNO_IRQ( intno ) != 0U ){ … … 208 187 else{ 209 188 /* 210 * ã³ã³ãã£ã®ã¥ã¬ã¼ã¿ã«ã¦ãã§ãã¯ãã¦ãããã,211 * ããã¸ãããã¨ã¯ããããªã.189 * コンフィギュレータにてチェックしているため, 190 * ここへくることはありえない. 212 191 */ 213 192 irq_val = 0U; … … 218 197 219 198 /* 220 * å²è¾¼ã¿ã¬ãã«ã®è¨å®221 * 222 * å²è¾¼ã¿çªå·ã«å¯¾å¿ããIPRå¤ãè¨å®ãã.199 * 割込みレベルの設定 200 * 201 * 割込み番号に対応したIPR値を設定する. 223 202 */ 224 203 sil_wrb_mem(ipr_reg_addr[intno], cfg_int_table[intno].intpri); 225 204 226 205 /* 227 * å²è¾¼ã¿ã®ãã¹ã¯è§£é¤206 * 割込みのマスク解除 228 207 */ 229 208 if( ( intatr & TA_ENAINT ) != 0U ){ … … 235 214 #ifndef OMIT_DEFAULT_INT_HANDLER 236 215 /* 237 * æªç»é²ã®å²è¾¼ã¿ãçºçããå ´åã«å¼ã³åºããã216 * 未登録の割込みが発生した場合に呼び出される 238 217 */ 239 218 void … … 246 225 #ifndef OMIT_DEFAULT_EXC_HANDLER 247 226 /* 248 * æªç»é²ã®ä¾å¤ãçºçããå ´åã«å¼ã³åºããã227 * 未登録の例外が発生した場合に呼び出される 249 228 */ 250 229 void -
Property svn:mime-type
changed from
Note:
See TracChangeset
for help on using the changeset viewer.