Changeset 386 for ssp_rpi3/trunk/arch/arm64_gcc/bcm283x/chip_config.c
- Timestamp:
- Apr 17, 2019, 12:13:00 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
ssp_rpi3/trunk/arch/arm64_gcc/bcm283x/chip_config.c
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r384 r386 8 8 * Nagoya Municipal Industrial Research Institute, JAPAN 9 9 * 10 * ä¸è¨èä½æ¨©è 11 ã¯ï¼ä»¥ä¸ã®(1)ã(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§ 12 * ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ã使ç¨ã»è¤è£½ã»æ¹ 13 * å¤ã»åé 14 å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼ 15 * (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½ 16 * 権表示ï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼ 17 * ã¹ã³ã¼ãä¸ã«å«ã¾ãã¦ãããã¨ï¼ 18 * (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 19 * ç¨ã§ããå½¢ã§åé 20 å¸ããå ´åã«ã¯ï¼åé 21 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨ 22 * è 23 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ 24 * ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 25 * (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 26 * ç¨ã§ããªãå½¢ã§åé 27 å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã 28 * ã¨ï¼ 29 * (a) åé 30 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨è 31 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è 32 * ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 33 * (b) åé 34 å¸ã®å½¢æ 35 ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSããã¸ã§ã¯ãã« 36 * å ±åãããã¨ï¼ 37 * (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ 38 * 害ãããï¼ä¸è¨èä½æ¨©è 39 ããã³TOPPERSããã¸ã§ã¯ããå 40 責ãããã¨ï¼ 41 * ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç 42 * ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è 43 ããã³TOPPERSããã¸ã§ã¯ãã 44 * å 45 責ãããã¨ï¼ 46 * 47 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 48 ã 49 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç 50 * ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ 51 * ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ã 52 * ã®è²¬ä»»ãè² ããªãï¼ 53 * 54 */ 55 /* 56 * ãããä¾åå¦çï¼BCM2837ç¨ï¼ 10 * 上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ 11 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 12 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する. 13 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作 14 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー 15 * スコード中に含まれていること. 16 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使 17 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用 18 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記 19 * の無保証規定を掲載すること. 20 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使 21 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ 22 * と. 23 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著 24 * 作権表示,この利用条件および下記の無保証規定を掲載すること. 25 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに 26 * 報告すること. 27 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損 28 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること. 29 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理 30 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 31 * 免責すること. 32 * 33 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 34 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 35 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 36 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 37 * の責任を負わない. 38 * 39 */ 40 /* 41 * チップ依存処理(BCM2837用) 57 42 */ 58 43 #include <sil.h> … … 60 45 61 46 /* 62 * ããã»ããµã®å²è¾¼ã¿åªå 63 度 47 * プロセッサの割込み優先度 64 48 */ 65 49 PRI current_intpri; 66 50 67 51 /* 68 * ãããã®åæå52 * チップの初期化 69 53 */ 70 54 void … … 74 58 75 59 /* 76 * ARM64 ä¾åã®åæå60 * ARM64依存の初期化 77 61 */ 78 62 core_initialize(); 79 63 80 64 /* 81 * ã¢ã©ã¤ã¡ã³ããã§ãã¯æå¹65 * アライメントチェック有効 82 66 */ 83 67 tmp = (1<<3)|(1<<1); … … 85 69 86 70 /* 87 * å²è¾¼ã¿ãã¹ã¯ã®åæå71 * 割込みマスクの初期化 88 72 */ 89 73 sil_wrw_mem((uint32_t *)(DISABLE_IRQ_B), 0xffffffff); // basic interrupt … … 91 75 sil_wrw_mem((uint32_t *)(DISABLE_IRQ_2), 0xffffffff); // gpu2 92 76 93 // 使ç¨ããå²è¾¼ã¿ã®è¨±å¯77 // 使用する割込みの許可 94 78 chip_unmask_interrupt(0); 95 79 } 96 80 97 81 /* 98 * ãããã®çµäºå¦ç82 * チップの終了処理 99 83 */ 100 84 void … … 102 86 { 103 87 /* 104 * å²è¾¼ã¿ç¦æ¢88 * 割込み禁止 105 89 */ 106 90 chip_mask_interrupt(INT_IPM(TMIN_INTPRI)); … … 110 94 111 95 /* 112 * å²è¾¼ã¿è¦æ±ã©ã¤ã³å±æ§ã®è¨å®96 * 割込み要求ライン属性の設定 113 97 */ 114 98 void 115 99 x_config_int(INTNO intno, ATR intatr, PRI intpri) 116 100 { 117 // BCM283X ã¯ã¨ãã¸/ã¬ãã«ã®è¨å®ãå²è¾¼ã¿åªå 118 度ã®è¨å®æ©è½ãæããªã 101 // BCM283X はエッジ/レベルの設定や割込み優先度の設定機能を持たない 119 102 assert(VALID_INTNO(intno)); 120 103 assert(TMIN_INTPRI <= intpri && intpri <= TMAX_INTPRI); … … 122 105 123 106 /* 124 * çºçããå²è¾¼ã¿ã®åªå 125 度ã«å¿ãã¦å²è¾¼ã¿ããã¹ã¯ãã 126 * å²è¾¼ã¿ã®å 127 ¥å£å¦çããã³åæåå¦çããå¼ã³åºããã 128 * priï¼å²è¾¼ã¿è¦å ã®å²è¾¼ã¿åªå 129 度(å 130 é¨è¡¨ç¾) 107 * 発生した割込みの優先度に応じて割込みをマスクする 108 * 割込みの入口処理および初期化処理から呼び出される 109 * pri:割込み要因の割込み優先度(内部表現) 131 110 */ 132 111 void … … 144 123 145 124 /* 146 * å²è¾¼ã¿ã®ãã¹ã¯125 * 割込みのマスク 147 126 */ 148 127 // core interrupt(core timers) … … 182 161 183 162 /* 184 * ãã¹ã¯ããå²è¾¼ã¿ãå²è¾¼ã¿çºçåã®ç¶æ 185 ã«æ»ã 186 * ãã³ãã©å®è¡å¾ï¼åºå£å¦çã®å®è¡åã«å¼ã³åºããã 187 * priï¼å²è¾¼ã¿çºçåã®å²è¾¼ã¿åªå 188 度 163 * マスクした割込みを割込み発生前の状態に戻す 164 * ハンドラ実行後,出口処理の実行前に呼び出される 165 * pri:割込み発生前の割込み優先度 189 166 */ 190 167 void … … 202 179 203 180 /* 204 * ãã¹ã¯è§£é¤181 * マスク解除 205 182 */ 206 183 // core interrupt(core timers) -
Property svn:mime-type
set to
Note:
See TracChangeset
for help on using the changeset viewer.