t-kernel-zh team mailing list archive
-
t-kernel-zh team
-
Mailing list archive
-
Message #00011
[open t-monitor] ARMCT 编译支持(KEIL ARMCC)
开始增加使用 ARMCT 编译 t-monitor 的支持。
----------------------------------------------------------------------
>From f15af856a1b66512f78f530ff0856a64c369b38a Mon Sep 17 00:00:00 2001
From: Du Huanpeng <u74147@xxxxxxxxx>
Date: Tue, 10 Jan 2017 00:22:58 +0800
Subject: [PATCH] armct support: add Makefile for tmonitor
Signed-off-by: Du Huanpeng <u74147@xxxxxxxxx>
---
tkernel_source/monitor/Makefile.armct | 184 ++++++++++++++++++++++++++++++++++
1 file changed, 184 insertions(+)
create mode 100644 tkernel_source/monitor/Makefile.armct
diff --git a/tkernel_source/monitor/Makefile.armct b/tkernel_source/monitor/Makefile.armct
new file mode 100644
index 0000000..93a92be
--- /dev/null
+++ b/tkernel_source/monitor/Makefile.armct
@@ -0,0 +1,184 @@
+
+# SRC += hwdepend/arm/cpu/cpuctrl2.S
+# SRC += hwdepend/arm/cpu/eitent-start.S
+# SRC += hwdepend/arm/cpu/eitent.S
+# SRC += hwdepend/arm/cpu/monhdr.S
+# SRC += hwdepend/arm/cpu/monitor-handler.S
+# SRC += hwdepend/arm/cpu/reset-reset.S
+# SRC += hwdepend/arm/cpu/reset-setupc.S
+
+# SRC += hwdepend/mips/mach-m150/boot/eitent.S
+# SRC += hwdepend/mips/mach-m150/command.c
+# SRC += hwdepend/mips/mach-m150/console.c
+# SRC += hwdepend/mips/mach-m150/m150_serial.c
+# SRC += hwdepend/mips/mach-m150/printf.c
+# SRC += hwdepend/mips/mach-m150/sio.c
+# SRC += hwdepend/mips/mach-m150/startup.c
+# SRC += hwdepend/mips/mach-m150/string.c
+# SRC += hwdepend/mips/mach-m150/svc.c
+# SRC += hwdepend/mips/mach-m150/system.c
+
+# SRC += hwdepend/arm/mach-acd2/chkaddr.c
+# SRC += hwdepend/arm/mach-acd2/config.c
+# SRC += hwdepend/arm/mach-acd2/cpuctrl.c
+# SRC += hwdepend/arm/mach-acd2/diskio.c
+# SRC += hwdepend/arm/mach-acd2/eitent-interrupts.c
+# SRC += hwdepend/arm/mach-acd2/eitproc.c
+# SRC += hwdepend/arm/mach-acd2/hwinfo.c
+# SRC += hwdepend/arm/mach-acd2/memattr.S
+# SRC += hwdepend/arm/mach-acd2/misc.c
+# SRC += hwdepend/arm/mach-acd2/reset-lowlevel.S
+# SRC += hwdepend/arm/mach-acd2/system.c
+# SRC += hwdepend/arm/mach-acd2/waitusec.c
+# SRC += hwdepend/arm/mach-asm9/chkaddr.c
+# SRC += hwdepend/arm/mach-asm9/config.c
+# SRC += hwdepend/arm/mach-asm9/cpuctrl.c
+# SRC += hwdepend/arm/mach-asm9/diskio.c
+# SRC += hwdepend/arm/mach-asm9/eitproc.c
+# SRC += hwdepend/arm/mach-asm9/hwinfo.c
+# SRC += hwdepend/arm/mach-asm9/memattr.S
+# SRC += hwdepend/arm/mach-asm9/misc.c
+# SRC += hwdepend/arm/mach-asm9/reset-lowlevel.S
+# SRC += hwdepend/arm/mach-asm9/system.c
+# SRC += hwdepend/arm/mach-asm9/waitusec.c
+# SRC += hwdepend/arm/mach-em1d/chkaddr.c
+# SRC += hwdepend/arm/mach-em1d/config.c
+# SRC += hwdepend/arm/mach-em1d/cpuctrl.c
+# SRC += hwdepend/arm/mach-em1d/diskio.c
+# SRC += hwdepend/arm/mach-em1d/eitproc.c
+# SRC += hwdepend/arm/mach-em1d/hwinfo.c
+# SRC += hwdepend/arm/mach-em1d/memattr.S
+# SRC += hwdepend/arm/mach-em1d/misc.c
+# SRC += hwdepend/arm/mach-em1d/reset.S
+# SRC += hwdepend/arm/mach-em1d/startup.c
+# SRC += hwdepend/arm/mach-em1d/system.c
+# SRC += hwdepend/arm/mach-em1d/waitusec.c
+SRC += hwdepend/arm/mach-mx28/chkaddr.c
+# SRC += hwdepend/arm/mach-mx28/config.c
+SRC += hwdepend/arm/mach-mx28/cpuctrl.c
+# SRC += hwdepend/arm/mach-mx28/diskio.c
+SRC += hwdepend/arm/mach-mx28/eitproc.c
+SRC += hwdepend/arm/mach-mx28/hwinfo.c
+# SRC += hwdepend/arm/mach-mx28/icoll.c
+# SRC += hwdepend/arm/mach-mx28/memattr.S
+SRC += hwdepend/arm/mach-mx28/misc.c
+# SRC += hwdepend/arm/mach-mx28/reset-lowlevel.S
+SRC += hwdepend/arm/mach-mx28/system.c
+SRC += hwdepend/arm/mach-mx28/waitusec.c
+# SRC += hwdepend/arm/mach-sam9/chkaddr.c
+# SRC += hwdepend/arm/mach-sam9/config.c
+# SRC += hwdepend/arm/mach-sam9/cpuctrl.c
+# SRC += hwdepend/arm/mach-sam9/diskio.c
+# SRC += hwdepend/arm/mach-sam9/eitproc.c
+# SRC += hwdepend/arm/mach-sam9/hwinfo.c
+# SRC += hwdepend/arm/mach-sam9/memattr.S
+# SRC += hwdepend/arm/mach-sam9/misc.c
+# SRC += hwdepend/arm/mach-sam9/reset-lowlevel.S
+# SRC += hwdepend/arm/mach-sam9/system.c
+# SRC += hwdepend/arm/mach-sam9/waitusec.c
+SRC += hwdepend/arm/misc.c
+SRC += hwdepend/arm/monent.c
+
+
+SRC += cmdsvc/boot.c
+SRC += cmdsvc/break.c
+SRC += cmdsvc/command.c
+SRC += cmdsvc/console.c
+SRC += cmdsvc/disassemble.c
+SRC += cmdsvc/helpmsg.c
+SRC += cmdsvc/load.c
+SRC += cmdsvc/memory.c
+SRC += cmdsvc/register.c
+SRC += cmdsvc/step.c
+SRC += cmdsvc/svc.c
+SRC += cmdsvc/wrkbuf.c
+SRC += driver/flash/cfi.c
+SRC += driver/flash/cfi_16x1.c
+SRC += driver/flash/main.c
+SRC += driver/flash/reset-em1d.c
+SRC += driver/flash/setup-em1d.c
+SRC += driver/memdisk/memdsk.c
+# SRC += driver/sio/ns16550.c
+# SRC += driver/sio/sio-acd2.c
+# SRC += driver/sio/sio-asm9.c
+SRC += driver/sio/sio-mx28.c
+# SRC += driver/sio/sio-sam9.c
+SRC += driver/sio/sio.c
+
+SRC += lib/printk.c
+SRC += lib/raise.c
+SRC += lib/string-gpl.c
+SRC += lib/string.c
+SRC += tmmain/kernel.c
+# SRC += tmmain/monkey.S
+SRC += tmmain/startup.c
+SRC += tmmain/version.c
+
+OBJ := $(SRC)
+OBJ := $(OBJ:.S=.o)
+OBJ := $(OBJ:.c=.o)
+
+
+
+CC := armcc
+
+ARCH :=arm
+MACH :=mach-mx28
+
+TMONXINCLUDE += -Ihwdepend/arm/$(MACH)/include
+TMONXINCLUDE += -Ihwdepend/arm/include
+TMONXINCLUDE += -Iinclude
+TMONXINCLUDE += -Ihwdepend/arm/$(MACH)
+TMONXINCLUDE += -Icmdsvc
+TMONXINCLUDE += -I../sysdepend/arm/include
+TMONXINCLUDE += -I../include
+###############################################################
+CFLAGS += --cpu=ARM926EJ-S
+CFLAGS += --arm
+CFLAGS += --apcs=/interwork
+CFLAGS += --diag_error=warning
+# CFLAGS += --diag_suppress=nnnn
+CFLAGS += --diag_suppress=68,167,177,111,188
+# CFLAGS += --strict
+# CFLAGS += --long_long
+# CFLAGS += --strict_warnings
+# CFLAGS += --extended_initializers
+# CFLAGS += --no_extended_initializers
+###############################################################
+CFLAGS += -D_TEF_EM1D_
+CFLAGS += -D__ARM__
+CFLAGS += -D__TMONITOR__
+CFLAGS += -DCONFIG_MACH_MX28
+CFLAGS += -DCONFIG_TM_MONKEY
+CFLAGS += -D__TRON_ARM_ARCH=5
+CFLAGS += -DCONFIG_SKIP_LOWLEVEL
+CFLAGS += -DCONFIG_TM_DELAY64US=256
+CFLAGS += -DCONFIG_TM_INIT_SP="(0x00020000-0x10)"
+CFLAGS += -DCONFIG_TM_STACK_TOP=0x44000000
+CFLAGS += -DCONFIG_TM_STACK_SIZE=0x00080000
+CFLAGS += -DCONFIG_TM_HEAP_TOP=0
+CFLAGS += -DCONFIG_TM_HEAP_SIZE=0
+CFLAGS += -DCONFIG_TM_SIO
+CFLAGS += -DCONFIG_TM_DISK
+CFLAGS += -DCONFIG_TM_FLASHROM
+CFLAGS += -DCONFIG_TM_BAUD_RATE=115200
+CFLAGS += -DCONFIG_TM_EARLY_PRINTK
+CFLAGS += -DCONFIG_TM_WRKBUF_SZ="(1<<10)"
+CFLAGS += -DCONFIG_EIT_VECTBL=0
+CFLAGS += -D__WIP_CC_ARM
+###############################################################
+CFLAGS += $(TMONXINCLUDE)
+
+.PHONY: all
+all: vmtmonx
+
+vmtmonx: $(OBJ)
+
+%.o: %.c
+ $(CC) $(CFLAGS) $< -c -o $@
+
+%.o: %.S
+ $(CC) $(CFLAGS) $< -c -o $@
+
+clean:
+ rm -f $(OBJ)
--
2.7.4
----------------------------------------------------------------------
----------------------------------------------------------------------
>From 4c121b493b17c182c2386b95c70cff9cadfeb05b Mon Sep 17 00:00:00 2001
From: Du Huanpeng <u74147@xxxxxxxxx>
Date: Tue, 10 Jan 2017 00:26:04 +0800
Subject: [PATCH] armct support: fix cmpile error reported by armct
Signed-off-by: Du Huanpeng <u74147@xxxxxxxxx>
---
tkernel_source/monitor/cmdsvc/command.c | 2 +-
tkernel_source/monitor/cmdsvc/memory.c | 4 +++-
tkernel_source/monitor/cmdsvc/svc.c | 5 ++---
tkernel_source/monitor/hwdepend/arm/misc.c | 3 ++-
tkernel_source/monitor/tmmain/kernel.c | 2 +-
5 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/tkernel_source/monitor/cmdsvc/command.c b/tkernel_source/monitor/cmdsvc/command.c
index db58ecb..b71db5e 100644
--- a/tkernel_source/monitor/cmdsvc/command.c
+++ b/tkernel_source/monitor/cmdsvc/command.c
@@ -1178,7 +1178,7 @@ LOCAL const CMDTAB cmdTab[] = {
{"HELP ","H ", cmdHelp, 0, &helpH },
{"HELP ","? ", cmdHelp, 0, &helpH },
{"EXIT ","EX ", cmdExit, 0, &helpEX },
- { } /* end */
+ {" "," ", NULL, 0, NULL } /* end */
};
/*
searching command
diff --git a/tkernel_source/monitor/cmdsvc/memory.c b/tkernel_source/monitor/cmdsvc/memory.c
index dd9ffb9..0ada39b 100644
--- a/tkernel_source/monitor/cmdsvc/memory.c
+++ b/tkernel_source/monitor/cmdsvc/memory.c
@@ -109,10 +109,12 @@ EXPORT W writeMem(UW addr, void *buf, W len, W unit)
/*
read character string
*/
-EXPORT W readMemStr(UW addr, void *buf, W len)
+EXPORT W readMemStr(UW addr, void *buffer, W len)
{
W i, n, alen;
UW pa;
+ UB *buf = buffer;
+
for (alen = 0; alen < len; alen += i) {
/* memory address check & conversion to physical address */
diff --git a/tkernel_source/monitor/cmdsvc/svc.c b/tkernel_source/monitor/cmdsvc/svc.c
index 8839a2c..9b264ac 100644
--- a/tkernel_source/monitor/cmdsvc/svc.c
+++ b/tkernel_source/monitor/cmdsvc/svc.c
@@ -67,7 +67,7 @@ LOCAL BOOL callSubModuleSVC( ESVCFUNC func, W fno, W p1, W p2, W p3, W *er )
*/
LOCAL W procExtSVC( W fno, W p1, W p2, W p3 )
{
- W er;
+ W er = E_PAR;
switch ( fno ) {
case TMEF_PORTBPS: /* debug port speed (bps) */
@@ -86,8 +86,7 @@ LOCAL W procExtSVC( W fno, W p1, W p2, W p3 )
CALL_ESVC(sysExtSVC) ||
CALL_ESVC(usbSVC) ||
CALL_ESVC(pciSVC) ||
- CALL_ESVC(memDiskSVC) ||
- (er = E_PAR);
+ CALL_ESVC(memDiskSVC);
}
return er;
diff --git a/tkernel_source/monitor/hwdepend/arm/misc.c b/tkernel_source/monitor/hwdepend/arm/misc.c
index 7692541..591304f 100644
--- a/tkernel_source/monitor/hwdepend/arm/misc.c
+++ b/tkernel_source/monitor/hwdepend/arm/misc.c
@@ -27,7 +27,7 @@ EXPORT void callUserResetInit( void )
{
printk("%s:%s\n", __FILE__, __func__);
return ;
-
+#ifndef __CC_ARM
UW wp = (UW)ROMInfo->resetinit;
if ( invalidPC2(wp)
@@ -35,6 +35,7 @@ EXPORT void callUserResetInit( void )
|| inMemArea(wp, wp+4, MSA_MON) ) return; /* invalid */
callExtProg(ROMInfo->resetinit);
+#endif
}
/*
diff --git a/tkernel_source/monitor/tmmain/kernel.c b/tkernel_source/monitor/tmmain/kernel.c
index 172a9ed..7712ef3 100644
--- a/tkernel_source/monitor/tmmain/kernel.c
+++ b/tkernel_source/monitor/tmmain/kernel.c
@@ -35,10 +35,10 @@ int do_fiq(int r0, int r1, int r2, int r3)
{
static int rand = 0;
int vec;
+ void (*isr)();
rand++;
- void (*isr)();
isr = (void *)in_w(0x80000000);
--
2.7.4
----------------------------------------------------------------------
--
Copyright (c) 2017 duhuanpeng <u74147@xxxxxxxxx>