Changeset 356 for ssp_aarch64/trunk/qemu_virt_gcc
- Timestamp:
- Jun 8, 2018, 11:24:32 AM (6 years ago)
- Location:
- ssp_aarch64/trunk/qemu_virt_gcc
- Files:
-
- 28 edited
Legend:
- Unmodified
- Added
- Removed
-
ssp_aarch64/trunk/qemu_virt_gcc/E_PACKAGE
-
Property svn:mime-type
set to
text/plain; charset=utf-8
-
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/MANIFEST
-
Property svn:mime-type
set to
text/plain; charset=utf-8
-
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/Makefile.target
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 1 1 # 2 # Makefile ã®ã¿ã¼ã²ããä¾åé¨(QEMU-VIRTç¨)2 # Makefile のターゲット依存部(QEMU-VIRT用) 3 3 # 4 4 5 5 # 6 # ãã¼ãåï¼ããã»ããµåï¼éçºç°å¢åã®å®ç¾©6 # ボード名,プロセッサ名,開発環境名の定義 7 7 # 8 8 BOARD = qemu_virt … … 11 11 12 12 # 13 # GNU éçºç°å¢ã®ã¿ã¼ã²ããã¢ã¼ããã¯ãã£ã®å®ç¾©13 # GNU開発環境のターゲットアーキテクチャの定義 14 14 # 15 15 GCC_TARGET = aarch64-elf 16 16 17 17 # 18 # ã³ã³ãã¤ã«ãªãã·ã§ã³18 # コンパイルオプション 19 19 # 20 20 COPTS := $(COPTS) -Werror -mgeneral-regs-only -ggdb3 -fno-pic -fno-builtin -mstrict-align -mtune=cortex-a53 -mcpu=cortex-a53+nofp #-mfix-cortex-a53-835769 -mfix-cortex-a53-843419 … … 25 25 26 26 # 27 # ã·ã¹ãã ãµã¼ãã¹ã«é¢ããå®ç¾©27 # システムサービスに関する定義 28 28 # 29 29 SYSSVC_DIRS := $(SYSSVC_DIRS) … … 34 34 35 35 # 36 # ã«ã¼ãã«ã«é¢ããå®ç¾©36 # カーネルに関する定義 37 37 # 38 38 KERNEL_DIRS := $(KERNEL_DIRS) $(TARGETDIR) … … 42 42 43 43 # 44 # ãã¬ã¼ã¹ãã°ã«é¢ããè¨å®44 # トレースログに関する設定 45 45 # 46 46 ifeq ($(ENABLE_TRACE),true) … … 51 51 52 52 # 53 # ã³ã³ãã£ã®ã¥ã¬ã¼ã¿é¢ä¿ã®å¤æ°ã®å®ç¾©53 # コンフィギュレータ関係の変数の定義 54 54 # 55 55 CFG_TABS := $(CFG_TABS) --symval-table $(TARGETDIR)/target_sym.def … … 59 59 60 60 # 61 # -Wall ãªãã·ã§ã³ã®çç¥62 # -Wall ã追å ããããªãå ´åã« true ã«å®ç¾©ãã61 # -Wall オプションの省略 62 # -Wallを追加したくない場合に true に定義する 63 63 # 64 64 #OMIT_WARNING_ALL = true 65 65 66 66 # 67 # æé©åãã©ã°ã®çç¥68 # -O2 ã追å ããããªãå ´åã« true ã«å®ç¾©ãã67 # 最適化フラグの省略 68 # -O2を追加したくない場合に true に定義する 69 69 # 70 70 #OMIT_OPTIMIZATION = true 71 71 72 72 # 73 # ãªã³ã«ã¹ã¯ãªããã®å®ç¾©73 # リンカスクリプトの定義 74 74 # 75 75 LDSCRIPT = $(SRCDIR)/target/$(BOARD)_$(TOOL)/$(BOARD).ld 76 76 77 77 # 78 # åã»ã¯ã·ã§ã³ã®å 79 é çªå°ã®æå® 78 # 各セクションの先頭番地の指定 80 79 # 81 80 #TEXT_START_ADDRESS = … … 83 82 84 83 # 85 # ã¹ã¿ã¼ãã¢ããã¢ã¸ã¥ã¼ã«ã«é¢ããå®ç¾©84 # スタートアップモジュールに関する定義 86 85 # 87 86 88 # ã¹ã¿ã¼ãã¢ããã¢ã¸ã¥ã¼ã«87 # スタートアップモジュール 89 88 START_OBJS = start.o 90 # ãªã³ã«ã¹ã¯ãªããã«ãSTARTUP(start.o)ããè¨è¿°ããå ´åï¼91 # ã¹ã¿ã¼ãã¢ããã¢ã¸ã¥ã¼ã«ã®ååãSTART_OBJS ã®ä»£ããã« HIDDEN_OBJS ã§å®ç¾©ããï¼89 # リンカスクリプトに「STARTUP(start.o)」を記述した場合, 90 # スタートアップモジュールの名前をSTART_OBJS の代わりに HIDDEN_OBJS で定義する. 92 91 HIDDEN_OBJS = 93 92 94 93 95 # ã¹ã¿ã¼ãã¢ããã¢ã¸ã¥ã¼ã«ã®ã³ã³ãã¤ã«ã«ã¼ã«94 # スタートアップモジュールのコンパイルルール 96 95 $(START_OBJS): %.o: %.S 97 96 $(CC) -c $(CFLAGS) $(KERNEL_CFLAGS) $< … … 100 99 101 100 102 # ã¹ã¿ã¼ãã¢ããã¢ã¸ã¥ã¼ã«ã®ä¾åé¢ä¿ä½æã«ã¼ã«101 # スタートアップモジュールの依存関係作成ルール 103 102 $(START_OBJS:.o=.d): %.d: %.S 104 103 @$(PERL) $(SRCDIR)/utils/makedep -C $(CC) $(MAKEDEP_OPTS) \ … … 109 108 110 109 # 111 # ä¾åé¢ä¿ã®å®ç¾©110 # 依存関係の定義 112 111 # 113 112 cfg1_out.c: $(TARGETDIR)/target_sym.def … … 116 115 117 116 # 118 # ãã®ä»117 # その他 119 118 # 120 119 CLEAN_FILES := $(CLEAN_FILES) … … 123 122 124 123 # 125 # ããã»ããµä¾åé¨ã®ã¤ã³ã¯ã«ã¼ã124 # プロセッサ依存部のインクルード 126 125 # 127 126 include $(SRCDIR)/arch/$(PRC)_$(TOOL)/Makefile.prc -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/qemu_virt.h
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 9 9 * Nagoya Municipal Industrial Research Institute, JAPAN 10 10 * 11 * ä¸è¨èä½æ¨©è 12 ã¯ï¼ä»¥ä¸ã®(1)ã(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§ 13 * ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ã使ç¨ã»è¤è£½ã»æ¹ 14 * å¤ã»åé 15 å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼ 16 * (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½ 17 * 権表示ï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼ 18 * ã¹ã³ã¼ãä¸ã«å«ã¾ãã¦ãããã¨ï¼ 19 * (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 20 * ç¨ã§ããå½¢ã§åé 21 å¸ããå ´åã«ã¯ï¼åé 22 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨ 23 * è 24 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ 25 * ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 26 * (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 27 * ç¨ã§ããªãå½¢ã§åé 28 å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã 29 * ã¨ï¼ 30 * (a) åé 31 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨è 32 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è 33 * ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 34 * (b) åé 35 å¸ã®å½¢æ 36 ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSããã¸ã§ã¯ãã« 37 * å ±åãããã¨ï¼ 38 * (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ 39 * 害ãããï¼ä¸è¨èä½æ¨©è 40 ããã³TOPPERSããã¸ã§ã¯ããå 41 責ãããã¨ï¼ 42 * ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç 43 * ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è 44 ããã³TOPPERSããã¸ã§ã¯ãã 45 * å 46 責ãããã¨ï¼ 11 * 上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ 12 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 13 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する. 14 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作 15 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー 16 * スコード中に含まれていること. 17 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使 18 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用 19 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記 20 * の無保証規定を掲載すること. 21 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使 22 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ 23 * と. 24 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著 25 * 作権表示,この利用条件および下記の無保証規定を掲載すること. 26 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに 27 * 報告すること. 28 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損 29 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること. 30 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理 31 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 32 * 免責すること. 47 33 * 48 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 49 ã 50 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç 51 * ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ 52 * ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ã 53 * ã®è²¬ä»»ãè² ããªãï¼ 34 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 35 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 36 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 37 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 38 * の責任を負わない. 54 39 * 55 40 * $Id$ … … 57 42 58 43 /* 59 * QEMU VIRT ã¿ã¼ã²ããã®ãã¼ãã¦ã§ã¢è³æºå®ç¾©44 * QEMU VIRT ターゲットのハードウェア資源定義 60 45 */ 61 46 … … 64 49 65 50 /* 66 * å²è¾¼ã¿çªå·ï¼intnoï¼ã®å®ç¾©51 * 割込み番号(intno)の定義 67 52 */ 68 #define TINTNO_TIMER 27 /* é«å解è½ã¿ã¤ã*/69 #define TINTNO_UART0 33 /* SIO ãã¼ã*/53 #define TINTNO_TIMER 27 /* 高分解能タイマ */ 54 #define TINTNO_UART0 33 /* SIOポート */ 70 55 71 56 /* … … 78 63 79 64 /* 80 * å²è¾¼ã¿çªå·ã®æå°å¤ã¨æ大å¤65 * 割込み番号の最小値と最大値 81 66 */ 82 67 #define TMIN_INTNO UINT_C(0) … … 84 69 85 70 /* 86 * UART ã¬ã¸ã¹ã¿ã®ãã¼ã¹ã¢ãã¬ã¹71 * UARTレジスタのベースアドレス 87 72 */ 88 73 #define VIRT_UART0_BASE (0x09000000) 89 74 90 75 /* 91 * ãã¼ã¬ã¼ãè¨å®ï¼38400bpsï¼76 * ボーレート設定(38400bps) 92 77 */ 93 78 #define VIRT_UART_IBRD_38400 0x27U -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/qemu_virt.ld
-
Property svn:mime-type
set to
text/plain; charset=utf-8
-
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/start.S
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 10 10 * Nagoya Municipal Industrial Research Institute, JAPAN 11 11 * 12 * ä¸è¨èä½æ¨©è 13 ã¯ï¼ä»¥ä¸ã®(1)ã(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§ 14 * ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ã使ç¨ã»è¤è£½ã»æ¹ 15 * å¤ã»åé 16 å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼ 17 * (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½ 18 * 権表示ï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼ 19 * ã¹ã³ã¼ãä¸ã«å«ã¾ãã¦ãããã¨ï¼ 20 * (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 21 * ç¨ã§ããå½¢ã§åé 22 å¸ããå ´åã«ã¯ï¼åé 23 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨ 24 * è 25 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ 26 * ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 27 * (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 28 * ç¨ã§ããªãå½¢ã§åé 29 å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã 30 * ã¨ï¼ 31 * (a) åé 32 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨è 33 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è 34 * ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 35 * (b) åé 36 å¸ã®å½¢æ 37 ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSããã¸ã§ã¯ãã« 38 * å ±åãããã¨ï¼ 39 * (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ 40 * 害ãããï¼ä¸è¨èä½æ¨©è 41 ããã³TOPPERSããã¸ã§ã¯ããå 42 責ãããã¨ï¼ 43 * ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç 44 * ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è 45 ããã³TOPPERSããã¸ã§ã¯ãã 46 * å 47 責ãããã¨ï¼ 12 * 上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ 13 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 14 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する. 15 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作 16 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー 17 * スコード中に含まれていること. 18 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使 19 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用 20 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記 21 * の無保証規定を掲載すること. 22 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使 23 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ 24 * と. 25 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著 26 * 作権表示,この利用条件および下記の無保証規定を掲載すること. 27 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに 28 * 報告すること. 29 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損 30 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること. 31 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理 32 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 33 * 免責すること. 48 34 * 49 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 50 ã 51 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç 52 * ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ 53 * ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ã 54 * ã®è²¬ä»»ãè² ããªãï¼ 35 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 36 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 37 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 38 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 39 * の責任を負わない. 55 40 * 56 41 * $Id$ … … 65 50 .global vectors 66 51 start: 67 msr daifset, #3 // å²è¾¼ã¿ç¦æ¢(å²è¾¼ã¿ããã¯ç¸å½)52 msr daifset, #3 //割込み禁止(割込みロック相当) 68 53 69 54 /* 70 * ä¾å¤ãã¯ã¿ãã¼ãã«ã®ãã¼ã¹ã¢ãã¬ã¹è¨å®55 * 例外ベクタテーブルのベースアドレス設定 71 56 */ 72 57 ldr x0, =vectors … … 74 59 75 60 /* 76 * ã¹ã¿ãã¯ãã¤ã³ã¿ã¨ãã¬ã¼ã ãã¤ã³ã¿ã®åæå61 * スタックポインタとフレームポインタの初期化 77 62 */ 78 63 ldr x0, =_kernel_istkpt // setup stack -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_cfg1_out.h
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 1 1 /* 2 * cfg1_out.cããªã³ã¯ããããã«å¿ 3 è¦ãªã¹ã¿ãã®å®ç¾© 2 * cfg1_out.cをリンクするために必要なスタブの定義 4 3 */ 5 4 6 5 /* 7 * ã³ã¢ä¾åã®ã¹ã¿ãã®å®ç¾©6 * コア依存のスタブの定義 8 7 */ 9 8 #include "arm64_gcc/prc_cfg1_out.h" -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_check.trb
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 1 1 # -*- coding: utf-8 -*- 2 2 # 3 # ãã¹3ã®çæã¹ã¯ãªããã®ã¿ã¼ã²ããä¾åé¨3 # パス3の生成スクリプトのターゲット依存部 4 4 # 5 5 -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_config.c
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 11 11 * Nagoya Municipal Industrial Research Institute, JAPAN 12 12 * 13 * ä¸è¨èä½æ¨©è 14 ã¯ï¼ä»¥ä¸ã®(1)ã(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§ 15 * ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ã使ç¨ã»è¤è£½ã»æ¹ 16 * å¤ã»åé 17 å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼ 18 * (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½ 19 * 権表示ï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼ 20 * ã¹ã³ã¼ãä¸ã«å«ã¾ãã¦ãããã¨ï¼ 21 * (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 22 * ç¨ã§ããå½¢ã§åé 23 å¸ããå ´åã«ã¯ï¼åé 24 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨ 25 * è 26 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ 27 * ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 28 * (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 29 * ç¨ã§ããªãå½¢ã§åé 30 å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã 31 * ã¨ï¼ 32 * (a) åé 33 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨è 34 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è 35 * ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 36 * (b) åé 37 å¸ã®å½¢æ 38 ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSããã¸ã§ã¯ãã« 39 * å ±åãããã¨ï¼ 40 * (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ 41 * 害ãããï¼ä¸è¨èä½æ¨©è 42 ããã³TOPPERSããã¸ã§ã¯ããå 43 責ãããã¨ï¼ 44 * ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç 45 * ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è 46 ããã³TOPPERSããã¸ã§ã¯ãã 47 * å 48 責ãããã¨ï¼ 13 * 上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ 14 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 15 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する. 16 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作 17 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー 18 * スコード中に含まれていること. 19 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使 20 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用 21 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記 22 * の無保証規定を掲載すること. 23 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使 24 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ 25 * と. 26 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著 27 * 作権表示,この利用条件および下記の無保証規定を掲載すること. 28 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに 29 * 報告すること. 30 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損 31 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること. 32 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理 33 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 34 * 免責すること. 49 35 * 50 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 51 ã 52 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç 53 * ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ 54 * ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ã 55 * ã®è²¬ä»»ãè² ããªãï¼ 36 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 37 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 38 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 39 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 40 * の責任を負わない. 56 41 * 57 42 */ 58 43 59 44 /* 60 * ã¿ã¼ã²ããä¾åã¢ã¸ã¥ã¼ã«(QEMU_VIRTç¨)45 * ターゲット依存モジュール(QEMU_VIRT用) 61 46 */ 62 47 #include "kernel_impl.h" … … 66 51 67 52 /* 68 * ã¿ã¼ã²ããä¾åé¨ãåæåå¦ç53 * ターゲット依存部 初期化処理 69 54 */ 70 55 void target_initialize(void) 71 56 { 72 57 /* 73 * ããã»ããµä¾åé¨ã®åæå58 * プロセッサ依存部の初期化 74 59 */ 75 60 prc_initialize(); … … 77 62 78 63 /* 79 * ã¿ã¼ã²ããä¾åé¨ çµäºå¦ç64 * ターゲット依存部 終了処理 80 65 */ 81 66 void target_exit(void) 82 67 { 83 /* ããã»ããµä¾åé¨ã®çµäºå¦ç*/68 /* プロセッサ依存部の終了処理 */ 84 69 prc_terminate(); 85 70 } 86 71 87 72 /* 88 * ã·ã¹ãã ãã°ã®ä½ã¬ãã«åºåã®ããã®æååºå73 * システムログの低レベル出力のための文字出力 89 74 */ 90 75 void target_fput_log(char c) -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_config.h
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 11 11 * Nagoya Municipal Industrial Research Institute, JAPAN 12 12 * 13 * ä¸è¨èä½æ¨©è 14 ã¯ï¼ä»¥ä¸ã®(1)ã(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§ 15 * ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ã使ç¨ã»è¤è£½ã»æ¹ 16 * å¤ã»åé 17 å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼ 18 * (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½ 19 * 権表示ï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼ 20 * ã¹ã³ã¼ãä¸ã«å«ã¾ãã¦ãããã¨ï¼ 21 * (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 22 * ç¨ã§ããå½¢ã§åé 23 å¸ããå ´åã«ã¯ï¼åé 24 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨ 25 * è 26 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ 27 * ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 28 * (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 29 * ç¨ã§ããªãå½¢ã§åé 30 å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã 31 * ã¨ï¼ 32 * (a) åé 33 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨è 34 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è 35 * ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 36 * (b) åé 37 å¸ã®å½¢æ 38 ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSããã¸ã§ã¯ãã« 39 * å ±åãããã¨ï¼ 40 * (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ 41 * 害ãããï¼ä¸è¨èä½æ¨©è 42 ããã³TOPPERSããã¸ã§ã¯ããå 43 責ãããã¨ï¼ 44 * ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç 45 * ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è 46 ããã³TOPPERSããã¸ã§ã¯ãã 47 * å 48 責ãããã¨ï¼ 13 * 上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ 14 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 15 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する. 16 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作 17 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー 18 * スコード中に含まれていること. 19 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使 20 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用 21 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記 22 * の無保証規定を掲載すること. 23 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使 24 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ 25 * と. 26 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著 27 * 作権表示,この利用条件および下記の無保証規定を掲載すること. 28 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに 29 * 報告すること. 30 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損 31 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること. 32 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理 33 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 34 * 免責すること. 49 35 * 50 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 51 ã 52 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç 53 * ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ 54 * ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ã 55 * ã®è²¬ä»»ãè² ããªãï¼ 36 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 37 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 38 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 39 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 40 * の責任を負わない. 56 41 * 57 42 */ … … 61 46 62 47 /* 63 * ã¿ã¼ã²ããä¾åé¨ã¢ã¸ã¥ã¼ã«(QEMU-VIRTç¨)48 * ターゲット依存部モジュール(QEMU-VIRT用) 64 49 * 65 * ã«ã¼ãã«ã®ã¿ã¼ã²ããä¾åé¨ã®ã¤ã³ã¯ã«ã¼ããã¡ã¤ã«ï¼66 * kernel_impl.h ã®ã¿ã¼ã²ããä¾åé¨ã®ä½ç½®ä»ãã¨ãªãï¼50 * カーネルのターゲット依存部のインクルードファイル. 51 * kernel_impl.hのターゲット依存部の位置付けとなす. 67 52 */ 68 53 … … 70 55 71 56 /* 72 * ãã¬ã¼ã¹ãã°ã«é¢ããè¨å®57 * トレースログに関する設定 73 58 */ 74 59 #ifdef TOPPERS_ENABLE_TRACE … … 77 62 78 63 /* 79 * ããã©ã«ãã®éã¿ã¹ã¯ã³ã³ããã¹ãç¨ã®ã¹ã¿ãã¯é åã®å®ç¾©80 * 16byte åä½ã§åå¾ãããï¼64 * デフォルトの非タスクコンテキスト用のスタック領域の定義 65 * 16byte単位で取得される. 81 66 */ 82 67 #define DEFAULT_ISTKSZ (0x4000 / 16) /* 16KByte */ … … 85 70 86 71 /* 87 * ã¿ã¼ã²ããã·ã¹ãã ä¾åã®åæå72 * ターゲットシステム依存の初期化 88 73 */ 89 74 extern void target_initialize(void); 90 75 91 76 /* 92 * ã¿ã¼ã²ããã·ã¹ãã ã®çµäº77 * ターゲットシステムの終了 93 78 * 94 * ã·ã¹ãã ãçµäºããæã«ä½¿ãï¼79 * システムを終了する時に使う. 95 80 */ 96 81 extern void target_exit(void) NoReturn; 97 82 98 83 /* 99 * 対象ã¨ããããã»ããµçªå·84 * 対象とするプロセッサ番号 100 85 */ 101 86 #define ARM_PRC_INDEX (0) … … 104 89 105 90 /* 106 * ãããä¾åã¢ã¸ã¥ã¼ã«ï¼ARM64ç¨ï¼91 * チップ依存モジュール(ARM64用) 107 92 */ 108 93 #include "arm64_gcc/prc_config.h" -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_kernel.cfg
-
Property svn:mime-type
set to
text/plain; charset=utf-8
-
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_kernel.h
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 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 責ãããã¨ï¼ 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 * 免責すること. 46 32 * 47 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 48 ã 49 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç 50 * ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ 51 * ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ã 52 * ã®è²¬ä»»ãè² ããªãï¼ 33 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 34 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 35 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 36 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 37 * の責任を負わない. 53 38 * 54 39 */ 55 40 56 41 /* 57 * kernel.h ã®ã¿ã¼ã²ããä¾åé¨(QEMU-VIRTç¨)42 * kernel.hのターゲット依存部(QEMU-VIRT用) 58 43 * 59 * ãã®ã¤ã³ã¯ã«ã¼ããã¡ã¤ã«ã¯ï¼kernel.hã§ã¤ã³ã¯ã«ã¼ããããï¼ä»ã®ãã¡60 * ã¤ã«ããç´æ¥ã¤ã³ã¯ã«ã¼ããããã¨ã¯ãªãï¼ãã®ãã¡ã¤ã«ãã¤ã³ã¯ã«ã¼ã61 * ããåã«ï¼t_stddef.hãã¤ã³ã¯ã«ã¼ããããã®ã§ï¼ãããã«ä¾åãã¦ãã62 * ãï¼44 * このインクルードファイルは,kernel.hでインクルードされる.他のファ 45 * イルから直接インクルードすることはない.このファイルをインクルード 46 * する前に,t_stddef.hがインクルードされるので,それらに依存してもよ 47 * い. 63 48 */ 64 49 … … 67 52 68 53 /* 69 * å²è¾¼ã¿åªå 70 度ã®ç¯å² 54 * 割込み優先度の範囲 71 55 */ 72 #define TMIN_INTPRI (-15) /* å²è¾¼ã¿åªå 73 度ã®æå°å¤ï¼æé«å¤ï¼*/ 74 #define TMAX_INTPRI (-1) /* å²è¾¼ã¿åªå 75 度ã®æ大å¤ï¼æä½å¤ï¼ */ 56 #define TMIN_INTPRI (-15) /* 割込み優先度の最小値(最高値)*/ 57 #define TMAX_INTPRI (-1) /* 割込み優先度の最大値(最低値) */ 76 58 77 59 /* 78 * ã¿ã¤ã ãã£ãã¯ã®å®ç¾©60 * タイムティックの定義 79 61 */ 80 #define TIC_NUME 1U /* ã¿ã¤ã ãã£ãã¯ã®å¨æã®åå*/81 #define TIC_DENO 1U /* ã¿ã¤ã ãã£ãã¯ã®å¨æã®åæ¯*/62 #define TIC_NUME 1U /* タイムティックの周期の分子 */ 63 #define TIC_DENO 1U /* タイムティックの周期の分母 */ 82 64 83 65 /* 84 * ããã»ããµã§å 85 ±éãªå®ç¾© 66 * プロセッサで共通な定義 86 67 */ 87 68 #include "arm64_gcc/prc_kernel.h" -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_kernel.trb
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 1 1 # -*- coding: utf-8 -*- 2 2 # 3 # ãã¹2ã®çæã¹ã¯ãªããã®ã¿ã¼ã²ããä¾åé¨3 # パス2の生成スクリプトのターゲット依存部 4 4 # 5 5 -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_rename.def
-
Property svn:mime-type
set to
text/plain; charset=utf-8
-
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_rename.h
-
Property svn:mime-type
set to
text/plain; charset=utf-8
-
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_serial.c
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 10 10 * Nagoya Municipal Industrial Research Institute, JAPAN 11 11 * 12 * ä¸è¨èä½æ¨©è 13 ã¯ï¼ä»¥ä¸ã®(1)ã(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§ 14 * ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ã使ç¨ã»è¤è£½ã»æ¹ 15 * å¤ã»åé 16 å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼ 17 * (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½ 18 * 権表示ï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼ 19 * ã¹ã³ã¼ãä¸ã«å«ã¾ãã¦ãããã¨ï¼ 20 * (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 21 * ç¨ã§ããå½¢ã§åé 22 å¸ããå ´åã«ã¯ï¼åé 23 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨ 24 * è 25 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ 26 * ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 27 * (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 28 * ç¨ã§ããªãå½¢ã§åé 29 å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã 30 * ã¨ï¼ 31 * (a) åé 32 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨è 33 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è 34 * ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 35 * (b) åé 36 å¸ã®å½¢æ 37 ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSããã¸ã§ã¯ãã« 38 * å ±åãããã¨ï¼ 39 * (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ 40 * 害ãããï¼ä¸è¨èä½æ¨©è 41 ããã³TOPPERSããã¸ã§ã¯ããå 42 責ãããã¨ï¼ 43 * ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç 44 * ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è 45 ããã³TOPPERSããã¸ã§ã¯ãã 46 * å 47 責ãããã¨ï¼ 48 * 49 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 50 ã 51 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç 52 * ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ 53 * ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ã 54 * ã®è²¬ä»»ãè² ããªãï¼ 55 * 56 */ 57 58 /* 59 * ã·ãªã¢ã«ãã©ã¤ã 12 * 上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ 13 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 14 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する. 15 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作 16 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー 17 * スコード中に含まれていること. 18 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使 19 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用 20 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記 21 * の無保証規定を掲載すること. 22 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使 23 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ 24 * と. 25 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著 26 * 作権表示,この利用条件および下記の無保証規定を掲載すること. 27 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに 28 * 報告すること. 29 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損 30 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること. 31 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理 32 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 33 * 免責すること. 34 * 35 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 36 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 37 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 38 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 39 * の責任を負わない. 40 * 41 */ 42 43 /* 44 * シリアルドライバ 60 45 */ 61 46 … … 65 50 66 51 /* 67 * ã¬ã¸ã¹ã¿è¨å®å¤52 * レジスタ設定値 68 53 */ 69 54 #define PORT2SIOPID(x) ((x) + 1) … … 83 68 84 69 /* 85 * éä¿¡ãããã¡ã«ç©ºãããããï¼70 * 送信バッファに空きがあるか? 86 71 */ 87 72 Inline bool_t … … 92 77 93 78 /* 94 * åä¿¡ãããã¡ã«æåããããï¼79 * 受信バッファに文字があるか? 95 80 */ 96 81 Inline bool_t … … 101 86 102 87 /* 103 * åä¿¡ããæåã®ååºã88 * 受信した文字の取出し 104 89 */ 105 90 Inline char … … 110 95 111 96 /* 112 * éä¿¡ããæåã®æ¸è¾¼ã¿97 * 送信する文字の書込み 113 98 */ 114 99 Inline void … … 120 105 121 106 /* 122 * ã¿ã¼ã²ããã®ã·ãªã¢ã«åæå107 * ターゲットのシリアル初期化 123 108 */ 124 109 void target_low_output_init(ID siopid) … … 130 115 131 116 /* 132 * UART ããã£ã¹ã¨ã¼ãã«117 * UARTをディスエーブル 133 118 */ 134 119 sil_wrw_mem(UART_CR(inib->baseAddress), 0U); 135 120 136 121 /* 137 * ã¨ã©ã¼ãã©ã°ãã¯ãªã¢122 * エラーフラグをクリア 138 123 */ 139 124 sil_wrw_mem(UART_ECR(inib->baseAddress), 0U); 140 125 141 126 /* 142 * å²è¾¼ã¿ã¹ãã¼ã¿ã¹ãã¯ãªã¢127 * 割込みステータスをクリア 143 128 */ 144 129 sil_wrw_mem(UART_ICR(inib->baseAddress), 0U); … … 147 132 148 133 /* 149 * FIFO ã空ã«ãã134 * FIFOを空にする 150 135 */ 151 136 while (sio_getready(siopcb)) { … … 154 139 155 140 /* 156 * ãã¼ã¬ã¼ãã¨éä¿¡è¦æ ¼ãè¨å®141 * ボーレートと通信規格を設定 157 142 */ 158 143 sil_wrw_mem(UART_IBRD(inib->baseAddress), inib->ibrd); … … 161 146 162 147 /* 163 * UART ãã¤ãã¼ãã«148 * UARTをイネーブル 164 149 */ 165 150 sil_wrw_mem(UART_CR(inib->baseAddress), … … 168 153 169 154 /* 170 * SIO åæå155 * SIO初期化 171 156 */ 172 157 void sio_initialize(intptr_t exinf) … … 181 166 182 167 /* 183 * ã·ãªã¢ã«ãªã¼ãã³168 * シリアルオープン 184 169 */ 185 170 SIOPCB *sio_opn_por(ID siopid, intptr_t exinf) … … 196 181 target_low_output_init(siopid); 197 182 198 // åä¿¡ã³ã¼ã«ããã¯è¨±å¯183 // 受信コールバック許可 199 184 sio_ena_cbr(siopcb, SIO_RDY_RCV); 200 185 … … 203 188 204 189 /* 205 * ã·ãªã¢ã«ã¯ãã¼ãº190 * シリアルクローズ 206 191 */ 207 192 void sio_cls_por(SIOPCB *siopcb) 208 193 { 209 194 /* 210 * UART ããã£ã¹ã¨ã¼ãã«195 * UARTをディスエーブル 211 196 */ 212 197 sil_wrw_mem(UART_CR(siopcb->inib->baseAddress), 0U); … … 214 199 215 200 /* 216 * å²è¾¼ã¿ãã³ãã©201 * 割込みハンドラ 217 202 */ 218 203 void sio_isr(intptr_t exinf) … … 222 207 if (sio_getready(siopcb)) { 223 208 /* 224 * åä¿¡éç¥ã³ã¼ã«ããã¯ã«ã¼ãã³ãå¼ã³åºãï¼209 * 受信通知コールバックルーチンを呼び出す. 225 210 */ 226 211 sio_irdy_rcv(siopcb->exinf); … … 228 213 if (sio_putready(siopcb)) { 229 214 /* 230 * éä¿¡å¯è½ã³ã¼ã«ããã¯ã«ã¼ãã³ãå¼ã³åºãï¼215 * 送信可能コールバックルーチンを呼び出す. 231 216 */ 232 217 sio_irdy_snd(siopcb->exinf); … … 235 220 236 221 /* 237 * 1 æåéä¿¡222 * 1文字送信 238 223 */ 239 224 bool_t sio_snd_chr(SIOPCB *siopcb, char c) … … 247 232 248 233 /* 249 * 1 æååä¿¡234 * 1文字受信 250 235 */ 251 236 int_t sio_rcv_chr(SIOPCB *siopcb) … … 258 243 259 244 /* 260 * ã³ã¼ã«ããã¯ã®è¨±å¯245 * コールバックの許可 261 246 */ 262 247 void sio_ena_cbr(SIOPCB *siopcb, uint_t cbrtn) … … 280 265 281 266 /* 282 * ã³ã¼ã«ããã¯ã®ç¦æ¢267 * コールバックの禁止 283 268 */ 284 269 void sio_dis_cbr(SIOPCB *siopcb, uint_t cbrtn) … … 302 287 303 288 /* 304 * 1 æååºåï¼ãã¼ãªã³ã°ã§ã®åºåï¼289 * 1文字出力(ポーリングでの出力) 305 290 */ 306 291 void sio_pol_snd_chr(char c, ID siopid) -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_serial.cfg
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 1 1 /* 2 * SIO ãã©ã¤ãï¼CQ-FRK-FM3ç¨ï¼ã®ã³ã³ãã£ã°ã¬ã¼ã·ã§ã³ãã¡ã¤ã«2 * SIOドライバ(CQ-FRK-FM3用)のコンフィグレーションファイル 3 3 */ 4 4 -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_serial.h
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 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 責ãããã¨ï¼ 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 * 免責すること. 46 32 * 47 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 48 ã 49 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç 50 * ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ 51 * ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ã 52 * ã®è²¬ä»»ãè² ããªãï¼ 33 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 34 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 35 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 36 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 37 * の責任を負わない. 53 38 * 54 39 */ 55 40 56 41 /* 57 * ã·ãªã¢ã«I/Oããã¤ã¹(SIO)ãã©ã¤ã42 * シリアルI/Oデバイス(SIO)ドライバ 58 43 */ 59 44 … … 62 47 63 48 /* 64 * SIO ã®å²è¾¼ã¿è¨å®49 * SIOの割込み設定 65 50 */ 66 #define INTNO_SIO TINTNO_UART0 // å²è¾¼ã¿çªå· 67 #define INTATR_SIO TA_NULL // å²è¾¼ã¿å±æ§ 68 #define INTPRI_SIO (-2) // å²è¾¼ã¿åªå 69 度 51 #define INTNO_SIO TINTNO_UART0 // 割込み番号 52 #define INTATR_SIO TA_NULL // 割込み属性 53 #define INTPRI_SIO (-2) // 割込み優先度 70 54 71 55 /* 72 * ã³ã¼ã«ããã¯ã«ã¼ãã³ã®èå¥çªå·56 * コールバックルーチンの識別番号 73 57 */ 74 #define SIO_RDY_SND 1U /* éä¿¡å¯è½ã³ã¼ã«ããã¯*/75 #define SIO_RDY_RCV 2U /* åä¿¡éç¥ã³ã¼ã«ããã¯*/58 #define SIO_RDY_SND 1U /* 送信可能コールバック */ 59 #define SIO_RDY_RCV 2U /* 受信通知コールバック */ 76 60 77 61 #ifndef TOPPERS_MACRO_ONLY 78 62 79 63 /* 80 * ã·ãªã¢ã«ãã¼ãã®åæåãããã¯64 * シリアルポートの初期化ブロック 81 65 */ 82 66 typedef const struct tag_SIOPINIB { … … 88 72 89 73 /* 90 * ã·ãªã¢ã«ãã¼ãã®ç®¡çãããã¯74 * シリアルポートの管理ブロック 91 75 */ 92 76 typedef struct sio_port_control_block { … … 96 80 97 81 /* 98 * SIO åæå82 * SIO初期化 99 83 */ 100 84 extern void sio_initialize(intptr_t exinf); 101 85 102 86 /* 103 * ã·ãªã¢ã«ãªã¼ãã³87 * シリアルオープン 104 88 */ 105 89 extern SIOPCB *sio_opn_por(ID siopid, intptr_t exinf); 106 90 107 91 /* 108 * ã·ãªã¢ã«ã¯ãã¼ãº92 * シリアルクローズ 109 93 */ 110 94 extern void sio_cls_por(SIOPCB *p_siopcb); 111 95 112 96 /* 113 * å²è¾¼ã¿ãã³ãã©97 * 割込みハンドラ 114 98 */ 115 99 extern void sio_isr(intptr_t exinf); 116 100 117 101 /* 118 * 1 æåéä¿¡102 * 1文字送信 119 103 */ 120 104 extern bool_t sio_snd_chr(SIOPCB *siopcb, char c); 121 105 122 106 /* 123 * 1 æååä¿¡107 * 1文字受信 124 108 */ 125 109 extern int_t sio_rcv_chr(SIOPCB *siopcb); 126 110 127 111 /* 128 * ã³ã¼ã«ããã¯ã®è¨±å¯112 * コールバックの許可 129 113 */ 130 114 extern void sio_ena_cbr(SIOPCB *siopcb, uint_t cbrtn); 131 115 132 116 /* 133 * ã³ã¼ã«ããã¯ã®ç¦æ¢117 * コールバックの禁止 134 118 */ 135 119 extern void sio_dis_cbr(SIOPCB *siopcb, uint_t cbrtn); 136 120 137 121 /* 138 * éä¿¡å¯è½ã³ã¼ã«ããã¯122 * 送信可能コールバック 139 123 */ 140 124 extern void sio_irdy_snd(intptr_t exinf); 141 125 142 126 /* 143 * åä¿¡éç¥ã³ã¼ã«ããã¯127 * 受信通知コールバック 144 128 */ 145 129 extern void sio_irdy_rcv(intptr_t exinf); 146 130 147 131 /* 148 * 1 æåéä¿¡ï¼ãã¼ãªã³ã°ã§ã®åºåï¼132 * 1文字送信(ポーリングでの出力) 149 133 */ 150 134 extern void sio_pol_snd_chr(char c, ID siopid); 151 135 152 136 /* 153 * ä½ã¬ãã«åºååæå137 * 低レベル出力初期化 154 138 */ 155 139 extern void target_low_output_init(ID siopid); -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_sil.h
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 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 責ãããã¨ï¼ 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 * 免責すること. 46 32 * 47 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 48 ã 49 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç 50 * ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ 51 * ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ã 52 * ã®è²¬ä»»ãè² ããªãï¼ 33 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 34 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 35 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 36 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 37 * の責任を負わない. 53 38 * 54 39 */ 55 40 56 41 /* 57 * sil.h ã®ã¿ã¼ã²ããä¾åé¨ï¼QEMU-VIRTï¼42 * sil.hのターゲット依存部(QEMU-VIRT) 58 43 * 59 * ãã®ã¤ã³ã¯ã«ã¼ããã¡ã¤ã«ã¯ï¼sil.hã®å 60 é ã§ã¤ã³ã¯ã«ã¼ããããï¼ä»ã®ãã¡ 61 * ã¤ã«ããã¯ç´æ¥ã¤ã³ã¯ã«ã¼ããããã¨ã¯ãªãï¼ãã®ãã¡ã¤ã«ãã¤ã³ã¯ã«ã¼ 62 * ãããåã«ï¼t_stddef.hãã¤ã³ã¯ã«ã¼ããããã®ã§ï¼ãããã«ä¾åãã¦ã 63 * ããï¼ 44 * このインクルードファイルは,sil.hの先頭でインクルードされる.他のファ 45 * イルからは直接インクルードすることはない.このファイルをインクルー 46 * ドする前に,t_stddef.hがインクルードされるので,それらに依存しても 47 * よい. 64 48 */ 65 49 … … 70 54 71 55 /* 72 * ããã»ããµã§å 73 ±éãªå®ç¾© 56 * プロセッサで共通な定義 74 57 */ 75 58 #include "arm64_gcc/prc_sil.h" -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_stddef.h
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 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 責ãããã¨ï¼ 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 * 免責すること. 46 32 * 47 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 48 ã 49 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç 50 * ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ 51 * ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ã 52 * ã®è²¬ä»»ãè² ããªãï¼ 33 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 34 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 35 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 36 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 37 * の責任を負わない. 53 38 * 54 39 */ 55 40 56 41 /* 57 * t_stddef.h ã®ã¿ã¼ã²ããä¾åé¨(QEMU-VIRT)42 * t_stddef.hのターゲット依存部(QEMU-VIRT) 58 43 * 59 * ãã®ã¤ã³ã¯ã«ã¼ããã¡ã¤ã«ã¯ï¼t_stddef.hã®å 60 é ã§ã¤ã³ã¯ã«ã¼ããããï¼ 61 * ä»ã®ãã¡ã¤ã«ããã¯ç´æ¥ã¤ã³ã¯ã«ã¼ããããã¨ã¯ãªãï¼ä»ã®ã¤ã³ã¯ã«ã¼ã 62 * ãã¡ã¤ã«ã«å 63 ç«ã£ã¦å¦çãããããï¼ä»ã®ã¤ã³ã¯ã«ã¼ããã¡ã¤ã«ã«ä¾åã 64 * ã¦ã¯ãªããªãï¼ 44 * このインクルードファイルは,t_stddef.hの先頭でインクルードされる. 45 * 他のファイルからは直接インクルードすることはない.他のインクルード 46 * ファイルに先立って処理されるため,他のインクルードファイルに依存し 47 * てはならない. 65 48 */ 66 49 … … 69 52 70 53 /* 71 * ã¿ã¼ã²ãããèå¥ããããã®ãã¯ãã®å®ç¾©54 * ターゲットを識別するためのマクロの定義 72 55 */ 73 #define TOPPERS_QEMU_VIRT /* ã·ã¹ãã ç¥ç§°*/56 #define TOPPERS_QEMU_VIRT /* システム略称 */ 74 57 75 58 76 59 /* 77 * éçºç°å¢ã§å 78 ±éãªå®ç¾© 60 * 開発環境で共通な定義 79 61 */ 80 62 #define TOPPERS_STDFLOAT_TYPE1 … … 82 64 83 65 /* 84 * ããã»ããµã§å 85 ±éãªå®ç¾© 66 * プロセッサで共通な定義 86 67 */ 87 68 #include "arm64_gcc/prc_stddef.h" … … 90 71 91 72 /* 92 * ã¢ãµã¼ã·ã§ã³ã®å¤±ææã®å®è¡ä¸æå¦ç73 * アサーションの失敗時の実行中断処理 93 74 */ 94 75 Inline void -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_sym.def
-
Property svn:mime-type
set to
text/plain; charset=utf-8
-
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_syssvc.h
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 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 責ãããã¨ï¼ 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 * 免責すること. 46 32 * 47 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 48 ã 49 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç 50 * ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ 51 * ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ã 52 * ã®è²¬ä»»ãè² ããªãï¼ 33 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 34 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 35 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 36 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 37 * の責任を負わない. 53 38 * 54 39 */ 55 40 56 41 /* 57 * ã·ã¹ãã ãµã¼ãã¹ã®ã¿ã¼ã²ããä¾åé¨(QEMU-VIRTç¨)42 * システムサービスのターゲット依存部(QEMU-VIRT用) 58 43 * 59 * ã·ã¹ãã ãµã¼ãã¹ã®ã¿ã¼ã²ããä¾åé¨ã®ã¤ã³ã¯ã«ã¼ããã¡ã¤ã«ï¼44 * システムサービスのターゲット依存部のインクルードファイル. 60 45 */ 61 46 … … 64 49 65 50 /* 66 * ã¿ã¼ã²ããã·ã¹ãã ã®ãã¼ãã¦ã§ã¢è³æºã®å®ç¾©51 * ターゲットシステムのハードウェア資源の定義 67 52 */ 68 53 #include "qemu_virt.h" … … 70 55 71 56 /* 72 * ãã¬ã¼ã¹ãã°ã«é¢ããè¨å®57 * トレースログに関する設定 73 58 */ 74 59 #ifdef TOPPERS_TRACE_ENABLE … … 77 62 78 63 /* 79 * èµ·åã¡ãã»ã¼ã¸ã®ã¿ã¼ã²ããã·ã¹ãã å64 * 起動メッセージのターゲットシステム名 80 65 */ 81 66 #define TARGET_NAME "QEMU Virt(Cortex-A53)" 82 67 83 68 /* 84 * èµ·åã¡ãã»ã¼ã¸ã«ã¿ã¼ã²ããä¾åé¨ã®èä½æ¨©è¡¨ç¤ºã85 * 追å ããããã®ãã¯ãï¼69 * 起動メッセージにターゲット依存部の著作権表示を 70 * 追加するためのマクロ. 86 71 */ 87 72 #ifdef PRC_COPYRIGHT … … 90 75 91 76 /* 92 * ã·ã¹ãã ãã°ã®ä½ã¬ãã«åºåã®ããã®æååºå77 * システムログの低レベル出力のための文字出力 93 78 * 94 * ã¿ã¼ã²ããä¾åã®æ¹æ³ã§ï¼æåcã表示/åºå/ä¿åããï¼79 * ターゲット依存の方法で,文字cを表示/出力/保存する. 95 80 */ 96 81 extern void target_fput_log(char c); 97 82 98 83 /* 99 * ãµãã¼ãããã·ãªã¢ã«ãã¼ãã®æ°84 * サポートするシリアルポートの数 100 85 */ 101 86 #define TNUM_PORT (1) … … 103 88 104 89 /* 105 * 使ç¨ããã·ãªã¢ã«ãã¼ãID90 * 使用するシリアルポートID 106 91 */ 107 92 #define SIO_PORTID (1) -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_test.h
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 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 責ãããã¨ï¼ 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 * 免責すること. 46 32 * 47 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 48 ã 49 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç 50 * ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ 51 * ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ã 52 * ã®è²¬ä»»ãè² ããªãï¼ 33 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 34 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 35 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 36 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 37 * の責任を負わない. 53 38 * 54 39 */ 55 40 56 41 /* 57 * ãã¹ãããã°ã©ã ã®ã¿ã¼ã²ããä¾åå®ç¾©(QEMU-VIRT)42 * テストプログラムのターゲット依存定義(QEMU-VIRT) 58 43 */ 59 44 … … 65 50 66 51 /* 67 * 使ç¨ããã·ãªã¢ã«ãã¼ãID52 * 使用するシリアルポートID 68 53 */ 69 54 #define TASK_PORTID (1) 70 55 71 56 /* 72 * ããã»ããµä¾åã¢ã¸ã¥ã¼ã«(ARM64ç¨)57 * プロセッサ依存モジュール(ARM64用) 73 58 */ 74 59 #include "arm64_gcc/prc_test.h" -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_timer.cfg
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 1 1 /* 2 * ã¿ã¤ããã©ã¤ãã®ã³ã³ãã£ã®ã¥ã¬ã¼ã·ã§ã³ãã¡ã¤ã«2 * タイマドライバのコンフィギュレーションファイル 3 3 */ 4 4 -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_timer.h
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 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 責ãããã¨ï¼ 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 * 免責すること. 46 32 * 47 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 48 ã 49 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç 50 * ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ 51 * ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ã 52 * ã®è²¬ä»»ãè² ããªãï¼ 33 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 34 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 35 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 36 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 37 * の責任を負わない. 53 38 * 54 39 */ 55 40 56 41 /* 57 * ã¿ã¤ããã©ã¤ã(QEMU-VIRTç¨)42 * タイマドライバ(QEMU-VIRT用) 58 43 */ 59 44 … … 64 49 65 50 /* 66 * ã¿ã¤ãå¤ã®å 67 é¨è¡¨ç¾ã¨ããªç§åä½ã¨ã®å¤æ 51 * タイマ値の内部表現とミリ秒単位との変換 68 52 */ 69 53 #define TIMER_CLOCK (SYSTIC_CLOCK / 1000) 70 54 71 55 /* 72 * ã¿ã¤ãå²è¾¼ã¿ãã³ãã©ç»é²ã®ããã®å®æ°56 * タイマ割込みハンドラ登録のための定数 73 57 */ 74 #define INTPRI_TIMER (-6) /* å²è¾¼ã¿åªå 75 度 */ 76 #define INTATR_TIMER TA_NULL /* å²è¾¼ã¿å±æ§ */ 58 #define INTPRI_TIMER (-6) /* 割込み優先度 */ 59 #define INTATR_TIMER TA_NULL /* 割込み属性 */ 77 60 78 61 /* 79 * ããã»ããµä¾åé¨ã§å®ç¾©ãã62 * プロセッサ依存部で定義する 80 63 */ 81 64 #include "arm64_gcc/prc_timer.h" -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_unrename.h
-
Property svn:mime-type
set to
text/plain; charset=utf-8
-
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/target_user.txt
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 1 1 ===================================================================== 2 QEMU-VIRT ã¿ã¼ã²ããä¾åé¨ (ssp-1.3.0対å¿ï¼2 QEMU-VIRTターゲット依存部 (ssp-1.3.0対応) 3 3 Last Modified: '18/05/29 4 4 ===================================================================== 5 5 6 âæ¦è¦ 6 ○概要 7 7 8 QEMU-VIRT ã¿ã¼ã²ããä¾åé¨ã¯ï¼ããã»ããµã«Cortex-A53 ãæè¼ãã9 QEMU ã®ä»®æ³ãã¼ãVIRTããµãã¼ããã¦ããï¼8 QEMU-VIRTターゲット依存部は,プロセッサにCortex-A53 を搭載した 9 QEMUの仮想ボードVIRTをサポートしている. 10 10 11 11 12 âã«ã¼ãã«ã®ä½¿ç¨ãªã½ã¼ã¹ 12 ○カーネルの使用リソース 13 13 14 ã«ã¼ãã«ã¯ä»¥ä¸ã®ãªã½ã¼ã¹ã使ç¨ããï¼ 14 カーネルは以下のリソースを使用する. 15 15 16 ã»ROM 17 ã³ã¼ããé 18 ç½®ããï¼ 19 使ç¨éã¯ä½¿ç¨ããAPIã®æ°ã«ä¾åããï¼ 16 ・ROM 17 コードを配置する. 18 使用量は使用するAPIの数に依存する. 20 19 21 ã»RAM 22 ãã¼ã¿ãé 23 ç½®ããï¼ 24 使ç¨éã¯ãªãã¸ã§ã¯ãæ°ã«ä¾åããï¼ 20 ・RAM 21 データを配置する. 22 使用量はオブジェクト数に依存する. 25 23 26 ã»Generic Timer 27 ã«ã¼ãã«å 28 é¨ã®ãã£ãã¯ã®çæã«ç¨ããï¼ 24 ・Generic Timer 25 カーネル内部のティックの生成に用いる. 29 26 30 ã»UART0 (PL011)31 ã³ã³ã½ã¼ã«ã®åºåã«ä½¿ç¨ï¼27 ・UART0 (PL011) 28 コンソールの出力に使用. 32 29 33 âãããã°ç°å¢ 30 ○デバッグ環境 34 31 35 ãããã°ç°å¢ã¨ãã¦ï¼QEMUã®GDBãµã¼ãæ©è½ãå©ç¨ãã¦ï¼GDBã«ãããããã°ãå¯è½.32 デバッグ環境として,QEMUのGDBサーバ機能を利用して,GDBによるデバッグが可能. 36 33 37 âã³ã³ãã¤ã© 34 ○コンパイラ 38 35 39 GCC ã§åä½ç¢ºèªãè¡ã£ãï¼åä½ç¢ºèªãã GCC ã¯ï¼ä»¥ä¸ã®ãµã¤ããã40 ãã¤ããªããã±ã¼ã¸ããã¦ã³ãã¼ããããã¨ãã§ããï¼ 41 åä½ç¢ºèªãã¼ã¸ã§ã³ã¯ 5.3.1 ã§è¡ã£ãï¼ 36 GCC で動作確認を行った.動作確認した GCC は,以下のサイトから 37 バイナリパッケージをダウンロードすることができる. 38 動作確認バージョンは 5.3.1 で行った. 42 39 43 40 https://releases.linaro.org/components/toolchain/binaries/ 44 41 45 âå²è¾¼ã¿åªå 46 度 42 ○割込み優先度 47 43 48 å²è¾¼ã¿åªå 49 度ã¨ãã¦æå®å¯è½ãªç¯å²ã¯ï¼-15 ã -1 ã§ããï¼ 44 割込み優先度として指定可能な範囲は,-15 〜 -1 である. 50 45 51 âã³ã³ã½ã¼ã«åºå 46 ○コンソール出力 52 47 53 ã³ã³ã½ã¼ã«åºåã«ã¯ PrimeCell UART (PL011)ã使ç¨ããï¼ 48 コンソール出力には PrimeCell UART (PL011)を使用する. 54 49 55 éä¿¡ãã©ã¼ãããã¯ä»¥ä¸ã®éãã§ããï¼ 50 通信フォーマットは以下の通りである. 56 51 57 ã»38400bps, Data 8bit, Parity none, Stop 1bit, Flowå¶å¾¡ãªã52 ・38400bps, Data 8bit, Parity none, Stop 1bit, Flow制御なし 58 53 59 54 60 âå種è¨å®ã®å¤æ´ 55 ○各種設定の変更 61 56 62 å¹¾ã¤ãã®ãã©ã¡ã¼ã¿ã¯å¤æ´å¯è½ã«ãªã£ã¦ããï¼è¨å®ãã¡ã¤ã«æ¯ã«è¨å®å¯è½é 63 ç® 64 ã¯æ¬¡ã®ããã«ãªã£ã¦ããï¼ 57 幾つかのパラメータは変更可能になっている.設定ファイル毎に設定可能項目 58 は次のようになっている. 65 59 66 âMakefile.target ã®è¨å®é 67 ç® 60 ●Makefile.target の設定項目 68 61 69 ã»GCC_TARGET70 GCC ã® target triplet ãå®ç¾©62 ・GCC_TARGET 63 GCCの target triplet を定義 71 64 72 ã»TEXT_START_ADDRESS/DATA_START_ADDRESS73 ããã¹ãã»ã¯ã·ã§ã³ï¼ãã¼ã¿ã»ã¯ã·ã§ã³ã®éå§ã¢ãã¬ã¹65 ・TEXT_START_ADDRESS/DATA_START_ADDRESS 66 テキストセクション,データセクションの開始アドレス 74 67 75 ã»INCLUDES76 ã¤ã³ã¯ã«ã¼ãæå®68 ・INCLUDES 69 インクルード指定 77 70 78 ã»COPTS79 C ã³ã³ãã¤ã©ã¸ã®ãªãã·ã§ã³71 ・COPTS 72 Cコンパイラへのオプション 80 73 81 ã»LDFLAGS82 ãªã³ã«ã¸ã®ãªãã·ã§ã³74 ・LDFLAGS 75 リンカへのオプション 83 76 84 âtarget_config.h ã®è¨å®é 85 ç® 77 ●target_config.h の設定項目 86 78 87 ã»DEFAULT_ISTKSZ88 ããã©ã«ãã®éã¿ã¹ã¯ã³ã³ããã¹ãç¨ã®ã¹ã¿ãã¯ãµã¤ãº79 ・DEFAULT_ISTKSZ 80 デフォルトの非タスクコンテキスト用のスタックサイズ 89 81 90 âåä½ç¢ºèªæ¹æ³ 82 ○動作確認方法 91 83 92 â QEMUãç¨ãã¦åä½ã確èªããå ´åï¼ä»¥ä¸ã®ããã«ã³ãã³ããå®è¡ããï¼ 84 ● QEMUを用いて動作を確認する場合,以下のようにコマンドを実行する. 93 85 94 ( å®è¡ä¾)86 (実行例) 95 87 $ qemu-system-aarch64 -M virt -cpu cortex-a53 -serial stdio -kernel ssp 96 88 … … 107 99 108 100 109 â GDBã«ãããããã°æé 101 ● GDBによるデバッグ手順 110 102 111 GDB ãç¨ãããããã°ãè¡ãå ´åï¼ã·ã§ã«ã2ã¤ç¨æããï¼112 ä¸ã¤ã¯qemuãèµ·åãGDBãµã¼ãã¨ãã¦èµ·åããï¼ 103 GDBを用いたデバッグを行う場合,シェルを2つ用意する. 104 一つはqemuを起動しGDBサーバとして起動する. 113 105 114 (1 ã¤ç®ã®ã·ã§ã«)106 (1つ目のシェル) 115 107 $ qemu-system-aarch64 -M virt -cpu cortex-a53 -serial stdio -s -S 116 108 VNC server running on 127.0.0.1:5900 117 109 118 ãã㧠localhost:1234 ã§GDBãµã¼ããæ¥ç¶ãå¾ 119 ã¡åããç¶æ 120 ã«ãªãï¼ 110 これで localhost:1234 でGDBサーバが接続を待ち受ける状態になる. 121 111 122 ããä¸ã¤ã®ã·ã§ã«ã§GDBãèµ·åãï¼GDBãµã¼ãã«æ¥ç¶ããï¼ 112 もう一つのシェルでGDBを起動し,GDBサーバに接続する. 123 113 124 (2 ã¤ç®ã®ã·ã§ã«)114 (2つ目のシェル) 125 115 $ aarch-elf-gdb ssp 126 116 (gdb) 127 117 128 ããã§å種ã®è¨å®ï¼ãµã¼ãã¸ã®æ¥ç¶ï¼ãã¼ããè¡ãã¨ã¹ããããå®è¡çã® 129 ãããã°åä½ãè¡ããã¨ãã§ããï¼ 118 ここで各種の設定,サーバへの接続,ロードを行うとステップや実行等の 119 デバッグ動作を行うことができる. 130 120 131 121 (gdb) set architecture aarch64 … … 149 139 Continuing. 150 140 151 'c' ã³ãã³ãã§å®è¡ãç¶ç¶ããã¨ï¼GDBãµã¼ãå´ã®ç»é¢ã«ã·ãªã¢ã«ã¡ãã»ã¼ã¸ã表示ãããï¼ 152 ãã¼å 153 ¥åããµã¼ãå´ã®ã·ã§ã«ç»é¢ã§è¡ãï¼ 141 'c' コマンドで実行を継続すると,GDBサーバ側の画面にシリアルメッセージが表示される. 142 キー入力もサーバ側のシェル画面で行う. 154 143 155 qemu ãçµäºããå ´åã¯Ctrl-Cã§çµäºããï¼156 gdb ãçµäºããå ´åã¯ããã³ããã§'q'ã³ãã³ããå®è¡ãã¦çµäºããï¼144 qemuを終了する場合はCtrl-Cで終了する. 145 gdb を終了する場合はプロンプトで'q'コマンドを実行して終了する. 157 146 158 147 159 âå¤æ´å±¥æ´ 160 ã»2018/05/29161 ããæ°è¦ä½æ 148 ○変更履歴 149 ・2018/05/29 150 新規作成 -
Property svn:mime-type
set to
-
ssp_aarch64/trunk/qemu_virt_gcc/uart_pl011.h
-
Property svn:mime-type
set to
text/plain; charset=utf-8
r353 r356 11 11 * Nagoya Municipal Industrial Research Institute, JAPAN 12 12 * 13 * ä¸è¨èä½æ¨©è 14 ã¯ï¼ä»¥ä¸ã®(1)ã(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§ 15 * ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ã使ç¨ã»è¤è£½ã»æ¹ 16 * å¤ã»åé 17 å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼ 18 * (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½ 19 * 権表示ï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼ 20 * ã¹ã³ã¼ãä¸ã«å«ã¾ãã¦ãããã¨ï¼ 21 * (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 22 * ç¨ã§ããå½¢ã§åé 23 å¸ããå ´åã«ã¯ï¼åé 24 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨ 25 * è 26 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ 27 * ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 28 * (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 29 * ç¨ã§ããªãå½¢ã§åé 30 å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã 31 * ã¨ï¼ 32 * (a) åé 33 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨è 34 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è 35 * ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 36 * (b) åé 37 å¸ã®å½¢æ 38 ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSããã¸ã§ã¯ãã« 39 * å ±åãããã¨ï¼ 40 * (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ 41 * 害ãããï¼ä¸è¨èä½æ¨©è 42 ããã³TOPPERSããã¸ã§ã¯ããå 43 責ãããã¨ï¼ 44 * ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç 45 * ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è 46 ããã³TOPPERSããã¸ã§ã¯ãã 47 * å 48 責ãããã¨ï¼ 13 * 上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ 14 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 15 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する. 16 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作 17 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー 18 * スコード中に含まれていること. 19 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使 20 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用 21 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記 22 * の無保証規定を掲載すること. 23 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使 24 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ 25 * と. 26 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著 27 * 作権表示,この利用条件および下記の無保証規定を掲載すること. 28 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに 29 * 報告すること. 30 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損 31 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること. 32 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理 33 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 34 * 免責すること. 49 35 * 50 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 51 ã 52 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç 53 * ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ 54 * ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ã 55 * ã®è²¬ä»»ãè² ããªãï¼ 36 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 37 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 38 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 39 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 40 * の責任を負わない. 56 41 * 57 42 * $Id: uart_pl011.h 509 2016-01-12 06:06:14Z ertl-hiro $ … … 59 44 60 45 /* 61 * ARM PrimCell UART ï¼PL011ï¼ã«é¢ããå®ç¾©46 * ARM PrimCell UART(PL011)に関する定義 62 47 */ 63 48 … … 66 51 67 52 /* 68 * UART ã¬ã¸ã¹ã¿ã®çªå°ã®å®ç¾©53 * UARTレジスタの番地の定義 69 54 */ 70 55 #define UART_DR(base) ((uint32_t *)((base) + 0x00U)) … … 83 68 84 69 /* 85 * ãã©ã°ã¬ã¸ã¹ã¿ï¼UART_FRï¼ã®åç 86 §å¤ 70 * フラグレジスタ(UART_FR)の参照値 87 71 */ 88 #define UART_FR_RXFE UINT_C(0x10) /* åä¿¡ãããã¡ã空*/89 #define UART_FR_TXFF UINT_C(0x20) /* éä¿¡ãããã¡ããã«*/72 #define UART_FR_RXFE UINT_C(0x10) /* 受信バッファが空 */ 73 #define UART_FR_TXFF UINT_C(0x20) /* 送信バッファがフル */ 90 74 91 75 /* 92 * ã©ã¤ã³å¶å¾¡ã¬ã¸ã¹ã¿ï¼UART_LCR_Hï¼ã®è¨å®å¤76 * ライン制御レジスタ(UART_LCR_H)の設定値 93 77 */ 94 #define UART_LCR_H_PEN UINT_C(0x02) /* ããªãã£ãç¨ãã*/95 #define UART_LCR_H_EPS UINT_C(0x04) /* å¶æ°ããªãã£ã«*/96 #define UART_LCR_H_STP2 UINT_C(0x08) /* ã¹ããããããã2ãããã«*/97 #define UART_LCR_H_FEN UINT_C(0x10) /* FIFO ãæå¹ã«*/98 #define UART_LCR_H_WLEN8 UINT_C(0x60) /* ãã¼ã¿é·ã8ãããã«*/78 #define UART_LCR_H_PEN UINT_C(0x02) /* パリティを用いる */ 79 #define UART_LCR_H_EPS UINT_C(0x04) /* 偶数パリティに */ 80 #define UART_LCR_H_STP2 UINT_C(0x08) /* ストップビットを2ビットに */ 81 #define UART_LCR_H_FEN UINT_C(0x10) /* FIFOを有効に */ 82 #define UART_LCR_H_WLEN8 UINT_C(0x60) /* データ長を8ビットに */ 99 83 100 84 /* 101 * å¶å¾¡ã¬ã¸ã¹ã¿ï¼UART_CRï¼ã®è¨å®å¤85 * 制御レジスタ(UART_CR)の設定値 102 86 */ 103 #define UART_CR_UARTEN UINT_C(0x0001) /* UART ãã¤ãã¼ãã«ã«*/104 #define UART_CR_TXE UINT_C(0x0100) /* éä¿¡ãã¤ãã¼ãã«ã«*/105 #define UART_CR_RXE UINT_C(0x0200) /* åä¿¡ãã¤ãã¼ãã«ã«*/87 #define UART_CR_UARTEN UINT_C(0x0001) /* UARTをイネーブルに */ 88 #define UART_CR_TXE UINT_C(0x0100) /* 送信をイネーブルに */ 89 #define UART_CR_RXE UINT_C(0x0200) /* 受信をイネーブルに */ 106 90 107 91 /* 108 * å²è¾¼ã¿ãã¹ã¯ã»ããï¼ã¯ãªã¢ã¬ã¸ã¹ã¿ï¼UART_IMSCï¼ã®è¨å®å¤92 * 割込みマスクセット/クリアレジスタ(UART_IMSC)の設定値 109 93 */ 110 #define UART_IMSC_RXIM UINT_C(0x0010) /* åä¿¡å²è¾¼ã¿ãã¹ã¯*/111 #define UART_IMSC_TXIM UINT_C(0x0020) /* éä¿¡å²è¾¼ã¿ãã¹ã¯*/94 #define UART_IMSC_RXIM UINT_C(0x0010) /* 受信割込みマスク */ 95 #define UART_IMSC_TXIM UINT_C(0x0020) /* 送信割込みマスク */ 112 96 113 97 #ifndef TOPPERS_MACRO_ONLY -
Property svn:mime-type
set to
Note:
See TracChangeset
for help on using the changeset viewer.