From 7c7e795bdc6fbef5e7f230c05979d94da8ff8b06 Mon Sep 17 00:00:00 2001 From: rusefi Date: Wed, 29 Mar 2017 20:39:58 -0400 Subject: [PATCH] reducing size further --- demos/SPC5/NIL-SPC560D-EVB/.cproject | 57 -- demos/SPC5/NIL-SPC560D-EVB/.project | 43 -- demos/SPC5/NIL-SPC560D-EVB/Makefile | 179 ------ ...pc560b_spc560d40_minimodule_debug_jtag.cfg | 160 ------ demos/SPC5/NIL-SPC560D-EVB/halconf.h | 388 ------------- demos/SPC5/NIL-SPC560D-EVB/main.c | 149 ----- demos/SPC5/NIL-SPC560D-EVB/mcuconf.h | 153 ----- demos/SPC5/NIL-SPC560D-EVB/nilconf.h | 179 ------ demos/SPC5/RT-SPC560B-EVB/.cproject | 57 -- demos/SPC5/RT-SPC560B-EVB/.project | 43 -- demos/SPC5/RT-SPC560B-EVB/Makefile | 188 ------- demos/SPC5/RT-SPC560B-EVB/UDE/debug.wsx | 273 --------- .../stm_xpc560b64_minimodule_debug_jtag.cfg | 156 ------ demos/SPC5/RT-SPC560B-EVB/chconf.h | 499 ----------------- demos/SPC5/RT-SPC560B-EVB/halconf.h | 388 ------------- demos/SPC5/RT-SPC560B-EVB/main.c | 202 ------- demos/SPC5/RT-SPC560B-EVB/mcuconf.h | 273 --------- demos/SPC5/RT-SPC560D-EVB/.cproject | 57 -- demos/SPC5/RT-SPC560D-EVB/.project | 43 -- demos/SPC5/RT-SPC560D-EVB/Makefile | 188 ------- demos/SPC5/RT-SPC560D-EVB/UDE/debug.wsx | 273 --------- ...pc560b_spc560d40_minimodule_debug_jtag.cfg | 165 ------ demos/SPC5/RT-SPC560D-EVB/chconf.h | 499 ----------------- demos/SPC5/RT-SPC560D-EVB/cw/ch/ch.lcf | 156 ------ demos/SPC5/RT-SPC560D-EVB/cw/ch/ch.mcp | Bin 61993 -> 0 bytes demos/SPC5/RT-SPC560D-EVB/halconf.h | 388 ------------- demos/SPC5/RT-SPC560D-EVB/main.c | 202 ------- demos/SPC5/RT-SPC560D-EVB/mcuconf.h | 153 ----- demos/SPC5/RT-SPC560P-EVB/.cproject | 57 -- demos/SPC5/RT-SPC560P-EVB/.project | 43 -- demos/SPC5/RT-SPC560P-EVB/Makefile | 188 ------- demos/SPC5/RT-SPC560P-EVB/UDE/debug.wsx | 273 --------- ...tm_xpc560p_minimodule_40mhz_debug_jtag.cfg | 110 ---- demos/SPC5/RT-SPC560P-EVB/chconf.h | 499 ----------------- demos/SPC5/RT-SPC560P-EVB/halconf.h | 388 ------------- demos/SPC5/RT-SPC560P-EVB/main.c | 202 ------- demos/SPC5/RT-SPC560P-EVB/mcuconf.h | 194 ------- demos/SPC5/RT-SPC563M-EVB/.cproject | 57 -- demos/SPC5/RT-SPC563M-EVB/.project | 43 -- demos/SPC5/RT-SPC563M-EVB/Makefile | 188 ------- demos/SPC5/RT-SPC563M-EVB/UDE/debug.wsx | 273 --------- .../stm_xpc563m64_minimodule_debug_jtag.cfg | 185 ------- demos/SPC5/RT-SPC563M-EVB/chconf.h | 499 ----------------- demos/SPC5/RT-SPC563M-EVB/halconf.h | 388 ------------- demos/SPC5/RT-SPC563M-EVB/main.c | 185 ------- demos/SPC5/RT-SPC563M-EVB/mcuconf.h | 158 ------ demos/SPC5/RT-SPC564A-EVB/.cproject | 57 -- demos/SPC5/RT-SPC564A-EVB/.project | 43 -- demos/SPC5/RT-SPC564A-EVB/Makefile | 188 ------- demos/SPC5/RT-SPC564A-EVB/UDE/debug.wsx | 275 --------- ...pc564a_spc564a70_minimodule_debug_jtag.cfg | 194 ------- demos/SPC5/RT-SPC564A-EVB/chconf.h | 499 ----------------- demos/SPC5/RT-SPC564A-EVB/halconf.h | 388 ------------- demos/SPC5/RT-SPC564A-EVB/main.c | 185 ------- demos/SPC5/RT-SPC564A-EVB/mcuconf.h | 188 ------- demos/SPC5/RT-SPC56EC-EVB/.cproject | 57 -- demos/SPC5/RT-SPC56EC-EVB/.project | 43 -- demos/SPC5/RT-SPC56EC-EVB/Makefile | 188 ------- demos/SPC5/RT-SPC56EC-EVB/UDE/debug.wsx | 273 --------- ...4a256s_spc56ec74_minimodule_debug_jtag.cfg | 290 ---------- demos/SPC5/RT-SPC56EC-EVB/chconf.h | 499 ----------------- demos/SPC5/RT-SPC56EC-EVB/cw/ch/ch.lcf | 153 ----- demos/SPC5/RT-SPC56EC-EVB/cw/ch/ch.mcp | Bin 62713 -> 0 bytes demos/SPC5/RT-SPC56EC-EVB/halconf.h | 388 ------------- demos/SPC5/RT-SPC56EC-EVB/main.c | 202 ------- demos/SPC5/RT-SPC56EC-EVB/mcuconf.h | 293 ---------- demos/SPC5/RT-SPC56EL-EVB/.cproject | 57 -- demos/SPC5/RT-SPC56EL-EVB/.project | 43 -- demos/SPC5/RT-SPC56EL-EVB/Makefile | 188 ------- demos/SPC5/RT-SPC56EL-EVB/UDE/debug.wsx | 275 --------- ...xpc56el_minimodule_lockstep_debug_jtag.cfg | 188 ------- demos/SPC5/RT-SPC56EL-EVB/chconf.h | 499 ----------------- demos/SPC5/RT-SPC56EL-EVB/halconf.h | 388 ------------- demos/SPC5/RT-SPC56EL-EVB/main.c | 202 ------- demos/SPC5/RT-SPC56EL-EVB/mcuconf.h | 294 ---------- demos/various/NIL-ARMCM0-GENERIC/.cproject | 55 -- demos/various/NIL-ARMCM0-GENERIC/.project | 95 ---- demos/various/NIL-ARMCM0-GENERIC/Makefile | 217 -------- ...C0-GENERIC (OpenOCD, Flash and Run).launch | 52 -- demos/various/NIL-ARMCM0-GENERIC/main.c | 104 ---- demos/various/NIL-ARMCM0-GENERIC/nilconf.h | 179 ------ demos/various/NIL-ARMCM4-GENERIC/.cproject | 52 -- demos/various/NIL-ARMCM4-GENERIC/.project | 95 ---- demos/various/NIL-ARMCM4-GENERIC/Makefile | 222 -------- ...C4-GENERIC (OpenOCD, Flash and Run).launch | 52 -- demos/various/NIL-ARMCM4-GENERIC/main.c | 104 ---- demos/various/NIL-ARMCM4-GENERIC/nilconf.h | 179 ------ demos/various/RT-ARM7-GENERIC/.cproject | 52 -- demos/various/RT-ARM7-GENERIC/.project | 90 --- demos/various/RT-ARM7-GENERIC/Makefile | 246 -------- demos/various/RT-ARM7-GENERIC/chconf.h | 499 ----------------- ...M0-GENERIC (OpenOCD, Flash and Run).launch | 52 -- demos/various/RT-ARM7-GENERIC/main.c | 57 -- demos/various/RT-ARM7-GENERIC/readme.txt | 17 - demos/various/RT-ARMCM0-GENERIC/.cproject | 52 -- demos/various/RT-ARMCM0-GENERIC/.project | 90 --- demos/various/RT-ARMCM0-GENERIC/Makefile | 217 -------- demos/various/RT-ARMCM0-GENERIC/chconf.h | 499 ----------------- ...M0-GENERIC (OpenOCD, Flash and Run).launch | 52 -- demos/various/RT-ARMCM0-GENERIC/main.c | 90 --- demos/various/RT-ARMCM0-GENERIC/readme.txt | 17 - demos/various/RT-ARMCM4-GENERIC/.cproject | 52 -- demos/various/RT-ARMCM4-GENERIC/.project | 90 --- demos/various/RT-ARMCM4-GENERIC/Makefile | 222 -------- demos/various/RT-ARMCM4-GENERIC/chconf.h | 499 ----------------- ...M4-GENERIC (OpenOCD, Flash and Run).launch | 52 -- demos/various/RT-ARMCM4-GENERIC/main.c | 90 --- demos/various/RT-ARMCM4-GENERIC/readme.txt | 17 - .../ports/ARM/devices/LPC214x/armparams.h | 62 --- os/common/ports/ARM/devices/LPC214x/lpc214x.h | 523 ------------------ 110 files changed, 21021 deletions(-) delete mode 100644 demos/SPC5/NIL-SPC560D-EVB/.cproject delete mode 100644 demos/SPC5/NIL-SPC560D-EVB/.project delete mode 100644 demos/SPC5/NIL-SPC560D-EVB/Makefile delete mode 100644 demos/SPC5/NIL-SPC560D-EVB/UDE/stm_xpc560b_spc560d40_minimodule_debug_jtag.cfg delete mode 100644 demos/SPC5/NIL-SPC560D-EVB/halconf.h delete mode 100644 demos/SPC5/NIL-SPC560D-EVB/main.c delete mode 100644 demos/SPC5/NIL-SPC560D-EVB/mcuconf.h delete mode 100644 demos/SPC5/NIL-SPC560D-EVB/nilconf.h delete mode 100644 demos/SPC5/RT-SPC560B-EVB/.cproject delete mode 100644 demos/SPC5/RT-SPC560B-EVB/.project delete mode 100644 demos/SPC5/RT-SPC560B-EVB/Makefile delete mode 100644 demos/SPC5/RT-SPC560B-EVB/UDE/debug.wsx delete mode 100644 demos/SPC5/RT-SPC560B-EVB/UDE/stm_xpc560b64_minimodule_debug_jtag.cfg delete mode 100644 demos/SPC5/RT-SPC560B-EVB/chconf.h delete mode 100644 demos/SPC5/RT-SPC560B-EVB/halconf.h delete mode 100644 demos/SPC5/RT-SPC560B-EVB/main.c delete mode 100644 demos/SPC5/RT-SPC560B-EVB/mcuconf.h delete mode 100644 demos/SPC5/RT-SPC560D-EVB/.cproject delete mode 100644 demos/SPC5/RT-SPC560D-EVB/.project delete mode 100644 demos/SPC5/RT-SPC560D-EVB/Makefile delete mode 100644 demos/SPC5/RT-SPC560D-EVB/UDE/debug.wsx delete mode 100644 demos/SPC5/RT-SPC560D-EVB/UDE/stm_xpc560b_spc560d40_minimodule_debug_jtag.cfg delete mode 100644 demos/SPC5/RT-SPC560D-EVB/chconf.h delete mode 100644 demos/SPC5/RT-SPC560D-EVB/cw/ch/ch.lcf delete mode 100644 demos/SPC5/RT-SPC560D-EVB/cw/ch/ch.mcp delete mode 100644 demos/SPC5/RT-SPC560D-EVB/halconf.h delete mode 100644 demos/SPC5/RT-SPC560D-EVB/main.c delete mode 100644 demos/SPC5/RT-SPC560D-EVB/mcuconf.h delete mode 100644 demos/SPC5/RT-SPC560P-EVB/.cproject delete mode 100644 demos/SPC5/RT-SPC560P-EVB/.project delete mode 100644 demos/SPC5/RT-SPC560P-EVB/Makefile delete mode 100644 demos/SPC5/RT-SPC560P-EVB/UDE/debug.wsx delete mode 100644 demos/SPC5/RT-SPC560P-EVB/UDE/stm_xpc560p_minimodule_40mhz_debug_jtag.cfg delete mode 100644 demos/SPC5/RT-SPC560P-EVB/chconf.h delete mode 100644 demos/SPC5/RT-SPC560P-EVB/halconf.h delete mode 100644 demos/SPC5/RT-SPC560P-EVB/main.c delete mode 100644 demos/SPC5/RT-SPC560P-EVB/mcuconf.h delete mode 100644 demos/SPC5/RT-SPC563M-EVB/.cproject delete mode 100644 demos/SPC5/RT-SPC563M-EVB/.project delete mode 100644 demos/SPC5/RT-SPC563M-EVB/Makefile delete mode 100644 demos/SPC5/RT-SPC563M-EVB/UDE/debug.wsx delete mode 100644 demos/SPC5/RT-SPC563M-EVB/UDE/stm_xpc563m64_minimodule_debug_jtag.cfg delete mode 100644 demos/SPC5/RT-SPC563M-EVB/chconf.h delete mode 100644 demos/SPC5/RT-SPC563M-EVB/halconf.h delete mode 100644 demos/SPC5/RT-SPC563M-EVB/main.c delete mode 100644 demos/SPC5/RT-SPC563M-EVB/mcuconf.h delete mode 100644 demos/SPC5/RT-SPC564A-EVB/.cproject delete mode 100644 demos/SPC5/RT-SPC564A-EVB/.project delete mode 100644 demos/SPC5/RT-SPC564A-EVB/Makefile delete mode 100644 demos/SPC5/RT-SPC564A-EVB/UDE/debug.wsx delete mode 100644 demos/SPC5/RT-SPC564A-EVB/UDE/stm_xpc564a_spc564a70_minimodule_debug_jtag.cfg delete mode 100644 demos/SPC5/RT-SPC564A-EVB/chconf.h delete mode 100644 demos/SPC5/RT-SPC564A-EVB/halconf.h delete mode 100644 demos/SPC5/RT-SPC564A-EVB/main.c delete mode 100644 demos/SPC5/RT-SPC564A-EVB/mcuconf.h delete mode 100644 demos/SPC5/RT-SPC56EC-EVB/.cproject delete mode 100644 demos/SPC5/RT-SPC56EC-EVB/.project delete mode 100644 demos/SPC5/RT-SPC56EC-EVB/Makefile delete mode 100644 demos/SPC5/RT-SPC56EC-EVB/UDE/debug.wsx delete mode 100644 demos/SPC5/RT-SPC56EC-EVB/UDE/stm_spc56ec74a256s_spc56ec74_minimodule_debug_jtag.cfg delete mode 100644 demos/SPC5/RT-SPC56EC-EVB/chconf.h delete mode 100644 demos/SPC5/RT-SPC56EC-EVB/cw/ch/ch.lcf delete mode 100644 demos/SPC5/RT-SPC56EC-EVB/cw/ch/ch.mcp delete mode 100644 demos/SPC5/RT-SPC56EC-EVB/halconf.h delete mode 100644 demos/SPC5/RT-SPC56EC-EVB/main.c delete mode 100644 demos/SPC5/RT-SPC56EC-EVB/mcuconf.h delete mode 100644 demos/SPC5/RT-SPC56EL-EVB/.cproject delete mode 100644 demos/SPC5/RT-SPC56EL-EVB/.project delete mode 100644 demos/SPC5/RT-SPC56EL-EVB/Makefile delete mode 100644 demos/SPC5/RT-SPC56EL-EVB/UDE/debug.wsx delete mode 100644 demos/SPC5/RT-SPC56EL-EVB/UDE/stm_xpc56el_minimodule_lockstep_debug_jtag.cfg delete mode 100644 demos/SPC5/RT-SPC56EL-EVB/chconf.h delete mode 100644 demos/SPC5/RT-SPC56EL-EVB/halconf.h delete mode 100644 demos/SPC5/RT-SPC56EL-EVB/main.c delete mode 100644 demos/SPC5/RT-SPC56EL-EVB/mcuconf.h delete mode 100644 demos/various/NIL-ARMCM0-GENERIC/.cproject delete mode 100644 demos/various/NIL-ARMCM0-GENERIC/.project delete mode 100644 demos/various/NIL-ARMCM0-GENERIC/Makefile delete mode 100644 demos/various/NIL-ARMCM0-GENERIC/debug/NIL-ARMC0-GENERIC (OpenOCD, Flash and Run).launch delete mode 100644 demos/various/NIL-ARMCM0-GENERIC/main.c delete mode 100644 demos/various/NIL-ARMCM0-GENERIC/nilconf.h delete mode 100644 demos/various/NIL-ARMCM4-GENERIC/.cproject delete mode 100644 demos/various/NIL-ARMCM4-GENERIC/.project delete mode 100644 demos/various/NIL-ARMCM4-GENERIC/Makefile delete mode 100644 demos/various/NIL-ARMCM4-GENERIC/debug/NIL-ARMC4-GENERIC (OpenOCD, Flash and Run).launch delete mode 100644 demos/various/NIL-ARMCM4-GENERIC/main.c delete mode 100644 demos/various/NIL-ARMCM4-GENERIC/nilconf.h delete mode 100644 demos/various/RT-ARM7-GENERIC/.cproject delete mode 100644 demos/various/RT-ARM7-GENERIC/.project delete mode 100644 demos/various/RT-ARM7-GENERIC/Makefile delete mode 100644 demos/various/RT-ARM7-GENERIC/chconf.h delete mode 100644 demos/various/RT-ARM7-GENERIC/debug/RT-ARMCM0-GENERIC (OpenOCD, Flash and Run).launch delete mode 100644 demos/various/RT-ARM7-GENERIC/main.c delete mode 100644 demos/various/RT-ARM7-GENERIC/readme.txt delete mode 100644 demos/various/RT-ARMCM0-GENERIC/.cproject delete mode 100644 demos/various/RT-ARMCM0-GENERIC/.project delete mode 100644 demos/various/RT-ARMCM0-GENERIC/Makefile delete mode 100644 demos/various/RT-ARMCM0-GENERIC/chconf.h delete mode 100644 demos/various/RT-ARMCM0-GENERIC/debug/RT-ARMCM0-GENERIC (OpenOCD, Flash and Run).launch delete mode 100644 demos/various/RT-ARMCM0-GENERIC/main.c delete mode 100644 demos/various/RT-ARMCM0-GENERIC/readme.txt delete mode 100644 demos/various/RT-ARMCM4-GENERIC/.cproject delete mode 100644 demos/various/RT-ARMCM4-GENERIC/.project delete mode 100644 demos/various/RT-ARMCM4-GENERIC/Makefile delete mode 100644 demos/various/RT-ARMCM4-GENERIC/chconf.h delete mode 100644 demos/various/RT-ARMCM4-GENERIC/debug/RT-ARMCM4-GENERIC (OpenOCD, Flash and Run).launch delete mode 100644 demos/various/RT-ARMCM4-GENERIC/main.c delete mode 100644 demos/various/RT-ARMCM4-GENERIC/readme.txt delete mode 100644 os/common/ports/ARM/devices/LPC214x/armparams.h delete mode 100644 os/common/ports/ARM/devices/LPC214x/lpc214x.h diff --git a/demos/SPC5/NIL-SPC560D-EVB/.cproject b/demos/SPC5/NIL-SPC560D-EVB/.cproject deleted file mode 100644 index f8050d811..000000000 --- a/demos/SPC5/NIL-SPC560D-EVB/.cproject +++ /dev/null @@ -1,57 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/SPC5/NIL-SPC560D-EVB/.project b/demos/SPC5/NIL-SPC560D-EVB/.project deleted file mode 100644 index 3040bcb83..000000000 --- a/demos/SPC5/NIL-SPC560D-EVB/.project +++ /dev/null @@ -1,43 +0,0 @@ - - - NIL-SPC560D-DISCOVERY - - - - - - org.eclipse.cdt.managedbuilder.core.genmakebuilder - clean,full,incremental, - - - - - org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder - full,incremental, - - - - - - org.eclipse.cdt.core.cnature - org.eclipse.cdt.managedbuilder.core.managedBuildNature - org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - - - - board - 2 - CHIBIOS/os/hal/boards/ST_EVB_SPC560D - - - os - 2 - CHIBIOS/os - - - test - 2 - CHIBIOS/test - - - diff --git a/demos/SPC5/NIL-SPC560D-EVB/Makefile b/demos/SPC5/NIL-SPC560D-EVB/Makefile deleted file mode 100644 index ae0cf9460..000000000 --- a/demos/SPC5/NIL-SPC560D-EVB/Makefile +++ /dev/null @@ -1,179 +0,0 @@ -############################################################################## -# Build global options -# NOTE: Can be overridden externally. -# - -# Compiler options here. -ifeq ($(USE_OPT),) - USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16 -mno-spe -msoft-float -endif - -# C specific options here (added to USE_OPT). -ifeq ($(USE_COPT),) - USE_COPT = -endif - -# C++ specific options here (added to USE_OPT). -ifeq ($(USE_CPPOPT),) - USE_CPPOPT = -fno-rtti -endif - -# Enable this if you want the linker to remove unused code and data. -ifeq ($(USE_LINK_GC),) - USE_LINK_GC = yes -endif - -# Linker extra options here. -ifeq ($(USE_LDOPT),) - USE_LDOPT = -endif - -# Enable this if you want link time optimizations (LTO) -ifeq ($(USE_LTO),) - USE_LTO = no -endif - -# If enabled, this option allows to compile the application in VLE mode. -ifeq ($(USE_VLE),) - USE_VLE = yes -endif - -# Enable this if you want to see the full log while compiling. -ifeq ($(USE_VERBOSE_COMPILE),) - USE_VERBOSE_COMPILE = no -endif - -# If enabled, this option makes the build process faster by not compiling -# modules not used in the current configuration. -ifeq ($(USE_SMART_BUILD),) - USE_SMART_BUILD = yes -endif - -# -# Build global options -############################################################################## - -############################################################################## -# Architecture or project specific options -# - -# Stack size to be allocated to the process stack. This stack is -# the stack used by the main() thread. -ifeq ($(USE_PROCESS_STACKSIZE),) - USE_PROCESS_STACKSIZE = 0x400 -endif - -# Stack size to the allocated to the optional exceptions stack. This -# stack is used for processing interrupts and exceptions. -ifeq ($(USE_EXCEPTIONS_STACKSIZE),) - USE_EXCEPTIONS_STACKSIZE = 0 -endif - -# -# Architecture or project specific options -############################################################################## - -############################################################################## -# Project, sources and paths -# - -# Define project name here -PROJECT = ch - -# Imported source files and paths -CHIBIOS = ../../.. -include $(CHIBIOS)/os/hal/hal.mk -include $(CHIBIOS)/os/hal/boards/ST_EVB_SPC560D/board.mk -include $(CHIBIOS)/os/hal/ports/SPC5/SPC560Dxx/platform.mk -include $(CHIBIOS)/os/hal/osal/nil/osal.mk -include $(CHIBIOS)/os/nil/nil.mk -include $(CHIBIOS)/os/nil/ports/e200/compilers/GCC/mk/port_spc560dxx.mk -include $(CHIBIOS)/test/nil/test.mk - -# Define linker script file here -LDSCRIPT= $(PORTLD)/SPC560D40.ld - -# C sources here. -CSRC = $(PORTSRC) \ - $(KERNSRC) \ - $(TESTSRC) \ - $(HALSRC) \ - $(OSALSRC) \ - $(PLATFORMSRC) \ - $(BOARDSRC) \ - main.c - -# C++ sources here. -CPPSRC = - -# List ASM source files here -ASMSRC = $(PORTASM) - -INCDIR = $(PORTINC) $(KERNINC) $(TESTINC) \ - $(HALINC) $(OSALINC) $(PLATFORMINC) $(BOARDINC) \ - $(CHIBIOS)/os/various - -# -# Project, sources and paths -############################################################################## - -############################################################################## -# Compiler settings -# - -#MCU = e500mc -meabi -msdata=none -mnew-mnemonics -mregnames -MCU = e200zx -meabi -msdata=none -mnew-mnemonics -mregnames - -#TRGT = powerpc-eabi- -TRGT = ppc-vle- -CC = $(TRGT)gcc -CPPC = $(TRGT)g++ -# Enable loading with g++ only if you need C++ runtime support. -# NOTE: You can use C++ even without C++ support if you are careful. C++ -# runtime support makes code size explode. -LD = $(TRGT)gcc -#LD = $(TRGT)g++ -CP = $(TRGT)objcopy -AS = $(TRGT)gcc -x assembler-with-cpp -AR = $(TRGT)ar -OD = $(TRGT)objdump -SZ = $(TRGT)size -HEX = $(CP) -O ihex -MOT = $(CP) -O srec -BIN = $(CP) -O binary - -# Define C warning options here -CWARN = -Wall -Wextra -Wundef -Wstrict-prototypes - -# Define C++ warning options here -CPPWARN = -Wall -Wextra -Wundef - -# -# Compiler settings -############################################################################## - -############################################################################## -# Start of user section -# - -# List all user C define here, like -D_DEBUG=1 -UDEFS = - -# Define ASM defines here -UADEFS = - -# List all user directories here -UINCDIR = - -# List the user directory to look for the libraries here -ULIBDIR = - -# List all user libraries here -ULIBS = - -# -# End of user defines -############################################################################## - -RULESPATH = $(CHIBIOS)/os/common/ports/e200/compilers/GCC -include $(RULESPATH)/rules.mk diff --git a/demos/SPC5/NIL-SPC560D-EVB/UDE/stm_xpc560b_spc560d40_minimodule_debug_jtag.cfg b/demos/SPC5/NIL-SPC560D-EVB/UDE/stm_xpc560b_spc560d40_minimodule_debug_jtag.cfg deleted file mode 100644 index ca4a75aa0..000000000 --- a/demos/SPC5/NIL-SPC560D-EVB/UDE/stm_xpc560b_spc560d40_minimodule_debug_jtag.cfg +++ /dev/null @@ -1,160 +0,0 @@ -[Main] -Signature=UDE_TARGINFO_2.0 -Description=STM XPC560B Mini Module with SPC560D40 (Jtag) -Description1=PLL set for 48MHz -Description2=FLASH programming prepared but not enabled -Description3=Write Filter for BAM Module -MCUs=Controller0 -Architecture=PowerPC -Vendor=STM -Board=XPC560B Mini Module - -[Controller0] -Family=PowerPC -Type=SPC560D40 -Enabled=1 -IntClock=48000 -MemDevs=BAMWriteFilter -ExtClock=8000 - -[Controller0.Core] -Protocol=PPCJTAG -Enabled=1 - -[Controller0.Core.LoadedAddOn] -UDEMemtool=1 - -[Controller0.Core.PpcJtagTargIntf] -PortType=FTDI -ResetWaitTime=50 -MaxJtagClk=2500 -DoSramInit=1 -UseNexus=1 -AdaptiveJtagPhaseShift=1 -ConnOption=Default -ChangeJtagClk=10000 -HaltAfterReset=1 -SimioAddr=g_JtagSimioAccess -FreezeTimers=1 -InvalidTlbOnReset=0 -InvalidateCache=0 -ForceCacheFlush=0 -IgnoreLockedLines=0 -ExecInitCmds=1 -JtagTapNumber=0 -JtagNumOfTaps=1 -JtagNumIrBefore=0 -JtagNumIrAfter=0 - -SimioAddr=g_JtagSimioAccess - -FlushCache=0 -AllowMmuSetup=1 -UseExtReset=1 -HandleWdtBug=0 -ForceEndOfReset=0 -JtagViaPod=0 -AllowResetOnCheck=0 -ChangeMsr=0 -ChangeMsrValue=0x0 -ExecOnStartCmds=0 -ExecOnHaltCmds=0 -TargetPort=Default -EnableProgramTimeMeasurement=0 -UseHwResetMode=0 -HandleNexusAccessBug=0 -DoNotEnableTrapSwBrp=0 -CommDevSel=PortType=USB,Type=FTDI -BootPasswd0=0xFEEDFACE -BootPasswd1=0xCAFEBEEF -BootPasswd2=0xFFFFFFFF -BootPasswd3=0xFFFFFFFF -BootPasswd4=0xFFFFFFFF -BootPasswd5=0xFFFFFFFF -BootPasswd6=0xFFFFFFFF -BootPasswd7=0xFFFFFFFF -JtagIoType=Jtag -ExecOnHaltCmdsWhileHalted=0 -TimerForPTM=Default -AllowBreakOnUpdateBreakpoints=0 -ClearDebugStatusOnHalt=1 -HwResetMode=Simulate -UseMasterNexusIfResetState=1 -UseLocalAddressTranslation=1 -Use64BitNexus=0 -InitSramOnlyWhenNotInitialized=0 -AllowHarrForUpdateDebugRegs=0 -DisableE2EECC=0 -UseCore0ForNexusMemoryAccessWhileRunning=0 - -[Controller0.Core.PpcJtagTargIntf.InitScript] -// setup IVOPR -// points to internal memory at 0x40000000 -SETSPR 0x3F 0x40000000 0xFFFFFFFF - -// disable watchdog -SET SWT_SR 0xC520 -SET SWT_SR 0xD928 -SET SWT_CR 0xFF00000A - -// Oscillator select -SET CGM_OCDS_SC 0x1000000 -SET CGM_OC_EN 0x1 - -// enable all modes -SET ME_MER 0x5FF - -// run mode -SET ME_DRUN_MC 0x1F0032 -SET ME_RUN_PC0 0xFE - -// enable peripherals in run and low power modes -SET ME_LP_PC0 0x500 - -// enable clocks -SET8 CGM_SC_DC0 0x80 -SET8 CGM_SC_DC1 0x80 -SET8 CGM_SC_DC2 0x80 - -// setup clock monitor -SET CMU_CSR 0x6 -SET CMU_LFREFR 0x1 -SET CMU_HFREFR 0xFFE - -// Make DRUN configuration active -SET ME_MCTL 0x30005AF0 -SET ME_MCTL 0x3000A50F -WAIT 0x5 - -// setup pll to 48MHz -SET FMPLL_CR 0x5300041 0xFFFFFFFF -// run mode -SET ME_DRUN_MC 0x1F00F4 - -// Make DRUN configuration active -SET ME_MCTL 0x30005AF0 -SET ME_MCTL 0x3000A50F -WAIT 0x5 - -// setup SSCM erro cfg for debug -SET16 SSCM_ERROR 0x3 0x3 - -[Controller0.BAMWriteFilter] -Description=BAM WriteAccess Filter -Range0Start=0xFFFFC000 -Range0Size=0x4000 -Enabled=1 -Handler=AccessFilter -Mode=ReadOnly - -[Controller0.PFLASH] -Enabled=1 -EnableMemtoolByDefault=1 - -[Controller0.DFLASH] -Enabled=1 -EnableMemtoolByDefault=1 - -[Controller0.Core.PpcJtagTargIntf.OnStartScript] - -[Controller0.Core.PpcJtagTargIntf.OnHaltScript] diff --git a/demos/SPC5/NIL-SPC560D-EVB/halconf.h b/demos/SPC5/NIL-SPC560D-EVB/halconf.h deleted file mode 100644 index 682795338..000000000 --- a/demos/SPC5/NIL-SPC560D-EVB/halconf.h +++ /dev/null @@ -1,388 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file templates/halconf.h - * @brief HAL configuration header. - * @details HAL configuration file, this file allows to enable or disable the - * various device drivers from your application. You may also use - * this file in order to override the device drivers default settings. - * - * @addtogroup HAL_CONF - * @{ - */ - -#ifndef _HALCONF_H_ -#define _HALCONF_H_ - -#include "mcuconf.h" - -/** - * @brief Enables the TM subsystem. - */ -#if !defined(HAL_USE_TM) || defined(__DOXYGEN__) -#define HAL_USE_TM FALSE -#endif - -/** - * @brief Enables the PAL subsystem. - */ -#if !defined(HAL_USE_PAL) || defined(__DOXYGEN__) -#define HAL_USE_PAL TRUE -#endif - -/** - * @brief Enables the ADC subsystem. - */ -#if !defined(HAL_USE_ADC) || defined(__DOXYGEN__) -#define HAL_USE_ADC FALSE -#endif - -/** - * @brief Enables the CAN subsystem. - */ -#if !defined(HAL_USE_CAN) || defined(__DOXYGEN__) -#define HAL_USE_CAN FALSE -#endif - -/** - * @brief Enables the DAC subsystem. - */ -#if !defined(HAL_USE_DAC) || defined(__DOXYGEN__) -#define HAL_USE_DAC FALSE -#endif - -/** - * @brief Enables the EXT subsystem. - */ -#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) -#define HAL_USE_EXT FALSE -#endif - -/** - * @brief Enables the GPT subsystem. - */ -#if !defined(HAL_USE_GPT) || defined(__DOXYGEN__) -#define HAL_USE_GPT FALSE -#endif - -/** - * @brief Enables the I2C subsystem. - */ -#if !defined(HAL_USE_I2C) || defined(__DOXYGEN__) -#define HAL_USE_I2C FALSE -#endif - -/** - * @brief Enables the I2S subsystem. - */ -#if !defined(HAL_USE_I2S) || defined(__DOXYGEN__) -#define HAL_USE_I2S FALSE -#endif - -/** - * @brief Enables the ICU subsystem. - */ -#if !defined(HAL_USE_ICU) || defined(__DOXYGEN__) -#define HAL_USE_ICU FALSE -#endif - -/** - * @brief Enables the MAC subsystem. - */ -#if !defined(HAL_USE_MAC) || defined(__DOXYGEN__) -#define HAL_USE_MAC FALSE -#endif - -/** - * @brief Enables the MMC_SPI subsystem. - */ -#if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__) -#define HAL_USE_MMC_SPI FALSE -#endif - -/** - * @brief Enables the PWM subsystem. - */ -#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__) -#define HAL_USE_PWM FALSE -#endif - -/** - * @brief Enables the RTC subsystem. - */ -#if !defined(HAL_USE_RTC) || defined(__DOXYGEN__) -#define HAL_USE_RTC FALSE -#endif - -/** - * @brief Enables the SDC subsystem. - */ -#if !defined(HAL_USE_SDC) || defined(__DOXYGEN__) -#define HAL_USE_SDC FALSE -#endif - -/** - * @brief Enables the SERIAL subsystem. - */ -#if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__) -#define HAL_USE_SERIAL TRUE -#endif - -/** - * @brief Enables the SERIAL over USB subsystem. - */ -#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__) -#define HAL_USE_SERIAL_USB FALSE -#endif - -/** - * @brief Enables the SPI subsystem. - */ -#if !defined(HAL_USE_SPI) || defined(__DOXYGEN__) -#define HAL_USE_SPI FALSE -#endif - -/** - * @brief Enables the UART subsystem. - */ -#if !defined(HAL_USE_UART) || defined(__DOXYGEN__) -#define HAL_USE_UART FALSE -#endif - -/** - * @brief Enables the USB subsystem. - */ -#if !defined(HAL_USE_USB) || defined(__DOXYGEN__) -#define HAL_USE_USB FALSE -#endif - -/** - * @brief Enables the WDG subsystem. - */ -#if !defined(HAL_USE_WDG) || defined(__DOXYGEN__) -#define HAL_USE_WDG FALSE -#endif - -/*===========================================================================*/ -/* ADC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__) -#define ADC_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define ADC_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* CAN driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Sleep mode related APIs inclusion switch. - */ -#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__) -#define CAN_USE_SLEEP_MODE TRUE -#endif - -/*===========================================================================*/ -/* I2C driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables the mutual exclusion APIs on the I2C bus. - */ -#if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define I2C_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* MAC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables an event sources for incoming packets. - */ -#if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__) -#define MAC_USE_ZERO_COPY FALSE -#endif - -/** - * @brief Enables an event sources for incoming packets. - */ -#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__) -#define MAC_USE_EVENTS TRUE -#endif - -/*===========================================================================*/ -/* MMC_SPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Delays insertions. - * @details If enabled this options inserts delays into the MMC waiting - * routines releasing some extra CPU time for the threads with - * lower priority, this may slow down the driver a bit however. - * This option is recommended also if the SPI driver does not - * use a DMA channel and heavily loads the CPU. - */ -#if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__) -#define MMC_NICE_WAITING TRUE -#endif - -/*===========================================================================*/ -/* SDC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Number of initialization attempts before rejecting the card. - * @note Attempts are performed at 10mS intervals. - */ -#if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__) -#define SDC_INIT_RETRY 100 -#endif - -/** - * @brief Include support for MMC cards. - * @note MMC support is not yet implemented so this option must be kept - * at @p FALSE. - */ -#if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__) -#define SDC_MMC_SUPPORT FALSE -#endif - -/** - * @brief Delays insertions. - * @details If enabled this options inserts delays into the MMC waiting - * routines releasing some extra CPU time for the threads with - * lower priority, this may slow down the driver a bit however. - */ -#if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__) -#define SDC_NICE_WAITING TRUE -#endif - -/*===========================================================================*/ -/* SERIAL driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Default bit rate. - * @details Configuration parameter, this is the baud rate selected for the - * default configuration. - */ -#if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__) -#define SERIAL_DEFAULT_BITRATE 38400 -#endif - -/** - * @brief Serial buffers size. - * @details Configuration parameter, you can change the depth of the queue - * buffers depending on the requirements of your application. - * @note The default is 16 bytes for both the transmission and receive - * buffers. - */ -#if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__) -#define SERIAL_BUFFERS_SIZE 16 -#endif - -/*===========================================================================*/ -/* SERIAL_USB driver related setting. */ -/*===========================================================================*/ - -/** - * @brief Serial over USB buffers size. - * @details Configuration parameter, the buffer size must be a multiple of - * the USB data endpoint maximum packet size. - * @note The default is 256 bytes for both the transmission and receive - * buffers. - */ -#if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__) -#define SERIAL_USB_BUFFERS_SIZE 256 -#endif - -/** - * @brief Serial over USB number of buffers. - * @note The default is 2 buffers. - */ -#if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__) -#define SERIAL_USB_BUFFERS_NUMBER 2 -#endif - -/*===========================================================================*/ -/* SPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__) -#define SPI_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define SPI_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* UART driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__) -#define UART_USE_WAIT FALSE -#endif - -/** - * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define UART_USE_MUTUAL_EXCLUSION FALSE -#endif - -/*===========================================================================*/ -/* USB driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(USB_USE_WAIT) || defined(__DOXYGEN__) -#define USB_USE_WAIT FALSE -#endif - -#endif /* _HALCONF_H_ */ - -/** @} */ diff --git a/demos/SPC5/NIL-SPC560D-EVB/main.c b/demos/SPC5/NIL-SPC560D-EVB/main.c deleted file mode 100644 index f730fcf62..000000000 --- a/demos/SPC5/NIL-SPC560D-EVB/main.c +++ /dev/null @@ -1,149 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#include "nil.h" -#include "hal.h" -#include "ch_test.h" - -/* - * LEDs blinker thread, times are in milliseconds. - */ -static THD_WORKING_AREA(waThread1, 128); -static THD_FUNCTION(Thread1, arg) { - - (void)arg; - - /* - * Activates the serial driver 1 using the driver default configuration. - */ - sdStart(&SD1, NULL); - - while (true) { - unsigned i; - - for (i = 0; i < 4; i++) { - palClearPad(PORT_E, PE_LED1); - chThdSleepMilliseconds(100); - palClearPad(PORT_E, PE_LED2); - chThdSleepMilliseconds(100); - palClearPad(PORT_E, PE_LED3); - chThdSleepMilliseconds(100); - palClearPad(PORT_E, PE_LED4); - chThdSleepMilliseconds(100); - palSetPad(PORT_E, PE_LED1); - chThdSleepMilliseconds(100); - palSetPad(PORT_E, PE_LED2); - chThdSleepMilliseconds(100); - palSetPad(PORT_E, PE_LED3); - chThdSleepMilliseconds(100); - palSetPad(PORT_E, PE_LED4); - chThdSleepMilliseconds(300); - } - - for (i = 0; i < 4; i++) { - palTogglePort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED2) | - PAL_PORT_BIT(PE_LED3) | PAL_PORT_BIT(PE_LED4)); - chThdSleepMilliseconds(500); - palTogglePort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED2) | - PAL_PORT_BIT(PE_LED3) | PAL_PORT_BIT(PE_LED4)); - chThdSleepMilliseconds(500); - } - - for (i = 0; i < 4; i++) { - palTogglePad(PORT_E, PE_LED1); - chThdSleepMilliseconds(250); - palTogglePad(PORT_E, PE_LED1); - palTogglePad(PORT_E, PE_LED2); - chThdSleepMilliseconds(250); - palTogglePad(PORT_E, PE_LED2); - palTogglePad(PORT_E, PE_LED3); - chThdSleepMilliseconds(250); - palTogglePad(PORT_E, PE_LED3); - palTogglePad(PORT_E, PE_LED4); - chThdSleepMilliseconds(250); - palTogglePad(PORT_E, PE_LED4); - } - - for (i = 0; i < 4; i++) { - palClearPort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED3)); - palSetPort(PORT_E, PAL_PORT_BIT(PE_LED2) | PAL_PORT_BIT(PE_LED4)); - chThdSleepMilliseconds(500); - palClearPort(PORT_E, PAL_PORT_BIT(PE_LED2) | PAL_PORT_BIT(PE_LED4)); - palSetPort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED3)); - chThdSleepMilliseconds(500); - } - - palSetPort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED2) | - PAL_PORT_BIT(PE_LED3) | PAL_PORT_BIT(PE_LED4)); - } -} - -/* - * Tester thread. - */ -THD_WORKING_AREA(waThread2, 128); -THD_FUNCTION(Thread2, arg) { - - (void)arg; - - /* - * Activates the serial driver 1 using the driver default configuration. - */ - sdStart(&SD1, NULL); - - /* Welcome message.*/ - chnWriteTimeout(&SD1, (uint8_t *)"Hello World!\r\n", 14, TIME_INFINITE); - - /* Waiting for button push and activation of the test suite.*/ - while (true) { - if (palReadPad(PORT_E, PE_BUTTON1)) - test_execute((BaseSequentialStream *)&SD1); - chThdSleepMilliseconds(500); - } -} - -/* - * Threads static table, one entry per thread. The number of entries must - * match NIL_CFG_NUM_THREADS. - */ -THD_TABLE_BEGIN -THD_TABLE_ENTRY(waThread1, "blinker", Thread1, NULL) -THD_TABLE_ENTRY(wa_test_support, "test_support", test_support, (void *)&nil.threads[2]) -THD_TABLE_ENTRY(waThread2, "tester", Thread2, NULL) -THD_TABLE_END - -/* - * Application entry point. - */ -int main(void) { - - /* - * System initializations. - * - HAL initialization, this also initializes the configured device drivers - * and performs the board-specific initializations. - * - Kernel initialization, the main() function becomes a thread and the - * RTOS is active. - */ - halInit(); - chSysInit(); - - /* This is now the idle thread loop, you may perform here a low priority - task but you must never try to sleep or wait in this loop. Note that - this tasks runs at the lowest priority level so any instruction added - here will be executed after all other tasks have been started.*/ - while (true) { - } -} diff --git a/demos/SPC5/NIL-SPC560D-EVB/mcuconf.h b/demos/SPC5/NIL-SPC560D-EVB/mcuconf.h deleted file mode 100644 index 0b48d33e0..000000000 --- a/demos/SPC5/NIL-SPC560D-EVB/mcuconf.h +++ /dev/null @@ -1,153 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#ifndef _MCUCONF_H_ -#define _MCUCONF_H_ - -/* - * SPC560B/Cxx drivers configuration. - * The following settings override the default settings present in - * the various device driver implementation headers. - * Note that the settings for each driver only have effect if the whole - * driver is enabled in halconf.h. - * - * IRQ priorities: - * 1...15 Lowest...Highest. - * DMA priorities: - * 0...15 Highest...Lowest. - */ - -#define SPC560Dxx_MCUCONF - -/* - * HAL driver system settings. - */ -#define SPC5_NO_INIT FALSE -#define SPC5_ALLOW_OVERCLOCK FALSE -#define SPC5_DISABLE_WATCHDOG TRUE -#define SPC5_FMPLL0_IDF_VALUE 1 -#define SPC5_FMPLL0_NDIV_VALUE 48 -#define SPC5_FMPLL0_ODF SPC5_FMPLL_ODF_DIV8 -#define SPC5_XOSCDIV_VALUE 1 -#define SPC5_IRCDIV_VALUE 1 -#define SPC5_PERIPHERAL1_CLK_DIV_VALUE 2 -#define SPC5_PERIPHERAL2_CLK_DIV_VALUE 2 -#define SPC5_PERIPHERAL3_CLK_DIV_VALUE 2 -#define SPC5_CLOCK_FAILURE_HOOK() osalSysHalt("clock failure") - -#define SPC5_EMIOS0_GPRE_VALUE 20 - -/* - * EDMA driver settings. - */ -#define SPC5_EDMA_CR_SETTING (EDMA_CR_EMLM) -#define SPC5_EDMA_GROUP0_PRIORITIES 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 -#define SPC5_EDMA_ERROR_IRQ_PRIO 12 -#define SPC5_EDMA_ERROR_HANDLER() osalSysHalt("DMA failure") - -/* - * SERIAL driver system settings. - */ -#define SPC5_SERIAL_USE_LINFLEX0 TRUE -#define SPC5_SERIAL_USE_LINFLEX1 FALSE -#define SPC5_SERIAL_USE_LINFLEX2 FALSE -#define SPC5_SERIAL_LINFLEX0_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX1_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX2_PRIORITY 8 - -/* - * SPI driver system settings. - */ -#define SPC5_SPI_USE_DSPI0 FALSE -#define SPC5_SPI_USE_DSPI1 FALSE -#define SPC5_SPI_DMA_MODE SPC5_SPI_DMA_RX_ONLY -#define SPC5_SPI_DSPI0_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3 | SPC5_MCR_PCSIS4 | SPC5_MCR_PCSIS5) -#define SPC5_SPI_DSPI1_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3 | SPC5_MCR_PCSIS4) -#define SPC5_SPI_DSPI0_TX1_DMA_CH_ID 4 -#define SPC5_SPI_DSPI0_TX2_DMA_CH_ID 5 -#define SPC5_SPI_DSPI0_RX_DMA_CH_ID 6 -#define SPC5_SPI_DSPI1_TX1_DMA_CH_ID 7 -#define SPC5_SPI_DSPI1_TX2_DMA_CH_ID 8 -#define SPC5_SPI_DSPI1_RX_DMA_CH_ID 9 -#define SPC5_SPI_DSPI0_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI1_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI0_IRQ_PRIO 10 -#define SPC5_SPI_DSPI1_IRQ_PRIO 10 -#define SPC5_SPI_DMA_ERROR_HOOK(spip) osalSysHalt("DSPI DMA failure") - -/* - * ICU-PWM driver system settings. - */ -#define SPC5_ICU_USE_EMIOS0_CH0 FALSE -#define SPC5_ICU_USE_EMIOS0_CH1 FALSE -#define SPC5_ICU_USE_EMIOS0_CH2 FALSE -#define SPC5_ICU_USE_EMIOS0_CH3 FALSE -#define SPC5_ICU_USE_EMIOS0_CH4 FALSE -#define SPC5_ICU_USE_EMIOS0_CH5 FALSE -#define SPC5_ICU_USE_EMIOS0_CH6 FALSE -#define SPC5_ICU_USE_EMIOS0_CH7 FALSE -#define SPC5_ICU_USE_EMIOS0_CH24 FALSE - -#define SPC5_PWM_USE_EMIOS0_GROUP0 FALSE -#define SPC5_PWM_USE_EMIOS0_GROUP1 FALSE - -#define SPC5_EMIOS0_GFR_F0F1_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F2F3_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F4F5_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F6F7_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F8F9_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F10F11_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F12F13_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F14F15_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F16F17_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F18F19_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F20F21_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F22F23_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F24F25_PRIORITY 8 - -#define SPC5_EMIOS0_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_EMIOS0_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -/* - * CAN driver system settings. - */ -#define SPC5_CAN_USE_FILTERS FALSE - -#define SPC5_CAN_USE_FLEXCAN0 FALSE -#define SPC5_CAN_FLEXCAN0_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN0_PRIORITY 12 -#define SPC5_CAN_FLEXCAN0_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_CAN_FLEXCAN0_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -/* -* ADC driver system settings. -*/ -#define SPC5_ADC_USE_ADC1 FALSE -#define SPC5_ADC_ADC1_CLK_FREQUENCY HALF_PERIPHERAL_SET_CLOCK_FREQUENCY -#define SPC5_ADC_ADC1_AUTO_CLOCK_OFF FALSE -#define SPC5_ADC_ADC1_WD_PRIORITY 12 -#define SPC5_ADC_ADC1_DMA_CH_ID 2 -#define SPC5_ADC_ADC1_DMA_IRQ_PRIO 12 -#define SPC5_ADC_ADC1_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_ADC_ADC1_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#endif /* _MCUCONF_H_ */ diff --git a/demos/SPC5/NIL-SPC560D-EVB/nilconf.h b/demos/SPC5/NIL-SPC560D-EVB/nilconf.h deleted file mode 100644 index 356667177..000000000 --- a/demos/SPC5/NIL-SPC560D-EVB/nilconf.h +++ /dev/null @@ -1,179 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file nilconf.h - * @brief Configuration file template. - * @details A copy of this file must be placed in each project directory, it - * contains the application specific kernel settings. - * - * @addtogroup config - * @details Kernel related settings and hooks. - * @{ - */ - -#ifndef _NILCONF_H_ -#define _NILCONF_H_ - -/*===========================================================================*/ -/** - * @name Kernel parameters and options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Number of user threads in the application. - * @note This number is not inclusive of the idle thread which is - * Implicitly handled. - */ -#define NIL_CFG_NUM_THREADS 3 - -/** @} */ - -/*===========================================================================*/ -/** - * @name System timer settings - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System time counter resolution. - * @note Allowed values are 16 or 32 bits. - */ -#define NIL_CFG_ST_RESOLUTION 32 - -/** - * @brief System tick frequency. - * @note This value together with the @p NIL_CFG_ST_RESOLUTION - * option defines the maximum amount of time allowed for - * timeouts. - */ -#define NIL_CFG_ST_FREQUENCY 1000 - -/** - * @brief Time delta constant for the tick-less mode. - * @note If this value is zero then the system uses the classic - * periodic tick. This value represents the minimum number - * of ticks that is safe to specify in a timeout directive. - * The value one is not valid, timeouts are rounded up to - * this value. - */ -#define NIL_CFG_ST_TIMEDELTA 0 - -/** @} */ - -/*===========================================================================*/ -/** - * @name Subsystem options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Events Flags APIs. - * @details If enabled then the event flags APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define NIL_CFG_USE_EVENTS TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Debug options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System assertions. - */ -#define NIL_CFG_ENABLE_ASSERTS FALSE - -/** - * @brief Stack check. - */ -#define NIL_CFG_ENABLE_STACK_CHECK FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel hooks - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System initialization hook. - */ -#if !defined(NIL_CFG_SYSTEM_INIT_HOOK) || defined(__DOXYGEN__) -#define NIL_CFG_SYSTEM_INIT_HOOK() { \ -} -#endif - -/** - * @brief Threads descriptor structure extension. - * @details User fields added to the end of the @p thread_t structure. - */ -#define NIL_CFG_THREAD_EXT_FIELDS \ - /* Add threads custom fields here.*/ - -/** - * @brief Threads initialization hook. - */ -#define NIL_CFG_THREAD_EXT_INIT_HOOK(tr) { \ - /* Add custom threads initialization code here.*/ \ -} - -/** - * @brief Idle thread enter hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to activate a power saving mode. - */ -#define NIL_CFG_IDLE_ENTER_HOOK() { \ -} - -/** - * @brief Idle thread leave hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to deactivate a power saving mode. - */ -#define NIL_CFG_IDLE_LEAVE_HOOK() { \ -} - -/** - * @brief System halt hook. - */ -#if !defined(NIL_CFG_SYSTEM_HALT_HOOK) || defined(__DOXYGEN__) -#define NIL_CFG_SYSTEM_HALT_HOOK(reason) { \ -} -#endif - -/** @} */ - -/*===========================================================================*/ -/* Port-specific settings (override port settings defaulted in nilcore.h). */ -/*===========================================================================*/ - -#endif /* _NILCONF_H_ */ - -/** @} */ diff --git a/demos/SPC5/RT-SPC560B-EVB/.cproject b/demos/SPC5/RT-SPC560B-EVB/.cproject deleted file mode 100644 index 3405a3597..000000000 --- a/demos/SPC5/RT-SPC560B-EVB/.cproject +++ /dev/null @@ -1,57 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/SPC5/RT-SPC560B-EVB/.project b/demos/SPC5/RT-SPC560B-EVB/.project deleted file mode 100644 index 577567978..000000000 --- a/demos/SPC5/RT-SPC560B-EVB/.project +++ /dev/null @@ -1,43 +0,0 @@ - - - RT-SPC560B-EVB - - - - - - org.eclipse.cdt.managedbuilder.core.genmakebuilder - clean,full,incremental, - - - - - org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder - full,incremental, - - - - - - org.eclipse.cdt.core.cnature - org.eclipse.cdt.managedbuilder.core.managedBuildNature - org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - - - - board - 2 - CHIBIOS/os/hal/boards/ST_EVB_SPC560B - - - os - 2 - CHIBIOS/os - - - test - 2 - CHIBIOS/test - - - diff --git a/demos/SPC5/RT-SPC560B-EVB/Makefile b/demos/SPC5/RT-SPC560B-EVB/Makefile deleted file mode 100644 index 0a4379ab2..000000000 --- a/demos/SPC5/RT-SPC560B-EVB/Makefile +++ /dev/null @@ -1,188 +0,0 @@ -############################################################################## -# Build global options -# NOTE: Can be overridden externally. -# - -# Compiler options here. -ifeq ($(USE_OPT),) - USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16 -mno-spe -msoft-float -endif - -# C specific options here (added to USE_OPT). -ifeq ($(USE_COPT),) - USE_COPT = -endif - -# C++ specific options here (added to USE_OPT). -ifeq ($(USE_CPPOPT),) - USE_CPPOPT = -fno-rtti -endif - -# Enable this if you want the linker to remove unused code and data. -ifeq ($(USE_LINK_GC),) - USE_LINK_GC = yes -endif - -# Linker extra options here. -ifeq ($(USE_LDOPT),) - USE_LDOPT = -endif - -# Enable this if you want link time optimizations (LTO) -ifeq ($(USE_LTO),) - USE_LTO = no -endif - -# If enabled, this option allows to compile the application in VLE mode. -ifeq ($(USE_VLE),) - USE_VLE = yes -endif - -# Enable this if you want to see the full log while compiling. -ifeq ($(USE_VERBOSE_COMPILE),) - USE_VERBOSE_COMPILE = no -endif - -# If enabled, this option makes the build process faster by not compiling -# modules not used in the current configuration. -ifeq ($(USE_SMART_BUILD),) - USE_SMART_BUILD = yes -endif - -# -# Build global options -############################################################################## - -############################################################################## -# Architecture or project specific options -# - -# Stack size to be allocated to the process stack. This stack is -# the stack used by the main() thread. -ifeq ($(USE_PROCESS_STACKSIZE),) - USE_PROCESS_STACKSIZE = 0x400 -endif - -# Stack size to the allocated to the optional exceptions stack. This -# stack is used for processing interrupts and exceptions. -ifeq ($(USE_EXCEPTIONS_STACKSIZE),) - USE_EXCEPTIONS_STACKSIZE = 0 -endif - -# -# Architecture or project specific options -############################################################################## - -############################################################################## -# Project, sources and paths -# - -# Define project name here -PROJECT = ch - -# Imported source files and paths -CHIBIOS = ../../.. -# Startup files. -include $(CHIBIOS)/os/common/ports/e200/compilers/GCC/mk/startup_spc560bxx.mk -# HAL-OSAL files (optional). -include $(CHIBIOS)/os/hal/hal.mk -include $(CHIBIOS)/os/hal/boards/ST_EVB_SPC560B/board.mk -include $(CHIBIOS)/os/hal/ports/SPC5/SPC560Bxx/platform.mk -include $(CHIBIOS)/os/hal/osal/rt/osal.mk -# RTOS files (optional). -include $(CHIBIOS)/os/rt/rt.mk -include $(CHIBIOS)/os/rt/ports/e200/compilers/GCC/mk/port.mk -# Other files (optional). -include $(CHIBIOS)/test/rt/test.mk - -# Define linker script file here -LDSCRIPT= $(STARTUPLD)/SPC560B60.ld - -# C sources here. -CSRC = $(STARTUPSRC) \ - $(KERNSRC) \ - $(PORTSRC) \ - $(OSALSRC) \ - $(HALSRC) \ - $(PLATFORMSRC) \ - $(BOARDSRC) \ - $(TESTSRC) \ - $(CHIBIOS)/os/hal/lib/streams/memstreams.c \ - $(CHIBIOS)/os/hal/lib/streams/chprintf.c \ - $(CHIBIOS)/os/various/shell.c \ - main.c - -# C++ sources here. -CPPSRC = - -# List ASM source files here -ASMSRC = $(STARTUPASM) $(PORTASM) $(OSALASM) - -INCDIR = $(STARTUPINC) $(KERNINC) $(PORTINC) $(OSALINC) \ - $(HALINC) $(PLATFORMINC) $(BOARDINC) $(TESTINC) \ - $(CHIBIOS)/os/hal/lib/streams $(CHIBIOS)/os/various - -# -# Project, sources and paths -############################################################################## - -############################################################################## -# Compiler settings -# - -#MCU = e500mc -meabi -msdata=none -mnew-mnemonics -mregnames -MCU = e200zx -meabi -msdata=none -mnew-mnemonics -mregnames - -#TRGT = powerpc-eabi- -TRGT = ppc-vle- -CC = $(TRGT)gcc -CPPC = $(TRGT)g++ -# Enable loading with g++ only if you need C++ runtime support. -# NOTE: You can use C++ even without C++ support if you are careful. C++ -# runtime support makes code size explode. -LD = $(TRGT)gcc -#LD = $(TRGT)g++ -CP = $(TRGT)objcopy -AS = $(TRGT)gcc -x assembler-with-cpp -AR = $(TRGT)ar -OD = $(TRGT)objdump -SZ = $(TRGT)size -HEX = $(CP) -O ihex -MOT = $(CP) -O srec -BIN = $(CP) -O binary - -# Define C warning options here -CWARN = -Wall -Wextra -Wundef -Wstrict-prototypes - -# Define C++ warning options here -CPPWARN = -Wall -Wextra -Wundef - -# -# Compiler settings -############################################################################## - -############################################################################## -# Start of user section -# - -# List all user C define here, like -D_DEBUG=1 -UDEFS = - -# Define ASM defines here -UADEFS = - -# List all user directories here -UINCDIR = - -# List the user directory to look for the libraries here -ULIBDIR = - -# List all user libraries here -ULIBS = - -# -# End of user defines -############################################################################## - -RULESPATH = $(CHIBIOS)/os/common/ports/e200/compilers/GCC -include $(RULESPATH)/rules.mk diff --git a/demos/SPC5/RT-SPC560B-EVB/UDE/debug.wsx b/demos/SPC5/RT-SPC560B-EVB/UDE/debug.wsx deleted file mode 100644 index 386c0d313..000000000 --- a/demos/SPC5/RT-SPC560B-EVB/UDE/debug.wsx +++ /dev/null @@ -1,273 +0,0 @@ - - - debug.wsx001vQTv/gAAAQAXAAIA8QkPAAAABAAAAAAAPwAAAAAAAAAEAAAAAgAAAAAAAAAAAAAAAAAAAA==4.019.11.2012 16:18:08:999MCAAAAAAAAAAAAAABAAAAAAAPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPHHAAAAAAPBAAAAAADGFAAAAABCDAAAAAFalseTrue1416801050593930FalseFalse1000000000000000UDEStatusBarFor Help, press F10594191105964705939959398593975940359401594065940200FalseFalse0000000000CUDEDockBar05942230911000FalseFalse0000000000CUDEDockBar05942030910000FalseFalse0000000000CUDEDockBar059647381True59419-1-11251268196-21474836480908FalseFalse1000000381271252277651106144014947UDEMDIMenuBarMenu bar0Menu barBAAAAAAIAACAAAAAAIAADAAAAAAIAAEAAAAAAIAAFAAAAAAIAAGAAAAAAIAAHAAAAAAIAAIAAAAAAIAAJAAAAAAIAAKAAAAAAIAA5939850326True050326614568196-21474836480780FalseFalse1562500111300006144014946CUdeCustomToolBarEdit0Edit2DCBOAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAACCBOAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAFCBOAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAIABOAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAA5939761426True061426794568196-21474836480780FalseFalse1562500180300006144014946CUdeCustomToolBarFile0File3AHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAABHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAACHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAADHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAEHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAFHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAOKHBAAAAAABAAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAA5940379426True079426928568196-21474836481181049967780FalseFalse3125000134300006144014946CUdeCustomToolBarConfig0Config2GJHBAAAAAADAAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAAMMHBAAAAAAOPAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAANMHBAAAAAAAABAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAAFNHBAAAAAAGAAAAAAAKBDLFIMBFCNFHJBEGJFDMJNFCMOIPKHNAAAAAAAAPPPPPPPPAAAAAAAAINHBAAAAAACBAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAA5940192826True0928261407568196-2147483648151587341780FalseFalse6250000479300006144014946CUdeCustomToolBarViews0Views6JJHBAAAAAAFBAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAAKJHBAAAAAAPAAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAAMJHBAAAAAAGBAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAANKHBAAAAAAAAAAAAAAAGKBFNONHLAOENBBBJCBAABADAJECGGLAAAAAAAAPPPPPPPPAAAAAAAAALHBAAAAAAKAAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAACLHBAAAAAAMFAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAADLHBAAAAAAKFAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAFLHBAAAAAANCAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAGLHBAAAAAAMDAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAHLHBAAAAAAGEAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAAMHBAAAAAAKAAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAABMHBAAAAAAEBAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAACMHBAAAAAAJBAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAADMHBAAAAAALBAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAAEMHBAAAAAAAFAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAAFMHBAAAAAAICAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAAHMHBAAAAAANEEAAAAAJEOEILFFBLMIPBEEPLLMEDEOPKHPBGJHAAAAAAAAPPPPPPPPAAAAAAAAIMHBAAAAAAGFEAAAAAJEOEILFFBLMIPBEEPLLMEDEOPKHPBGJHAAAAAAAAPPPPPPPPAAAAAAAAJMHBAAAAAAAGEAAAAAJEOEILFFBLMIPBEEPLLMEDEOPKHPBGJHAAAAAAAAPPPPPPPPAAAAAAAALMHBAAAAAAGEAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAA59406140726True01407261653568196-21474836480780FalseFalse12500000246300006144014946CUdeCustomToolBarMacro0Macro2DKHBAAAAAALDAAAAAAGDHJMPFPDOOJLAGELLAIHGBMMEFJBIPLAAAAAAAAPPPPPPPPAAAAAAAAEKHBAAAAAAAEAAAAAAGDHJMPFPDOOJLAGELLAIHGBMMEFJBIPLAAAAAAAAPPPPPPPPAAAAAAAAGKHBAAAAAAMDAAAAAAGDHJMPFPDOOJLAGELLAIHGBMMEFJBIPLAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAMKHBAAAACAGJAAAAAAAAAANMAJBFNENHHACJPEILAJFEFEECLCDPKCBAAAAAAAKAAAAAAANAAAAAAAFFEEFEHFPGCHLGDHAHBGDGFGAA5939926504True59419-126503568196-21474836480780FalseFalse25000050430504301239006144014946CUdeCustomToolBarDebug0Debug5BLHBAAAAAAIBAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAELHBAAAAAAOFAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAILHBAAAAAAHAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAJLHBAAAAAAJAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAKLHBAAAAAAKAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAALLHBAAAAAALAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAMLHBAAAAAAIAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAANLHBAAAAAABCDAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAOLHBAAAAAANAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAPLHBAAAAAAMAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAANHBAAAAAADAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAABNHBAAAAAAGAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAACNHBAAAACAKKAAAAAAAAAADHHMLHLPEKIIOMOEJLGLBHJIBGLAHAFDBAAAAAAADAAAAAAAFAAAAAAADEPGCHFGAAENHBAAAAAADAAAAAAAKBDLFIMBFCNFHJBEGJFDMJNFCMOIPKHNAAAAAAAAPPPPPPPPAAAAAAAA59402165326True01653261795568196-21474836480780FalseFalse50000000142300006144014946CUdeCustomToolBarTools0ToolsDNHBAAAACAEGAAAAAAAAAAGEAOMHHDMDCIFAKEIIICDBCMNFEDNFHHBAAAAAAAGAAAAAAAFAAAAAAADEPGCHFGAAHNHBAAAAAABOAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAA911015True594221512521554-214748364803889FalseFalse1000000300180125115030018006144014948CTabWndControlBarTab Window Bar 00-1FalseUDEDesktop Standard BarsTab Window Bar 0UDEDesktop0015019100False00True000004-214748364803889FalseFalse100000030018030018015018006144014948CUdeProjectWspBarProject Workspace Bar0-1FalseUDEDesktop Standard BarsProject Workspace BarUDEDesktop0001TrueTrueFalse21.11.2012 14:43:52:278487782411WorkspaceManager11019.11.2012 16:28:52:057MgAAAA==AQAAAA==ZAAAAA==AQAAAA==lgAAAA==AQAAAA==6AMAAA==AQAAAA==139011201WorkspaceManager110000110010\\napnt002.nap.st.com\NAPPRT0001000WorkspaceManagerWorkspaceManager01Core1Target0.Controller0.CoreTarget0.Controller0.Core102200701438312957781279740NormalfalseTop1271falseBottom0000falsefalse00DockPaneltrue417falseLeft0000falsefalse00DockPaneltrue417falseLeft0000falsefalse10DockPanelfalse0falseTop0000falsefalse0-1TabbedDocumenttrue417falseLeft0000falsefalse20DockPanelfalse417falseLeft0000falsefalse30DockPanelfalsetrue556false200false200true200true100truetrue0012797400127924Platform Main Menufalsetrue4249525Edit ToolbarfalsetrueUDE_Workspace_0x1779trueCutImagetrueUDE_Workspace_0x177AtrueCopyImagetrueUDE_Workspace_0x177BtruePasteImagetrue992427625Macro ToolbarfalsetrueUDE_0x3B_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueRun MacroImagetrueUDE_0x40_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueDebug MacroImagetrueUDE_0x3_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueBreak MacroImagetrueUDE_0x3C_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueReload MacroImagetrueUDE_Ctrl_{4D5190CD-077D-4F92-B890-4545242BF32A}_UDEWorkspacetrueImageAndTextfalse3752421025File ToolbarfalsetrueUDE_Workspace_0x1770trueNew WorkspaceImagetrueUDE_Workspace_0x1771trueOpen workspaceImagetrueUDE_Workspace_0x1772trueSave workspace asImagetrueUDE_Workspace_0x1773trueSave workspaceImagetrueUDE_Workspace_0x1774trueClose workspaceImagetrueUDE_Workspace_0x177FtrueExport view contentImagetrueUDE_Workspace_0x1778truePrintImagetrueUDE_0x1_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueLoad ProgramImagetrue5852444025Views ToolbarfalsetrueUDE_0x4_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueTarget BrowserImagetrueUDE_0x15_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueDiagnostic Message ViewerImagetrueUDE_0xF_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueConsoleImagetrueUDE_0x0_{DED51A60-E0B7-11D4-9112-0001034962B6}trueCPU WindowImagetrueUDE_0x1E_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueExplore SymbolsImagetrueUDE_0xA_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueProgramImagetrueUDE_0x5C_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueSingle Program WindowImagetrueUDE_0x5A_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueDisassembly WindowImagetrueUDE_0x2D_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow Special Function RegisterImagetrueUDE_0x3C_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueLocalsImagetrueUDE_0x46_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueWatchImagetrueUDE_0xA_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueSimulated I/OImagetrueUDE_0x14_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueUDE HTMLImagetrueUDE_0x19_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueArray ChartImagetrueUDE_0x1B_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueTime Traced Signal ChartImagetrueUDE_0x50_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueIP Trace ProfilingImagetrueUDE_0x28_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueMemoryImagetrueUDE_0x46_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueCall StackImagetrue34950925Debug ToolbarfalsetrueUDE_0x18_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow IPImagetrueUDE_0x5E_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow program codeImagetrueUDE_0x7_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStart ProgramImagetrueUDE_0x9_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep OverImagetrueUDE_0xA_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep IntoImagetrueUDE_0xB_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep OutImagetrueUDE_0x8_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueRun CursorImagetrueUDE_0x321_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueBreak ProgramImagetrueUDE_0xD_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueResetImagetrueUDE_0xC_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueRestart ProgramImagetrueUDE_0x3_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueBreakpointsImagetrueUDE_0x6_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueToggle BreakImagetrueUDE_Ctrl_{FB7BC773-88A4-4ECE-B9B6-7189610B0735}_CoretrueImageAndTextfalseUDE_0x3_{1C85B31A-5D25-4197-9635-9C5DC28EAFD7}trueTrigger setupImagetrue5124914125Config ToolbarfalsetrueUDE_0x3_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueTarget ConfigurationImagetrueUDE_0xFE_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueConnect TargetImagetrueUDE_0x100_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueDisconnect TargetImagetrueUDE_0x6_{1C85B31A-5D25-4197-9635-9C5DC28EAFD7}trueSetup Target InterfaceImagetrueUDE_0x12_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueMCU Run ControlImagetrue6534915125Tools ToolbarfalsetrueUDE_Ctrl_{377CE046-823C-4A05-8828-13C25D345D77}_CoretrueImageAndTextfalseUDE_0xE1_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueExecution Time SetupImagetrue01002625Show Toolbarfalsefalse02002625Window Toolbarfalsefalse02252625Workspace Toolbarfalsefalse02752625Help Toolbarfalsefalse071712792300127923Platform Status Barfalsetrue07406431279740643..\..\..\..\..\Program Files\pls\UDE 4.0\StdLibrary.mso{866f82d3-fac5-43cd-8a82-0af01e46e2c5}669,1006,350,6610..\..\..\..\..\Documents and Settings\disiriog\My Documents\pls\UDE 4.0The script contains a collection of macros to save memory content into different file formats -and fill target memory rangesV:\UDE\AddOns\Macro\MacroLibrary\StdMacros1.dsm' -' $Header: /Ude/AddOns/Macro/MacroLibrary/StdMacros.dsm 3 30.04.04 9:34 Weisses $ -'_______________________________________________________ -' -' universal debug engine -' -' Standard command line macros - part 1 -' -' pls Development Tools 1999-2004 -' -' 28.04.04 SW correction for UDE 1.10 -' 03.06.03 SW initial version -'_______________________________________________________ - -'_______________________________________________________ -' -' UnAss command line function -' -' generates disassembly file -' -' command line UnAss output-file range1 [range2] [range3] ..... -' range description: -' C:<startaddress>,<length> or - code -' DB:<startaddress>,<length> or - data byte -' DW:<startaddress>,<length> or - data word -' DD:<startaddress>,<length> or - data dword -'_______________________________________________________ - -Sub UnAss(File,ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - If IsNumeric(File) Then - MsgBox "File parameter wrong - " & File - Exit Sub - End If - DisASMObj.OutputPath = CStr(File) - bRetVal = DisASMObj.CreateStream(True,"UDE Disassembler output of current Program",False) - If bRetVal = True Then - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - For Range = 0 To RangeCnt -1 - KindOfRange = CStr(ParameterObj.Parameter(ParamIndex)) - KindOfRange = UCase(KindOfRange) - Address = CLng(ParameterObj.Parameter(ParamIndex +1)) - Length = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - If IsNumeric(KindOfRange) Then - If KindOfRange = 12 Then - DisASMObj.AddRange Address,Length,1 - ElseIf KindOfRange = 219 Then - DisASMObj.AddRange Address,Length,2 - ElseIf KindOfRange = 221 Then - DisASMObj.AddRange Address,Length,4 - Else - MsgBox "Invalid range type " & KindOfRange & "of range " & Range +1 - Exit Sub - End If - Else - If KindOfRange = "C" Then - DisASMObj.AddRange Address,Length,1 - ElseIf KindOfRange = "DB" Then - DisASMObj.AddRange Address,Length,2 - ElseIf KindOfRange = "DW" Then - DisASMObj.AddRange Address,Length,3 - ElseIf KindOfRange = "DD" Then - DisASMObj.AddRange Address,Length,4 - Else - MsgBox "Invalid range type " & KindOfRange & "of range " & Range +1 - Exit Sub - End If - End If - Next - DisASMObj.HexFileModeFlag = False - DisASMObj.ListModeFlag = False - DisASMObj.WriteAllRanges(False) - End If - -End Sub - -'_______________________________________________________ -' -' SaveHEX command line function -' -' generates intel-HEX file -' -' command line SaveHex output-file range1 [range2] [range3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub SaveHEX(File,ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - If IsNumeric(File) Then - MsgBox "File parameter wrong - " & File - Exit Sub - End If - DisASMObj.OutputPath = CStr(File) - bRetVal = DisASMObj.CreateStream(True,"UDE generated intel-Hex file of current Program",False) - If bRetVal = True Then - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 2 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/2 - ParamIndex = 0 - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)) - ParamIndex = ParamIndex +2 - DisASMObj.AddRange Address,Length,0 - Next - DisASMObj.HexFileModeFlag = True - DisASMObj.WriteAllRanges(False) - End If - -End Sub - -'_______________________________________________________ -' -' FillByte command line function -' -' fills memory range with byte pattern -' -' command line FillByte range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillByte(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.ByteArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub - -'_______________________________________________________ -' -' FillWord command line function -' -' fills memory range with word pattern -' -' command line FillWord range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillWord(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.WordArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)/2) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub - -'_______________________________________________________ -' -' FillDWord command line function -' -' fills memory range with dword pattern -' -' command line FillDWord range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillDWord(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.DWordArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)/4) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub63VBScript24.11.2006 14:43:20:0001WS_CORE_DUOMacro_27_02_14_16_19_55_010Execute UnAss ..Macro UnAssExecute macro UnAss0210Execute SaveHEX ..Macro SaveHEXExecute macro SaveHEX0210Execute FillByte ..Macro FillByteExecute macro FillByte0110Execute FillWord ..Macro FillWordExecute macro FillWord0110Execute FillDWord ..Macro FillDWordExecute macro FillDWord0150121.11.2012 14:17:23:6457782750Target0.Controller0.Core1020.11.2012 16:19:48:3447782640Target0.Controller0.Core11021.11.2012 12:22:49:573..\main.c1,0,0,353,10940017372830Target0.Controller0.Core1113.06.2013 14:53:23:258..\..\..\os\hal\src\hal.c1,49,63,402,11570017372860Target0.Controller0.Core110222.11.2012 11:31:36:807..\..\..\os\hal\platforms\SPC5xx\SIUL_v1\pal_lld.c7372840Target0.Controller0.Core1121.11.2012 14:44:22:506..\..\..\os\kernel\src\chsys.c7372860Target0.Controller0.Core13121.11.2012 14:14:46:537AwAAAA==AQAAAA==kAAAAA==YAAAAA==TgAAAA==jQAAAA==TgAAAA==jQAAAA==TgAAAA==jgAAAA==AAAAAA==AAAAAA==AAAAAA==AAAAAA==7782520Target0.Controller0.Core10021.11.2012 14:10:10:4245380360007372850Target0.Controller0.Core1000000000000OFF0..\build11..\build\ch.elfSoftware;enabled;0;disabled;'main {C:\ChibiStudio\workspace\SPC5\demos\SPC560Bxx OS-Less Test Application\main.c} .25';main.c;1;0;;$disabled; ;disabled; ;100011100verify.txt0000000001..\main.cstm_xpc560b64_minimodule_debug_jtag.cfg27.02.2014 16:19:55:000 diff --git a/demos/SPC5/RT-SPC560B-EVB/UDE/stm_xpc560b64_minimodule_debug_jtag.cfg b/demos/SPC5/RT-SPC560B-EVB/UDE/stm_xpc560b64_minimodule_debug_jtag.cfg deleted file mode 100644 index 09c2f8adb..000000000 --- a/demos/SPC5/RT-SPC560B-EVB/UDE/stm_xpc560b64_minimodule_debug_jtag.cfg +++ /dev/null @@ -1,156 +0,0 @@ -[Main] -Signature=UDE_TARGINFO_2.0 -Description=STM XPC560B64 Mini Module with SPC560B64 (Jtag) -Description1=PLL set for 64MHz -Description2=FLASH programming prepared but not enabled -Description3=Write Filter for BAM Module -MCUs=Controller0 -Architecture=PowerPC -Vendor=STM -Board=XPC560B Mini Module - -[Controller0] -Family=PowerPC -Type=SPC560B64 -Enabled=1 -IntClock=64000 -MemDevs=BAMWriteFilter -ExtClock=8000 - -[Controller0.Core] -Protocol=PPCJTAG -Enabled=1 - -[Controller0.Core.LoadedAddOn] -UDEMemtool=1 - -[Controller0.Core.PpcJtagTargIntf] -PortType=FTDI -ResetWaitTime=50 -MaxJtagClk=2500 -DoSramInit=1 -UseNexus=1 -AdaptiveJtagPhaseShift=1 -ConnOption=Default -ChangeJtagClk=25000 -HaltAfterReset=1 -SimioAddr=g_JtagSimioAccess -FreezeTimers=1 -InvalidTlbOnReset=0 -InvalidateCache=0 -ForceCacheFlush=0 -IgnoreLockedLines=0 -ExecInitCmds=1 -JtagTapNumber=0 -JtagNumOfTaps=1 -JtagNumIrBefore=0 -JtagNumIrAfter=0 - -SimioAddr=g_JtagSimioAccess - -FlushCache=0 -AllowMmuSetup=1 -UseExtReset=1 -HandleWdtBug=0 -ForceEndOfReset=0 -JtagViaPod=0 -AllowResetOnCheck=0 -ChangeMsr=0 -ChangeMsrValue=0x0 -ExecOnStartCmds=0 -ExecOnHaltCmds=0 -EnableProgramTimeMeasurement=0 -UseHwResetMode=0 -CommDevSel=PortType=USB,Type=FTDI -TargetPort=Default -HandleNexusAccessBug=0 -DoNotEnableTrapSwBrp=0 -BootPasswd0=0xFEEDFACE -BootPasswd1=0xCAFEBEEF -BootPasswd2=0xFFFFFFFF -BootPasswd3=0xFFFFFFFF -BootPasswd4=0xFFFFFFFF -BootPasswd5=0xFFFFFFFF -BootPasswd6=0xFFFFFFFF -BootPasswd7=0xFFFFFFFF -JtagIoType=Jtag -ExecOnHaltCmdsWhileHalted=0 -TimerForPTM=Default -AllowBreakOnUpdateBreakpoints=0 -ClearDebugStatusOnHalt=1 -HwResetMode=Simulate -UseMasterNexusIfResetState=1 -UseLocalAddressTranslation=1 -Use64BitNexus=0 -InitSramOnlyWhenNotInitialized=0 -AllowHarrForUpdateDebugRegs=0 -DisableE2EECC=0 -UseCore0ForNexusMemoryAccessWhileRunning=0 - -[Controller0.BAMWriteFilter] -Description=BAM WriteAccess Filter -Range0Start=0xFFFFC000 -Range0Size=0x4000 -Enabled=1 -Handler=AccessFilter -Mode=ReadOnly - -[Controller0.PFLASH] -Enabled=1 -EnableMemtoolByDefault=1 - -[Controller0.Core.PpcJtagTargIntf.InitScript] -// setup IVOPR -// points to internal memory at 0x40000000 -SETSPR 0x3F 0x40000000 0xFFFFFFFF - -// disable watchdog -SET SWT_SR 0xC520 -SET SWT_SR 0xD928 -SET SWT_CR 0xFF00000A - -// Oscillator select -SET CGM_OCDS_SC 0x1000000 -SET CGM_OC_EN 0x1 - -// enable all modes -SET ME_MER 0x5FF - -// run mode -SET ME_DRUN_MC 0x1F0032 -SET ME_RUN_PC0 0xFE - -// enable peripherals in run and low power modes -SET ME_LP_PC0 0x500 - -// enable clocks -SET8 CGM_SC_DC0 0x80 -SET8 CGM_SC_DC1 0x80 -SET8 CGM_SC_DC2 0x80 - -// setup clock monitor -SET CMU_CSR 0x6 -SET CMU_LFREFR 0x1 -SET CMU_HFREFR 0xFFE - -// Make DRUN configuration active -SET ME_MCTL 0x30005AF0 -SET ME_MCTL 0x3000A50F -WAIT 0x5 - -// setup pll to 64MHz -SET FMPLL_CR 0x5400041 0xFFFFFFFF -// run mode -SET ME_DRUN_MC 0x1F00F4 - -// Make DRUN configuration active -SET ME_MCTL 0x30005AF0 -SET ME_MCTL 0x3000A50F -WAIT 0x5 - -// setup SSCM erro cfg for debug -SET16 SSCM_ERROR 0x3 0x3 - -[Controller0.Core.PpcJtagTargIntf.OnStartScript] - -[Controller0.Core.PpcJtagTargIntf.OnHaltScript] diff --git a/demos/SPC5/RT-SPC560B-EVB/chconf.h b/demos/SPC5/RT-SPC560B-EVB/chconf.h deleted file mode 100644 index f6244ad4b..000000000 --- a/demos/SPC5/RT-SPC560B-EVB/chconf.h +++ /dev/null @@ -1,499 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file templates/chconf.h - * @brief Configuration file template. - * @details A copy of this file must be placed in each project directory, it - * contains the application specific kernel settings. - * - * @addtogroup config - * @details Kernel related settings and hooks. - * @{ - */ - -#ifndef _CHCONF_H_ -#define _CHCONF_H_ - -/*===========================================================================*/ -/** - * @name System timers settings - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System time counter resolution. - * @note Allowed values are 16 or 32 bits. - */ -#define CH_CFG_ST_RESOLUTION 32 - -/** - * @brief System tick frequency. - * @details Frequency of the system timer that drives the system ticks. This - * setting also defines the system tick time unit. - */ -#define CH_CFG_ST_FREQUENCY 1000 - -/** - * @brief Time delta constant for the tick-less mode. - * @note If this value is zero then the system uses the classic - * periodic tick. This value represents the minimum number - * of ticks that is safe to specify in a timeout directive. - * The value one is not valid, timeouts are rounded up to - * this value. - */ -#define CH_CFG_ST_TIMEDELTA 0 - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel parameters and options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Round robin interval. - * @details This constant is the number of system ticks allowed for the - * threads before preemption occurs. Setting this value to zero - * disables the preemption for threads with equal priority and the - * round robin becomes cooperative. Note that higher priority - * threads can still preempt, the kernel is always preemptive. - * @note Disabling the round robin preemption makes the kernel more compact - * and generally faster. - * @note The round robin preemption is not supported in tickless mode and - * must be set to zero in that case. - */ -#define CH_CFG_TIME_QUANTUM 0 - -/** - * @brief Managed RAM size. - * @details Size of the RAM area to be managed by the OS. If set to zero - * then the whole available RAM is used. The core memory is made - * available to the heap allocator and/or can be used directly through - * the simplified core memory allocator. - * - * @note In order to let the OS manage the whole RAM the linker script must - * provide the @p __heap_base__ and @p __heap_end__ symbols. - * @note Requires @p CH_CFG_USE_MEMCORE. - */ -#define CH_CFG_MEMCORE_SIZE 0 - -/** - * @brief Idle thread automatic spawn suppression. - * @details When this option is activated the function @p chSysInit() - * does not spawn the idle thread. The application @p main() - * function becomes the idle thread and must implement an - * infinite loop. - */ -#define CH_CFG_NO_IDLE_THREAD FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Performance options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief OS optimization. - * @details If enabled then time efficient rather than space efficient code - * is used when two possible implementations exist. - * - * @note This is not related to the compiler optimization options. - * @note The default is @p TRUE. - */ -#define CH_CFG_OPTIMIZE_SPEED TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Subsystem options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Time Measurement APIs. - * @details If enabled then the time measurement APIs are included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_TM FALSE - -/** - * @brief Threads registry APIs. - * @details If enabled then the registry APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_REGISTRY TRUE - -/** - * @brief Threads synchronization APIs. - * @details If enabled then the @p chThdWait() function is included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_WAITEXIT TRUE - -/** - * @brief Semaphores APIs. - * @details If enabled then the Semaphores APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_SEMAPHORES TRUE - -/** - * @brief Semaphores queuing mode. - * @details If enabled then the threads are enqueued on semaphores by - * priority rather than in FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE - -/** - * @brief Mutexes APIs. - * @details If enabled then the mutexes APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MUTEXES TRUE - -/** - * @brief Enables recursive behavior on mutexes. - * @note Recursive mutexes are heavier and have an increased - * memory footprint. - * - * @note The default is @p FALSE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_MUTEXES_RECURSIVE FALSE - -/** - * @brief Conditional Variables APIs. - * @details If enabled then the conditional variables APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_CONDVARS TRUE - -/** - * @brief Conditional Variables APIs with timeout. - * @details If enabled then the conditional variables APIs with timeout - * specification are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_CONDVARS. - */ -#define CH_CFG_USE_CONDVARS_TIMEOUT TRUE - -/** - * @brief Events Flags APIs. - * @details If enabled then the event flags APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_EVENTS TRUE - -/** - * @brief Events Flags APIs with timeout. - * @details If enabled then the events APIs with timeout specification - * are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_EVENTS. - */ -#define CH_CFG_USE_EVENTS_TIMEOUT TRUE - -/** - * @brief Synchronous Messages APIs. - * @details If enabled then the synchronous messages APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MESSAGES TRUE - -/** - * @brief Synchronous Messages queuing mode. - * @details If enabled then messages are served by priority rather than in - * FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_MESSAGES. - */ -#define CH_CFG_USE_MESSAGES_PRIORITY FALSE - -/** - * @brief Mailboxes APIs. - * @details If enabled then the asynchronous messages (mailboxes) APIs are - * included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_MAILBOXES TRUE - -/** - * @brief I/O Queues APIs. - * @details If enabled then the I/O queues APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_QUEUES TRUE - -/** - * @brief Core Memory Manager APIs. - * @details If enabled then the core memory manager APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMCORE TRUE - -/** - * @brief Heap Allocator APIs. - * @details If enabled then the memory heap allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or - * @p CH_CFG_USE_SEMAPHORES. - * @note Mutexes are recommended. - */ -#define CH_CFG_USE_HEAP TRUE - -/** - * @brief Memory Pools Allocator APIs. - * @details If enabled then the memory pools allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMPOOLS TRUE - -/** - * @brief Dynamic Threads APIs. - * @details If enabled then the dynamic threads creation APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_WAITEXIT. - * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS. - */ -#define CH_CFG_USE_DYNAMIC TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Debug options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Debug option, kernel statistics. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_STATISTICS FALSE - -/** - * @brief Debug option, system state check. - * @details If enabled the correct call protocol for system APIs is checked - * at runtime. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_SYSTEM_STATE_CHECK FALSE - -/** - * @brief Debug option, parameters checks. - * @details If enabled then the checks on the API functions input - * parameters are activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_CHECKS FALSE - -/** - * @brief Debug option, consistency checks. - * @details If enabled then all the assertions in the kernel code are - * activated. This includes consistency checks inside the kernel, - * runtime anomalies and port-defined checks. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_ASSERTS FALSE - -/** - * @brief Debug option, trace buffer. - * @details If enabled then the context switch circular trace buffer is - * activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_TRACE FALSE - -/** - * @brief Debug option, stack checks. - * @details If enabled then a runtime stack check is performed. - * - * @note The default is @p FALSE. - * @note The stack check is performed in a architecture/port dependent way. - * It may not be implemented or some ports. - * @note The default failure mode is to halt the system with the global - * @p panic_msg variable set to @p NULL. - */ -#define CH_DBG_ENABLE_STACK_CHECK FALSE - -/** - * @brief Debug option, stacks initialization. - * @details If enabled then the threads working area is filled with a byte - * value when a thread is created. This can be useful for the - * runtime measurement of the used stack. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_FILL_THREADS FALSE - -/** - * @brief Debug option, threads profiling. - * @details If enabled then a field is added to the @p thread_t structure that - * counts the system ticks occurred while executing the thread. - * - * @note The default is @p FALSE. - * @note This debug option is not currently compatible with the - * tickless mode. - */ -#define CH_DBG_THREADS_PROFILING FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel hooks - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Threads descriptor structure extension. - * @details User fields added to the end of the @p thread_t structure. - */ -#define CH_CFG_THREAD_EXTRA_FIELDS \ - /* Add threads custom fields here.*/ - -/** - * @brief Threads initialization hook. - * @details User initialization code added to the @p chThdInit() API. - * - * @note It is invoked from within @p chThdInit() and implicitly from all - * the threads creation APIs. - */ -#define CH_CFG_THREAD_INIT_HOOK(tp) { \ - /* Add threads initialization code here.*/ \ -} - -/** - * @brief Threads finalization hook. - * @details User finalization code added to the @p chThdExit() API. - * - * @note It is inserted into lock zone. - * @note It is also invoked when the threads simply return in order to - * terminate. - */ -#define CH_CFG_THREAD_EXIT_HOOK(tp) { \ - /* Add threads finalization code here.*/ \ -} - -/** - * @brief Context switch hook. - * @details This hook is invoked just before switching between threads. - */ -#define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) { \ - /* Context switch code here.*/ \ -} - -/** - * @brief Idle thread enter hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to activate a power saving mode. - */ -#define CH_CFG_IDLE_ENTER_HOOK() { \ -} - -/** - * @brief Idle thread leave hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to deactivate a power saving mode. - */ -#define CH_CFG_IDLE_LEAVE_HOOK() { \ -} - -/** - * @brief Idle Loop hook. - * @details This hook is continuously invoked by the idle thread loop. - */ -#define CH_CFG_IDLE_LOOP_HOOK() { \ - /* Idle loop code here.*/ \ -} - -/** - * @brief System tick event hook. - * @details This hook is invoked in the system tick handler immediately - * after processing the virtual timers queue. - */ -#define CH_CFG_SYSTEM_TICK_HOOK() { \ - /* System tick event code here.*/ \ -} - -/** - * @brief System halt hook. - * @details This hook is invoked in case to a system halting error before - * the system is halted. - */ -#define CH_CFG_SYSTEM_HALT_HOOK(reason) { \ - /* System halt code here.*/ \ -} - -/** @} */ - -/*===========================================================================*/ -/* Port-specific settings (override port settings defaulted in chcore.h). */ -/*===========================================================================*/ - -#endif /* _CHCONF_H_ */ - -/** @} */ diff --git a/demos/SPC5/RT-SPC560B-EVB/halconf.h b/demos/SPC5/RT-SPC560B-EVB/halconf.h deleted file mode 100644 index 682795338..000000000 --- a/demos/SPC5/RT-SPC560B-EVB/halconf.h +++ /dev/null @@ -1,388 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file templates/halconf.h - * @brief HAL configuration header. - * @details HAL configuration file, this file allows to enable or disable the - * various device drivers from your application. You may also use - * this file in order to override the device drivers default settings. - * - * @addtogroup HAL_CONF - * @{ - */ - -#ifndef _HALCONF_H_ -#define _HALCONF_H_ - -#include "mcuconf.h" - -/** - * @brief Enables the TM subsystem. - */ -#if !defined(HAL_USE_TM) || defined(__DOXYGEN__) -#define HAL_USE_TM FALSE -#endif - -/** - * @brief Enables the PAL subsystem. - */ -#if !defined(HAL_USE_PAL) || defined(__DOXYGEN__) -#define HAL_USE_PAL TRUE -#endif - -/** - * @brief Enables the ADC subsystem. - */ -#if !defined(HAL_USE_ADC) || defined(__DOXYGEN__) -#define HAL_USE_ADC FALSE -#endif - -/** - * @brief Enables the CAN subsystem. - */ -#if !defined(HAL_USE_CAN) || defined(__DOXYGEN__) -#define HAL_USE_CAN FALSE -#endif - -/** - * @brief Enables the DAC subsystem. - */ -#if !defined(HAL_USE_DAC) || defined(__DOXYGEN__) -#define HAL_USE_DAC FALSE -#endif - -/** - * @brief Enables the EXT subsystem. - */ -#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) -#define HAL_USE_EXT FALSE -#endif - -/** - * @brief Enables the GPT subsystem. - */ -#if !defined(HAL_USE_GPT) || defined(__DOXYGEN__) -#define HAL_USE_GPT FALSE -#endif - -/** - * @brief Enables the I2C subsystem. - */ -#if !defined(HAL_USE_I2C) || defined(__DOXYGEN__) -#define HAL_USE_I2C FALSE -#endif - -/** - * @brief Enables the I2S subsystem. - */ -#if !defined(HAL_USE_I2S) || defined(__DOXYGEN__) -#define HAL_USE_I2S FALSE -#endif - -/** - * @brief Enables the ICU subsystem. - */ -#if !defined(HAL_USE_ICU) || defined(__DOXYGEN__) -#define HAL_USE_ICU FALSE -#endif - -/** - * @brief Enables the MAC subsystem. - */ -#if !defined(HAL_USE_MAC) || defined(__DOXYGEN__) -#define HAL_USE_MAC FALSE -#endif - -/** - * @brief Enables the MMC_SPI subsystem. - */ -#if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__) -#define HAL_USE_MMC_SPI FALSE -#endif - -/** - * @brief Enables the PWM subsystem. - */ -#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__) -#define HAL_USE_PWM FALSE -#endif - -/** - * @brief Enables the RTC subsystem. - */ -#if !defined(HAL_USE_RTC) || defined(__DOXYGEN__) -#define HAL_USE_RTC FALSE -#endif - -/** - * @brief Enables the SDC subsystem. - */ -#if !defined(HAL_USE_SDC) || defined(__DOXYGEN__) -#define HAL_USE_SDC FALSE -#endif - -/** - * @brief Enables the SERIAL subsystem. - */ -#if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__) -#define HAL_USE_SERIAL TRUE -#endif - -/** - * @brief Enables the SERIAL over USB subsystem. - */ -#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__) -#define HAL_USE_SERIAL_USB FALSE -#endif - -/** - * @brief Enables the SPI subsystem. - */ -#if !defined(HAL_USE_SPI) || defined(__DOXYGEN__) -#define HAL_USE_SPI FALSE -#endif - -/** - * @brief Enables the UART subsystem. - */ -#if !defined(HAL_USE_UART) || defined(__DOXYGEN__) -#define HAL_USE_UART FALSE -#endif - -/** - * @brief Enables the USB subsystem. - */ -#if !defined(HAL_USE_USB) || defined(__DOXYGEN__) -#define HAL_USE_USB FALSE -#endif - -/** - * @brief Enables the WDG subsystem. - */ -#if !defined(HAL_USE_WDG) || defined(__DOXYGEN__) -#define HAL_USE_WDG FALSE -#endif - -/*===========================================================================*/ -/* ADC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__) -#define ADC_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define ADC_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* CAN driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Sleep mode related APIs inclusion switch. - */ -#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__) -#define CAN_USE_SLEEP_MODE TRUE -#endif - -/*===========================================================================*/ -/* I2C driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables the mutual exclusion APIs on the I2C bus. - */ -#if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define I2C_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* MAC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables an event sources for incoming packets. - */ -#if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__) -#define MAC_USE_ZERO_COPY FALSE -#endif - -/** - * @brief Enables an event sources for incoming packets. - */ -#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__) -#define MAC_USE_EVENTS TRUE -#endif - -/*===========================================================================*/ -/* MMC_SPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Delays insertions. - * @details If enabled this options inserts delays into the MMC waiting - * routines releasing some extra CPU time for the threads with - * lower priority, this may slow down the driver a bit however. - * This option is recommended also if the SPI driver does not - * use a DMA channel and heavily loads the CPU. - */ -#if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__) -#define MMC_NICE_WAITING TRUE -#endif - -/*===========================================================================*/ -/* SDC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Number of initialization attempts before rejecting the card. - * @note Attempts are performed at 10mS intervals. - */ -#if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__) -#define SDC_INIT_RETRY 100 -#endif - -/** - * @brief Include support for MMC cards. - * @note MMC support is not yet implemented so this option must be kept - * at @p FALSE. - */ -#if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__) -#define SDC_MMC_SUPPORT FALSE -#endif - -/** - * @brief Delays insertions. - * @details If enabled this options inserts delays into the MMC waiting - * routines releasing some extra CPU time for the threads with - * lower priority, this may slow down the driver a bit however. - */ -#if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__) -#define SDC_NICE_WAITING TRUE -#endif - -/*===========================================================================*/ -/* SERIAL driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Default bit rate. - * @details Configuration parameter, this is the baud rate selected for the - * default configuration. - */ -#if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__) -#define SERIAL_DEFAULT_BITRATE 38400 -#endif - -/** - * @brief Serial buffers size. - * @details Configuration parameter, you can change the depth of the queue - * buffers depending on the requirements of your application. - * @note The default is 16 bytes for both the transmission and receive - * buffers. - */ -#if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__) -#define SERIAL_BUFFERS_SIZE 16 -#endif - -/*===========================================================================*/ -/* SERIAL_USB driver related setting. */ -/*===========================================================================*/ - -/** - * @brief Serial over USB buffers size. - * @details Configuration parameter, the buffer size must be a multiple of - * the USB data endpoint maximum packet size. - * @note The default is 256 bytes for both the transmission and receive - * buffers. - */ -#if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__) -#define SERIAL_USB_BUFFERS_SIZE 256 -#endif - -/** - * @brief Serial over USB number of buffers. - * @note The default is 2 buffers. - */ -#if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__) -#define SERIAL_USB_BUFFERS_NUMBER 2 -#endif - -/*===========================================================================*/ -/* SPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__) -#define SPI_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define SPI_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* UART driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__) -#define UART_USE_WAIT FALSE -#endif - -/** - * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define UART_USE_MUTUAL_EXCLUSION FALSE -#endif - -/*===========================================================================*/ -/* USB driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(USB_USE_WAIT) || defined(__DOXYGEN__) -#define USB_USE_WAIT FALSE -#endif - -#endif /* _HALCONF_H_ */ - -/** @} */ diff --git a/demos/SPC5/RT-SPC560B-EVB/main.c b/demos/SPC5/RT-SPC560B-EVB/main.c deleted file mode 100644 index 957f0e8c2..000000000 --- a/demos/SPC5/RT-SPC560B-EVB/main.c +++ /dev/null @@ -1,202 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#include "ch.h" -#include "hal.h" -#include "test.h" -#include "shell.h" -#include "chprintf.h" - -#define SHELL_WA_SIZE THD_WORKING_AREA_SIZE(1024) -#define TEST_WA_SIZE THD_WORKING_AREA_SIZE(256) - -static void cmd_mem(BaseSequentialStream *chp, int argc, char *argv[]) { - size_t n, size; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: mem\r\n"); - return; - } - n = chHeapStatus(NULL, &size); - chprintf(chp, "core free memory : %u bytes\r\n", chCoreGetStatusX()); - chprintf(chp, "heap fragments : %u\r\n", n); - chprintf(chp, "heap free total : %u bytes\r\n", size); -} - -static void cmd_threads(BaseSequentialStream *chp, int argc, char *argv[]) { - static const char *states[] = {CH_STATE_NAMES}; - thread_t *tp; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: threads\r\n"); - return; - } - chprintf(chp, " addr stack prio refs state time\r\n"); - tp = chRegFirstThread(); - do { - chprintf(chp, "%08lx %08lx %4lu %4lu %9s\r\n", - (uint32_t)tp, (uint32_t)tp->p_ctx.sp, - (uint32_t)tp->p_prio, (uint32_t)(tp->p_refs - 1), - states[tp->p_state]); - tp = chRegNextThread(tp); - } while (tp != NULL); -} - -static void cmd_test(BaseSequentialStream *chp, int argc, char *argv[]) { - thread_t *tp; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: test\r\n"); - return; - } - tp = chThdCreateFromHeap(NULL, TEST_WA_SIZE, chThdGetPriorityX(), - TestThread, chp); - if (tp == NULL) { - chprintf(chp, "out of memory\r\n"); - return; - } - chThdWait(tp); -} - -static const ShellCommand commands[] = { - {"mem", cmd_mem}, - {"threads", cmd_threads}, - {"test", cmd_test}, - {NULL, NULL} -}; - -static const ShellConfig shell_cfg1 = { - (BaseSequentialStream *)&SD1, - commands -}; - -/* - * LEDs blinker thread, times are in milliseconds. - */ -static THD_WORKING_AREA(waThread1, 128); -static THD_FUNCTION(Thread1, arg) { - - (void)arg; - chRegSetThreadName("blinker"); - - while (true) { - unsigned i; - - for (i = 0; i < 4; i++) { - palClearPad(PORT_E, PE_LED1); - chThdSleepMilliseconds(100); - palClearPad(PORT_E, PE_LED2); - chThdSleepMilliseconds(100); - palClearPad(PORT_E, PE_LED3); - chThdSleepMilliseconds(100); - palClearPad(PORT_E, PE_LED4); - chThdSleepMilliseconds(100); - palSetPad(PORT_E, PE_LED1); - chThdSleepMilliseconds(100); - palSetPad(PORT_E, PE_LED2); - chThdSleepMilliseconds(100); - palSetPad(PORT_E, PE_LED3); - chThdSleepMilliseconds(100); - palSetPad(PORT_E, PE_LED4); - chThdSleepMilliseconds(300); - } - - for (i = 0; i < 4; i++) { - palTogglePort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED2) | - PAL_PORT_BIT(PE_LED3) | PAL_PORT_BIT(PE_LED4)); - chThdSleepMilliseconds(500); - palTogglePort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED2) | - PAL_PORT_BIT(PE_LED3) | PAL_PORT_BIT(PE_LED4)); - chThdSleepMilliseconds(500); - } - - for (i = 0; i < 4; i++) { - palTogglePad(PORT_E, PE_LED1); - chThdSleepMilliseconds(250); - palTogglePad(PORT_E, PE_LED1); - palTogglePad(PORT_E, PE_LED2); - chThdSleepMilliseconds(250); - palTogglePad(PORT_E, PE_LED2); - palTogglePad(PORT_E, PE_LED3); - chThdSleepMilliseconds(250); - palTogglePad(PORT_E, PE_LED3); - palTogglePad(PORT_E, PE_LED4); - chThdSleepMilliseconds(250); - palTogglePad(PORT_E, PE_LED4); - } - - for (i = 0; i < 4; i++) { - palClearPort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED3)); - palSetPort(PORT_E, PAL_PORT_BIT(PE_LED2) | PAL_PORT_BIT(PE_LED4)); - chThdSleepMilliseconds(500); - palClearPort(PORT_E, PAL_PORT_BIT(PE_LED2) | PAL_PORT_BIT(PE_LED4)); - palSetPort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED3)); - chThdSleepMilliseconds(500); - } - - palSetPort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED2) | - PAL_PORT_BIT(PE_LED3) | PAL_PORT_BIT(PE_LED4)); - } -} - -/* - * Application entry point. - */ -int main(void) { - thread_t *shelltp = NULL; - - /* - * System initializations. - * - HAL initialization, this also initializes the configured device drivers - * and performs the board-specific initializations. - * - Kernel initialization, the main() function becomes a thread and the - * RTOS is active. - */ - halInit(); - chSysInit(); - - /* - * Shell manager initialization. - */ - shellInit(); - - /* - * Activates the serial driver 1 using the driver default configuration. - */ - sdStart(&SD1, NULL); - - /* - * Creates the blinker thread. - */ - chThdCreateStatic(waThread1, sizeof(waThread1), NORMALPRIO, Thread1, NULL); - - /* - * Normal main() thread activity. - */ - while (true) { - if (!shelltp) - shelltp = shellCreate(&shell_cfg1, SHELL_WA_SIZE, NORMALPRIO); - else if (chThdTerminatedX(shelltp)) { - chThdRelease(shelltp); /* Recovers memory of the previous shell. */ - shelltp = NULL; /* Triggers spawning of a new shell. */ - } - chThdSleepMilliseconds(1000); - } - return 0; -} diff --git a/demos/SPC5/RT-SPC560B-EVB/mcuconf.h b/demos/SPC5/RT-SPC560B-EVB/mcuconf.h deleted file mode 100644 index b510c5be3..000000000 --- a/demos/SPC5/RT-SPC560B-EVB/mcuconf.h +++ /dev/null @@ -1,273 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#ifndef _MCUCONF_H_ -#define _MCUCONF_H_ - -/* - * SPC560Bxx drivers configuration. - * The following settings override the default settings present in - * the various device driver implementation headers. - * Note that the settings for each driver only have effect if the whole - * driver is enabled in halconf.h. - * - * IRQ priorities: - * 1...15 Lowest...Highest. - * DMA priorities: - * 0...15 Highest...Lowest. - */ - -#define SPC560Bxx_MCUCONF - -/* - * HAL driver system settings. - */ -#define SPC5_NO_INIT FALSE -#define SPC5_ALLOW_OVERCLOCK FALSE -#define SPC5_DISABLE_WATCHDOG TRUE -#define SPC5_FMPLL0_IDF_VALUE 1 -#define SPC5_FMPLL0_NDIV_VALUE 32 -#define SPC5_FMPLL0_ODF SPC5_FMPLL_ODF_DIV4 -#define SPC5_XOSCDIV_VALUE 1 -#define SPC5_IRCDIV_VALUE 1 -#define SPC5_PERIPHERAL1_CLK_DIV_VALUE 2 -#define SPC5_PERIPHERAL2_CLK_DIV_VALUE 2 -#define SPC5_PERIPHERAL3_CLK_DIV_VALUE 2 -#define SPC5_CLOCK_FAILURE_HOOK() osalSysHalt("clock failure") - -#define SPC5_EMIOS0_GPRE_VALUE 20 -#define SPC5_EMIOS1_GPRE_VALUE 20 - -/* - * EDMA driver settings. - */ -#define SPC5_EDMA_CR_SETTING (EDMA_CR_GRP1PRI(1) | \ - EDMA_CR_GRP0PRI(0) | \ - EDMA_CR_EMLM | \ - EDMA_CR_ERGA) -#define SPC5_EDMA_GROUP0_PRIORITIES 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 -#define SPC5_EDMA_ERROR_IRQ_PRIO 12 -#define SPC5_EDMA_ERROR_HANDLER() osalSysHalt("DMA failure") - -/* - * SERIAL driver system settings. - */ -#define SPC5_SERIAL_USE_LINFLEX0 TRUE -#define SPC5_SERIAL_USE_LINFLEX1 FALSE -#define SPC5_SERIAL_USE_LINFLEX2 FALSE -#define SPC5_SERIAL_USE_LINFLEX3 FALSE -#define SPC5_SERIAL_USE_LINFLEX4 FALSE -#define SPC5_SERIAL_USE_LINFLEX5 FALSE -#define SPC5_SERIAL_USE_LINFLEX6 FALSE -#define SPC5_SERIAL_USE_LINFLEX7 FALSE -#define SPC5_SERIAL_USE_LINFLEX8 FALSE -#define SPC5_SERIAL_USE_LINFLEX9 FALSE -#define SPC5_SERIAL_LINFLEX0_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX1_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX2_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX3_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX4_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX5_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX6_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX7_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX8_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX9_PRIORITY 8 - -/* - * SPI driver system settings. - */ -#define SPC5_SPI_USE_DSPI0 FALSE -#define SPC5_SPI_USE_DSPI1 FALSE -#define SPC5_SPI_USE_DSPI2 FALSE -#define SPC5_SPI_USE_DSPI3 FALSE -#define SPC5_SPI_USE_DSPI4 FALSE -#define SPC5_SPI_USE_DSPI5 FALSE -#define SPC5_SPI_DMA_MODE SPC5_SPI_DMA_RX_ONLY -#define SPC5_SPI_DSPI0_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3 | SPC5_MCR_PCSIS4 | SPC5_MCR_PCSIS5) -#define SPC5_SPI_DSPI1_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3 | SPC5_MCR_PCSIS4) -#define SPC5_SPI_DSPI2_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3) -#define SPC5_SPI_DSPI3_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1) -#define SPC5_SPI_DSPI4_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1) -#define SPC5_SPI_DSPI5_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1) -#define SPC5_SPI_DSPI0_TX1_DMA_CH_ID 4 -#define SPC5_SPI_DSPI0_TX2_DMA_CH_ID 5 -#define SPC5_SPI_DSPI0_RX_DMA_CH_ID 6 -#define SPC5_SPI_DSPI1_TX1_DMA_CH_ID 7 -#define SPC5_SPI_DSPI1_TX2_DMA_CH_ID 8 -#define SPC5_SPI_DSPI1_RX_DMA_CH_ID 9 -#define SPC5_SPI_DSPI2_TX1_DMA_CH_ID 10 -#define SPC5_SPI_DSPI2_TX2_DMA_CH_ID 11 -#define SPC5_SPI_DSPI2_RX_DMA_CH_ID 12 -#define SPC5_SPI_DSPI3_TX1_DMA_CH_ID 13 -#define SPC5_SPI_DSPI3_TX2_DMA_CH_ID 14 -#define SPC5_SPI_DSPI3_RX_DMA_CH_ID 15 -#define SPC5_SPI_DSPI4_TX1_DMA_CH_ID 1 -#define SPC5_SPI_DSPI4_TX2_DMA_CH_ID 2 -#define SPC5_SPI_DSPI4_RX_DMA_CH_ID 3 -#define SPC5_SPI_DSPI5_TX1_DMA_CH_ID 4 -#define SPC5_SPI_DSPI5_TX2_DMA_CH_ID 5 -#define SPC5_SPI_DSPI5_RX_DMA_CH_ID 6 -#define SPC5_SPI_DSPI0_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI1_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI2_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI3_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI4_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI5_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI0_IRQ_PRIO 10 -#define SPC5_SPI_DSPI1_IRQ_PRIO 10 -#define SPC5_SPI_DSPI2_IRQ_PRIO 10 -#define SPC5_SPI_DSPI3_IRQ_PRIO 10 -#define SPC5_SPI_DSPI4_IRQ_PRIO 10 -#define SPC5_SPI_DSPI5_IRQ_PRIO 10 -#define SPC5_SPI_DMA_ERROR_HOOK(spip) osalSysHalt("DSPI DMA failure") - -/* - * ICU-PWM driver system settings. - */ -#define SPC5_ICU_USE_EMIOS0_CH0 FALSE -#define SPC5_ICU_USE_EMIOS0_CH1 FALSE -#define SPC5_ICU_USE_EMIOS0_CH2 FALSE -#define SPC5_ICU_USE_EMIOS0_CH3 FALSE -#define SPC5_ICU_USE_EMIOS0_CH4 FALSE -#define SPC5_ICU_USE_EMIOS0_CH5 FALSE -#define SPC5_ICU_USE_EMIOS0_CH6 FALSE -#define SPC5_ICU_USE_EMIOS0_CH7 FALSE -#define SPC5_ICU_USE_EMIOS0_CH24 FALSE - -#define SPC5_PWM_USE_EMIOS0_GROUP0 FALSE -#define SPC5_PWM_USE_EMIOS0_GROUP1 FALSE - -#define SPC5_EMIOS0_GFR_F0F1_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F2F3_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F4F5_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F6F7_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F8F9_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F10F11_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F12F13_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F14F15_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F16F17_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F18F19_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F20F21_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F22F23_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F24F25_PRIORITY 8 - -#define SPC5_EMIOS0_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_EMIOS0_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_ICU_USE_EMIOS1_CH24 FALSE - -#define SPC5_PWM_USE_EMIOS1_GROUP0 FALSE -#define SPC5_PWM_USE_EMIOS1_GROUP1 FALSE -#define SPC5_PWM_USE_EMIOS1_GROUP2 FALSE - -#define SPC5_EMIOS1_GFR_F0F1_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F2F3_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F4F5_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F6F7_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F8F9_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F10F11_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F12F13_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F14F15_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F16F17_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F18F19_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F20F21_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F22F23_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F24F25_PRIORITY 8 - -#define SPC5_EMIOS1_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_EMIOS1_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) -/* - * CAN driver system settings. - */ -#define SPC5_CAN_USE_FILTERS FALSE - -#define SPC5_CAN_USE_FLEXCAN0 FALSE -#define SPC5_CAN_FLEXCAN0_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN0_PRIORITY 11 -#define SPC5_CAN_FLEXCAN0_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_CAN_FLEXCAN0_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_CAN_USE_FLEXCAN1 FALSE -#define SPC5_CAN_FLEXCAN1_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN1_PRIORITY 11 -#define SPC5_CAN_FLEXCAN1_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_CAN_FLEXCAN1_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_CAN_USE_FLEXCAN2 FALSE -#define SPC5_CAN_FLEXCAN2_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN2_PRIORITY 11 -#define SPC5_CAN_FLEXCAN2_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_CAN_FLEXCAN2_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_CAN_USE_FLEXCAN3 FALSE -#define SPC5_CAN_FLEXCAN3_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN3_PRIORITY 11 -#define SPC5_CAN_FLEXCAN3_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_CAN_FLEXCAN3_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_CAN_USE_FLEXCAN4 FALSE -#define SPC5_CAN_FLEXCAN4_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN4_PRIORITY 11 -#define SPC5_CAN_FLEXCAN4_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_CAN_FLEXCAN4_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_CAN_USE_FLEXCAN5 FALSE -#define SPC5_CAN_FLEXCAN5_PRIORITY 11 -#define SPC5_CAN_FLEXCAN5_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_CAN_FLEXCAN5_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -/* -* ADC driver system settings. -*/ -#define SPC5_ADC_USE_ADC0 FALSE -#define SPC5_ADC_ADC0_CLK_FREQUENCY HALF_PERIPHERAL_SET_CLOCK_FREQUENCY -#define SPC5_ADC_ADC0_AUTO_CLOCK_OFF FALSE -#define SPC5_ADC_ADC0_WD_PRIORITY 12 -#define SPC5_ADC_ADC0_DMA_CH_ID 1 -#define SPC5_ADC_ADC0_DMA_IRQ_PRIO 12 -#define SPC5_ADC_ADC0_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_ADC_ADC0_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_ADC_USE_ADC1 FALSE -#define SPC5_ADC_ADC1_CLK_FREQUENCY HALF_PERIPHERAL_SET_CLOCK_FREQUENCY -#define SPC5_ADC_ADC1_AUTO_CLOCK_OFF FALSE -#define SPC5_ADC_ADC1_WD_PRIORITY 12 -#define SPC5_ADC_ADC1_DMA_CH_ID 2 -#define SPC5_ADC_ADC1_DMA_IRQ_PRIO 12 -#define SPC5_ADC_ADC1_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_ADC_ADC1_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#endif /* _MCUCONF_H_ */ diff --git a/demos/SPC5/RT-SPC560D-EVB/.cproject b/demos/SPC5/RT-SPC560D-EVB/.cproject deleted file mode 100644 index 03d4fd009..000000000 --- a/demos/SPC5/RT-SPC560D-EVB/.cproject +++ /dev/null @@ -1,57 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/SPC5/RT-SPC560D-EVB/.project b/demos/SPC5/RT-SPC560D-EVB/.project deleted file mode 100644 index 5a21d7f0a..000000000 --- a/demos/SPC5/RT-SPC560D-EVB/.project +++ /dev/null @@ -1,43 +0,0 @@ - - - RT-SPC560D-EVB - - - - - - org.eclipse.cdt.managedbuilder.core.genmakebuilder - clean,full,incremental, - - - - - org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder - full,incremental, - - - - - - org.eclipse.cdt.core.cnature - org.eclipse.cdt.managedbuilder.core.managedBuildNature - org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - - - - board - 2 - CHIBIOS/os/hal/boards/ST_EVB_SPC560D - - - os - 2 - CHIBIOS/os - - - test - 2 - CHIBIOS/test - - - diff --git a/demos/SPC5/RT-SPC560D-EVB/Makefile b/demos/SPC5/RT-SPC560D-EVB/Makefile deleted file mode 100644 index 36836cfdc..000000000 --- a/demos/SPC5/RT-SPC560D-EVB/Makefile +++ /dev/null @@ -1,188 +0,0 @@ -############################################################################## -# Build global options -# NOTE: Can be overridden externally. -# - -# Compiler options here. -ifeq ($(USE_OPT),) - USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16 -mno-spe -msoft-float -endif - -# C specific options here (added to USE_OPT). -ifeq ($(USE_COPT),) - USE_COPT = -endif - -# C++ specific options here (added to USE_OPT). -ifeq ($(USE_CPPOPT),) - USE_CPPOPT = -fno-rtti -endif - -# Enable this if you want the linker to remove unused code and data. -ifeq ($(USE_LINK_GC),) - USE_LINK_GC = yes -endif - -# Linker extra options here. -ifeq ($(USE_LDOPT),) - USE_LDOPT = -endif - -# Enable this if you want link time optimizations (LTO) -ifeq ($(USE_LTO),) - USE_LTO = no -endif - -# If enabled, this option allows to compile the application in VLE mode. -ifeq ($(USE_VLE),) - USE_VLE = yes -endif - -# Enable this if you want to see the full log while compiling. -ifeq ($(USE_VERBOSE_COMPILE),) - USE_VERBOSE_COMPILE = no -endif - -# If enabled, this option makes the build process faster by not compiling -# modules not used in the current configuration. -ifeq ($(USE_SMART_BUILD),) - USE_SMART_BUILD = yes -endif - -# -# Build global options -############################################################################## - -############################################################################## -# Architecture or project specific options -# - -# Stack size to be allocated to the process stack. This stack is -# the stack used by the main() thread. -ifeq ($(USE_PROCESS_STACKSIZE),) - USE_PROCESS_STACKSIZE = 0x400 -endif - -# Stack size to the allocated to the optional exceptions stack. This -# stack is used for processing interrupts and exceptions. -ifeq ($(USE_EXCEPTIONS_STACKSIZE),) - USE_EXCEPTIONS_STACKSIZE = 0 -endif - -# -# Architecture or project specific options -############################################################################## - -############################################################################## -# Project, sources and paths -# - -# Define project name here -PROJECT = ch - -# Imported source files and paths -CHIBIOS = ../../.. -# Startup files. -include $(CHIBIOS)/os/common/ports/e200/compilers/GCC/mk/startup_spc560dxx.mk -# HAL-OSAL files (optional). -include $(CHIBIOS)/os/hal/hal.mk -include $(CHIBIOS)/os/hal/boards/ST_EVB_SPC560D/board.mk -include $(CHIBIOS)/os/hal/ports/SPC5/SPC560Dxx/platform.mk -include $(CHIBIOS)/os/hal/osal/rt/osal.mk -# RTOS files (optional). -include $(CHIBIOS)/os/rt/rt.mk -include $(CHIBIOS)/os/rt/ports/e200/compilers/GCC/mk/port.mk -# Other files (optional). -include $(CHIBIOS)/test/rt/test.mk - -# Define linker script file here -LDSCRIPT= $(STARTUPLD)/SPC560D40.ld - -# C sources here. -CSRC = $(STARTUPSRC) \ - $(KERNSRC) \ - $(PORTSRC) \ - $(OSALSRC) \ - $(HALSRC) \ - $(PLATFORMSRC) \ - $(BOARDSRC) \ - $(TESTSRC) \ - $(CHIBIOS)/os/hal/lib/streams/memstreams.c \ - $(CHIBIOS)/os/hal/lib/streams/chprintf.c \ - $(CHIBIOS)/os/various/shell.c \ - main.c - -# C++ sources here. -CPPSRC = - -# List ASM source files here -ASMSRC = $(STARTUPASM) $(PORTASM) $(OSALASM) - -INCDIR = $(STARTUPINC) $(KERNINC) $(PORTINC) $(OSALINC) \ - $(HALINC) $(PLATFORMINC) $(BOARDINC) $(TESTINC) \ - $(CHIBIOS)/os/hal/lib/streams $(CHIBIOS)/os/various - -# -# Project, sources and paths -############################################################################## - -############################################################################## -# Compiler settings -# - -#MCU = e500mc -meabi -msdata=none -mnew-mnemonics -mregnames -MCU = e200zx -meabi -msdata=none -mnew-mnemonics -mregnames - -#TRGT = powerpc-eabi- -TRGT = ppc-vle- -CC = $(TRGT)gcc -CPPC = $(TRGT)g++ -# Enable loading with g++ only if you need C++ runtime support. -# NOTE: You can use C++ even without C++ support if you are careful. C++ -# runtime support makes code size explode. -LD = $(TRGT)gcc -#LD = $(TRGT)g++ -CP = $(TRGT)objcopy -AS = $(TRGT)gcc -x assembler-with-cpp -AR = $(TRGT)ar -OD = $(TRGT)objdump -SZ = $(TRGT)size -HEX = $(CP) -O ihex -MOT = $(CP) -O srec -BIN = $(CP) -O binary - -# Define C warning options here -CWARN = -Wall -Wextra -Wundef -Wstrict-prototypes - -# Define C++ warning options here -CPPWARN = -Wall -Wextra -Wundef - -# -# Compiler settings -############################################################################## - -############################################################################## -# Start of user section -# - -# List all user C define here, like -D_DEBUG=1 -UDEFS = - -# Define ASM defines here -UADEFS = - -# List all user directories here -UINCDIR = - -# List the user directory to look for the libraries here -ULIBDIR = - -# List all user libraries here -ULIBS = - -# -# End of user defines -############################################################################## - -RULESPATH = $(CHIBIOS)/os/common/ports/e200/compilers/GCC -include $(RULESPATH)/rules.mk diff --git a/demos/SPC5/RT-SPC560D-EVB/UDE/debug.wsx b/demos/SPC5/RT-SPC560D-EVB/UDE/debug.wsx deleted file mode 100644 index 5ee159719..000000000 --- a/demos/SPC5/RT-SPC560D-EVB/UDE/debug.wsx +++ /dev/null @@ -1,273 +0,0 @@ - - - debug.wsx000vQTv/gAAAQAXAAIA8QkPAAAABAAAAAAAPwAAAAAAAAAEAAAAAgAAAAAAAAAAAAAAAAAAAA==4.019.11.2012 16:18:08:999MCAAAAAAAAAAAAAABAAAAAAAPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPHHAAAAAAPBAAAAAADGFAAAAABCDAAAAAFalseTrue1416801050593930FalseFalse1000000000000000UDEStatusBarFor Help, press F10594191105964705939959398593975940359401594065940200FalseFalse0000000000CUDEDockBar05942230911000FalseFalse0000000000CUDEDockBar05942030910000FalseFalse0000000000CUDEDockBar059647381True59419-1-11251268196-21474836480908FalseFalse1000000381271252277651106144014947UDEMDIMenuBarMenu bar0Menu barBAAAAAAIAACAAAAAAIAADAAAAAAIAAEAAAAAAIAAFAAAAAAIAAGAAAAAAIAAHAAAAAAIAAIAAAAAAIAAJAAAAAAIAAKAAAAAAIAA5939850326True050326614568196-21474836480780FalseFalse1562500111300006144014946CUdeCustomToolBarEdit0Edit2DCBOAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAACCBOAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAFCBOAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAIABOAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAA5939761426True061426794568196-21474836480780FalseFalse1562500180300006144014946CUdeCustomToolBarFile0File3AHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAABHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAACHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAADHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAEHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAFHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAOKHBAAAAAABAAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAA5940379426True079426928568196-21474836481181049967780FalseFalse3125000134300006144014946CUdeCustomToolBarConfig0Config2GJHBAAAAAADAAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAAMMHBAAAAAAOPAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAANMHBAAAAAAAABAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAAFNHBAAAAAAGAAAAAAAKBDLFIMBFCNFHJBEGJFDMJNFCMOIPKHNAAAAAAAAPPPPPPPPAAAAAAAAINHBAAAAAACBAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAA5940192826True0928261407568196-2147483648151587341780FalseFalse6250000479300006144014946CUdeCustomToolBarViews0Views6JJHBAAAAAAFBAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAAKJHBAAAAAAPAAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAAMJHBAAAAAAGBAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAANKHBAAAAAAAAAAAAAAAGKBFNONHLAOENBBBJCBAABADAJECGGLAAAAAAAAPPPPPPPPAAAAAAAAALHBAAAAAAKAAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAACLHBAAAAAAMFAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAADLHBAAAAAAKFAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAFLHBAAAAAANCAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAGLHBAAAAAAMDAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAHLHBAAAAAAGEAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAAMHBAAAAAAKAAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAABMHBAAAAAAEBAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAACMHBAAAAAAJBAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAADMHBAAAAAALBAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAAEMHBAAAAAAAFAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAAFMHBAAAAAAICAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAAHMHBAAAAAANEEAAAAAJEOEILFFBLMIPBEEPLLMEDEOPKHPBGJHAAAAAAAAPPPPPPPPAAAAAAAAIMHBAAAAAAGFEAAAAAJEOEILFFBLMIPBEEPLLMEDEOPKHPBGJHAAAAAAAAPPPPPPPPAAAAAAAAJMHBAAAAAAAGEAAAAAJEOEILFFBLMIPBEEPLLMEDEOPKHPBGJHAAAAAAAAPPPPPPPPAAAAAAAALMHBAAAAAAGEAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAA59406140726True01407261653568196-21474836480780FalseFalse12500000246300006144014946CUdeCustomToolBarMacro0Macro2DKHBAAAAAALDAAAAAAGDHJMPFPDOOJLAGELLAIHGBMMEFJBIPLAAAAAAAAPPPPPPPPAAAAAAAAEKHBAAAAAAAEAAAAAAGDHJMPFPDOOJLAGELLAIHGBMMEFJBIPLAAAAAAAAPPPPPPPPAAAAAAAAGKHBAAAAAAMDAAAAAAGDHJMPFPDOOJLAGELLAIHGBMMEFJBIPLAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAMKHBAAAACAGJAAAAAAAAAANMAJBFNENHHACJPEILAJFEFEECLCDPKCBAAAAAAAKAAAAAAANAAAAAAAFFEEFEHFPGCHLGDHAHBGDGFGAA5939926504True59419-126503568196-21474836480780FalseFalse25000050430504301239006144014946CUdeCustomToolBarDebug0Debug5BLHBAAAAAAIBAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAELHBAAAAAAOFAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAILHBAAAAAAHAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAJLHBAAAAAAJAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAKLHBAAAAAAKAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAALLHBAAAAAALAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAMLHBAAAAAAIAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAANLHBAAAAAABCDAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAOLHBAAAAAANAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAPLHBAAAAAAMAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAANHBAAAAAADAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAABNHBAAAAAAGAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAACNHBAAAACAKKAAAAAAAAAADHHMLHLPEKIIOMOEJLGLBHJIBGLAHAFDBAAAAAAADAAAAAAAFAAAAAAADEPGCHFGAAENHBAAAAAADAAAAAAAKBDLFIMBFCNFHJBEGJFDMJNFCMOIPKHNAAAAAAAAPPPPPPPPAAAAAAAA59402165326True01653261795568196-21474836480780FalseFalse50000000142300006144014946CUdeCustomToolBarTools0ToolsDNHBAAAACAEGAAAAAAAAAAGEAOMHHDMDCIFAKEIIICDBCMNFEDNFHHBAAAAAAAGAAAAAAAFAAAAAAADEPGCHFGAAHNHBAAAAAABOAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAA911015True594221512521554-214748364803889FalseFalse1000000300180125115030018006144014948CTabWndControlBarTab Window Bar 00-1FalseUDEDesktop Standard BarsTab Window Bar 0UDEDesktop0015019100False00True000004-214748364803889FalseFalse100000030018030018015018006144014948CUdeProjectWspBarProject Workspace Bar0-1FalseUDEDesktop Standard BarsProject Workspace BarUDEDesktop0001TrueTrueFalse21.11.2012 14:43:52:278487782411WorkspaceManager11019.11.2012 16:28:52:057MgAAAA==AQAAAA==ZAAAAA==AQAAAA==lgAAAA==AQAAAA==6AMAAA==AQAAAA==139011201WorkspaceManager110000110010\\napnt002.nap.st.com\NAPPRT0001000WorkspaceManagerWorkspaceManager01Core1Target0.Controller0.CoreTarget0.Controller0.Core102200701438312957781279740NormalfalseTop1271falseBottom0000falsefalse00DockPaneltrue417falseLeft0000falsefalse00DockPaneltrue417falseLeft0000falsefalse10DockPanelfalse0falseTop0000falsefalse0-1TabbedDocumenttrue417falseLeft0000falsefalse20DockPanelfalse417falseLeft0000falsefalse30DockPanelfalsetrue556false200false200true200true100truetrue0012797400127924Platform Main Menufalsetrue4249525Edit ToolbarfalsetrueUDE_Workspace_0x1779trueCutImagetrueUDE_Workspace_0x177AtrueCopyImagetrueUDE_Workspace_0x177BtruePasteImagetrue992427625Macro ToolbarfalsetrueUDE_0x3B_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueRun MacroImagetrueUDE_0x40_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueDebug MacroImagetrueUDE_0x3_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueBreak MacroImagetrueUDE_0x3C_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueReload MacroImagetrueUDE_Ctrl_{4D5190CD-077D-4F92-B890-4545242BF32A}_UDEWorkspacetrueImageAndTextfalse3752421025File ToolbarfalsetrueUDE_Workspace_0x1770trueNew WorkspaceImagetrueUDE_Workspace_0x1771trueOpen workspaceImagetrueUDE_Workspace_0x1772trueSave workspace asImagetrueUDE_Workspace_0x1773trueSave workspaceImagetrueUDE_Workspace_0x1774trueClose workspaceImagetrueUDE_Workspace_0x177FtrueExport view contentImagetrueUDE_Workspace_0x1778truePrintImagetrueUDE_0x1_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueLoad ProgramImagetrue5852444025Views ToolbarfalsetrueUDE_0x4_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueTarget BrowserImagetrueUDE_0x15_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueDiagnostic Message ViewerImagetrueUDE_0xF_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueConsoleImagetrueUDE_0x0_{DED51A60-E0B7-11D4-9112-0001034962B6}trueCPU WindowImagetrueUDE_0x1E_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueExplore SymbolsImagetrueUDE_0xA_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueProgramImagetrueUDE_0x5C_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueSingle Program WindowImagetrueUDE_0x5A_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueDisassembly WindowImagetrueUDE_0x2D_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow Special Function RegisterImagetrueUDE_0x3C_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueLocalsImagetrueUDE_0x46_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueWatchImagetrueUDE_0xA_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueSimulated I/OImagetrueUDE_0x14_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueUDE HTMLImagetrueUDE_0x19_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueArray ChartImagetrueUDE_0x1B_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueTime Traced Signal ChartImagetrueUDE_0x50_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueIP Trace ProfilingImagetrueUDE_0x28_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueMemoryImagetrueUDE_0x46_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueCall StackImagetrue34950925Debug ToolbarfalsetrueUDE_0x18_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow IPImagetrueUDE_0x5E_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow program codeImagetrueUDE_0x7_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStart ProgramImagetrueUDE_0x9_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep OverImagetrueUDE_0xA_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep IntoImagetrueUDE_0xB_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep OutImagetrueUDE_0x8_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueRun CursorImagetrueUDE_0x321_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueBreak ProgramImagetrueUDE_0xD_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueResetImagetrueUDE_0xC_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueRestart ProgramImagetrueUDE_0x3_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueBreakpointsImagetrueUDE_0x6_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueToggle BreakImagetrueUDE_Ctrl_{FB7BC773-88A4-4ECE-B9B6-7189610B0735}_CoretrueImageAndTextfalseUDE_0x3_{1C85B31A-5D25-4197-9635-9C5DC28EAFD7}trueTrigger setupImagetrue5124914125Config ToolbarfalsetrueUDE_0x3_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueTarget ConfigurationImagetrueUDE_0xFE_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueConnect TargetImagetrueUDE_0x100_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueDisconnect TargetImagetrueUDE_0x6_{1C85B31A-5D25-4197-9635-9C5DC28EAFD7}trueSetup Target InterfaceImagetrueUDE_0x12_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueMCU Run ControlImagetrue6534915125Tools ToolbarfalsetrueUDE_Ctrl_{377CE046-823C-4A05-8828-13C25D345D77}_CoretrueImageAndTextfalseUDE_0xE1_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueExecution Time SetupImagetrue01002625Show Toolbarfalsefalse02002625Window Toolbarfalsefalse02252625Workspace Toolbarfalsefalse02752625Help Toolbarfalsefalse071712792300127923Platform Status Barfalsetrue07406431279740643..\..\..\..\..\Program Files\pls\UDE 4.0\StdLibrary.mso{866f82d3-fac5-43cd-8a82-0af01e46e2c5}669,1006,350,6610..\..\..\..\..\Documents and Settings\disiriog\My Documents\pls\UDE 4.0The script contains a collection of macros to save memory content into different file formats -and fill target memory rangesV:\UDE\AddOns\Macro\MacroLibrary\StdMacros1.dsm' -' $Header: /Ude/AddOns/Macro/MacroLibrary/StdMacros.dsm 3 30.04.04 9:34 Weisses $ -'_______________________________________________________ -' -' universal debug engine -' -' Standard command line macros - part 1 -' -' pls Development Tools 1999-2004 -' -' 28.04.04 SW correction for UDE 1.10 -' 03.06.03 SW initial version -'_______________________________________________________ - -'_______________________________________________________ -' -' UnAss command line function -' -' generates disassembly file -' -' command line UnAss output-file range1 [range2] [range3] ..... -' range description: -' C:<startaddress>,<length> or - code -' DB:<startaddress>,<length> or - data byte -' DW:<startaddress>,<length> or - data word -' DD:<startaddress>,<length> or - data dword -'_______________________________________________________ - -Sub UnAss(File,ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - If IsNumeric(File) Then - MsgBox "File parameter wrong - " & File - Exit Sub - End If - DisASMObj.OutputPath = CStr(File) - bRetVal = DisASMObj.CreateStream(True,"UDE Disassembler output of current Program",False) - If bRetVal = True Then - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - For Range = 0 To RangeCnt -1 - KindOfRange = CStr(ParameterObj.Parameter(ParamIndex)) - KindOfRange = UCase(KindOfRange) - Address = CLng(ParameterObj.Parameter(ParamIndex +1)) - Length = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - If IsNumeric(KindOfRange) Then - If KindOfRange = 12 Then - DisASMObj.AddRange Address,Length,1 - ElseIf KindOfRange = 219 Then - DisASMObj.AddRange Address,Length,2 - ElseIf KindOfRange = 221 Then - DisASMObj.AddRange Address,Length,4 - Else - MsgBox "Invalid range type " & KindOfRange & "of range " & Range +1 - Exit Sub - End If - Else - If KindOfRange = "C" Then - DisASMObj.AddRange Address,Length,1 - ElseIf KindOfRange = "DB" Then - DisASMObj.AddRange Address,Length,2 - ElseIf KindOfRange = "DW" Then - DisASMObj.AddRange Address,Length,3 - ElseIf KindOfRange = "DD" Then - DisASMObj.AddRange Address,Length,4 - Else - MsgBox "Invalid range type " & KindOfRange & "of range " & Range +1 - Exit Sub - End If - End If - Next - DisASMObj.HexFileModeFlag = False - DisASMObj.ListModeFlag = False - DisASMObj.WriteAllRanges(False) - End If - -End Sub - -'_______________________________________________________ -' -' SaveHEX command line function -' -' generates intel-HEX file -' -' command line SaveHex output-file range1 [range2] [range3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub SaveHEX(File,ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - If IsNumeric(File) Then - MsgBox "File parameter wrong - " & File - Exit Sub - End If - DisASMObj.OutputPath = CStr(File) - bRetVal = DisASMObj.CreateStream(True,"UDE generated intel-Hex file of current Program",False) - If bRetVal = True Then - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 2 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/2 - ParamIndex = 0 - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)) - ParamIndex = ParamIndex +2 - DisASMObj.AddRange Address,Length,0 - Next - DisASMObj.HexFileModeFlag = True - DisASMObj.WriteAllRanges(False) - End If - -End Sub - -'_______________________________________________________ -' -' FillByte command line function -' -' fills memory range with byte pattern -' -' command line FillByte range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillByte(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.ByteArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub - -'_______________________________________________________ -' -' FillWord command line function -' -' fills memory range with word pattern -' -' command line FillWord range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillWord(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.WordArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)/2) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub - -'_______________________________________________________ -' -' FillDWord command line function -' -' fills memory range with dword pattern -' -' command line FillDWord range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillDWord(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.DWordArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)/4) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub63VBScript24.11.2006 14:43:20:0001WS_CORE_DUOMacro_27_02_14_10_14_21_010Execute UnAss ..Macro UnAssExecute macro UnAss0210Execute SaveHEX ..Macro SaveHEXExecute macro SaveHEX0210Execute FillByte ..Macro FillByteExecute macro FillByte0110Execute FillWord ..Macro FillWordExecute macro FillWord0110Execute FillDWord ..Macro FillDWordExecute macro FillDWord0150121.11.2012 14:17:23:6457782750Target0.Controller0.Core1020.11.2012 16:19:48:3447782640Target0.Controller0.Core11021.11.2012 12:22:49:573..\main.c1,0,0,353,10940017372830Target0.Controller0.Core1113.06.2013 14:53:23:258..\..\..\os\hal\src\hal.c1,49,63,402,11570017372860Target0.Controller0.Core110222.11.2012 11:31:36:807..\..\..\os\hal\platforms\SPC5xx\SIUL_v1\pal_lld.c7372840Target0.Controller0.Core1121.11.2012 14:44:22:506..\..\..\os\kernel\src\chsys.c7372860Target0.Controller0.Core13121.11.2012 14:14:46:537AwAAAA==AQAAAA==kAAAAA==YAAAAA==TgAAAA==jQAAAA==TgAAAA==jQAAAA==TgAAAA==jgAAAA==AAAAAA==AAAAAA==AAAAAA==AAAAAA==7782520Target0.Controller0.Core10021.11.2012 14:10:10:4245380360007372850Target0.Controller0.Core1000000000000OFF0..\build11..\build\ch.elfSoftware;enabled;0;disabled;'main {C:\ChibiStudio\chibios\demos\PPC-SPC560D-GCC\main.c} .164';main.c;1;0;;$disabled; ;disabled; ;100111100verify.txt0000000001..\main.cstm_xpc560b_spc560d40_minimodule_debug_jtag.cfg27.02.2014 10:14:20:999 diff --git a/demos/SPC5/RT-SPC560D-EVB/UDE/stm_xpc560b_spc560d40_minimodule_debug_jtag.cfg b/demos/SPC5/RT-SPC560D-EVB/UDE/stm_xpc560b_spc560d40_minimodule_debug_jtag.cfg deleted file mode 100644 index 17bab70b4..000000000 --- a/demos/SPC5/RT-SPC560D-EVB/UDE/stm_xpc560b_spc560d40_minimodule_debug_jtag.cfg +++ /dev/null @@ -1,165 +0,0 @@ -[Main] -Signature=UDE_TARGINFO_2.0 -Description=STM XPC560B Mini Module with SPC560D40 (Jtag) -Description1=PLL set for 48MHz -Description2=FLASH programming prepared but not enabled -Description3=Write Filter for BAM Module -MCUs=Controller0 -Architecture=PowerPC -Vendor=STM -Board=XPC560B Mini Module - -[Controller0] -Family=PowerPC -Type=SPC560D40 -Enabled=1 -IntClock=48000 -MemDevs=BAMWriteFilter -ExtClock=8000 - -[Controller0.Core] -Protocol=PPCJTAG -Enabled=1 - -[Controller0.Core.LoadedAddOn] -UDEMemtool=1 - -[Controller0.Core.PpcJtagTargIntf] -PortType=FTDI -ResetWaitTime=50 -MaxJtagClk=2500 -DoSramInit=1 -UseNexus=1 -AdaptiveJtagPhaseShift=1 -ConnOption=Default -ChangeJtagClk=10000 -HaltAfterReset=1 -SimioAddr=g_JtagSimioAccess -FreezeTimers=1 -InvalidTlbOnReset=0 -InvalidateCache=0 -ForceCacheFlush=0 -IgnoreLockedLines=0 -ExecInitCmds=1 -JtagTapNumber=0 -JtagNumOfTaps=1 -JtagNumIrBefore=0 -JtagNumIrAfter=0 - -SimioAddr=g_JtagSimioAccess - -FlushCache=0 -AllowMmuSetup=1 -UseExtReset=1 -HandleWdtBug=0 -ForceEndOfReset=0 -JtagViaPod=0 -AllowResetOnCheck=0 -ChangeMsr=0 -ChangeMsrValue=0x0 -ExecOnStartCmds=0 -ExecOnHaltCmds=0 -TargetPort=Default -EnableProgramTimeMeasurement=0 -UseHwResetMode=1 -HandleNexusAccessBug=0 -DoNotEnableTrapSwBrp=0 -CommDevSel=PortType=USB,Type=FTDI -BootPasswd0=0xFEEDFACE -BootPasswd1=0xCAFEBEEF -BootPasswd2=0xFFFFFFFF -BootPasswd3=0xFFFFFFFF -BootPasswd4=0xFFFFFFFF -BootPasswd5=0xFFFFFFFF -BootPasswd6=0xFFFFFFFF -BootPasswd7=0xFFFFFFFF -JtagIoType=Jtag -ExecOnHaltCmdsWhileHalted=0 -TimerForPTM=Default -AllowBreakOnUpdateBreakpoints=0 -ClearDebugStatusOnHalt=1 -HwResetMode=Simulate -UseMasterNexusIfResetState=1 -UseLocalAddressTranslation=1 -Use64BitNexus=0 -InitSramOnlyWhenNotInitialized=0 -AllowHarrForUpdateDebugRegs=0 -DisableE2EECC=0 -UseCore0ForNexusMemoryAccessWhileRunning=0 -ExecOnConnectCmds=0 -HaltOnDnh=1 -AlwaysHaltOnDni=1 -HandleOvRamInitViaNarWorkaround=0 - -[Controller0.Core.PpcJtagTargIntf.InitScript] -// setup IVOPR -// points to internal memory at 0x40000000 -SETSPR 0x3F 0x40000000 0xFFFFFFFF - -// disable watchdog -SET SWT_SR 0xC520 -SET SWT_SR 0xD928 -SET SWT_CR 0xFF00000A - -// Oscillator select -SET CGM_OCDS_SC 0x1000000 -SET CGM_OC_EN 0x1 - -// enable all modes -SET ME_MER 0x5FF - -// run mode -SET ME_DRUN_MC 0x1F0032 -SET ME_RUN_PC0 0xFE - -// enable peripherals in run and low power modes -SET ME_LP_PC0 0x500 - -// enable clocks -SET8 CGM_SC_DC0 0x80 -SET8 CGM_SC_DC1 0x80 -SET8 CGM_SC_DC2 0x80 - -// setup clock monitor -SET CMU_CSR 0x6 -SET CMU_LFREFR 0x1 -SET CMU_HFREFR 0xFFE - -// Make DRUN configuration active -SET ME_MCTL 0x30005AF0 -SET ME_MCTL 0x3000A50F -WAIT 0x5 - -// setup pll to 48MHz -SET FMPLL_CR 0x5300041 0xFFFFFFFF -// run mode -SET ME_DRUN_MC 0x1F00F4 - -// Make DRUN configuration active -SET ME_MCTL 0x30005AF0 -SET ME_MCTL 0x3000A50F -WAIT 0x5 - -// setup SSCM erro cfg for debug -SET16 SSCM_ERROR 0x3 0x3 - -[Controller0.BAMWriteFilter] -Description=BAM WriteAccess Filter -Range0Start=0xFFFFC000 -Range0Size=0x4000 -Enabled=1 -Handler=AccessFilter -Mode=ReadOnly - -[Controller0.PFLASH] -Enabled=1 -EnableMemtoolByDefault=1 - -[Controller0.DFLASH] -Enabled=1 -EnableMemtoolByDefault=1 - -[Controller0.Core.PpcJtagTargIntf.OnStartScript] - -[Controller0.Core.PpcJtagTargIntf.OnHaltScript] -[Controller0.Core.PpcJtagTargIntf.OnConnectScript] diff --git a/demos/SPC5/RT-SPC560D-EVB/chconf.h b/demos/SPC5/RT-SPC560D-EVB/chconf.h deleted file mode 100644 index f6244ad4b..000000000 --- a/demos/SPC5/RT-SPC560D-EVB/chconf.h +++ /dev/null @@ -1,499 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file templates/chconf.h - * @brief Configuration file template. - * @details A copy of this file must be placed in each project directory, it - * contains the application specific kernel settings. - * - * @addtogroup config - * @details Kernel related settings and hooks. - * @{ - */ - -#ifndef _CHCONF_H_ -#define _CHCONF_H_ - -/*===========================================================================*/ -/** - * @name System timers settings - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System time counter resolution. - * @note Allowed values are 16 or 32 bits. - */ -#define CH_CFG_ST_RESOLUTION 32 - -/** - * @brief System tick frequency. - * @details Frequency of the system timer that drives the system ticks. This - * setting also defines the system tick time unit. - */ -#define CH_CFG_ST_FREQUENCY 1000 - -/** - * @brief Time delta constant for the tick-less mode. - * @note If this value is zero then the system uses the classic - * periodic tick. This value represents the minimum number - * of ticks that is safe to specify in a timeout directive. - * The value one is not valid, timeouts are rounded up to - * this value. - */ -#define CH_CFG_ST_TIMEDELTA 0 - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel parameters and options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Round robin interval. - * @details This constant is the number of system ticks allowed for the - * threads before preemption occurs. Setting this value to zero - * disables the preemption for threads with equal priority and the - * round robin becomes cooperative. Note that higher priority - * threads can still preempt, the kernel is always preemptive. - * @note Disabling the round robin preemption makes the kernel more compact - * and generally faster. - * @note The round robin preemption is not supported in tickless mode and - * must be set to zero in that case. - */ -#define CH_CFG_TIME_QUANTUM 0 - -/** - * @brief Managed RAM size. - * @details Size of the RAM area to be managed by the OS. If set to zero - * then the whole available RAM is used. The core memory is made - * available to the heap allocator and/or can be used directly through - * the simplified core memory allocator. - * - * @note In order to let the OS manage the whole RAM the linker script must - * provide the @p __heap_base__ and @p __heap_end__ symbols. - * @note Requires @p CH_CFG_USE_MEMCORE. - */ -#define CH_CFG_MEMCORE_SIZE 0 - -/** - * @brief Idle thread automatic spawn suppression. - * @details When this option is activated the function @p chSysInit() - * does not spawn the idle thread. The application @p main() - * function becomes the idle thread and must implement an - * infinite loop. - */ -#define CH_CFG_NO_IDLE_THREAD FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Performance options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief OS optimization. - * @details If enabled then time efficient rather than space efficient code - * is used when two possible implementations exist. - * - * @note This is not related to the compiler optimization options. - * @note The default is @p TRUE. - */ -#define CH_CFG_OPTIMIZE_SPEED TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Subsystem options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Time Measurement APIs. - * @details If enabled then the time measurement APIs are included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_TM FALSE - -/** - * @brief Threads registry APIs. - * @details If enabled then the registry APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_REGISTRY TRUE - -/** - * @brief Threads synchronization APIs. - * @details If enabled then the @p chThdWait() function is included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_WAITEXIT TRUE - -/** - * @brief Semaphores APIs. - * @details If enabled then the Semaphores APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_SEMAPHORES TRUE - -/** - * @brief Semaphores queuing mode. - * @details If enabled then the threads are enqueued on semaphores by - * priority rather than in FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE - -/** - * @brief Mutexes APIs. - * @details If enabled then the mutexes APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MUTEXES TRUE - -/** - * @brief Enables recursive behavior on mutexes. - * @note Recursive mutexes are heavier and have an increased - * memory footprint. - * - * @note The default is @p FALSE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_MUTEXES_RECURSIVE FALSE - -/** - * @brief Conditional Variables APIs. - * @details If enabled then the conditional variables APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_CONDVARS TRUE - -/** - * @brief Conditional Variables APIs with timeout. - * @details If enabled then the conditional variables APIs with timeout - * specification are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_CONDVARS. - */ -#define CH_CFG_USE_CONDVARS_TIMEOUT TRUE - -/** - * @brief Events Flags APIs. - * @details If enabled then the event flags APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_EVENTS TRUE - -/** - * @brief Events Flags APIs with timeout. - * @details If enabled then the events APIs with timeout specification - * are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_EVENTS. - */ -#define CH_CFG_USE_EVENTS_TIMEOUT TRUE - -/** - * @brief Synchronous Messages APIs. - * @details If enabled then the synchronous messages APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MESSAGES TRUE - -/** - * @brief Synchronous Messages queuing mode. - * @details If enabled then messages are served by priority rather than in - * FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_MESSAGES. - */ -#define CH_CFG_USE_MESSAGES_PRIORITY FALSE - -/** - * @brief Mailboxes APIs. - * @details If enabled then the asynchronous messages (mailboxes) APIs are - * included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_MAILBOXES TRUE - -/** - * @brief I/O Queues APIs. - * @details If enabled then the I/O queues APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_QUEUES TRUE - -/** - * @brief Core Memory Manager APIs. - * @details If enabled then the core memory manager APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMCORE TRUE - -/** - * @brief Heap Allocator APIs. - * @details If enabled then the memory heap allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or - * @p CH_CFG_USE_SEMAPHORES. - * @note Mutexes are recommended. - */ -#define CH_CFG_USE_HEAP TRUE - -/** - * @brief Memory Pools Allocator APIs. - * @details If enabled then the memory pools allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMPOOLS TRUE - -/** - * @brief Dynamic Threads APIs. - * @details If enabled then the dynamic threads creation APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_WAITEXIT. - * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS. - */ -#define CH_CFG_USE_DYNAMIC TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Debug options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Debug option, kernel statistics. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_STATISTICS FALSE - -/** - * @brief Debug option, system state check. - * @details If enabled the correct call protocol for system APIs is checked - * at runtime. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_SYSTEM_STATE_CHECK FALSE - -/** - * @brief Debug option, parameters checks. - * @details If enabled then the checks on the API functions input - * parameters are activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_CHECKS FALSE - -/** - * @brief Debug option, consistency checks. - * @details If enabled then all the assertions in the kernel code are - * activated. This includes consistency checks inside the kernel, - * runtime anomalies and port-defined checks. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_ASSERTS FALSE - -/** - * @brief Debug option, trace buffer. - * @details If enabled then the context switch circular trace buffer is - * activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_TRACE FALSE - -/** - * @brief Debug option, stack checks. - * @details If enabled then a runtime stack check is performed. - * - * @note The default is @p FALSE. - * @note The stack check is performed in a architecture/port dependent way. - * It may not be implemented or some ports. - * @note The default failure mode is to halt the system with the global - * @p panic_msg variable set to @p NULL. - */ -#define CH_DBG_ENABLE_STACK_CHECK FALSE - -/** - * @brief Debug option, stacks initialization. - * @details If enabled then the threads working area is filled with a byte - * value when a thread is created. This can be useful for the - * runtime measurement of the used stack. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_FILL_THREADS FALSE - -/** - * @brief Debug option, threads profiling. - * @details If enabled then a field is added to the @p thread_t structure that - * counts the system ticks occurred while executing the thread. - * - * @note The default is @p FALSE. - * @note This debug option is not currently compatible with the - * tickless mode. - */ -#define CH_DBG_THREADS_PROFILING FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel hooks - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Threads descriptor structure extension. - * @details User fields added to the end of the @p thread_t structure. - */ -#define CH_CFG_THREAD_EXTRA_FIELDS \ - /* Add threads custom fields here.*/ - -/** - * @brief Threads initialization hook. - * @details User initialization code added to the @p chThdInit() API. - * - * @note It is invoked from within @p chThdInit() and implicitly from all - * the threads creation APIs. - */ -#define CH_CFG_THREAD_INIT_HOOK(tp) { \ - /* Add threads initialization code here.*/ \ -} - -/** - * @brief Threads finalization hook. - * @details User finalization code added to the @p chThdExit() API. - * - * @note It is inserted into lock zone. - * @note It is also invoked when the threads simply return in order to - * terminate. - */ -#define CH_CFG_THREAD_EXIT_HOOK(tp) { \ - /* Add threads finalization code here.*/ \ -} - -/** - * @brief Context switch hook. - * @details This hook is invoked just before switching between threads. - */ -#define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) { \ - /* Context switch code here.*/ \ -} - -/** - * @brief Idle thread enter hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to activate a power saving mode. - */ -#define CH_CFG_IDLE_ENTER_HOOK() { \ -} - -/** - * @brief Idle thread leave hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to deactivate a power saving mode. - */ -#define CH_CFG_IDLE_LEAVE_HOOK() { \ -} - -/** - * @brief Idle Loop hook. - * @details This hook is continuously invoked by the idle thread loop. - */ -#define CH_CFG_IDLE_LOOP_HOOK() { \ - /* Idle loop code here.*/ \ -} - -/** - * @brief System tick event hook. - * @details This hook is invoked in the system tick handler immediately - * after processing the virtual timers queue. - */ -#define CH_CFG_SYSTEM_TICK_HOOK() { \ - /* System tick event code here.*/ \ -} - -/** - * @brief System halt hook. - * @details This hook is invoked in case to a system halting error before - * the system is halted. - */ -#define CH_CFG_SYSTEM_HALT_HOOK(reason) { \ - /* System halt code here.*/ \ -} - -/** @} */ - -/*===========================================================================*/ -/* Port-specific settings (override port settings defaulted in chcore.h). */ -/*===========================================================================*/ - -#endif /* _CHCONF_H_ */ - -/** @} */ diff --git a/demos/SPC5/RT-SPC560D-EVB/cw/ch/ch.lcf b/demos/SPC5/RT-SPC560D-EVB/cw/ch/ch.lcf deleted file mode 100644 index 0596ad34a..000000000 --- a/demos/SPC5/RT-SPC560D-EVB/cw/ch/ch.lcf +++ /dev/null @@ -1,156 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio. - - This file is part of ChibiOS. - - ChibiOS is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - ChibiOS is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . -*/ - -/* - * SPC560D40 memory setup. - */ -MEMORY -{ - rom : org = 0x00000000, len = 0x00040000 - dataflash : org = 0x00800000, len = 0x00010000 - ram : org = 0x40000000, len = 0x00004000 -} - -__irq_stack_size__ = 0; -__process_stack_size__ = 0x1000; - -__ram_size__ = SIZEOF(ram); -__ram_start__ = ADDR(ram); -__ram_end__ = ADDR(ram) + SIZEOF(ram); - -SECTIONS -{ - GROUP: - { - .boot ALIGN(16): - { - KEEP(*(.boot)) - } - - .handlers (VLECODE) ALIGN(4): { - KEEP(*(.handlers)) - } - - .crt0 (VLECODE) ALIGN(4): { - *(.crt0) - } - - .init: {} - .init_vle (VLECODE) ALIGN(4): - { - *(.init) - *(.init_vle) - } - - .vectors ALIGN(0x800): - { - KEEP(*(.vectors)) - } - - .ivors (VLECODE) ALIGN(0x1000): - { - __ivpr_base__ = .; - KEEP(*(.ivors)) - } - - .code (VLECODE) ALIGN(16): - { - *(.text) - *(.text_vle) - } - - .const (CONST) ALIGN(16): - { - *(.rdata) - *(.rodata) - } - - .sdata2 (CONST) ALIGN(16): - { - __sdata2_start__ = . + 0x8000; - *(.sdata2) - *(.sbss2) - } - - .ctors: {} - .dtors: {} - extab: {} - extabindex: {} - - . = ALIGN(4); - __romdata_start__ = .; - } > rom - - GROUP: - { - .stacks: - { - . = ALIGN(8); - __irq_stack_base__ = .; - . = . + __irq_stack_size__; - . = ALIGN(8); - __irq_stack_end__ = .; - __process_stack_base__ = .; - __main_thread_stack_base__ = .; - . = . + __process_stack_size__; - . = ALIGN(8); - __process_stack_end__ = .; - __main_thread_stack_end__ = .; - } - - .data (DATA) LOAD(__romdata_start__): - { - . = ALIGN(4); - __data_start__ = .; - *(.data) - . = ALIGN(4); - } - - .sdata (DATA) LOAD(ROMADDR(.data) + SIZEOF(.data)): - { - __sdata_start__ = . + 0x8000; - *(.sdata) - __data_end__ = .; - } - - .sbss (BSS): - { - __bss_start__ = .; - *(.sbss) - } - - .bss (BSS): - { - *(.bss) - __bss_end__ = .; - } - - /* The default heap uses the (statically) unused part of a RAM section.*/ - .heap: - { - . = ALIGN(8); - __heap_base__ = .; - . = ADDR(ram) + SIZEOF(ram); - __heap_end__ = .; - } - - .PPC.EMB.sdata0: {} - .PPC.EMB.sbss0: {} - } > ram -} diff --git a/demos/SPC5/RT-SPC560D-EVB/cw/ch/ch.mcp b/demos/SPC5/RT-SPC560D-EVB/cw/ch/ch.mcp deleted file mode 100644 index 6ad5431e091cfbadfe547d168a3dac4ba1a33137..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 61993 zcmeI532+qGna8_1gm2?3zT*LWfUyO}H?dV3czOneF$UiT zRp;AgYiA5#HaV@r|r&5mVCYqDwjM-k4EOj{LM2k}{XFEGg z)~syKNz6|ci+;w8N;a2HGwW`i!}W>8|VK z+f`f5m6)3CbjtD7yqQ@y85B3lp4quVJ7*y+$!E{^YOEgNHM>V4>Iu~+yW8)dj~~I+ zGbgk=O&{r=gz34atUI)#d`P^Nzjq@UB2602>oDaBtc;(Mjs^aRITJooGD(X-one;M zfgPp%0_+aTugC7F{8{Wy%HPNCto&>2F3SHMyQ}h@II-Q79|YfB`4qUEtE4&bJv?f) z!uM2Of$ydK8u;GI?}zWB{C)V3lz#=^SNS*a{giKOLsiCa;xF;Bv|ZXP=OuoY_K0t! zFT~g4Kk=vdLVO@?mv&0~{B}tnif{e)K)0AgE9FbwOF#uky;7G8WSm$Cehd;o`dH4% zuk$SU3Lxota3(kbi~%QtS1mw;3w(FVL*I10*nN8U=)xzkiM37N*i_o;&0#g;%|wMJ;7dJZy>QEeQ+2! z92^10g9+eBFcBODjt2E$5||8*0aL)S;5cwRI02jpP68)`so*Ez6mSWUnAlR^O6>d? zTn=UciR%Oy1IB`J;81WX_$fFIOas$F1DFXK!7MNv%mH)3>0lmc0`tKFun;r@i6`IB zi{OjFnP3Sx3;Z0M4bB0r;9T$vAn%7?f+T1MDUb#ZSPD8o24ul9upCGqOW$^a0w{v> zKnb{@3@Ts+SP8noDsVnn4K4s{z=dEfSO+cw7lX^d72ry+tW$iTF%eGBnRmr%tvozc3B-(N^W1hS#QEZzKuPVGc52|kWCaH`yD_e49`rnav zI&tZOLZ@T(SR-sciSLoqYX;wAsnC0!&~stYV`b8N8Ir6oRLa);C5fhNdtz?BSSXbf z{^VJ*t8?=nxjLcO39}Vglvs`Vb|;;7(nhbd?_Mi{8p{DMt2)oFJ+BW`qpJ}AOuJ9h zs%H7?hiXQT#X~h$PqEjwznak1L3OXcG|00^s!v(%g+jTW#Z##~86#V5sg;tENfkQN z2vV7}(_ZQD*s9KCKASS!SwR%IhGv{((U5$5q08~|@=iWgC^=rXL$4Hay2JI#%9p#$ z&hsixMUN>t9V|#nt4zL2#U63;o-HS}K6jN@R5?>}l4<3hXhqp*t5w%$Xh1uQGeb<1 zB*$x#VcI0&+9aW-NkVejl+)=t=5TGEWc$ri?lsSB&^%*lo>*<3&}#E!!!*wjJvY}h z&*YS8R^By-OH)nWD!06|@>sz&MYb1`C6RbGW15KTXkx}RF=LvTF-^>v2Bk7d zZcq@%-sVzn4){DUhzrB_=MMNR=9eGE;DTs z&t!~eXdj;OTUjN>GvwkKUL_ceXE1n10-{(V2A0y?Dy0@D@1GD|(!C+&q>gWM()lC@ zbaTH}<41F9%6#8?2c9rF-4=*-iCZo|($Fr7Wv@9!?F_f9Ww;q9CsE|tj8%3_2OHyU zwda?!UowPwdFfRWk&-9O%X7>iAbG;PJRPDWQ{UP`rU3_0}-;&QvG{>+y8 z#SQgIYko^pTSGOsJ;`|M?^>G9W!v-BeSY>zC%K$=b)}O~PUoC7JbLnH9Wuv|`GTZ9 zfX+G0+;@b@_2!}@l^=?gxr`*4$Br`0n;-6=T;_c{DwjDNGZd3#UMBNxNgII7yCuoo zUgqDD?gKIpm-GtQ-7w4gEmr2`l70{5TqXT0ka@bK?|{tLCGAE7_x7kY1}^h=Nt59} z@~AZnF7s?jXTkULsI?rvzw!&<2PnS*exULP;QkEjUHHM8{{>v;=aPO0Kg6Tf@8JpM ze}a!u{w;j0^8bd9Q$Czd5noH%9e$WctpnhPD<20xLU}!Wyz;5=3Cd@~k5s-8K2iA+ zxU5$swZo70s8xW=`bAO~e3D14b#PhFNZJ5D#-r8^a9Q6-x(6=n97zwskMpSYBwW@# zl3s#K+(>#IexgUM58$#MlJpr|)8>N>mEtF z!cX(4wLg5C^26cNmDj^(C_e$-pnN)frt$^wM&(Q3vy`{NXDiRb=P0kh=PF+VKVA6- z_&nvez-6r^>2COZk6N4Hvi6en6nvpatykc(7L)Wg{AV7uK7`BKOwt$d7LQtg2VbQ8 zpWw1)lk{)!Gd*hk7kr8G@8GhQlQfbyzO3ma?F>KLqt+g9S>s9C7vAbo>tOh~%E!TF z?I&pxyv?K5Dezw^p8-!Qp961Kz5t$5z6hRH{tLLHJPlu}d>On$c@dsbz5ir?}A^U{6hGZ$}fel zSH1x*W4)y7;8%Inx*fhz`NQz5l|Ko;M)`B_Yn8tWzfSqv@avU-3co@5-@Y^Ov+}>fZ&6-X=iNt>&As5aY5u|R+m#;yzeD*{_?^ld;dd!t2)|qTS@3(5C*k)h z&%*ChejfaO~6gFmhOf8ft3A34gqS0|gh!=Kaq1L4mrKLY-O^5ftyDxVI2N%=hZ z%gPtSUs2u$e^q%F{+eIK3 zpC)*Ng?-gDoZShw!gRbv?J*H_`=J{fLAO7;aS?O}pgS~z?m%>hMbI6D?(hh@gV7xk zL5Gj+@ey=~pqmgumq2%91RZ^0PmG|WFYKct=;#ak=mEkjq1 zpj(cvvIQO4)s#bb0$a7tuPTD%(VZAU$Gp!zDT0nUp?z`$9erU>ji941?4Lx?(HHh9 z5p?v0eQE?9ePRDJf{wnhPm7>ifo@s^9dllLdIVh;x)~94tI#z>(4CKNW(3`8bd3>o z7oeLJLAM6o>AxjH#jTkBiVTriSV+M#q>Ms=EXoV``}GQgp;j zsO~a!#7wB}a&*K@sO}1M#7wB}N_50bsBS$v#)MGa26V($sO~Cs#8#+oBRXO$RChHx zVk=a~y2~cELUq@oTNgpcdd()bLd&}z9kCUvy8#`s6{@=t9kCUvy9ph!6{@=#9kCUv zy9FJw6{@=x9kCUvyA2(&6{@=(9kCUvy8|7u6{@=v9kCUvy9*t$6{@=%9kCUvy9XVy z6{@=z9kCUvyAK_)Ra0k^@2C6G5nDBNzDDc==!mVFx?p(^q9e9y>ZBY$Z9+$E)zk&c zdk7t|Ra57eCH7%-#8#;85p={>sP0j8#8#;8F?7UMsP1ue#8#;833S9(sP0L0#8ypR z(0@;%BerVl$gZZR(GgoUb;0tUL3iI4bk)Kj&!W433%X!=&!Ho>YStSp?|F2@R!v>7 zycf_BTQzmT@?JzoY}M2S%X#8ypRu)J5$5nDBN!SY^3M{L#917ybsV3TQzmT@_vPm*s7@umiHk#VymVu zSl&nIh^?BsV0j;-BerVlg5`aJj@YWH3zqjOI%2D)E?C~L(JhFe`whB<5pUji9HZ|U^{p~-jnZwuSfB+ zL+!tPu&4StihcOx$9`-hpJv0S%FZ|qc@M}K{vBx;R^p<*zO}x7$a^JrfFBn!%c#Z$ zp`rf^ZfmNL&lfsd<#XF^t21TtbcIz`PygHp^QXu2&dvQfSaSTh*mEo6qGi$i zI4lNB5Y%Xg9~XOVF)mgldAN1Ot#NFeHF!PX$Hm^Y<3gS>6fZ;uZ})GpWqw@jgJKx} znhPtPQgcI_JYTAE1LMrt1B1{5JU@L%C;4n%oMI379@x>cgOAYjvtt{3Aof7)f!G7F2VxHl zaSwRk>4+zeLp%)P=Hr23e7h-rC&ZyJ)IA{g6}KkIa|gPgaI`f?4lb?uZMFZ4)@%65 zxH5mT>ntDLS*~}whR`==d-))T9|Ax9KDhckZcXfgC?1fpVQa_LDCNeQ*aJT#55za5 ze@ML*pKI)aZRY{`e0{{Em(IZGVe_}GA)fXO%qVv2apS_S{syMF=xnFcDrI{;&Z+83 zc{&(#6WOl1v<@np>SR34|H(#ZUcUYA)au3o>}xYWYMo4{OOE?}KmD$C1=>`tVylQb zcXQ@m3#4snrW|i&!By&FUB3}`a$E(R#4*7VN`8i&xLq4D(kJpk%=7>gy zK>6B$+&+EeJ`l)p2LaI?45Tc1 z+=kREk5`bgByVK0zEJ7oyU__W0-Lkl!IZ{E_+dsgm|w)Nq|uWqZfO$V7@fo~pu2_o z_`xKeUw&|}y)JZ|KRvwJg>L%|cs(yv^6>h1f&9Rx3>>JIR=k0DqMLWiXKKT4^LZ z7Zf`CycsD)l$z(yuXX$Y=S^$uDm$glWG*qIlFg+P+%8@2lme9;32$m{o*u~BRxTwC@DkHEz5^b2&FmYnv%F$juVY0ppiC$0t8Wg>rV&5kmvUe-$ z=~qRO>q$FHLr%HByS+GYy86|g2q)py)6b8VNA_E$oR^=3*@nq$&$8r-WIrl7J^XO5 zp8WED)Dr1Xubx7-Pq!^>X`Gj6S><+cE985ocg?ud&uD8-x~XKJXKH!vDJH+~eH7EY z==G%f71sT`< z(q1WVmwKeK`cy9Yz3+TSa+~+-Q1$6T|0bm2bv2vzaBnMI+AqauQ%|8^Wkfkx>uFyW zMcfaKSI_y`Vn51=a_H#h2KiLk=J!hcgXR8ml(krM!_lT7{}XHe@xG04E!2AY4#|P5 zr`V@&2dIs>74M08KwS7Cyjs3XUhSt2t!pa{AzlD93UjDX{nAOx6b}sXm z@IGx%%+1TQeiA&%B_R+02|KFi{wVjO2BID_W+dHw&)R!#QO|VOb@J^wr&Oys(Z`IQ z<@Vm99#d4UIz$`2p1xNd16NPqW8lEm)8`Oq4PZTeRy1(+^gY%NSUn+Q?Euu{jkO`G z+<~j7?`z?})w9j}$MYM%2GV;B2yWA!{*F6dJ-O7jzAx#`iMG={kb#No;q90D=D5N1(!&R-r5!`g0d(eOKIn5^GMIY5yDdF@;Fg!?lI>2eKIGEe zefXeYs~06p9Zq>xHs`FVXYoEL8nu;;=>8&S!F86mx|w9jNw+f9Xm!n>Qis;pTDQ`9 zgGgQ-4_XS9lKg6X#dS*MRYk`gI#-CQ5Bl*DfQ{Aof7)f!G5-L=W)5LVGyiF>-bj;1l`wJit>7ZJu&!9{_l| zsm+s3ZN7PH{}>zs5?~DAFF^JLQv_|EDrWPzHM<2Y2Iqh_z}HOd z4!~#q?JVFi0XEMpvUy04%~xS&#!TnsJ&mx9Z{<=_f%C0GwOfUCepa5cCFTnnxP*Ml3tjo>D5 zGq?rZ3T^|pgFC>T;4W}CxCh(|?gRIO2f%}16L<(b3?2cGg2%w);0f>~cnUlXo&nE- z=fLye1@Izx3A_wm0k4AB!0X@*@FsW*ybay~?}GQh```ocEAS!s2z(4a0iS|jgWrJ9 zz;D6l;0s_|yco!3UXNilLo6DwCWu?MP^E1PV~)lKXnY7=V5sFkar>>sOkoZ3Ux z9;WtiwMVEOuXcjkBeDLuiVH^Z9qe2s?Qou^**Vqa)ykDn>XoaZSh*sKJx{G%8D(3p zj$-8sDORqMV&zIHR<4#}yVS~6Q?}*GDR#A5xq`~JTt&sol~n9nwd>Sgr1oO9mtg&N zNq>xxXK#$uMm4Eup4y3O<+3A%%caLZSo(i>CYh_l`gx<^BijqfQd)Xkj##EgE)N{J zlN?Fc`?a>HX0h6H)V8UW3!PuX&K&D^1zm0GxKwqQsl8n76>6_kyI$=EwO6U#sP<~L zGO3Vrmx+Z~nOumyUad?rWcx<7GTD%AnQ(}eNrzaOc!<4CtxP~Q?1O+ zWWUVM#J;2UUA6D2eP8VdYJa8nL$x2N{aEcMYClzrLrwYf)qbY-bL@EWHeM~2dp>n$ zJh8BjeYsxwkJ3%+IHa>z{v7f44qiFm$Xj01oP8iWdgTQ3$B!Z(os<*IpTp4mJBGhp zv7DDv^V4|V&lk{(Ztr~RO(4p-J@uQ27@3b`d+DeD!LkmeoIoyZ+szo+o?129?5@#_wU|gy!;CftrORpbX%T! zsX+ASOsO-!9w9s4q+W?T$zOVMo%!_$$$y8SyLg# zW-cfB<1fOWoP_9Cx7L|CzvQ2EB~ORf^8eSZGgo%W|CVwlU`7AOGwZC~C6hG$D_+N^Pl?0vNrM_F1t<5$*bzBzeezX<}SS( diff --git a/demos/SPC5/RT-SPC560D-EVB/halconf.h b/demos/SPC5/RT-SPC560D-EVB/halconf.h deleted file mode 100644 index 682795338..000000000 --- a/demos/SPC5/RT-SPC560D-EVB/halconf.h +++ /dev/null @@ -1,388 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file templates/halconf.h - * @brief HAL configuration header. - * @details HAL configuration file, this file allows to enable or disable the - * various device drivers from your application. You may also use - * this file in order to override the device drivers default settings. - * - * @addtogroup HAL_CONF - * @{ - */ - -#ifndef _HALCONF_H_ -#define _HALCONF_H_ - -#include "mcuconf.h" - -/** - * @brief Enables the TM subsystem. - */ -#if !defined(HAL_USE_TM) || defined(__DOXYGEN__) -#define HAL_USE_TM FALSE -#endif - -/** - * @brief Enables the PAL subsystem. - */ -#if !defined(HAL_USE_PAL) || defined(__DOXYGEN__) -#define HAL_USE_PAL TRUE -#endif - -/** - * @brief Enables the ADC subsystem. - */ -#if !defined(HAL_USE_ADC) || defined(__DOXYGEN__) -#define HAL_USE_ADC FALSE -#endif - -/** - * @brief Enables the CAN subsystem. - */ -#if !defined(HAL_USE_CAN) || defined(__DOXYGEN__) -#define HAL_USE_CAN FALSE -#endif - -/** - * @brief Enables the DAC subsystem. - */ -#if !defined(HAL_USE_DAC) || defined(__DOXYGEN__) -#define HAL_USE_DAC FALSE -#endif - -/** - * @brief Enables the EXT subsystem. - */ -#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) -#define HAL_USE_EXT FALSE -#endif - -/** - * @brief Enables the GPT subsystem. - */ -#if !defined(HAL_USE_GPT) || defined(__DOXYGEN__) -#define HAL_USE_GPT FALSE -#endif - -/** - * @brief Enables the I2C subsystem. - */ -#if !defined(HAL_USE_I2C) || defined(__DOXYGEN__) -#define HAL_USE_I2C FALSE -#endif - -/** - * @brief Enables the I2S subsystem. - */ -#if !defined(HAL_USE_I2S) || defined(__DOXYGEN__) -#define HAL_USE_I2S FALSE -#endif - -/** - * @brief Enables the ICU subsystem. - */ -#if !defined(HAL_USE_ICU) || defined(__DOXYGEN__) -#define HAL_USE_ICU FALSE -#endif - -/** - * @brief Enables the MAC subsystem. - */ -#if !defined(HAL_USE_MAC) || defined(__DOXYGEN__) -#define HAL_USE_MAC FALSE -#endif - -/** - * @brief Enables the MMC_SPI subsystem. - */ -#if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__) -#define HAL_USE_MMC_SPI FALSE -#endif - -/** - * @brief Enables the PWM subsystem. - */ -#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__) -#define HAL_USE_PWM FALSE -#endif - -/** - * @brief Enables the RTC subsystem. - */ -#if !defined(HAL_USE_RTC) || defined(__DOXYGEN__) -#define HAL_USE_RTC FALSE -#endif - -/** - * @brief Enables the SDC subsystem. - */ -#if !defined(HAL_USE_SDC) || defined(__DOXYGEN__) -#define HAL_USE_SDC FALSE -#endif - -/** - * @brief Enables the SERIAL subsystem. - */ -#if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__) -#define HAL_USE_SERIAL TRUE -#endif - -/** - * @brief Enables the SERIAL over USB subsystem. - */ -#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__) -#define HAL_USE_SERIAL_USB FALSE -#endif - -/** - * @brief Enables the SPI subsystem. - */ -#if !defined(HAL_USE_SPI) || defined(__DOXYGEN__) -#define HAL_USE_SPI FALSE -#endif - -/** - * @brief Enables the UART subsystem. - */ -#if !defined(HAL_USE_UART) || defined(__DOXYGEN__) -#define HAL_USE_UART FALSE -#endif - -/** - * @brief Enables the USB subsystem. - */ -#if !defined(HAL_USE_USB) || defined(__DOXYGEN__) -#define HAL_USE_USB FALSE -#endif - -/** - * @brief Enables the WDG subsystem. - */ -#if !defined(HAL_USE_WDG) || defined(__DOXYGEN__) -#define HAL_USE_WDG FALSE -#endif - -/*===========================================================================*/ -/* ADC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__) -#define ADC_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define ADC_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* CAN driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Sleep mode related APIs inclusion switch. - */ -#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__) -#define CAN_USE_SLEEP_MODE TRUE -#endif - -/*===========================================================================*/ -/* I2C driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables the mutual exclusion APIs on the I2C bus. - */ -#if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define I2C_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* MAC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables an event sources for incoming packets. - */ -#if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__) -#define MAC_USE_ZERO_COPY FALSE -#endif - -/** - * @brief Enables an event sources for incoming packets. - */ -#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__) -#define MAC_USE_EVENTS TRUE -#endif - -/*===========================================================================*/ -/* MMC_SPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Delays insertions. - * @details If enabled this options inserts delays into the MMC waiting - * routines releasing some extra CPU time for the threads with - * lower priority, this may slow down the driver a bit however. - * This option is recommended also if the SPI driver does not - * use a DMA channel and heavily loads the CPU. - */ -#if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__) -#define MMC_NICE_WAITING TRUE -#endif - -/*===========================================================================*/ -/* SDC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Number of initialization attempts before rejecting the card. - * @note Attempts are performed at 10mS intervals. - */ -#if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__) -#define SDC_INIT_RETRY 100 -#endif - -/** - * @brief Include support for MMC cards. - * @note MMC support is not yet implemented so this option must be kept - * at @p FALSE. - */ -#if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__) -#define SDC_MMC_SUPPORT FALSE -#endif - -/** - * @brief Delays insertions. - * @details If enabled this options inserts delays into the MMC waiting - * routines releasing some extra CPU time for the threads with - * lower priority, this may slow down the driver a bit however. - */ -#if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__) -#define SDC_NICE_WAITING TRUE -#endif - -/*===========================================================================*/ -/* SERIAL driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Default bit rate. - * @details Configuration parameter, this is the baud rate selected for the - * default configuration. - */ -#if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__) -#define SERIAL_DEFAULT_BITRATE 38400 -#endif - -/** - * @brief Serial buffers size. - * @details Configuration parameter, you can change the depth of the queue - * buffers depending on the requirements of your application. - * @note The default is 16 bytes for both the transmission and receive - * buffers. - */ -#if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__) -#define SERIAL_BUFFERS_SIZE 16 -#endif - -/*===========================================================================*/ -/* SERIAL_USB driver related setting. */ -/*===========================================================================*/ - -/** - * @brief Serial over USB buffers size. - * @details Configuration parameter, the buffer size must be a multiple of - * the USB data endpoint maximum packet size. - * @note The default is 256 bytes for both the transmission and receive - * buffers. - */ -#if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__) -#define SERIAL_USB_BUFFERS_SIZE 256 -#endif - -/** - * @brief Serial over USB number of buffers. - * @note The default is 2 buffers. - */ -#if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__) -#define SERIAL_USB_BUFFERS_NUMBER 2 -#endif - -/*===========================================================================*/ -/* SPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__) -#define SPI_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define SPI_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* UART driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__) -#define UART_USE_WAIT FALSE -#endif - -/** - * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define UART_USE_MUTUAL_EXCLUSION FALSE -#endif - -/*===========================================================================*/ -/* USB driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(USB_USE_WAIT) || defined(__DOXYGEN__) -#define USB_USE_WAIT FALSE -#endif - -#endif /* _HALCONF_H_ */ - -/** @} */ diff --git a/demos/SPC5/RT-SPC560D-EVB/main.c b/demos/SPC5/RT-SPC560D-EVB/main.c deleted file mode 100644 index 957f0e8c2..000000000 --- a/demos/SPC5/RT-SPC560D-EVB/main.c +++ /dev/null @@ -1,202 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#include "ch.h" -#include "hal.h" -#include "test.h" -#include "shell.h" -#include "chprintf.h" - -#define SHELL_WA_SIZE THD_WORKING_AREA_SIZE(1024) -#define TEST_WA_SIZE THD_WORKING_AREA_SIZE(256) - -static void cmd_mem(BaseSequentialStream *chp, int argc, char *argv[]) { - size_t n, size; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: mem\r\n"); - return; - } - n = chHeapStatus(NULL, &size); - chprintf(chp, "core free memory : %u bytes\r\n", chCoreGetStatusX()); - chprintf(chp, "heap fragments : %u\r\n", n); - chprintf(chp, "heap free total : %u bytes\r\n", size); -} - -static void cmd_threads(BaseSequentialStream *chp, int argc, char *argv[]) { - static const char *states[] = {CH_STATE_NAMES}; - thread_t *tp; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: threads\r\n"); - return; - } - chprintf(chp, " addr stack prio refs state time\r\n"); - tp = chRegFirstThread(); - do { - chprintf(chp, "%08lx %08lx %4lu %4lu %9s\r\n", - (uint32_t)tp, (uint32_t)tp->p_ctx.sp, - (uint32_t)tp->p_prio, (uint32_t)(tp->p_refs - 1), - states[tp->p_state]); - tp = chRegNextThread(tp); - } while (tp != NULL); -} - -static void cmd_test(BaseSequentialStream *chp, int argc, char *argv[]) { - thread_t *tp; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: test\r\n"); - return; - } - tp = chThdCreateFromHeap(NULL, TEST_WA_SIZE, chThdGetPriorityX(), - TestThread, chp); - if (tp == NULL) { - chprintf(chp, "out of memory\r\n"); - return; - } - chThdWait(tp); -} - -static const ShellCommand commands[] = { - {"mem", cmd_mem}, - {"threads", cmd_threads}, - {"test", cmd_test}, - {NULL, NULL} -}; - -static const ShellConfig shell_cfg1 = { - (BaseSequentialStream *)&SD1, - commands -}; - -/* - * LEDs blinker thread, times are in milliseconds. - */ -static THD_WORKING_AREA(waThread1, 128); -static THD_FUNCTION(Thread1, arg) { - - (void)arg; - chRegSetThreadName("blinker"); - - while (true) { - unsigned i; - - for (i = 0; i < 4; i++) { - palClearPad(PORT_E, PE_LED1); - chThdSleepMilliseconds(100); - palClearPad(PORT_E, PE_LED2); - chThdSleepMilliseconds(100); - palClearPad(PORT_E, PE_LED3); - chThdSleepMilliseconds(100); - palClearPad(PORT_E, PE_LED4); - chThdSleepMilliseconds(100); - palSetPad(PORT_E, PE_LED1); - chThdSleepMilliseconds(100); - palSetPad(PORT_E, PE_LED2); - chThdSleepMilliseconds(100); - palSetPad(PORT_E, PE_LED3); - chThdSleepMilliseconds(100); - palSetPad(PORT_E, PE_LED4); - chThdSleepMilliseconds(300); - } - - for (i = 0; i < 4; i++) { - palTogglePort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED2) | - PAL_PORT_BIT(PE_LED3) | PAL_PORT_BIT(PE_LED4)); - chThdSleepMilliseconds(500); - palTogglePort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED2) | - PAL_PORT_BIT(PE_LED3) | PAL_PORT_BIT(PE_LED4)); - chThdSleepMilliseconds(500); - } - - for (i = 0; i < 4; i++) { - palTogglePad(PORT_E, PE_LED1); - chThdSleepMilliseconds(250); - palTogglePad(PORT_E, PE_LED1); - palTogglePad(PORT_E, PE_LED2); - chThdSleepMilliseconds(250); - palTogglePad(PORT_E, PE_LED2); - palTogglePad(PORT_E, PE_LED3); - chThdSleepMilliseconds(250); - palTogglePad(PORT_E, PE_LED3); - palTogglePad(PORT_E, PE_LED4); - chThdSleepMilliseconds(250); - palTogglePad(PORT_E, PE_LED4); - } - - for (i = 0; i < 4; i++) { - palClearPort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED3)); - palSetPort(PORT_E, PAL_PORT_BIT(PE_LED2) | PAL_PORT_BIT(PE_LED4)); - chThdSleepMilliseconds(500); - palClearPort(PORT_E, PAL_PORT_BIT(PE_LED2) | PAL_PORT_BIT(PE_LED4)); - palSetPort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED3)); - chThdSleepMilliseconds(500); - } - - palSetPort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED2) | - PAL_PORT_BIT(PE_LED3) | PAL_PORT_BIT(PE_LED4)); - } -} - -/* - * Application entry point. - */ -int main(void) { - thread_t *shelltp = NULL; - - /* - * System initializations. - * - HAL initialization, this also initializes the configured device drivers - * and performs the board-specific initializations. - * - Kernel initialization, the main() function becomes a thread and the - * RTOS is active. - */ - halInit(); - chSysInit(); - - /* - * Shell manager initialization. - */ - shellInit(); - - /* - * Activates the serial driver 1 using the driver default configuration. - */ - sdStart(&SD1, NULL); - - /* - * Creates the blinker thread. - */ - chThdCreateStatic(waThread1, sizeof(waThread1), NORMALPRIO, Thread1, NULL); - - /* - * Normal main() thread activity. - */ - while (true) { - if (!shelltp) - shelltp = shellCreate(&shell_cfg1, SHELL_WA_SIZE, NORMALPRIO); - else if (chThdTerminatedX(shelltp)) { - chThdRelease(shelltp); /* Recovers memory of the previous shell. */ - shelltp = NULL; /* Triggers spawning of a new shell. */ - } - chThdSleepMilliseconds(1000); - } - return 0; -} diff --git a/demos/SPC5/RT-SPC560D-EVB/mcuconf.h b/demos/SPC5/RT-SPC560D-EVB/mcuconf.h deleted file mode 100644 index 0b48d33e0..000000000 --- a/demos/SPC5/RT-SPC560D-EVB/mcuconf.h +++ /dev/null @@ -1,153 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#ifndef _MCUCONF_H_ -#define _MCUCONF_H_ - -/* - * SPC560B/Cxx drivers configuration. - * The following settings override the default settings present in - * the various device driver implementation headers. - * Note that the settings for each driver only have effect if the whole - * driver is enabled in halconf.h. - * - * IRQ priorities: - * 1...15 Lowest...Highest. - * DMA priorities: - * 0...15 Highest...Lowest. - */ - -#define SPC560Dxx_MCUCONF - -/* - * HAL driver system settings. - */ -#define SPC5_NO_INIT FALSE -#define SPC5_ALLOW_OVERCLOCK FALSE -#define SPC5_DISABLE_WATCHDOG TRUE -#define SPC5_FMPLL0_IDF_VALUE 1 -#define SPC5_FMPLL0_NDIV_VALUE 48 -#define SPC5_FMPLL0_ODF SPC5_FMPLL_ODF_DIV8 -#define SPC5_XOSCDIV_VALUE 1 -#define SPC5_IRCDIV_VALUE 1 -#define SPC5_PERIPHERAL1_CLK_DIV_VALUE 2 -#define SPC5_PERIPHERAL2_CLK_DIV_VALUE 2 -#define SPC5_PERIPHERAL3_CLK_DIV_VALUE 2 -#define SPC5_CLOCK_FAILURE_HOOK() osalSysHalt("clock failure") - -#define SPC5_EMIOS0_GPRE_VALUE 20 - -/* - * EDMA driver settings. - */ -#define SPC5_EDMA_CR_SETTING (EDMA_CR_EMLM) -#define SPC5_EDMA_GROUP0_PRIORITIES 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 -#define SPC5_EDMA_ERROR_IRQ_PRIO 12 -#define SPC5_EDMA_ERROR_HANDLER() osalSysHalt("DMA failure") - -/* - * SERIAL driver system settings. - */ -#define SPC5_SERIAL_USE_LINFLEX0 TRUE -#define SPC5_SERIAL_USE_LINFLEX1 FALSE -#define SPC5_SERIAL_USE_LINFLEX2 FALSE -#define SPC5_SERIAL_LINFLEX0_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX1_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX2_PRIORITY 8 - -/* - * SPI driver system settings. - */ -#define SPC5_SPI_USE_DSPI0 FALSE -#define SPC5_SPI_USE_DSPI1 FALSE -#define SPC5_SPI_DMA_MODE SPC5_SPI_DMA_RX_ONLY -#define SPC5_SPI_DSPI0_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3 | SPC5_MCR_PCSIS4 | SPC5_MCR_PCSIS5) -#define SPC5_SPI_DSPI1_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3 | SPC5_MCR_PCSIS4) -#define SPC5_SPI_DSPI0_TX1_DMA_CH_ID 4 -#define SPC5_SPI_DSPI0_TX2_DMA_CH_ID 5 -#define SPC5_SPI_DSPI0_RX_DMA_CH_ID 6 -#define SPC5_SPI_DSPI1_TX1_DMA_CH_ID 7 -#define SPC5_SPI_DSPI1_TX2_DMA_CH_ID 8 -#define SPC5_SPI_DSPI1_RX_DMA_CH_ID 9 -#define SPC5_SPI_DSPI0_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI1_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI0_IRQ_PRIO 10 -#define SPC5_SPI_DSPI1_IRQ_PRIO 10 -#define SPC5_SPI_DMA_ERROR_HOOK(spip) osalSysHalt("DSPI DMA failure") - -/* - * ICU-PWM driver system settings. - */ -#define SPC5_ICU_USE_EMIOS0_CH0 FALSE -#define SPC5_ICU_USE_EMIOS0_CH1 FALSE -#define SPC5_ICU_USE_EMIOS0_CH2 FALSE -#define SPC5_ICU_USE_EMIOS0_CH3 FALSE -#define SPC5_ICU_USE_EMIOS0_CH4 FALSE -#define SPC5_ICU_USE_EMIOS0_CH5 FALSE -#define SPC5_ICU_USE_EMIOS0_CH6 FALSE -#define SPC5_ICU_USE_EMIOS0_CH7 FALSE -#define SPC5_ICU_USE_EMIOS0_CH24 FALSE - -#define SPC5_PWM_USE_EMIOS0_GROUP0 FALSE -#define SPC5_PWM_USE_EMIOS0_GROUP1 FALSE - -#define SPC5_EMIOS0_GFR_F0F1_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F2F3_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F4F5_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F6F7_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F8F9_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F10F11_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F12F13_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F14F15_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F16F17_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F18F19_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F20F21_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F22F23_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F24F25_PRIORITY 8 - -#define SPC5_EMIOS0_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_EMIOS0_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -/* - * CAN driver system settings. - */ -#define SPC5_CAN_USE_FILTERS FALSE - -#define SPC5_CAN_USE_FLEXCAN0 FALSE -#define SPC5_CAN_FLEXCAN0_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN0_PRIORITY 12 -#define SPC5_CAN_FLEXCAN0_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_CAN_FLEXCAN0_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -/* -* ADC driver system settings. -*/ -#define SPC5_ADC_USE_ADC1 FALSE -#define SPC5_ADC_ADC1_CLK_FREQUENCY HALF_PERIPHERAL_SET_CLOCK_FREQUENCY -#define SPC5_ADC_ADC1_AUTO_CLOCK_OFF FALSE -#define SPC5_ADC_ADC1_WD_PRIORITY 12 -#define SPC5_ADC_ADC1_DMA_CH_ID 2 -#define SPC5_ADC_ADC1_DMA_IRQ_PRIO 12 -#define SPC5_ADC_ADC1_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_ADC_ADC1_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#endif /* _MCUCONF_H_ */ diff --git a/demos/SPC5/RT-SPC560P-EVB/.cproject b/demos/SPC5/RT-SPC560P-EVB/.cproject deleted file mode 100644 index 9573eb3e8..000000000 --- a/demos/SPC5/RT-SPC560P-EVB/.cproject +++ /dev/null @@ -1,57 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/SPC5/RT-SPC560P-EVB/.project b/demos/SPC5/RT-SPC560P-EVB/.project deleted file mode 100644 index d27d6eb94..000000000 --- a/demos/SPC5/RT-SPC560P-EVB/.project +++ /dev/null @@ -1,43 +0,0 @@ - - - RT-SPC560P-EVB - - - - - - org.eclipse.cdt.managedbuilder.core.genmakebuilder - clean,full,incremental, - - - - - org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder - full,incremental, - - - - - - org.eclipse.cdt.core.cnature - org.eclipse.cdt.managedbuilder.core.managedBuildNature - org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - - - - board - 2 - CHIBIOS/os/hal/boards/ST_EVB_SPC560P - - - os - 2 - CHIBIOS/os - - - test - 2 - CHIBIOS/test - - - diff --git a/demos/SPC5/RT-SPC560P-EVB/Makefile b/demos/SPC5/RT-SPC560P-EVB/Makefile deleted file mode 100644 index 65fef8db3..000000000 --- a/demos/SPC5/RT-SPC560P-EVB/Makefile +++ /dev/null @@ -1,188 +0,0 @@ -############################################################################## -# Build global options -# NOTE: Can be overridden externally. -# - -# Compiler options here. -ifeq ($(USE_OPT),) - USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16 -mno-spe -msoft-float -endif - -# C specific options here (added to USE_OPT). -ifeq ($(USE_COPT),) - USE_COPT = -endif - -# C++ specific options here (added to USE_OPT). -ifeq ($(USE_CPPOPT),) - USE_CPPOPT = -fno-rtti -endif - -# Enable this if you want the linker to remove unused code and data. -ifeq ($(USE_LINK_GC),) - USE_LINK_GC = yes -endif - -# Linker extra options here. -ifeq ($(USE_LDOPT),) - USE_LDOPT = -endif - -# Enable this if you want link time optimizations (LTO) -ifeq ($(USE_LTO),) - USE_LTO = no -endif - -# If enabled, this option allows to compile the application in VLE mode. -ifeq ($(USE_VLE),) - USE_VLE = yes -endif - -# Enable this if you want to see the full log while compiling. -ifeq ($(USE_VERBOSE_COMPILE),) - USE_VERBOSE_COMPILE = no -endif - -# If enabled, this option makes the build process faster by not compiling -# modules not used in the current configuration. -ifeq ($(USE_SMART_BUILD),) - USE_SMART_BUILD = yes -endif - -# -# Build global options -############################################################################## - -############################################################################## -# Architecture or project specific options -# - -# Stack size to be allocated to the process stack. This stack is -# the stack used by the main() thread. -ifeq ($(USE_PROCESS_STACKSIZE),) - USE_PROCESS_STACKSIZE = 0x400 -endif - -# Stack size to the allocated to the optional exceptions stack. This -# stack is used for processing interrupts and exceptions. -ifeq ($(USE_EXCEPTIONS_STACKSIZE),) - USE_EXCEPTIONS_STACKSIZE = 0 -endif - -# -# Architecture or project specific options -############################################################################## - -############################################################################## -# Project, sources and paths -# - -# Define project name here -PROJECT = ch - -# Imported source files and paths -CHIBIOS = ../../.. -# Startup files. -include $(CHIBIOS)/os/common/ports/e200/compilers/GCC/mk/startup_spc560pxx.mk -# HAL-OSAL files (optional). -include $(CHIBIOS)/os/hal/hal.mk -include $(CHIBIOS)/os/hal/boards/ST_EVB_SPC560P/board.mk -include $(CHIBIOS)/os/hal/ports/SPC5/SPC560Pxx/platform.mk -include $(CHIBIOS)/os/hal/osal/rt/osal.mk -# RTOS files (optional). -include $(CHIBIOS)/os/rt/rt.mk -include $(CHIBIOS)/os/rt/ports/e200/compilers/GCC/mk/port.mk -# Other files (optional). -include $(CHIBIOS)/test/rt/test.mk - -# Define linker script file here -LDSCRIPT= $(STARTUPLD)/SPC560P50.ld - -# C sources here. -CSRC = $(STARTUPSRC) \ - $(KERNSRC) \ - $(PORTSRC) \ - $(OSALSRC) \ - $(HALSRC) \ - $(PLATFORMSRC) \ - $(BOARDSRC) \ - $(TESTSRC) \ - $(CHIBIOS)/os/hal/lib/streams/memstreams.c \ - $(CHIBIOS)/os/hal/lib/streams/chprintf.c \ - $(CHIBIOS)/os/various/shell.c \ - main.c - -# C++ sources here. -CPPSRC = - -# List ASM source files here -ASMSRC = $(STARTUPASM) $(PORTASM) $(OSALASM) - -INCDIR = $(STARTUPINC) $(KERNINC) $(PORTINC) $(OSALINC) \ - $(HALINC) $(PLATFORMINC) $(BOARDINC) $(TESTINC) \ - $(CHIBIOS)/os/hal/lib/streams $(CHIBIOS)/os/various - -# -# Project, sources and paths -############################################################################## - -############################################################################## -# Compiler settings -# - -#MCU = e500mc -meabi -msdata=none -mnew-mnemonics -mregnames -MCU = e200zx -meabi -msdata=none -mnew-mnemonics -mregnames - -#TRGT = powerpc-eabi- -TRGT = ppc-vle- -CC = $(TRGT)gcc -CPPC = $(TRGT)g++ -# Enable loading with g++ only if you need C++ runtime support. -# NOTE: You can use C++ even without C++ support if you are careful. C++ -# runtime support makes code size explode. -LD = $(TRGT)gcc -#LD = $(TRGT)g++ -CP = $(TRGT)objcopy -AS = $(TRGT)gcc -x assembler-with-cpp -AR = $(TRGT)ar -OD = $(TRGT)objdump -SZ = $(TRGT)size -HEX = $(CP) -O ihex -MOT = $(CP) -O srec -BIN = $(CP) -O binary - -# Define C warning options here -CWARN = -Wall -Wextra -Wundef -Wstrict-prototypes - -# Define C++ warning options here -CPPWARN = -Wall -Wextra -Wundef - -# -# Compiler settings -############################################################################## - -############################################################################## -# Start of user section -# - -# List all user C define here, like -D_DEBUG=1 -UDEFS = - -# Define ASM defines here -UADEFS = - -# List all user directories here -UINCDIR = - -# List the user directory to look for the libraries here -ULIBDIR = - -# List all user libraries here -ULIBS = - -# -# End of user defines -############################################################################## - -RULESPATH = $(CHIBIOS)/os/common/ports/e200/compilers/GCC -include $(RULESPATH)/rules.mk diff --git a/demos/SPC5/RT-SPC560P-EVB/UDE/debug.wsx b/demos/SPC5/RT-SPC560P-EVB/UDE/debug.wsx deleted file mode 100644 index a7ed9df2f..000000000 --- a/demos/SPC5/RT-SPC560P-EVB/UDE/debug.wsx +++ /dev/null @@ -1,273 +0,0 @@ - - - debug.wsx000vQTv/gAAAQAXAAIA8QkPAAAABAAAAAAAPwAAAAAAAAAEAAAAAgAAAAAAAAAAAAAAAAAAAA==4.029.10.2012 12:15:07:999MCAAAAAAAAAAAAAABAAAAAAAPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPHHAAAAAAPBAAAAAADGFAAAAABCDAAAAAFalseTrue1416801050593930FalseFalse1000000000000000UDEStatusBarFor Help, press F105941912059647059398593975940359401594060593995940200FalseFalse0000000000CUDEDockBar05942230911000FalseFalse0000000000CUDEDockBar05942030910000FalseFalse0000000000CUDEDockBar059647True0001252278196-21474836480908FalseFalse1000000001252270006144014947UDEMDIMenuBarMenu bar0Menu barBAAAAAAIAACAAAAAAIAADAAAAAAIAAEAAAAAAIAAFAAAAAAIAAGAAAAAAIAAHAAAAAAIAAIAAAAAAIAAJAAAAAAIAAKAAAAAAIAA5939826True0026111568196-21474836480780FalseFalse6250000111300006144014946CUdeCustomToolBarEdit0Edit2DCBOAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAACCBOAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAFCBOAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAIABOAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAA5939711026True011026290568196-21474836480780FalseFalse6250000180300006144014946CUdeCustomToolBarFile0File3AHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAABHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAACHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAADHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAEHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAFHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAOKHBAAAAAABAAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAA5940329026True029026424568196-21474836481002780FalseFalse12500000134300006144014946CUdeCustomToolBarConfig0Config2GJHBAAAAAADAAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAAMMHBAAAAAAOPAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAANMHBAAAAAAAABAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAAFNHBAAAAAAGAAAAAAAKBDLFIMBFCNFHJBEGJFDMJNFCMOIPKHNAAAAAAAAPPPPPPPPAAAAAAAAINHBAAAAAACBAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAA5940142426True042426903568196-21474836481002780FalseFalse25000000479300006144014946CUdeCustomToolBarViews0Views6JJHBAAAAAAFBAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAAKJHBAAAAAAPAAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAAMJHBAAAAAAGBAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAANKHBAAAAAAAAAAAAAAAGKBFNONHLAOENBBBJCBAABADAJECGGLAAAAAAAAPPPPPPPPAAAAAAAAALHBAAAAAAKAAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAACLHBAAAAAAMFAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAADLHBAAAAAAKFAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAFLHBAAAAAANCAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAGLHBAAAAAAMDAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAHLHBAAAAAAGEAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAAMHBAAAAAAKAAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAABMHBAAAAAAEBAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAACMHBAAAAAAJBAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAADMHBAAAAAALBAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAAEMHBAAAAAAAFAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAAFMHBAAAAAAICAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAAIMHBAAAAAANEEAAAAAJEOEILFFBLMIPBEEPLLMEDEOPKHPBGJHAAAAAAAAPPPPPPPPAAAAAAAAJMHBAAAAAAGFEAAAAAJEOEILFFBLMIPBEEPLLMEDEOPKHPBGJHAAAAAAAAPPPPPPPPAAAAAAAAKMHBAAAAAAAGEAAAAAJEOEILFFBLMIPBEEPLLMEDEOPKHPBGJHAAAAAAAAPPPPPPPPAAAAAAAALMHBAAAAAAGEAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAA5940690326True0903261149568196-21474836480780FalseFalse50000000246300006144014946CUdeCustomToolBarMacro0Macro2DKHBAAAAAALDAAAAAAGDHJMPFPDOOJLAGELLAIHGBMMEFJBIPLAAAAAAAAPPPPPPPPAAAAAAAAEKHBAAAAAAAEAAAAAAGDHJMPFPDOOJLAGELLAIHGBMMEFJBIPLAAAAAAAAPPPPPPPPAAAAAAAAGKHBAAAAAAMDAAAAAAGDHJMPFPDOOJLAGELLAIHGBMMEFJBIPLAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAMKHBAAAACAGJAAAAAAAAAANMAJBFNENHHACJPEILAJFEFEECLCDPKCBAAAAAAAKAAAAAAANAAAAAAAFFEEFEHFPGCHLGDHAHBGDGFGAA5939956504True59419056504868196-21474836480780FalseFalse60000050430504303931506144014946CUdeCustomToolBarDebug0Debug5BLHBAAAAAAIBAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAELHBAAAAAAOFAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAILHBAAAAAAHAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAJLHBAAAAAAJAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAKLHBAAAAAAKAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAALLHBAAAAAALAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAMLHBAAAAAAIAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAANLHBAAAAAABCDAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAOLHBAAAAAANAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAPLHBAAAAAAMAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAANHBAAAAAADAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAABNHBAAAAAAGAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAACNHBAAAACAKKAAAAAAAAAADHHMLHLPEKIIOMOEJLGLBHJIBGLAHAFDBAAAAAAADAAAAAAAFAAAAAAADEPGCHFGAAENHBAAAAAADAAAAAAAKBDLFIMBFCNFHJBEGJFDMJNFCMOIPKHNAAAAAAAAPPPPPPPPAAAAAAAA5940250356142True5941950356645868196-21474836480780FalseFalse4000001423014230314606144014946CUdeCustomToolBarTools0ToolsDNHBAAAACAEGAAAAAAAAAAGEAOMHHDMDCIFAKEIIICDBCMNFEDNFHHBAAAAAAAGAAAAAAAFAAAAAAADEPGCHFGAAHNHBAAAAAABOAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAA911015True594221512521554-214748364803889FalseFalse1000000300180125115030018006144014948CTabWndControlBarTab Window Bar 00-1FalseUDEDesktop Standard BarsTab Window Bar 0UDEDesktop0015019100False00True000004-214748364803889FalseFalse100000030018030018015018006144014948CUdeProjectWspBarProject Workspace Bar0-1FalseUDEDesktop Standard BarsProject Workspace BarUDEDesktop0001TrueTrueFalse29.11.2012 14:44:16:141517782411WorkspaceManager11029.10.2012 12:22:48:420MgAAAA==AQAAAA==ZAAAAA==AQAAAA==lgAAAA==AQAAAA==6AMAAA==AQAAAA==139011201WorkspaceManager110000110010\\napnt002.nap.st.com\NAPPRT0001000WorkspaceManagerWorkspaceManager01Core1Target0.Controller0.CoreTarget0.Controller0.Core10220070914912848231268785NormalfalseTop1260falseBottom0000falsefalse00DockPaneltrue462falseLeft0000falsefalse00DockPaneltrue462falseLeft0000falsefalse10DockPanelfalse0falseTop0000falsefalse0-1TabbedDocumenttrue462falseLeft0000falsefalse20DockPanelfalse462falseLeft0000falsefalse30DockPanelfalsetrue606false200false200true200true100truetrue0012687400126824Platform Main Menufalsetrue32444025Views ToolbarfalsetrueUDE_0x4_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueTarget BrowserImagetrueUDE_0x15_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueDiagnostic Message ViewerImagetrueUDE_0xF_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueConsoleImagetrueUDE_0x0_{DED51A60-E0B7-11D4-9112-0001034962B6}trueCPU WindowImagetrueUDE_0x1E_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueExplore SymbolsImagetrueUDE_0xA_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueProgramImagetrueUDE_0x5C_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueSingle Program WindowImagetrueUDE_0x5A_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueDisassembly WindowImagetrueUDE_0x2D_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow Special Function RegisterImagetrueUDE_0x3C_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueLocalsImagetrueUDE_0x46_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueWatchImagetrueUDE_0xA_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueSimulated I/OImagetrueUDE_0x14_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueUDE HTMLImagetrueUDE_0x19_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueArray ChartImagetrueUDE_0x1B_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueTime Traced Signal ChartImagetrueUDE_0x50_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueIP Trace ProfilingImagetrueUDE_0x28_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueMemoryImagetrueUDE_0x46_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueCall StackImagetrue443249525Edit ToolbarfalsetrueUDE_Workspace_0x1779trueCutImagetrueUDE_Workspace_0x177AtrueCopyImagetrueUDE_Workspace_0x177BtruePasteImagetrue5382427625Macro ToolbarfalsetrueUDE_0x3B_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueRun MacroImagetrueUDE_0x40_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueDebug MacroImagetrueUDE_0x3_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueBreak MacroImagetrueUDE_0x3C_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueReload MacroImagetrueUDE_Ctrl_{4D5190CD-077D-4F92-B890-4545242BF32A}_UDEWorkspacetrueImageAndTextfalse8142421025File ToolbarfalsetrueUDE_Workspace_0x1770trueNew WorkspaceImagetrueUDE_Workspace_0x1771trueOpen workspaceImagetrueUDE_Workspace_0x1772trueSave workspace asImagetrueUDE_Workspace_0x1773trueSave workspaceImagetrueUDE_Workspace_0x1774trueClose workspaceImagetrueUDE_Workspace_0x177FtrueExport view contentImagetrueUDE_Workspace_0x1778truePrintImagetrueUDE_0x1_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueLoad ProgramImagetrue34950925Debug ToolbarfalsetrueUDE_0x18_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow IPImagetrueUDE_0x5E_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow program codeImagetrueUDE_0x7_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStart ProgramImagetrueUDE_0x9_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep OverImagetrueUDE_0xA_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep IntoImagetrueUDE_0xB_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep OutImagetrueUDE_0x8_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueRun CursorImagetrueUDE_0x321_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueBreak ProgramImagetrueUDE_0xD_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueResetImagetrueUDE_0xC_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueRestart ProgramImagetrueUDE_0x3_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueBreakpointsImagetrueUDE_0x6_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueToggle BreakImagetrueUDE_Ctrl_{FB7BC773-88A4-4ECE-B9B6-7189610B0735}_CoretrueImageAndTextfalseUDE_0x3_{1C85B31A-5D25-4197-9635-9C5DC28EAFD7}trueTrigger setupImagetrue5124914125Config ToolbarfalsetrueUDE_0x3_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueTarget ConfigurationImagetrueUDE_0xFE_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueConnect TargetImagetrueUDE_0x100_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueDisconnect TargetImagetrueUDE_0x6_{1C85B31A-5D25-4197-9635-9C5DC28EAFD7}trueSetup Target InterfaceImagetrueUDE_0x12_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueMCU Run ControlImagetrue6534915125Tools ToolbarfalsetrueUDE_Ctrl_{377CE046-823C-4A05-8828-13C25D345D77}_CoretrueImageAndTextfalseUDE_0xE1_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueExecution Time SetupImagetrue01002625Show Toolbarfalsefalse02002625Window Toolbarfalsefalse02252625Workspace Toolbarfalsefalse02752625Help Toolbarfalsefalse076212682300126823Platform Status Barfalsetrue07406881268740688..\..\..\..\Program Files\pls\UDE 4.0\StdLibrary.mso{866f82d3-fac5-43cd-8a82-0af01e46e2c5}..\..\..\..\Documents and Settings\disiriog\My Documents\pls\UDE 4.0The script contains a collection of macros to save memory content into different file formats -and fill target memory rangesV:\UDE\AddOns\Macro\MacroLibrary\StdMacros1.dsm' -' $Header: /Ude/AddOns/Macro/MacroLibrary/StdMacros.dsm 3 30.04.04 9:34 Weisses $ -'_______________________________________________________ -' -' universal debug engine -' -' Standard command line macros - part 1 -' -' pls Development Tools 1999-2004 -' -' 28.04.04 SW correction for UDE 1.10 -' 03.06.03 SW initial version -'_______________________________________________________ - -'_______________________________________________________ -' -' UnAss command line function -' -' generates disassembly file -' -' command line UnAss output-file range1 [range2] [range3] ..... -' range description: -' C:<startaddress>,<length> or - code -' DB:<startaddress>,<length> or - data byte -' DW:<startaddress>,<length> or - data word -' DD:<startaddress>,<length> or - data dword -'_______________________________________________________ - -Sub UnAss(File,ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - If IsNumeric(File) Then - MsgBox "File parameter wrong - " & File - Exit Sub - End If - DisASMObj.OutputPath = CStr(File) - bRetVal = DisASMObj.CreateStream(True,"UDE Disassembler output of current Program",False) - If bRetVal = True Then - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - For Range = 0 To RangeCnt -1 - KindOfRange = CStr(ParameterObj.Parameter(ParamIndex)) - KindOfRange = UCase(KindOfRange) - Address = CLng(ParameterObj.Parameter(ParamIndex +1)) - Length = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - If IsNumeric(KindOfRange) Then - If KindOfRange = 12 Then - DisASMObj.AddRange Address,Length,1 - ElseIf KindOfRange = 219 Then - DisASMObj.AddRange Address,Length,2 - ElseIf KindOfRange = 221 Then - DisASMObj.AddRange Address,Length,4 - Else - MsgBox "Invalid range type " & KindOfRange & "of range " & Range +1 - Exit Sub - End If - Else - If KindOfRange = "C" Then - DisASMObj.AddRange Address,Length,1 - ElseIf KindOfRange = "DB" Then - DisASMObj.AddRange Address,Length,2 - ElseIf KindOfRange = "DW" Then - DisASMObj.AddRange Address,Length,3 - ElseIf KindOfRange = "DD" Then - DisASMObj.AddRange Address,Length,4 - Else - MsgBox "Invalid range type " & KindOfRange & "of range " & Range +1 - Exit Sub - End If - End If - Next - DisASMObj.HexFileModeFlag = False - DisASMObj.ListModeFlag = False - DisASMObj.WriteAllRanges(False) - End If - -End Sub - -'_______________________________________________________ -' -' SaveHEX command line function -' -' generates intel-HEX file -' -' command line SaveHex output-file range1 [range2] [range3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub SaveHEX(File,ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - If IsNumeric(File) Then - MsgBox "File parameter wrong - " & File - Exit Sub - End If - DisASMObj.OutputPath = CStr(File) - bRetVal = DisASMObj.CreateStream(True,"UDE generated intel-Hex file of current Program",False) - If bRetVal = True Then - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 2 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/2 - ParamIndex = 0 - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)) - ParamIndex = ParamIndex +2 - DisASMObj.AddRange Address,Length,0 - Next - DisASMObj.HexFileModeFlag = True - DisASMObj.WriteAllRanges(False) - End If - -End Sub - -'_______________________________________________________ -' -' FillByte command line function -' -' fills memory range with byte pattern -' -' command line FillByte range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillByte(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.ByteArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub - -'_______________________________________________________ -' -' FillWord command line function -' -' fills memory range with word pattern -' -' command line FillWord range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillWord(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.WordArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)/2) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub - -'_______________________________________________________ -' -' FillDWord command line function -' -' fills memory range with dword pattern -' -' command line FillDWord range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillDWord(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.DWordArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)/4) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub63VBScript24.11.2006 14:43:20:0001WS_CORE_DUOMacro_26_02_14_15_10_40_010Execute UnAss ..Macro UnAssExecute macro UnAss0210Execute SaveHEX ..Macro SaveHEXExecute macro SaveHEX0210Execute FillByte ..Macro FillByteExecute macro FillByte0110Execute FillWord ..Macro FillWordExecute macro FillWord0110Execute FillDWord ..Macro FillDWordExecute macro FillDWord0150129.11.2012 14:41:40:7537782750Target0.Controller0.Core1014.11.2012 11:38:16:7287782640Target0.Controller0.Core110105.11.2012 10:25:05:825..\main.c1,104,42,457,11360017372830Target0.Controller0.Core11024.10.2013 10:57:59:2281,-4,-1,319,1093001..\..\ChibiOS-RT_Portable_Kernel_Component\component\lib\src\chsys.c7372840Target0.Controller0.Core105.11.2012 10:35:28:1091,0,0,323,1094001..\..\..\eclipse\plugins\org.chibios.spc5.components.kernel_2.5.1.1\component\lib\src\chthreads.c05.11.2012 10:35:58:6321,0,0,323,1094001..\..\..\eclipse\plugins\org.chibios.spc5.components.kernel_2.5.1.1\component\lib\src\chsys.c105.11.2012 10:36:48:552..\..\..\eclipse\plugins\org.chibios.spc5.components.kernel_2.5.1.1\component\lib\src\chschd.c1,0,0,323,109400105.11.2012 10:37:13:303..\..\..\eclipse\plugins\org.chibios.spc5.components.kernel.port.gcc.spc560pxx_2.5.1.1\component\lib\src\chcore.c1,0,0,323,109400105.11.2012 10:38:46:323..\..\..\eclipse\plugins\org.chibios.spc5.components.hal_2.5.1.1\component\lib\src\pal.c1,0,0,323,109400123456129.11.2012 14:42:34:347AwAAAA==AQAAAA==kAAAAA==YAAAAA==TgAAAA==mgAAAA==TgAAAA==mgAAAA==TgAAAA==mgAAAA==AAAAAA==AAAAAA==AAAAAA==AAAAAA==7782520Target0.Controller0.Core1000000000000000000000000x000000000x000000000x000000000x000000000x000000000x0000000000000000000000000x00000x00000x00000x000000000x00000x00000x00000x00000x00000x000000000000000000000000000000000000000000000..\build11..\build\ch.elfSoftware;enabled;0;disabled;'main {C:\ChibiStudio\workspace\SPC5\demos\SPC560Pxx OS-Less Test Application\main.c} .25';main.c;1;0;;$disabled; ;disabled; ;1000011100verify.txt0000000001..\main.cstm_xpc560p_minimodule_40mhz_debug_jtag.cfg26.02.2014 15:10:39:999 diff --git a/demos/SPC5/RT-SPC560P-EVB/UDE/stm_xpc560p_minimodule_40mhz_debug_jtag.cfg b/demos/SPC5/RT-SPC560P-EVB/UDE/stm_xpc560p_minimodule_40mhz_debug_jtag.cfg deleted file mode 100644 index 10f1d0e30..000000000 --- a/demos/SPC5/RT-SPC560P-EVB/UDE/stm_xpc560p_minimodule_40mhz_debug_jtag.cfg +++ /dev/null @@ -1,110 +0,0 @@ -[Main] -Signature=UDE_TARGINFO_2.0 -Description=STM XPC560P Mini Module with SPC560P50, 40MHz external crystal (Jtag) -Description1=FLASH programming prepared but not enabled -Description2=Write Filter for BAM Module -MCUs=Controller0 -Architecture=PowerPC -Vendor=STM -Board=XPC560P Mini Module - -[Controller0] -Family=PowerPC -Type=SPC560P50 -Enabled=1 -IntClock=64000 -MemDevs=BAMWriteFilter -ExtClock=40000 - -[Controller0.Core] -Protocol=PPCJTAG -Enabled=1 - -[Controller0.Core.LoadedAddOn] -UDEMemtool=1 - -[Controller0.Core.PpcJtagTargIntf] -PortType=FTDI -ResetWaitTime=50 -MaxJtagClk=2500 -DoSramInit=1 -UseNexus=0 -AdaptiveJtagPhaseShift=1 -ConnOption=Break -ChangeJtagClk=-1 -HaltAfterReset=1 -SimioAddr=g_JtagSimioAccess -FreezeTimers=1 -InvalidTlbOnReset=0 -InvalidateCache=0 -ForceCacheFlush=0 -IgnoreLockedLines=0 -ExecInitCmds=1 -JtagTapNumber=0 -JtagNumOfTaps=1 -JtagNumIrBefore=0 -JtagNumIrAfter=0 - -SimioAddr=g_JtagSimioAccess - -FlushCache=0 -AllowMmuSetup=0 -UseExtReset=1 -HandleWdtBug=0 -ForceEndOfReset=0 -JtagViaPod=0 -AllowResetOnCheck=1 -CommDevSel=PortType=USB,Type=FTDI -TargetPort=Default -ChangeMsr=0 -ChangeMsrValue=0x0 -ExecOnStartCmds=0 -ExecOnHaltCmds=0 -EnableProgramTimeMeasurement=0 -UseHwResetMode=1 -HandleNexusAccessBug=0 -DoNotEnableTrapSwBrp=0 -BootPasswd0=0xFEEDFACE -BootPasswd1=0xCAFEBEEF -BootPasswd2=0xFFFFFFFF -BootPasswd3=0xFFFFFFFF -BootPasswd4=0xFFFFFFFF -BootPasswd5=0xFFFFFFFF -BootPasswd6=0xFFFFFFFF -BootPasswd7=0xFFFFFFFF -JtagIoType=Jtag -ExecOnHaltCmdsWhileHalted=0 -TimerForPTM=Default -AllowBreakOnUpdateBreakpoints=0 -ClearDebugStatusOnHalt=1 -HwResetMode=Simulate -UseMasterNexusIfResetState=1 -UseLocalAddressTranslation=1 -Use64BitNexus=0 -InitSramOnlyWhenNotInitialized=0 -DisableE2EECC=0 -AllowHarrForUpdateDebugRegs=0 -UseCore0ForNexusMemoryAccessWhileRunning=0 - - - -[Controller0.BAMWriteFilter] -Description=BAM WriteAccess Filter -Range0Start=0xFFFFC000 -Range0Size=0x4000 -Enabled=1 -Handler=AccessFilter -Mode=ReadOnly - -[Controller0.PFLASH] -Enabled=1 -EnableMemtoolByDefault=1 - -[Controller0.Core.PpcJtagTargIntf.InitScript] -// disable watchdog -SET SWT_SR 0xC520 -SET SWT_SR 0xD928 -SET SWT_CR 0xFF00000A -[Controller0.Core.PpcJtagTargIntf.OnStartScript] - -[Controller0.Core.PpcJtagTargIntf.OnHaltScript] diff --git a/demos/SPC5/RT-SPC560P-EVB/chconf.h b/demos/SPC5/RT-SPC560P-EVB/chconf.h deleted file mode 100644 index f6244ad4b..000000000 --- a/demos/SPC5/RT-SPC560P-EVB/chconf.h +++ /dev/null @@ -1,499 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file templates/chconf.h - * @brief Configuration file template. - * @details A copy of this file must be placed in each project directory, it - * contains the application specific kernel settings. - * - * @addtogroup config - * @details Kernel related settings and hooks. - * @{ - */ - -#ifndef _CHCONF_H_ -#define _CHCONF_H_ - -/*===========================================================================*/ -/** - * @name System timers settings - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System time counter resolution. - * @note Allowed values are 16 or 32 bits. - */ -#define CH_CFG_ST_RESOLUTION 32 - -/** - * @brief System tick frequency. - * @details Frequency of the system timer that drives the system ticks. This - * setting also defines the system tick time unit. - */ -#define CH_CFG_ST_FREQUENCY 1000 - -/** - * @brief Time delta constant for the tick-less mode. - * @note If this value is zero then the system uses the classic - * periodic tick. This value represents the minimum number - * of ticks that is safe to specify in a timeout directive. - * The value one is not valid, timeouts are rounded up to - * this value. - */ -#define CH_CFG_ST_TIMEDELTA 0 - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel parameters and options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Round robin interval. - * @details This constant is the number of system ticks allowed for the - * threads before preemption occurs. Setting this value to zero - * disables the preemption for threads with equal priority and the - * round robin becomes cooperative. Note that higher priority - * threads can still preempt, the kernel is always preemptive. - * @note Disabling the round robin preemption makes the kernel more compact - * and generally faster. - * @note The round robin preemption is not supported in tickless mode and - * must be set to zero in that case. - */ -#define CH_CFG_TIME_QUANTUM 0 - -/** - * @brief Managed RAM size. - * @details Size of the RAM area to be managed by the OS. If set to zero - * then the whole available RAM is used. The core memory is made - * available to the heap allocator and/or can be used directly through - * the simplified core memory allocator. - * - * @note In order to let the OS manage the whole RAM the linker script must - * provide the @p __heap_base__ and @p __heap_end__ symbols. - * @note Requires @p CH_CFG_USE_MEMCORE. - */ -#define CH_CFG_MEMCORE_SIZE 0 - -/** - * @brief Idle thread automatic spawn suppression. - * @details When this option is activated the function @p chSysInit() - * does not spawn the idle thread. The application @p main() - * function becomes the idle thread and must implement an - * infinite loop. - */ -#define CH_CFG_NO_IDLE_THREAD FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Performance options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief OS optimization. - * @details If enabled then time efficient rather than space efficient code - * is used when two possible implementations exist. - * - * @note This is not related to the compiler optimization options. - * @note The default is @p TRUE. - */ -#define CH_CFG_OPTIMIZE_SPEED TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Subsystem options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Time Measurement APIs. - * @details If enabled then the time measurement APIs are included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_TM FALSE - -/** - * @brief Threads registry APIs. - * @details If enabled then the registry APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_REGISTRY TRUE - -/** - * @brief Threads synchronization APIs. - * @details If enabled then the @p chThdWait() function is included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_WAITEXIT TRUE - -/** - * @brief Semaphores APIs. - * @details If enabled then the Semaphores APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_SEMAPHORES TRUE - -/** - * @brief Semaphores queuing mode. - * @details If enabled then the threads are enqueued on semaphores by - * priority rather than in FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE - -/** - * @brief Mutexes APIs. - * @details If enabled then the mutexes APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MUTEXES TRUE - -/** - * @brief Enables recursive behavior on mutexes. - * @note Recursive mutexes are heavier and have an increased - * memory footprint. - * - * @note The default is @p FALSE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_MUTEXES_RECURSIVE FALSE - -/** - * @brief Conditional Variables APIs. - * @details If enabled then the conditional variables APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_CONDVARS TRUE - -/** - * @brief Conditional Variables APIs with timeout. - * @details If enabled then the conditional variables APIs with timeout - * specification are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_CONDVARS. - */ -#define CH_CFG_USE_CONDVARS_TIMEOUT TRUE - -/** - * @brief Events Flags APIs. - * @details If enabled then the event flags APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_EVENTS TRUE - -/** - * @brief Events Flags APIs with timeout. - * @details If enabled then the events APIs with timeout specification - * are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_EVENTS. - */ -#define CH_CFG_USE_EVENTS_TIMEOUT TRUE - -/** - * @brief Synchronous Messages APIs. - * @details If enabled then the synchronous messages APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MESSAGES TRUE - -/** - * @brief Synchronous Messages queuing mode. - * @details If enabled then messages are served by priority rather than in - * FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_MESSAGES. - */ -#define CH_CFG_USE_MESSAGES_PRIORITY FALSE - -/** - * @brief Mailboxes APIs. - * @details If enabled then the asynchronous messages (mailboxes) APIs are - * included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_MAILBOXES TRUE - -/** - * @brief I/O Queues APIs. - * @details If enabled then the I/O queues APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_QUEUES TRUE - -/** - * @brief Core Memory Manager APIs. - * @details If enabled then the core memory manager APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMCORE TRUE - -/** - * @brief Heap Allocator APIs. - * @details If enabled then the memory heap allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or - * @p CH_CFG_USE_SEMAPHORES. - * @note Mutexes are recommended. - */ -#define CH_CFG_USE_HEAP TRUE - -/** - * @brief Memory Pools Allocator APIs. - * @details If enabled then the memory pools allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMPOOLS TRUE - -/** - * @brief Dynamic Threads APIs. - * @details If enabled then the dynamic threads creation APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_WAITEXIT. - * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS. - */ -#define CH_CFG_USE_DYNAMIC TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Debug options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Debug option, kernel statistics. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_STATISTICS FALSE - -/** - * @brief Debug option, system state check. - * @details If enabled the correct call protocol for system APIs is checked - * at runtime. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_SYSTEM_STATE_CHECK FALSE - -/** - * @brief Debug option, parameters checks. - * @details If enabled then the checks on the API functions input - * parameters are activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_CHECKS FALSE - -/** - * @brief Debug option, consistency checks. - * @details If enabled then all the assertions in the kernel code are - * activated. This includes consistency checks inside the kernel, - * runtime anomalies and port-defined checks. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_ASSERTS FALSE - -/** - * @brief Debug option, trace buffer. - * @details If enabled then the context switch circular trace buffer is - * activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_TRACE FALSE - -/** - * @brief Debug option, stack checks. - * @details If enabled then a runtime stack check is performed. - * - * @note The default is @p FALSE. - * @note The stack check is performed in a architecture/port dependent way. - * It may not be implemented or some ports. - * @note The default failure mode is to halt the system with the global - * @p panic_msg variable set to @p NULL. - */ -#define CH_DBG_ENABLE_STACK_CHECK FALSE - -/** - * @brief Debug option, stacks initialization. - * @details If enabled then the threads working area is filled with a byte - * value when a thread is created. This can be useful for the - * runtime measurement of the used stack. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_FILL_THREADS FALSE - -/** - * @brief Debug option, threads profiling. - * @details If enabled then a field is added to the @p thread_t structure that - * counts the system ticks occurred while executing the thread. - * - * @note The default is @p FALSE. - * @note This debug option is not currently compatible with the - * tickless mode. - */ -#define CH_DBG_THREADS_PROFILING FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel hooks - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Threads descriptor structure extension. - * @details User fields added to the end of the @p thread_t structure. - */ -#define CH_CFG_THREAD_EXTRA_FIELDS \ - /* Add threads custom fields here.*/ - -/** - * @brief Threads initialization hook. - * @details User initialization code added to the @p chThdInit() API. - * - * @note It is invoked from within @p chThdInit() and implicitly from all - * the threads creation APIs. - */ -#define CH_CFG_THREAD_INIT_HOOK(tp) { \ - /* Add threads initialization code here.*/ \ -} - -/** - * @brief Threads finalization hook. - * @details User finalization code added to the @p chThdExit() API. - * - * @note It is inserted into lock zone. - * @note It is also invoked when the threads simply return in order to - * terminate. - */ -#define CH_CFG_THREAD_EXIT_HOOK(tp) { \ - /* Add threads finalization code here.*/ \ -} - -/** - * @brief Context switch hook. - * @details This hook is invoked just before switching between threads. - */ -#define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) { \ - /* Context switch code here.*/ \ -} - -/** - * @brief Idle thread enter hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to activate a power saving mode. - */ -#define CH_CFG_IDLE_ENTER_HOOK() { \ -} - -/** - * @brief Idle thread leave hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to deactivate a power saving mode. - */ -#define CH_CFG_IDLE_LEAVE_HOOK() { \ -} - -/** - * @brief Idle Loop hook. - * @details This hook is continuously invoked by the idle thread loop. - */ -#define CH_CFG_IDLE_LOOP_HOOK() { \ - /* Idle loop code here.*/ \ -} - -/** - * @brief System tick event hook. - * @details This hook is invoked in the system tick handler immediately - * after processing the virtual timers queue. - */ -#define CH_CFG_SYSTEM_TICK_HOOK() { \ - /* System tick event code here.*/ \ -} - -/** - * @brief System halt hook. - * @details This hook is invoked in case to a system halting error before - * the system is halted. - */ -#define CH_CFG_SYSTEM_HALT_HOOK(reason) { \ - /* System halt code here.*/ \ -} - -/** @} */ - -/*===========================================================================*/ -/* Port-specific settings (override port settings defaulted in chcore.h). */ -/*===========================================================================*/ - -#endif /* _CHCONF_H_ */ - -/** @} */ diff --git a/demos/SPC5/RT-SPC560P-EVB/halconf.h b/demos/SPC5/RT-SPC560P-EVB/halconf.h deleted file mode 100644 index 682795338..000000000 --- a/demos/SPC5/RT-SPC560P-EVB/halconf.h +++ /dev/null @@ -1,388 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file templates/halconf.h - * @brief HAL configuration header. - * @details HAL configuration file, this file allows to enable or disable the - * various device drivers from your application. You may also use - * this file in order to override the device drivers default settings. - * - * @addtogroup HAL_CONF - * @{ - */ - -#ifndef _HALCONF_H_ -#define _HALCONF_H_ - -#include "mcuconf.h" - -/** - * @brief Enables the TM subsystem. - */ -#if !defined(HAL_USE_TM) || defined(__DOXYGEN__) -#define HAL_USE_TM FALSE -#endif - -/** - * @brief Enables the PAL subsystem. - */ -#if !defined(HAL_USE_PAL) || defined(__DOXYGEN__) -#define HAL_USE_PAL TRUE -#endif - -/** - * @brief Enables the ADC subsystem. - */ -#if !defined(HAL_USE_ADC) || defined(__DOXYGEN__) -#define HAL_USE_ADC FALSE -#endif - -/** - * @brief Enables the CAN subsystem. - */ -#if !defined(HAL_USE_CAN) || defined(__DOXYGEN__) -#define HAL_USE_CAN FALSE -#endif - -/** - * @brief Enables the DAC subsystem. - */ -#if !defined(HAL_USE_DAC) || defined(__DOXYGEN__) -#define HAL_USE_DAC FALSE -#endif - -/** - * @brief Enables the EXT subsystem. - */ -#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) -#define HAL_USE_EXT FALSE -#endif - -/** - * @brief Enables the GPT subsystem. - */ -#if !defined(HAL_USE_GPT) || defined(__DOXYGEN__) -#define HAL_USE_GPT FALSE -#endif - -/** - * @brief Enables the I2C subsystem. - */ -#if !defined(HAL_USE_I2C) || defined(__DOXYGEN__) -#define HAL_USE_I2C FALSE -#endif - -/** - * @brief Enables the I2S subsystem. - */ -#if !defined(HAL_USE_I2S) || defined(__DOXYGEN__) -#define HAL_USE_I2S FALSE -#endif - -/** - * @brief Enables the ICU subsystem. - */ -#if !defined(HAL_USE_ICU) || defined(__DOXYGEN__) -#define HAL_USE_ICU FALSE -#endif - -/** - * @brief Enables the MAC subsystem. - */ -#if !defined(HAL_USE_MAC) || defined(__DOXYGEN__) -#define HAL_USE_MAC FALSE -#endif - -/** - * @brief Enables the MMC_SPI subsystem. - */ -#if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__) -#define HAL_USE_MMC_SPI FALSE -#endif - -/** - * @brief Enables the PWM subsystem. - */ -#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__) -#define HAL_USE_PWM FALSE -#endif - -/** - * @brief Enables the RTC subsystem. - */ -#if !defined(HAL_USE_RTC) || defined(__DOXYGEN__) -#define HAL_USE_RTC FALSE -#endif - -/** - * @brief Enables the SDC subsystem. - */ -#if !defined(HAL_USE_SDC) || defined(__DOXYGEN__) -#define HAL_USE_SDC FALSE -#endif - -/** - * @brief Enables the SERIAL subsystem. - */ -#if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__) -#define HAL_USE_SERIAL TRUE -#endif - -/** - * @brief Enables the SERIAL over USB subsystem. - */ -#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__) -#define HAL_USE_SERIAL_USB FALSE -#endif - -/** - * @brief Enables the SPI subsystem. - */ -#if !defined(HAL_USE_SPI) || defined(__DOXYGEN__) -#define HAL_USE_SPI FALSE -#endif - -/** - * @brief Enables the UART subsystem. - */ -#if !defined(HAL_USE_UART) || defined(__DOXYGEN__) -#define HAL_USE_UART FALSE -#endif - -/** - * @brief Enables the USB subsystem. - */ -#if !defined(HAL_USE_USB) || defined(__DOXYGEN__) -#define HAL_USE_USB FALSE -#endif - -/** - * @brief Enables the WDG subsystem. - */ -#if !defined(HAL_USE_WDG) || defined(__DOXYGEN__) -#define HAL_USE_WDG FALSE -#endif - -/*===========================================================================*/ -/* ADC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__) -#define ADC_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define ADC_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* CAN driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Sleep mode related APIs inclusion switch. - */ -#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__) -#define CAN_USE_SLEEP_MODE TRUE -#endif - -/*===========================================================================*/ -/* I2C driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables the mutual exclusion APIs on the I2C bus. - */ -#if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define I2C_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* MAC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables an event sources for incoming packets. - */ -#if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__) -#define MAC_USE_ZERO_COPY FALSE -#endif - -/** - * @brief Enables an event sources for incoming packets. - */ -#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__) -#define MAC_USE_EVENTS TRUE -#endif - -/*===========================================================================*/ -/* MMC_SPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Delays insertions. - * @details If enabled this options inserts delays into the MMC waiting - * routines releasing some extra CPU time for the threads with - * lower priority, this may slow down the driver a bit however. - * This option is recommended also if the SPI driver does not - * use a DMA channel and heavily loads the CPU. - */ -#if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__) -#define MMC_NICE_WAITING TRUE -#endif - -/*===========================================================================*/ -/* SDC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Number of initialization attempts before rejecting the card. - * @note Attempts are performed at 10mS intervals. - */ -#if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__) -#define SDC_INIT_RETRY 100 -#endif - -/** - * @brief Include support for MMC cards. - * @note MMC support is not yet implemented so this option must be kept - * at @p FALSE. - */ -#if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__) -#define SDC_MMC_SUPPORT FALSE -#endif - -/** - * @brief Delays insertions. - * @details If enabled this options inserts delays into the MMC waiting - * routines releasing some extra CPU time for the threads with - * lower priority, this may slow down the driver a bit however. - */ -#if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__) -#define SDC_NICE_WAITING TRUE -#endif - -/*===========================================================================*/ -/* SERIAL driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Default bit rate. - * @details Configuration parameter, this is the baud rate selected for the - * default configuration. - */ -#if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__) -#define SERIAL_DEFAULT_BITRATE 38400 -#endif - -/** - * @brief Serial buffers size. - * @details Configuration parameter, you can change the depth of the queue - * buffers depending on the requirements of your application. - * @note The default is 16 bytes for both the transmission and receive - * buffers. - */ -#if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__) -#define SERIAL_BUFFERS_SIZE 16 -#endif - -/*===========================================================================*/ -/* SERIAL_USB driver related setting. */ -/*===========================================================================*/ - -/** - * @brief Serial over USB buffers size. - * @details Configuration parameter, the buffer size must be a multiple of - * the USB data endpoint maximum packet size. - * @note The default is 256 bytes for both the transmission and receive - * buffers. - */ -#if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__) -#define SERIAL_USB_BUFFERS_SIZE 256 -#endif - -/** - * @brief Serial over USB number of buffers. - * @note The default is 2 buffers. - */ -#if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__) -#define SERIAL_USB_BUFFERS_NUMBER 2 -#endif - -/*===========================================================================*/ -/* SPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__) -#define SPI_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define SPI_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* UART driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__) -#define UART_USE_WAIT FALSE -#endif - -/** - * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define UART_USE_MUTUAL_EXCLUSION FALSE -#endif - -/*===========================================================================*/ -/* USB driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(USB_USE_WAIT) || defined(__DOXYGEN__) -#define USB_USE_WAIT FALSE -#endif - -#endif /* _HALCONF_H_ */ - -/** @} */ diff --git a/demos/SPC5/RT-SPC560P-EVB/main.c b/demos/SPC5/RT-SPC560P-EVB/main.c deleted file mode 100644 index 1806961b2..000000000 --- a/demos/SPC5/RT-SPC560P-EVB/main.c +++ /dev/null @@ -1,202 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#include "ch.h" -#include "hal.h" -#include "test.h" -#include "shell.h" -#include "chprintf.h" - -#define SHELL_WA_SIZE THD_WORKING_AREA_SIZE(1024) -#define TEST_WA_SIZE THD_WORKING_AREA_SIZE(256) - -static void cmd_mem(BaseSequentialStream *chp, int argc, char *argv[]) { - size_t n, size; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: mem\r\n"); - return; - } - n = chHeapStatus(NULL, &size); - chprintf(chp, "core free memory : %u bytes\r\n", chCoreGetStatusX()); - chprintf(chp, "heap fragments : %u\r\n", n); - chprintf(chp, "heap free total : %u bytes\r\n", size); -} - -static void cmd_threads(BaseSequentialStream *chp, int argc, char *argv[]) { - static const char *states[] = {CH_STATE_NAMES}; - thread_t *tp; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: threads\r\n"); - return; - } - chprintf(chp, " addr stack prio refs state time\r\n"); - tp = chRegFirstThread(); - do { - chprintf(chp, "%08lx %08lx %4lu %4lu %9s\r\n", - (uint32_t)tp, (uint32_t)tp->p_ctx.sp, - (uint32_t)tp->p_prio, (uint32_t)(tp->p_refs - 1), - states[tp->p_state]); - tp = chRegNextThread(tp); - } while (tp != NULL); -} - -static void cmd_test(BaseSequentialStream *chp, int argc, char *argv[]) { - thread_t *tp; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: test\r\n"); - return; - } - tp = chThdCreateFromHeap(NULL, TEST_WA_SIZE, chThdGetPriorityX(), - TestThread, chp); - if (tp == NULL) { - chprintf(chp, "out of memory\r\n"); - return; - } - chThdWait(tp); -} - -static const ShellCommand commands[] = { - {"mem", cmd_mem}, - {"threads", cmd_threads}, - {"test", cmd_test}, - {NULL, NULL} -}; - -static const ShellConfig shell_cfg1 = { - (BaseSequentialStream *)&SD1, - commands -}; - -/* - * LEDs blinker thread, times are in milliseconds. - */ -static THD_WORKING_AREA(waThread1, 128); -static THD_FUNCTION(Thread1, arg) { - - (void)arg; - chRegSetThreadName("blinker"); - - while (true) { - unsigned i; - - for (i = 0; i < 4; i++) { - palClearPad(PORT_D, PD_LED1); - chThdSleepMilliseconds(100); - palClearPad(PORT_D, PD_LED2); - chThdSleepMilliseconds(100); - palClearPad(PORT_D, PD_LED3); - chThdSleepMilliseconds(100); - palClearPad(PORT_D, PD_LED4); - chThdSleepMilliseconds(100); - palSetPad(PORT_D, PD_LED1); - chThdSleepMilliseconds(100); - palSetPad(PORT_D, PD_LED2); - chThdSleepMilliseconds(100); - palSetPad(PORT_D, PD_LED3); - chThdSleepMilliseconds(100); - palSetPad(PORT_D, PD_LED4); - chThdSleepMilliseconds(300); - } - - for (i = 0; i < 4; i++) { - palTogglePort(PORT_D, PAL_PORT_BIT(PD_LED1) | PAL_PORT_BIT(PD_LED2) | - PAL_PORT_BIT(PD_LED3) | PAL_PORT_BIT(PD_LED4)); - chThdSleepMilliseconds(500); - palTogglePort(PORT_D, PAL_PORT_BIT(PD_LED1) | PAL_PORT_BIT(PD_LED2) | - PAL_PORT_BIT(PD_LED3) | PAL_PORT_BIT(PD_LED4)); - chThdSleepMilliseconds(500); - } - - for (i = 0; i < 4; i++) { - palTogglePad(PORT_D, PD_LED1); - chThdSleepMilliseconds(250); - palTogglePad(PORT_D, PD_LED1); - palTogglePad(PORT_D, PD_LED2); - chThdSleepMilliseconds(250); - palTogglePad(PORT_D, PD_LED2); - palTogglePad(PORT_D, PD_LED3); - chThdSleepMilliseconds(250); - palTogglePad(PORT_D, PD_LED3); - palTogglePad(PORT_D, PD_LED4); - chThdSleepMilliseconds(250); - palTogglePad(PORT_D, PD_LED4); - } - - for (i = 0; i < 4; i++) { - palClearPort(PORT_D, PAL_PORT_BIT(PD_LED1) | PAL_PORT_BIT(PD_LED3)); - palSetPort(PORT_D, PAL_PORT_BIT(PD_LED2) | PAL_PORT_BIT(PD_LED4)); - chThdSleepMilliseconds(500); - palClearPort(PORT_D, PAL_PORT_BIT(PD_LED2) | PAL_PORT_BIT(PD_LED4)); - palSetPort(PORT_D, PAL_PORT_BIT(PD_LED1) | PAL_PORT_BIT(PD_LED3)); - chThdSleepMilliseconds(500); - } - - palSetPort(PORT_D, PAL_PORT_BIT(PD_LED1) | PAL_PORT_BIT(PD_LED2) | - PAL_PORT_BIT(PD_LED3) | PAL_PORT_BIT(PD_LED4)); - } -} - -/* - * Application entry point. - */ -int main(void) { - thread_t *shelltp = NULL; - - /* - * System initializations. - * - HAL initialization, this also initializes the configured device drivers - * and performs the board-specific initializations. - * - Kernel initialization, the main() function becomes a thread and the - * RTOS is active. - */ - halInit(); - chSysInit(); - - /* - * Shell manager initialization. - */ - shellInit(); - - /* - * Activates the serial driver 1 using the driver default configuration. - */ - sdStart(&SD1, NULL); - - /* - * Creates the blinker thread. - */ - chThdCreateStatic(waThread1, sizeof(waThread1), NORMALPRIO, Thread1, NULL); - - /* - * Normal main() thread activity. - */ - while (true) { - if (!shelltp) - shelltp = shellCreate(&shell_cfg1, SHELL_WA_SIZE, NORMALPRIO); - else if (chThdTerminatedX(shelltp)) { - chThdRelease(shelltp); /* Recovers memory of the previous shell. */ - shelltp = NULL; /* Triggers spawning of a new shell. */ - } - chThdSleepMilliseconds(1000); - } - return 0; -} diff --git a/demos/SPC5/RT-SPC560P-EVB/mcuconf.h b/demos/SPC5/RT-SPC560P-EVB/mcuconf.h deleted file mode 100644 index 6ec56ad71..000000000 --- a/demos/SPC5/RT-SPC560P-EVB/mcuconf.h +++ /dev/null @@ -1,194 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#ifndef _MCUCONF_H_ -#define _MCUCONF_H_ - -/* - * SPC560Pxx drivers configuration. - * The following settings override the default settings present in - * the various device driver implementation headers. - * Note that the settings for each driver only have effect if the whole - * driver is enabled in halconf.h. - * - * IRQ priorities: - * 1...15 Lowest...Highest. - * DMA priorities: - * 0...15 Highest...Lowest. - */ - -#define SPC560Pxx_MCUCONF - -/* - * HAL driver system settings. - */ -#define SPC5_NO_INIT FALSE -#define SPC5_ALLOW_OVERCLOCK FALSE -#define SPC5_DISABLE_WATCHDOG TRUE -#define SPC5_FMPLL0_IDF_VALUE 5 -#define SPC5_FMPLL0_NDIV_VALUE 32 -#define SPC5_FMPLL0_ODF SPC5_FMPLL_ODF_DIV4 -#define SPC5_FMPLL1_IDF_VALUE 5 -#define SPC5_FMPLL1_NDIV_VALUE 60 -#define SPC5_FMPLL1_ODF SPC5_FMPLL_ODF_DIV4 -#define SPC5_AUX0CLK_SRC SPC5_CGM_SS_FMPLL0 -#define SPC5_MCONTROL_DIVIDER_VALUE 2 -#define SPC5_FMPLL1_CLK_DIVIDER_VALUE 2 -#define SPC5_AUX2CLK_SRC SPC5_CGM_SS_FMPLL0 -#define SPC5_SP_CLK_DIVIDER_VALUE 2 -#define SPC5_AUX3CLK_SRC SPC5_CGM_SS_FMPLL0 -#define SPC5_FR_CLK_DIVIDER_VALUE 2 -#define SPC5_CLOCK_FAILURE_HOOK() osalSysHalt("clock failure") - -/* - * EDMA driver settings. - */ -#define SPC5_EDMA_CR_SETTING (EDMA_CR_GRP1PRI(1) | \ - EDMA_CR_GRP0PRI(0) | \ - EDMA_CR_EMLM | \ - EDMA_CR_ERGA) -#define SPC5_EDMA_GROUP0_PRIORITIES 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 -#define SPC5_EDMA_ERROR_IRQ_PRIO 12 -#define SPC5_EDMA_ERROR_HANDLER() osalSysHalt("DMA failure") - -/* - * PWM driver system settings. - */ -#define SPC5_PWM_USE_SMOD0 FALSE -#define SPC5_PWM_USE_SMOD1 FALSE -#define SPC5_PWM_USE_SMOD2 FALSE -#define SPC5_PWM_USE_SMOD3 FALSE -#define SPC5_PWM_SMOD0_PRIORITY 7 -#define SPC5_PWM_SMOD1_PRIORITY 7 -#define SPC5_PWM_SMOD2_PRIORITY 7 -#define SPC5_PWM_SMOD3_PRIORITY 7 - -#define SPC5_PWM_USE_SMOD4 FALSE -#define SPC5_PWM_USE_SMOD5 FALSE -#define SPC5_PWM_USE_SMOD6 FALSE -#define SPC5_PWM_USE_SMOD7 FALSE -#define SPC5_PWM_SMOD4_PRIORITY 7 -#define SPC5_PWM_SMOD5_PRIORITY 7 -#define SPC5_PWM_SMOD6_PRIORITY 7 -#define SPC5_PWM_SMOD7_PRIORITY 7 - -/* - * ICU driver system settings. - */ -#define SPC5_ICU_USE_SMOD0 FALSE -#define SPC5_ICU_USE_SMOD1 FALSE -#define SPC5_ICU_USE_SMOD2 FALSE -#define SPC5_ICU_USE_SMOD3 FALSE -#define SPC5_ICU_USE_SMOD4 FALSE -#define SPC5_ICU_USE_SMOD5 FALSE -#define SPC5_ICU_ETIMER0_PRIORITY 7 - -#define SPC5_ICU_USE_SMOD6 FALSE -#define SPC5_ICU_USE_SMOD7 FALSE -#define SPC5_ICU_USE_SMOD8 FALSE -#define SPC5_ICU_USE_SMOD9 FALSE -#define SPC5_ICU_USE_SMOD10 FALSE -#define SPC5_ICU_USE_SMOD11 FALSE -#define SPC5_ICU_ETIMER1_PRIORITY 7 - -/* - * SERIAL driver system settings. - */ -#define SPC5_SERIAL_USE_LINFLEX0 TRUE -#define SPC5_SERIAL_USE_LINFLEX1 FALSE -#define SPC5_SERIAL_LINFLEX0_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX1_PRIORITY 8 - -/* - * SPI driver system settings. - */ -#define SPC5_SPI_USE_DSPI0 FALSE -#define SPC5_SPI_USE_DSPI1 FALSE -#define SPC5_SPI_USE_DSPI2 FALSE -#define SPC5_SPI_USE_DSPI3 FALSE -#define SPC5_SPI_USE_DSPI4 FALSE -#define SPC5_SPI_DMA_MODE SPC5_SPI_DMA_RX_ONLY -#define SPC5_SPI_DSPI0_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3 | SPC5_MCR_PCSIS4 | SPC5_MCR_PCSIS5 | SPC5_MCR_PCSIS6 | SPC5_MCR_PCSIS7) -#define SPC5_SPI_DSPI1_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3 | SPC5_MCR_PCSIS4 | SPC5_MCR_PCSIS5 | SPC5_MCR_PCSIS6 | SPC5_MCR_PCSIS7) -#define SPC5_SPI_DSPI2_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3) -#define SPC5_SPI_DSPI3_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3) -#define SPC5_SPI_DSPI4_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3) -#define SPC5_SPI_DSPI0_TX1_DMA_CH_ID 4 -#define SPC5_SPI_DSPI0_TX2_DMA_CH_ID 5 -#define SPC5_SPI_DSPI0_RX_DMA_CH_ID 6 -#define SPC5_SPI_DSPI1_TX1_DMA_CH_ID 7 -#define SPC5_SPI_DSPI1_TX2_DMA_CH_ID 8 -#define SPC5_SPI_DSPI1_RX_DMA_CH_ID 9 -#define SPC5_SPI_DSPI2_TX1_DMA_CH_ID 10 -#define SPC5_SPI_DSPI2_TX2_DMA_CH_ID 11 -#define SPC5_SPI_DSPI2_RX_DMA_CH_ID 12 -#define SPC5_SPI_DSPI3_TX1_DMA_CH_ID 13 -#define SPC5_SPI_DSPI3_TX2_DMA_CH_ID 14 -#define SPC5_SPI_DSPI3_RX_DMA_CH_ID 15 -#define SPC5_SPI_DSPI4_TX1_DMA_CH_ID 1 -#define SPC5_SPI_DSPI4_TX2_DMA_CH_ID 2 -#define SPC5_SPI_DSPI4_RX_DMA_CH_ID 3 -#define SPC5_SPI_DSPI0_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI1_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI2_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI3_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI4_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI0_IRQ_PRIO 10 -#define SPC5_SPI_DSPI1_IRQ_PRIO 10 -#define SPC5_SPI_DSPI2_IRQ_PRIO 10 -#define SPC5_SPI_DSPI3_IRQ_PRIO 10 -#define SPC5_SPI_DSPI4_IRQ_PRIO 10 -#define SPC5_SPI_DMA_ERROR_HOOK(spip) osalSysHalt("DSPI DMA failure") - -/* - * CAN driver system settings. - */ -#define SPC5_CAN_USE_FILTERS FALSE - -#define SPC5_CAN_USE_FLEXCAN0 FALSE -#define SPC5_CAN_FLEXCAN0_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN0_PRIORITY 12 -#define SPC5_CAN_FLEXCAN0_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_CAN_FLEXCAN0_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -/* -* ADC driver system settings. -*/ -#define SPC5_ADC_USE_ADC0 FALSE -#define SPC5_ADC_ADC0_CLK_FREQUENCY HALF_PERIPHERAL_SET_CLOCK_FREQUENCY -#define SPC5_ADC_ADC0_AUTO_CLOCK_OFF FALSE -#define SPC5_ADC_ADC0_WD_PRIORITY 12 -#define SPC5_ADC_ADC0_DMA_CH_ID 1 -#define SPC5_ADC_ADC0_DMA_IRQ_PRIO 12 -#define SPC5_ADC_ADC0_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_ADC_ADC0_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_ADC_USE_ADC1 FALSE -#define SPC5_ADC_ADC1_CLK_FREQUENCY HALF_PERIPHERAL_SET_CLOCK_FREQUENCY -#define SPC5_ADC_ADC1_AUTO_CLOCK_OFF FALSE -#define SPC5_ADC_ADC1_WD_PRIORITY 12 -#define SPC5_ADC_ADC1_DMA_CH_ID 2 -#define SPC5_ADC_ADC1_DMA_IRQ_PRIO 12 -#define SPC5_ADC_ADC1_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_ADC_ADC1_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#endif /* _MCUCONF_H_ */ diff --git a/demos/SPC5/RT-SPC563M-EVB/.cproject b/demos/SPC5/RT-SPC563M-EVB/.cproject deleted file mode 100644 index 2df050d03..000000000 --- a/demos/SPC5/RT-SPC563M-EVB/.cproject +++ /dev/null @@ -1,57 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/SPC5/RT-SPC563M-EVB/.project b/demos/SPC5/RT-SPC563M-EVB/.project deleted file mode 100644 index ef469a7ef..000000000 --- a/demos/SPC5/RT-SPC563M-EVB/.project +++ /dev/null @@ -1,43 +0,0 @@ - - - RT-SPC563M-EVB - - - - - - org.eclipse.cdt.managedbuilder.core.genmakebuilder - clean,full,incremental, - - - - - org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder - full,incremental, - - - - - - org.eclipse.cdt.core.cnature - org.eclipse.cdt.managedbuilder.core.managedBuildNature - org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - - - - board - 2 - CHIBIOS/os/hal/boards/ST_EVB_SPC563M - - - os - 2 - CHIBIOS/os - - - test - 2 - CHIBIOS/test - - - diff --git a/demos/SPC5/RT-SPC563M-EVB/Makefile b/demos/SPC5/RT-SPC563M-EVB/Makefile deleted file mode 100644 index a83b1fd89..000000000 --- a/demos/SPC5/RT-SPC563M-EVB/Makefile +++ /dev/null @@ -1,188 +0,0 @@ -############################################################################## -# Build global options -# NOTE: Can be overridden externally. -# - -# Compiler options here. -ifeq ($(USE_OPT),) - USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16 -endif - -# C specific options here (added to USE_OPT). -ifeq ($(USE_COPT),) - USE_COPT = -endif - -# C++ specific options here (added to USE_OPT). -ifeq ($(USE_CPPOPT),) - USE_CPPOPT = -fno-rtti -endif - -# Enable this if you want the linker to remove unused code and data. -ifeq ($(USE_LINK_GC),) - USE_LINK_GC = yes -endif - -# Linker extra options here. -ifeq ($(USE_LDOPT),) - USE_LDOPT = -endif - -# Enable this if you want link time optimizations (LTO) -ifeq ($(USE_LTO),) - USE_LTO = no -endif - -# If enabled, this option allows to compile the application in VLE mode. -ifeq ($(USE_VLE),) - USE_VLE = yes -endif - -# Enable this if you want to see the full log while compiling. -ifeq ($(USE_VERBOSE_COMPILE),) - USE_VERBOSE_COMPILE = no -endif - -# If enabled, this option makes the build process faster by not compiling -# modules not used in the current configuration. -ifeq ($(USE_SMART_BUILD),) - USE_SMART_BUILD = yes -endif - -# -# Build global options -############################################################################## - -############################################################################## -# Architecture or project specific options -# - -# Stack size to be allocated to the process stack. This stack is -# the stack used by the main() thread. -ifeq ($(USE_PROCESS_STACKSIZE),) - USE_PROCESS_STACKSIZE = 0x400 -endif - -# Stack size to the allocated to the optional exceptions stack. This -# stack is used for processing interrupts and exceptions. -ifeq ($(USE_EXCEPTIONS_STACKSIZE),) - USE_EXCEPTIONS_STACKSIZE = 0 -endif - -# -# Architecture or project specific options -############################################################################## - -############################################################################## -# Project, sources and paths -# - -# Define project name here -PROJECT = ch - -# Imported source files and paths -CHIBIOS = ../../.. -# Startup files. -include $(CHIBIOS)/os/common/ports/e200/compilers/GCC/mk/startup_spc563mxx.mk -# HAL-OSAL files (optional). -include $(CHIBIOS)/os/hal/hal.mk -include $(CHIBIOS)/os/hal/boards/ST_EVB_SPC563M/board.mk -include $(CHIBIOS)/os/hal/ports/SPC5/SPC563Mxx/platform.mk -include $(CHIBIOS)/os/hal/osal/rt/osal.mk -# RTOS files (optional). -include $(CHIBIOS)/os/rt/rt.mk -include $(CHIBIOS)/os/rt/ports/e200/compilers/GCC/mk/port.mk -# Other files (optional). -include $(CHIBIOS)/test/rt/test.mk - -# Define linker script file here -LDSCRIPT= $(STARTUPLD)/SPC563M64.ld - -# C sources here. -CSRC = $(STARTUPSRC) \ - $(KERNSRC) \ - $(PORTSRC) \ - $(OSALSRC) \ - $(HALSRC) \ - $(PLATFORMSRC) \ - $(BOARDSRC) \ - $(TESTSRC) \ - $(CHIBIOS)/os/hal/lib/streams/memstreams.c \ - $(CHIBIOS)/os/hal/lib/streams/chprintf.c \ - $(CHIBIOS)/os/various/shell.c \ - main.c - -# C++ sources here. -CPPSRC = - -# List ASM source files here -ASMSRC = $(STARTUPASM) $(PORTASM) $(OSALASM) - -INCDIR = $(STARTUPINC) $(KERNINC) $(PORTINC) $(OSALINC) \ - $(HALINC) $(PLATFORMINC) $(BOARDINC) $(TESTINC) \ - $(CHIBIOS)/os/hal/lib/streams $(CHIBIOS)/os/various - -# -# Project, sources and paths -############################################################################## - -############################################################################## -# Compiler settings -# - -#MCU = e500mc -meabi -msdata=none -mnew-mnemonics -mregnames -MCU = e200zx -meabi -msdata=none -mnew-mnemonics -mregnames - -#TRGT = powerpc-eabi- -TRGT = ppc-vle- -CC = $(TRGT)gcc -CPPC = $(TRGT)g++ -# Enable loading with g++ only if you need C++ runtime support. -# NOTE: You can use C++ even without C++ support if you are careful. C++ -# runtime support makes code size explode. -LD = $(TRGT)gcc -#LD = $(TRGT)g++ -CP = $(TRGT)objcopy -AS = $(TRGT)gcc -x assembler-with-cpp -AR = $(TRGT)ar -OD = $(TRGT)objdump -SZ = $(TRGT)size -HEX = $(CP) -O ihex -MOT = $(CP) -O srec -BIN = $(CP) -O binary - -# Define C warning options here -CWARN = -Wall -Wextra -Wundef -Wstrict-prototypes - -# Define C++ warning options here -CPPWARN = -Wall -Wextra -Wundef - -# -# Compiler settings -############################################################################## - -############################################################################## -# Start of user section -# - -# List all user C define here, like -D_DEBUG=1 -UDEFS = - -# Define ASM defines here -UADEFS = - -# List all user directories here -UINCDIR = - -# List the user directory to look for the libraries here -ULIBDIR = - -# List all user libraries here -ULIBS = - -# -# End of user defines -############################################################################## - -RULESPATH = $(CHIBIOS)/os/common/ports/e200/compilers/GCC -include $(RULESPATH)/rules.mk diff --git a/demos/SPC5/RT-SPC563M-EVB/UDE/debug.wsx b/demos/SPC5/RT-SPC563M-EVB/UDE/debug.wsx deleted file mode 100644 index e72102d00..000000000 --- a/demos/SPC5/RT-SPC563M-EVB/UDE/debug.wsx +++ /dev/null @@ -1,273 +0,0 @@ - - - debug.wsx000vQTv/gAAAQAXAAIA8QkPAAAABAAAAAAAPwAAAAAAAAAEAAAAAgAAAAAAAAAAAAAAAAAAAA==4.011.12.2012 15:30:10:000000WorkspaceManagerWorkspaceManager01Core1Target0.Controller0.CoreTarget0.Controller0.Core102200702314312968181280780NormalfalseTop1272falseBottom0000falsefalse00DockPaneltrue457falseLeft0000falsefalse00DockPaneltrue457falseLeft0000falsefalse20DockPanelfalse0falseTop0000falsefalse0-1TabbedDocumenttrue457falseLeft0000falsefalse30DockPanelfalse457falseLeft0000falsefalse10DockPanelfalsetrue556false200false200true200true100truetrue0012807400128024Platform Main Menufalsetrue32444025Views ToolbarfalsetrueUDE_0x4_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueTarget BrowserImagetrueUDE_0x15_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueDiagnostic Message ViewerImagetrueUDE_0xF_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueConsoleImagetrueUDE_0x0_{DED51A60-E0B7-11D4-9112-0001034962B6}trueCPU WindowImagetrueUDE_0x1E_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueExplore SymbolsImagetrueUDE_0xA_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueProgramImagetrueUDE_0x5C_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueSingle Program WindowImagetrueUDE_0x5A_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueDisassembly WindowImagetrueUDE_0x2D_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow Special Function RegisterImagetrueUDE_0x3C_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueLocalsImagetrueUDE_0x46_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueWatchImagetrueUDE_0xA_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueSimulated I/OImagetrueUDE_0x14_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueUDE HTMLImagetrueUDE_0x19_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueArray ChartImagetrueUDE_0x1B_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueTime Traced Signal ChartImagetrueUDE_0x50_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueIP Trace ProfilingImagetrueUDE_0x28_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueMemoryImagetrueUDE_0x46_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueCall StackImagetrue4432421025File ToolbarfalsetrueUDE_Workspace_0x1770trueNew WorkspaceImagetrueUDE_Workspace_0x1771trueOpen workspaceImagetrueUDE_Workspace_0x1772trueSave workspace asImagetrueUDE_Workspace_0x1773trueSave workspaceImagetrueUDE_Workspace_0x1774trueClose workspaceImagetrueUDE_Workspace_0x177FtrueExport view contentImagetrueUDE_Workspace_0x1778truePrintImagetrueUDE_0x1_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueLoad ProgramImagetrue653249525Edit ToolbarfalsetrueUDE_Workspace_0x1779trueCutImagetrueUDE_Workspace_0x177AtrueCopyImagetrueUDE_Workspace_0x177BtruePasteImagetrue7482427625Macro ToolbarfalsetrueUDE_0x3B_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueRun MacroImagetrueUDE_0x40_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueDebug MacroImagetrueUDE_0x3_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueBreak MacroImagetrueUDE_0x3C_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueReload MacroImagetrueUDE_Ctrl_{4D5190CD-077D-4F92-B890-4545242BF32A}_UDEWorkspacetrueImageAndTextfalse34950925Debug ToolbarfalsetrueUDE_0x18_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow IPImagetrueUDE_0x5E_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow program codeImagetrueUDE_0x7_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStart ProgramImagetrueUDE_0x9_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep OverImagetrueUDE_0xA_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep IntoImagetrueUDE_0xB_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep OutImagetrueUDE_0x8_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueRun CursorImagetrueUDE_0x321_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueBreak ProgramImagetrueUDE_0xD_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueResetImagetrueUDE_0xC_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueRestart ProgramImagetrueUDE_0x3_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueBreakpointsImagetrueUDE_0x6_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueToggle BreakImagetrueUDE_Ctrl_{FB7BC773-88A4-4ECE-B9B6-7189610B0735}_CoretrueImageAndTextfalseUDE_0x3_{1C85B31A-5D25-4197-9635-9C5DC28EAFD7}trueTrigger setupImagetrue5124914125Config ToolbarfalsetrueUDE_0x3_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueTarget ConfigurationImagetrueUDE_0xFE_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueConnect TargetImagetrueUDE_0x100_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueDisconnect TargetImagetrueUDE_0x6_{1C85B31A-5D25-4197-9635-9C5DC28EAFD7}trueSetup Target InterfaceImagetrueUDE_0x12_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueMCU Run ControlImagetrue6534915125Tools ToolbarfalsetrueUDE_Ctrl_{377CE046-823C-4A05-8828-13C25D345D77}_CoretrueImageAndTextfalseUDE_0xE1_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueExecution Time SetupImagetrue01002625Show Toolbarfalsefalse02002625Window Toolbarfalsefalse02252625Workspace Toolbarfalsefalse02752625Help Toolbarfalsefalse075712802300128023Platform Status Barfalsetrue0740683128074068311.12.2012 15:30:17:9561007782411WorkspaceManager11011.12.2012 15:30:17:847MgAAAA==AQAAAA==ZAAAAA==AQAAAA==lgAAAA==AQAAAA==6AMAAA==AQAAAA==9011201WorkspaceManager110000\\napnt002.nap.st.com\NAPPRT0001..\..\..\..\..\Program Files\pls\UDE 4.0\StdLibrary.mso{866f82d3-fac5-43cd-8a82-0af01e46e2c5}..\..\..\..\..\Documents and Settings\disiriog\My Documents\pls\UDE 4.0The script contains a collection of macros to save memory content into different file formats -and fill target memory rangesV:\UDE\AddOns\Macro\MacroLibrary\StdMacros1.dsm' -' $Header: /Ude/AddOns/Macro/MacroLibrary/StdMacros.dsm 3 30.04.04 9:34 Weisses $ -'_______________________________________________________ -' -' universal debug engine -' -' Standard command line macros - part 1 -' -' pls Development Tools 1999-2004 -' -' 28.04.04 SW correction for UDE 1.10 -' 03.06.03 SW initial version -'_______________________________________________________ - -'_______________________________________________________ -' -' UnAss command line function -' -' generates disassembly file -' -' command line UnAss output-file range1 [range2] [range3] ..... -' range description: -' C:<startaddress>,<length> or - code -' DB:<startaddress>,<length> or - data byte -' DW:<startaddress>,<length> or - data word -' DD:<startaddress>,<length> or - data dword -'_______________________________________________________ - -Sub UnAss(File,ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - If IsNumeric(File) Then - MsgBox "File parameter wrong - " & File - Exit Sub - End If - DisASMObj.OutputPath = CStr(File) - bRetVal = DisASMObj.CreateStream(True,"UDE Disassembler output of current Program",False) - If bRetVal = True Then - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - For Range = 0 To RangeCnt -1 - KindOfRange = CStr(ParameterObj.Parameter(ParamIndex)) - KindOfRange = UCase(KindOfRange) - Address = CLng(ParameterObj.Parameter(ParamIndex +1)) - Length = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - If IsNumeric(KindOfRange) Then - If KindOfRange = 12 Then - DisASMObj.AddRange Address,Length,1 - ElseIf KindOfRange = 219 Then - DisASMObj.AddRange Address,Length,2 - ElseIf KindOfRange = 221 Then - DisASMObj.AddRange Address,Length,4 - Else - MsgBox "Invalid range type " & KindOfRange & "of range " & Range +1 - Exit Sub - End If - Else - If KindOfRange = "C" Then - DisASMObj.AddRange Address,Length,1 - ElseIf KindOfRange = "DB" Then - DisASMObj.AddRange Address,Length,2 - ElseIf KindOfRange = "DW" Then - DisASMObj.AddRange Address,Length,3 - ElseIf KindOfRange = "DD" Then - DisASMObj.AddRange Address,Length,4 - Else - MsgBox "Invalid range type " & KindOfRange & "of range " & Range +1 - Exit Sub - End If - End If - Next - DisASMObj.HexFileModeFlag = False - DisASMObj.ListModeFlag = False - DisASMObj.WriteAllRanges(False) - End If - -End Sub - -'_______________________________________________________ -' -' SaveHEX command line function -' -' generates intel-HEX file -' -' command line SaveHex output-file range1 [range2] [range3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub SaveHEX(File,ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - If IsNumeric(File) Then - MsgBox "File parameter wrong - " & File - Exit Sub - End If - DisASMObj.OutputPath = CStr(File) - bRetVal = DisASMObj.CreateStream(True,"UDE generated intel-Hex file of current Program",False) - If bRetVal = True Then - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 2 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/2 - ParamIndex = 0 - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)) - ParamIndex = ParamIndex +2 - DisASMObj.AddRange Address,Length,0 - Next - DisASMObj.HexFileModeFlag = True - DisASMObj.WriteAllRanges(False) - End If - -End Sub - -'_______________________________________________________ -' -' FillByte command line function -' -' fills memory range with byte pattern -' -' command line FillByte range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillByte(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.ByteArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub - -'_______________________________________________________ -' -' FillWord command line function -' -' fills memory range with word pattern -' -' command line FillWord range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillWord(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.WordArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)/2) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub - -'_______________________________________________________ -' -' FillDWord command line function -' -' fills memory range with dword pattern -' -' command line FillDWord range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillDWord(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.DWordArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)/4) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub63VBScript24.11.2006 14:43:20:0001WS_CORE_DUOMacro_27_02_14_13_40_38_010Execute UnAss ..Macro UnAssExecute macro UnAss0210Execute SaveHEX ..Macro SaveHEXExecute macro SaveHEX0210Execute FillByte ..Macro FillByteExecute macro FillByte0110Execute FillWord ..Macro FillWordExecute macro FillWord0110Execute FillDWord ..Macro FillDWordExecute macro FillDWord0150126.04.2013 11:10:18:5317782550Target0.Controller0.Core1011.12.2012 15:30:17:9877782740Target0.Controller0.Core110111.12.2012 15:33:58:525..\main.c7372830Target0.Controller0.Core1118.12.2012 10:46:43:006..\..\ChibiOS-RT_Portable_Kernel_Component\component\lib\src\chsys.c7372830Target0.Controller0.Core101120.12.2012 10:51:57:042AwAAAA==AQAAAA==kAAAAA==YAAAAA==TgAAAA==oAAAAA==TgAAAA==oAAAAA==TgAAAA==oAAAAA==AAAAAA==AAAAAA==AAAAAA==AAAAAA==7782620Target0.Controller0.Core100000000000000..\build11..\build\ch.elfSoftware;enabled;0;disabled;'main {C:\ChibiStudio\workspace\SPC5\demos\SPC563Mxx OS-Less Test Application\main.c} .25';main.c;1;0;;$disabled; ;disabled; ;10011100verify.txt0000000001..\main.cstm_xpc563m64_minimodule_debug_jtag.cfg27.02.2014 13:40:38:000 diff --git a/demos/SPC5/RT-SPC563M-EVB/UDE/stm_xpc563m64_minimodule_debug_jtag.cfg b/demos/SPC5/RT-SPC563M-EVB/UDE/stm_xpc563m64_minimodule_debug_jtag.cfg deleted file mode 100644 index b43d92891..000000000 --- a/demos/SPC5/RT-SPC563M-EVB/UDE/stm_xpc563m64_minimodule_debug_jtag.cfg +++ /dev/null @@ -1,185 +0,0 @@ -[Main] -Signature=UDE_TARGINFO_2.0 -Description=STM XPC563M Mini Module with SPC563M64 1.5M (Jtag) -Description1=MMU preinitialized, memory mapping 1:1, VLE enabled for SRAM and Flash -Description2=PLL set for 80MHz -Description3=FLASH programming prepared but not enabled -Description4=Write Filter for BAM Module -MCUs=Controller0 -Architecture=PowerPC -Vendor=STM -Board=XPC563M Mini Module - -[Controller0] -Family=PowerPC -Type=SPC563M64 -Enabled=1 -IntClock=80000 -MemDevs=BAMWriteFilter -ExtClock=12000 - -[Controller0.Core] -Protocol=PPCJTAG -Enabled=1 - -[Controller0.Core.LoadedAddOn] -UDEMemtool=1 - -[Controller0.Core.PpcJtagTargIntf] -PortType=FTDI -ResetWaitTime=50 -MaxJtagClk=1000 -DoSramInit=1 -UseNexus=1 -AdaptiveJtagPhaseShift=1 -ConnOption=Reset -ChangeJtagClk=-1 -HaltAfterReset=1 -SimioAddr=g_JtagSimioAccess -FreezeTimers=1 -InvalidTlbOnReset=1 -InvalidateCache=0 -ForceCacheFlush=0 -IgnoreLockedLines=0 -ExecInitCmds=1 -JtagTapNumber=0 -JtagNumOfTaps=1 -JtagNumIrBefore=0 -JtagNumIrAfter=0 - -SimioAddr=g_JtagSimioAccess - -FlushCache=0 -AllowMmuSetup=1 -UseExtReset=1 -HandleWdtBug=0 -ForceEndOfReset=0 -CommDevSel=PortType=USB,Type=FTDI -JtagViaPod=1 -TargetPort=Default -ChangeMsr=0 -ChangeMsrValue=0x0 -ExecOnStartCmds=0 -ExecOnHaltCmds=0 -EnableProgramTimeMeasurement=0 -UseHwResetMode=1 -HandleNexusAccessBug=0 -DoNotEnableTrapSwBrp=0 -AllowResetOnCheck=0 -BootPasswd0=0xFEEDFACE -BootPasswd1=0xCAFEBEEF -BootPasswd2=0xFFFFFFFF -BootPasswd3=0xFFFFFFFF -BootPasswd4=0xFFFFFFFF -BootPasswd5=0xFFFFFFFF -BootPasswd6=0xFFFFFFFF -BootPasswd7=0xFFFFFFFF -JtagIoType=Jtag -ExecOnHaltCmdsWhileHalted=0 -TimerForPTM=Default -AllowBreakOnUpdateBreakpoints=0 -ClearDebugStatusOnHalt=1 -HwResetMode=Execute -UseMasterNexusIfResetState=1 -UseLocalAddressTranslation=1 -Use64BitNexus=0 -InitSramOnlyWhenNotInitialized=0 -DisableE2EECC=0 -AllowHarrForUpdateDebugRegs=0 -UseCore0ForNexusMemoryAccessWhileRunning=0 - -[Controller0.BAMWriteFilter] -Description=BAM WriteAccess Filter -Range0Start=0xFFFFC000 -Range0Size=0x4000 -Enabled=1 -Handler=AccessFilter -Mode=ReadOnly - -[Controller0.PFLASH0] -Enabled=1 -EnableMemtoolByDefault=1 - -[Controller0.PFLASH1] -Enabled=1 -EnableMemtoolByDefault=1 - -[Controller0.PFLASH2] -Enabled=1 -EnableMemtoolByDefault=1 - -[Controller0.Core.PpcJtagTargIntf.InitScript] - -// TLB invalidate -SETSPR 0x3F4 0x2 0xFFFFFFFF -// select TLB 1 -SETSPR 0x274 0x10000108 0xFFFFFFFF - -// programm peripheral B modules -// TLB 1, entry 0 -SETSPR 0x270 0x10000000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=1MB -SETSPR 0x271 0xC0000500 0xFFFFFFFF -// effective page number FFF00000, I,G -SETSPR 0x272 0xFFF0000A 0xFFFFFFFF -// real page FFF00000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0xFFF0003F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// programm internal Flash, no cache because of flash -// TLB 1, entry 1 -SETSPR 0x270 0x10010000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=16MB -SETSPR 0x271 0xC0000700 0xFFFFFFFF -// effective page number 00000000 -SETSPR 0x272 0x28 0xFFFFFFFF -// real page 00000000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0x3F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// programm internal SRAM -// TLB 1, entry 2 -SETSPR 0x270 0x10020000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=256k -SETSPR 0x271 0xC0000400 0xFFFFFFFF -// effective page number 40000000, I -SETSPR 0x272 0x40000028 0xFFFFFFFF -// real page 0x40000028, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0x4000003F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// programm peripheral A modules -// TLB 1, entry 4 -SETSPR 0x270 0x10030000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=1MB -SETSPR 0x271 0xC0000500 0xFFFFFFFF -// effective page number C3F00000, I -SETSPR 0x272 0xC3F0000A 0xFFFFFFFF -// real page C3F00000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0xC3F0003F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// setup IVOPR -// points to internal memory at 0x40000000 -SETSPR 0x3F 0x40000000 0xFFFFFFFF -// MMU data error vector offset -SETSPR 0x19D 0x0 0xFFFFFFFF -// MMU instruction error vector offset - -// setup clock to 80MHz -//SET FMPLL_SYNCR 0x28000000 0xFFFFFFFF -//WAIT 0x5 - -// disable watchdog -SET SWT_CR 0xFF00000A - -// set NEXUS priority to above cpu instruction for runtime access -//SET XBAR_MPR3 0x321 - -[Controller0.Core.PpcJtagTargIntf.OnStartScript] - -[Controller0.Core.PpcJtagTargIntf.OnHaltScript] diff --git a/demos/SPC5/RT-SPC563M-EVB/chconf.h b/demos/SPC5/RT-SPC563M-EVB/chconf.h deleted file mode 100644 index f6244ad4b..000000000 --- a/demos/SPC5/RT-SPC563M-EVB/chconf.h +++ /dev/null @@ -1,499 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file templates/chconf.h - * @brief Configuration file template. - * @details A copy of this file must be placed in each project directory, it - * contains the application specific kernel settings. - * - * @addtogroup config - * @details Kernel related settings and hooks. - * @{ - */ - -#ifndef _CHCONF_H_ -#define _CHCONF_H_ - -/*===========================================================================*/ -/** - * @name System timers settings - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System time counter resolution. - * @note Allowed values are 16 or 32 bits. - */ -#define CH_CFG_ST_RESOLUTION 32 - -/** - * @brief System tick frequency. - * @details Frequency of the system timer that drives the system ticks. This - * setting also defines the system tick time unit. - */ -#define CH_CFG_ST_FREQUENCY 1000 - -/** - * @brief Time delta constant for the tick-less mode. - * @note If this value is zero then the system uses the classic - * periodic tick. This value represents the minimum number - * of ticks that is safe to specify in a timeout directive. - * The value one is not valid, timeouts are rounded up to - * this value. - */ -#define CH_CFG_ST_TIMEDELTA 0 - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel parameters and options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Round robin interval. - * @details This constant is the number of system ticks allowed for the - * threads before preemption occurs. Setting this value to zero - * disables the preemption for threads with equal priority and the - * round robin becomes cooperative. Note that higher priority - * threads can still preempt, the kernel is always preemptive. - * @note Disabling the round robin preemption makes the kernel more compact - * and generally faster. - * @note The round robin preemption is not supported in tickless mode and - * must be set to zero in that case. - */ -#define CH_CFG_TIME_QUANTUM 0 - -/** - * @brief Managed RAM size. - * @details Size of the RAM area to be managed by the OS. If set to zero - * then the whole available RAM is used. The core memory is made - * available to the heap allocator and/or can be used directly through - * the simplified core memory allocator. - * - * @note In order to let the OS manage the whole RAM the linker script must - * provide the @p __heap_base__ and @p __heap_end__ symbols. - * @note Requires @p CH_CFG_USE_MEMCORE. - */ -#define CH_CFG_MEMCORE_SIZE 0 - -/** - * @brief Idle thread automatic spawn suppression. - * @details When this option is activated the function @p chSysInit() - * does not spawn the idle thread. The application @p main() - * function becomes the idle thread and must implement an - * infinite loop. - */ -#define CH_CFG_NO_IDLE_THREAD FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Performance options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief OS optimization. - * @details If enabled then time efficient rather than space efficient code - * is used when two possible implementations exist. - * - * @note This is not related to the compiler optimization options. - * @note The default is @p TRUE. - */ -#define CH_CFG_OPTIMIZE_SPEED TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Subsystem options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Time Measurement APIs. - * @details If enabled then the time measurement APIs are included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_TM FALSE - -/** - * @brief Threads registry APIs. - * @details If enabled then the registry APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_REGISTRY TRUE - -/** - * @brief Threads synchronization APIs. - * @details If enabled then the @p chThdWait() function is included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_WAITEXIT TRUE - -/** - * @brief Semaphores APIs. - * @details If enabled then the Semaphores APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_SEMAPHORES TRUE - -/** - * @brief Semaphores queuing mode. - * @details If enabled then the threads are enqueued on semaphores by - * priority rather than in FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE - -/** - * @brief Mutexes APIs. - * @details If enabled then the mutexes APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MUTEXES TRUE - -/** - * @brief Enables recursive behavior on mutexes. - * @note Recursive mutexes are heavier and have an increased - * memory footprint. - * - * @note The default is @p FALSE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_MUTEXES_RECURSIVE FALSE - -/** - * @brief Conditional Variables APIs. - * @details If enabled then the conditional variables APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_CONDVARS TRUE - -/** - * @brief Conditional Variables APIs with timeout. - * @details If enabled then the conditional variables APIs with timeout - * specification are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_CONDVARS. - */ -#define CH_CFG_USE_CONDVARS_TIMEOUT TRUE - -/** - * @brief Events Flags APIs. - * @details If enabled then the event flags APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_EVENTS TRUE - -/** - * @brief Events Flags APIs with timeout. - * @details If enabled then the events APIs with timeout specification - * are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_EVENTS. - */ -#define CH_CFG_USE_EVENTS_TIMEOUT TRUE - -/** - * @brief Synchronous Messages APIs. - * @details If enabled then the synchronous messages APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MESSAGES TRUE - -/** - * @brief Synchronous Messages queuing mode. - * @details If enabled then messages are served by priority rather than in - * FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_MESSAGES. - */ -#define CH_CFG_USE_MESSAGES_PRIORITY FALSE - -/** - * @brief Mailboxes APIs. - * @details If enabled then the asynchronous messages (mailboxes) APIs are - * included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_MAILBOXES TRUE - -/** - * @brief I/O Queues APIs. - * @details If enabled then the I/O queues APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_QUEUES TRUE - -/** - * @brief Core Memory Manager APIs. - * @details If enabled then the core memory manager APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMCORE TRUE - -/** - * @brief Heap Allocator APIs. - * @details If enabled then the memory heap allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or - * @p CH_CFG_USE_SEMAPHORES. - * @note Mutexes are recommended. - */ -#define CH_CFG_USE_HEAP TRUE - -/** - * @brief Memory Pools Allocator APIs. - * @details If enabled then the memory pools allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMPOOLS TRUE - -/** - * @brief Dynamic Threads APIs. - * @details If enabled then the dynamic threads creation APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_WAITEXIT. - * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS. - */ -#define CH_CFG_USE_DYNAMIC TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Debug options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Debug option, kernel statistics. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_STATISTICS FALSE - -/** - * @brief Debug option, system state check. - * @details If enabled the correct call protocol for system APIs is checked - * at runtime. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_SYSTEM_STATE_CHECK FALSE - -/** - * @brief Debug option, parameters checks. - * @details If enabled then the checks on the API functions input - * parameters are activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_CHECKS FALSE - -/** - * @brief Debug option, consistency checks. - * @details If enabled then all the assertions in the kernel code are - * activated. This includes consistency checks inside the kernel, - * runtime anomalies and port-defined checks. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_ASSERTS FALSE - -/** - * @brief Debug option, trace buffer. - * @details If enabled then the context switch circular trace buffer is - * activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_TRACE FALSE - -/** - * @brief Debug option, stack checks. - * @details If enabled then a runtime stack check is performed. - * - * @note The default is @p FALSE. - * @note The stack check is performed in a architecture/port dependent way. - * It may not be implemented or some ports. - * @note The default failure mode is to halt the system with the global - * @p panic_msg variable set to @p NULL. - */ -#define CH_DBG_ENABLE_STACK_CHECK FALSE - -/** - * @brief Debug option, stacks initialization. - * @details If enabled then the threads working area is filled with a byte - * value when a thread is created. This can be useful for the - * runtime measurement of the used stack. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_FILL_THREADS FALSE - -/** - * @brief Debug option, threads profiling. - * @details If enabled then a field is added to the @p thread_t structure that - * counts the system ticks occurred while executing the thread. - * - * @note The default is @p FALSE. - * @note This debug option is not currently compatible with the - * tickless mode. - */ -#define CH_DBG_THREADS_PROFILING FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel hooks - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Threads descriptor structure extension. - * @details User fields added to the end of the @p thread_t structure. - */ -#define CH_CFG_THREAD_EXTRA_FIELDS \ - /* Add threads custom fields here.*/ - -/** - * @brief Threads initialization hook. - * @details User initialization code added to the @p chThdInit() API. - * - * @note It is invoked from within @p chThdInit() and implicitly from all - * the threads creation APIs. - */ -#define CH_CFG_THREAD_INIT_HOOK(tp) { \ - /* Add threads initialization code here.*/ \ -} - -/** - * @brief Threads finalization hook. - * @details User finalization code added to the @p chThdExit() API. - * - * @note It is inserted into lock zone. - * @note It is also invoked when the threads simply return in order to - * terminate. - */ -#define CH_CFG_THREAD_EXIT_HOOK(tp) { \ - /* Add threads finalization code here.*/ \ -} - -/** - * @brief Context switch hook. - * @details This hook is invoked just before switching between threads. - */ -#define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) { \ - /* Context switch code here.*/ \ -} - -/** - * @brief Idle thread enter hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to activate a power saving mode. - */ -#define CH_CFG_IDLE_ENTER_HOOK() { \ -} - -/** - * @brief Idle thread leave hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to deactivate a power saving mode. - */ -#define CH_CFG_IDLE_LEAVE_HOOK() { \ -} - -/** - * @brief Idle Loop hook. - * @details This hook is continuously invoked by the idle thread loop. - */ -#define CH_CFG_IDLE_LOOP_HOOK() { \ - /* Idle loop code here.*/ \ -} - -/** - * @brief System tick event hook. - * @details This hook is invoked in the system tick handler immediately - * after processing the virtual timers queue. - */ -#define CH_CFG_SYSTEM_TICK_HOOK() { \ - /* System tick event code here.*/ \ -} - -/** - * @brief System halt hook. - * @details This hook is invoked in case to a system halting error before - * the system is halted. - */ -#define CH_CFG_SYSTEM_HALT_HOOK(reason) { \ - /* System halt code here.*/ \ -} - -/** @} */ - -/*===========================================================================*/ -/* Port-specific settings (override port settings defaulted in chcore.h). */ -/*===========================================================================*/ - -#endif /* _CHCONF_H_ */ - -/** @} */ diff --git a/demos/SPC5/RT-SPC563M-EVB/halconf.h b/demos/SPC5/RT-SPC563M-EVB/halconf.h deleted file mode 100644 index 682795338..000000000 --- a/demos/SPC5/RT-SPC563M-EVB/halconf.h +++ /dev/null @@ -1,388 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file templates/halconf.h - * @brief HAL configuration header. - * @details HAL configuration file, this file allows to enable or disable the - * various device drivers from your application. You may also use - * this file in order to override the device drivers default settings. - * - * @addtogroup HAL_CONF - * @{ - */ - -#ifndef _HALCONF_H_ -#define _HALCONF_H_ - -#include "mcuconf.h" - -/** - * @brief Enables the TM subsystem. - */ -#if !defined(HAL_USE_TM) || defined(__DOXYGEN__) -#define HAL_USE_TM FALSE -#endif - -/** - * @brief Enables the PAL subsystem. - */ -#if !defined(HAL_USE_PAL) || defined(__DOXYGEN__) -#define HAL_USE_PAL TRUE -#endif - -/** - * @brief Enables the ADC subsystem. - */ -#if !defined(HAL_USE_ADC) || defined(__DOXYGEN__) -#define HAL_USE_ADC FALSE -#endif - -/** - * @brief Enables the CAN subsystem. - */ -#if !defined(HAL_USE_CAN) || defined(__DOXYGEN__) -#define HAL_USE_CAN FALSE -#endif - -/** - * @brief Enables the DAC subsystem. - */ -#if !defined(HAL_USE_DAC) || defined(__DOXYGEN__) -#define HAL_USE_DAC FALSE -#endif - -/** - * @brief Enables the EXT subsystem. - */ -#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) -#define HAL_USE_EXT FALSE -#endif - -/** - * @brief Enables the GPT subsystem. - */ -#if !defined(HAL_USE_GPT) || defined(__DOXYGEN__) -#define HAL_USE_GPT FALSE -#endif - -/** - * @brief Enables the I2C subsystem. - */ -#if !defined(HAL_USE_I2C) || defined(__DOXYGEN__) -#define HAL_USE_I2C FALSE -#endif - -/** - * @brief Enables the I2S subsystem. - */ -#if !defined(HAL_USE_I2S) || defined(__DOXYGEN__) -#define HAL_USE_I2S FALSE -#endif - -/** - * @brief Enables the ICU subsystem. - */ -#if !defined(HAL_USE_ICU) || defined(__DOXYGEN__) -#define HAL_USE_ICU FALSE -#endif - -/** - * @brief Enables the MAC subsystem. - */ -#if !defined(HAL_USE_MAC) || defined(__DOXYGEN__) -#define HAL_USE_MAC FALSE -#endif - -/** - * @brief Enables the MMC_SPI subsystem. - */ -#if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__) -#define HAL_USE_MMC_SPI FALSE -#endif - -/** - * @brief Enables the PWM subsystem. - */ -#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__) -#define HAL_USE_PWM FALSE -#endif - -/** - * @brief Enables the RTC subsystem. - */ -#if !defined(HAL_USE_RTC) || defined(__DOXYGEN__) -#define HAL_USE_RTC FALSE -#endif - -/** - * @brief Enables the SDC subsystem. - */ -#if !defined(HAL_USE_SDC) || defined(__DOXYGEN__) -#define HAL_USE_SDC FALSE -#endif - -/** - * @brief Enables the SERIAL subsystem. - */ -#if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__) -#define HAL_USE_SERIAL TRUE -#endif - -/** - * @brief Enables the SERIAL over USB subsystem. - */ -#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__) -#define HAL_USE_SERIAL_USB FALSE -#endif - -/** - * @brief Enables the SPI subsystem. - */ -#if !defined(HAL_USE_SPI) || defined(__DOXYGEN__) -#define HAL_USE_SPI FALSE -#endif - -/** - * @brief Enables the UART subsystem. - */ -#if !defined(HAL_USE_UART) || defined(__DOXYGEN__) -#define HAL_USE_UART FALSE -#endif - -/** - * @brief Enables the USB subsystem. - */ -#if !defined(HAL_USE_USB) || defined(__DOXYGEN__) -#define HAL_USE_USB FALSE -#endif - -/** - * @brief Enables the WDG subsystem. - */ -#if !defined(HAL_USE_WDG) || defined(__DOXYGEN__) -#define HAL_USE_WDG FALSE -#endif - -/*===========================================================================*/ -/* ADC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__) -#define ADC_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define ADC_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* CAN driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Sleep mode related APIs inclusion switch. - */ -#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__) -#define CAN_USE_SLEEP_MODE TRUE -#endif - -/*===========================================================================*/ -/* I2C driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables the mutual exclusion APIs on the I2C bus. - */ -#if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define I2C_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* MAC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables an event sources for incoming packets. - */ -#if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__) -#define MAC_USE_ZERO_COPY FALSE -#endif - -/** - * @brief Enables an event sources for incoming packets. - */ -#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__) -#define MAC_USE_EVENTS TRUE -#endif - -/*===========================================================================*/ -/* MMC_SPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Delays insertions. - * @details If enabled this options inserts delays into the MMC waiting - * routines releasing some extra CPU time for the threads with - * lower priority, this may slow down the driver a bit however. - * This option is recommended also if the SPI driver does not - * use a DMA channel and heavily loads the CPU. - */ -#if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__) -#define MMC_NICE_WAITING TRUE -#endif - -/*===========================================================================*/ -/* SDC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Number of initialization attempts before rejecting the card. - * @note Attempts are performed at 10mS intervals. - */ -#if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__) -#define SDC_INIT_RETRY 100 -#endif - -/** - * @brief Include support for MMC cards. - * @note MMC support is not yet implemented so this option must be kept - * at @p FALSE. - */ -#if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__) -#define SDC_MMC_SUPPORT FALSE -#endif - -/** - * @brief Delays insertions. - * @details If enabled this options inserts delays into the MMC waiting - * routines releasing some extra CPU time for the threads with - * lower priority, this may slow down the driver a bit however. - */ -#if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__) -#define SDC_NICE_WAITING TRUE -#endif - -/*===========================================================================*/ -/* SERIAL driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Default bit rate. - * @details Configuration parameter, this is the baud rate selected for the - * default configuration. - */ -#if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__) -#define SERIAL_DEFAULT_BITRATE 38400 -#endif - -/** - * @brief Serial buffers size. - * @details Configuration parameter, you can change the depth of the queue - * buffers depending on the requirements of your application. - * @note The default is 16 bytes for both the transmission and receive - * buffers. - */ -#if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__) -#define SERIAL_BUFFERS_SIZE 16 -#endif - -/*===========================================================================*/ -/* SERIAL_USB driver related setting. */ -/*===========================================================================*/ - -/** - * @brief Serial over USB buffers size. - * @details Configuration parameter, the buffer size must be a multiple of - * the USB data endpoint maximum packet size. - * @note The default is 256 bytes for both the transmission and receive - * buffers. - */ -#if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__) -#define SERIAL_USB_BUFFERS_SIZE 256 -#endif - -/** - * @brief Serial over USB number of buffers. - * @note The default is 2 buffers. - */ -#if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__) -#define SERIAL_USB_BUFFERS_NUMBER 2 -#endif - -/*===========================================================================*/ -/* SPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__) -#define SPI_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define SPI_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* UART driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__) -#define UART_USE_WAIT FALSE -#endif - -/** - * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define UART_USE_MUTUAL_EXCLUSION FALSE -#endif - -/*===========================================================================*/ -/* USB driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(USB_USE_WAIT) || defined(__DOXYGEN__) -#define USB_USE_WAIT FALSE -#endif - -#endif /* _HALCONF_H_ */ - -/** @} */ diff --git a/demos/SPC5/RT-SPC563M-EVB/main.c b/demos/SPC5/RT-SPC563M-EVB/main.c deleted file mode 100644 index ab881fdc4..000000000 --- a/demos/SPC5/RT-SPC563M-EVB/main.c +++ /dev/null @@ -1,185 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#include "ch.h" -#include "hal.h" -#include "test.h" -#include "shell.h" -#include "chprintf.h" - -#define SHELL_WA_SIZE THD_WORKING_AREA_SIZE(1024) -#define TEST_WA_SIZE THD_WORKING_AREA_SIZE(256) - -static void cmd_mem(BaseSequentialStream *chp, int argc, char *argv[]) { - size_t n, size; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: mem\r\n"); - return; - } - n = chHeapStatus(NULL, &size); - chprintf(chp, "core free memory : %u bytes\r\n", chCoreGetStatusX()); - chprintf(chp, "heap fragments : %u\r\n", n); - chprintf(chp, "heap free total : %u bytes\r\n", size); -} - -static void cmd_threads(BaseSequentialStream *chp, int argc, char *argv[]) { - static const char *states[] = {CH_STATE_NAMES}; - thread_t *tp; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: threads\r\n"); - return; - } - chprintf(chp, " addr stack prio refs state time\r\n"); - tp = chRegFirstThread(); - do { - chprintf(chp, "%08lx %08lx %4lu %4lu %9s\r\n", - (uint32_t)tp, (uint32_t)tp->p_ctx.sp, - (uint32_t)tp->p_prio, (uint32_t)(tp->p_refs - 1), - states[tp->p_state]); - tp = chRegNextThread(tp); - } while (tp != NULL); -} - -static void cmd_test(BaseSequentialStream *chp, int argc, char *argv[]) { - thread_t *tp; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: test\r\n"); - return; - } - tp = chThdCreateFromHeap(NULL, TEST_WA_SIZE, chThdGetPriorityX(), - TestThread, chp); - if (tp == NULL) { - chprintf(chp, "out of memory\r\n"); - return; - } - chThdWait(tp); -} - -static const ShellCommand commands[] = { - {"mem", cmd_mem}, - {"threads", cmd_threads}, - {"test", cmd_test}, - {NULL, NULL} -}; - -static const ShellConfig shell_cfg1 = { - (BaseSequentialStream *)&SD1, - commands -}; - -/* - * LEDs blinker thread, times are in milliseconds. - */ -static THD_WORKING_AREA(waThread1, 128); -static THD_FUNCTION(Thread1, arg) { - - (void)arg; - chRegSetThreadName("blinker"); - - while (true) { - unsigned i; - - for (i = 0; i < 4; i++) { - palClearPad(PORT11, P11_LED1); - chThdSleepMilliseconds(100); - palClearPad(PORT11, P11_LED2); - chThdSleepMilliseconds(100); - palClearPad(PORT11, P11_LED3); - chThdSleepMilliseconds(100); - palClearPad(PORT11, P11_LED4); - chThdSleepMilliseconds(100); - palSetPad(PORT11, P11_LED1); - chThdSleepMilliseconds(100); - palSetPad(PORT11, P11_LED2); - chThdSleepMilliseconds(100); - palSetPad(PORT11, P11_LED3); - chThdSleepMilliseconds(100); - palSetPad(PORT11, P11_LED4); - chThdSleepMilliseconds(300); - } - - for (i = 0; i < 4; i++) { - palTogglePad(PORT11, P11_LED1); - chThdSleepMilliseconds(250); - palTogglePad(PORT11, P11_LED1); - palTogglePad(PORT11, P11_LED2); - chThdSleepMilliseconds(250); - palTogglePad(PORT11, P11_LED2); - palTogglePad(PORT11, P11_LED3); - chThdSleepMilliseconds(250); - palTogglePad(PORT11, P11_LED3); - palTogglePad(PORT11, P11_LED4); - chThdSleepMilliseconds(250); - palTogglePad(PORT11, P11_LED4); - } - - palSetPort(PORT11, - PAL_PORT_BIT(P11_LED1) | PAL_PORT_BIT(P11_LED2) | - PAL_PORT_BIT(P11_LED3) | PAL_PORT_BIT(P11_LED4)); - } -} - -/* - * Application entry point. - */ -int main(void) { - thread_t *shelltp = NULL; - - /* - * System initializations. - * - HAL initialization, this also initializes the configured device drivers - * and performs the board-specific initializations. - * - Kernel initialization, the main() function becomes a thread and the - * RTOS is active. - */ - halInit(); - chSysInit(); - - /* - * Shell manager initialization. - */ - shellInit(); - - /* - * Activates the serial driver 1 using the driver default configuration. - */ - sdStart(&SD1, NULL); - - /* - * Creates the blinker thread. - */ - chThdCreateStatic(waThread1, sizeof(waThread1), NORMALPRIO, Thread1, NULL); - - /* - * Normal main() thread activity. - */ - while (true) { - if (!shelltp) - shelltp = shellCreate(&shell_cfg1, SHELL_WA_SIZE, NORMALPRIO); - else if (chThdTerminatedX(shelltp)) { - chThdRelease(shelltp); /* Recovers memory of the previous shell. */ - shelltp = NULL; /* Triggers spawning of a new shell. */ - } - chThdSleepMilliseconds(1000); - } - return 0; -} diff --git a/demos/SPC5/RT-SPC563M-EVB/mcuconf.h b/demos/SPC5/RT-SPC563M-EVB/mcuconf.h deleted file mode 100644 index e8f7ebd81..000000000 --- a/demos/SPC5/RT-SPC563M-EVB/mcuconf.h +++ /dev/null @@ -1,158 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#ifndef _MCUCONF_H_ -#define _MCUCONF_H_ - -/* - * SPC563Mxx drivers configuration. - * The following settings override the default settings present in - * the various device driver implementation headers. - * Note that the settings for each driver only have effect if the whole - * driver is enabled in halconf.h. - * - * IRQ priorities: - * 1...15 Lowest...Highest. - * DMA priorities: - * 0...15 Highest...Lowest. - */ - -#define SPC563Mxx_MCUCONF - -/* - * HAL driver system settings. - */ -#define SPC5_NO_INIT FALSE -#define SPC5_CLK_BYPASS FALSE -#define SPC5_ALLOW_OVERCLOCK FALSE -#define SPC5_CLK_PREDIV_VALUE 2 -#define SPC5_CLK_MFD_VALUE 80 -#define SPC5_CLK_RFD SPC5_RFD_DIV4 -#define SPC5_FLASH_BIUCR (BIUCR_BANK1_TOO | \ - BIUCR_MASTER4_PREFETCH | \ - BIUCR_MASTER0_PREFETCH | \ - BIUCR_DPFEN | \ - BIUCR_IPFEN | \ - BIUCR_PFLIM_ON_MISS | \ - BIUCR_BFEN) -#define SPC5_EMIOS_GPRE_VALUE 20 - -/* - * EDMA driver settings. - */ -#define SPC5_EDMA_CR_SETTING (EDMA_CR_GRP1PRI(1) | \ - EDMA_CR_GRP0PRI(0) | \ - EDMA_CR_EMLM | \ - EDMA_CR_ERGA) -#define SPC5_EDMA_GROUP0_PRIORITIES 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 -#define SPC5_EDMA_GROUP1_PRIORITIES 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 -#define SPC5_EDMA_ERROR_IRQ_PRIO 12 -#define SPC5_EDMA_ERROR_HANDLER() osalSysHalt("DMA failure") - -/* - * ADC driver settings. - */ -#define SPC5_ADC_USE_ADC0_Q0 FALSE -#define SPC5_ADC_USE_ADC0_Q1 FALSE -#define SPC5_ADC_USE_ADC0_Q2 FALSE -#define SPC5_ADC_USE_ADC1_Q3 FALSE -#define SPC5_ADC_USE_ADC1_Q4 FALSE -#define SPC5_ADC_USE_ADC1_Q5 FALSE -#define SPC5_ADC_FIFO0_DMA_IRQ_PRIO 12 -#define SPC5_ADC_FIFO1_DMA_IRQ_PRIO 12 -#define SPC5_ADC_FIFO2_DMA_IRQ_PRIO 12 -#define SPC5_ADC_FIFO3_DMA_IRQ_PRIO 12 -#define SPC5_ADC_FIFO4_DMA_IRQ_PRIO 12 -#define SPC5_ADC_FIFO5_DMA_IRQ_PRIO 12 -#define SPC5_ADC_CR_CLK_PS ADC_CR_CLK_PS(5) -#define SPC5_ADC_PUDCR {ADC_PUDCR_NONE,ADC_PUDCR_NONE,ADC_PUDCR_NONE,ADC_PUDCR_NONE,ADC_PUDCR_NONE,ADC_PUDCR_NONE,ADC_PUDCR_NONE,ADC_PUDCR_NONE} - -/* - * SERIAL driver system settings. - */ -#define SPC5_USE_ESCIA TRUE -#define SPC5_USE_ESCIB FALSE -#define SPC5_ESCIA_PRIORITY 8 -#define SPC5_ESCIB_PRIORITY 8 - -/* - * SPI driver system settings. - */ -#define SPC5_SPI_USE_DSPI1 FALSE -#define SPC5_SPI_USE_DSPI2 FALSE -#define SPC5_SPI_DMA_MODE SPC5_SPI_DMA_RX_ONLY -#define SPC5_SPI_DSPI1_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3 | SPC5_MCR_PCSIS4 | SPC5_MCR_PCSIS5) -#define SPC5_SPI_DSPI2_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3 | SPC5_MCR_PCSIS4 | SPC5_MCR_PCSIS5) -#define SPC5_SPI_DSPI1_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI2_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI1_IRQ_PRIO 10 -#define SPC5_SPI_DSPI2_IRQ_PRIO 10 -#define SPC5_SPI_DMA_ERROR_HOOK(spip) osalSysHalt("DSPI DMA failure") - -/* - * ICU driver system settings. - */ -#define SPC5_ICU_USE_EMIOS_CH1 FALSE -#define SPC5_ICU_USE_EMIOS_CH2 FALSE -#define SPC5_ICU_USE_EMIOS_CH3 FALSE -#define SPC5_ICU_USE_EMIOS_CH4 FALSE -#define SPC5_ICU_USE_EMIOS_CH5 FALSE -#define SPC5_ICU_USE_EMIOS_CH6 FALSE -#define SPC5_ICU_USE_EMIOS_CH11 FALSE -#define SPC5_ICU_USE_EMIOS_CH13 FALSE -#define SPC5_EMIOS_FLAG_F1_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F2_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F3_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F4_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F5_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F6_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F11_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F13_PRIORITY 8 - -/* - * PWM driver system settings. - */ -#define SPC5_PWM_USE_EMIOS_CH0 FALSE -#define SPC5_PWM_USE_EMIOS_CH8 FALSE -#define SPC5_PWM_USE_EMIOS_CH9 FALSE -#define SPC5_PWM_USE_EMIOS_CH10 FALSE -#define SPC5_PWM_USE_EMIOS_CH12 FALSE -#define SPC5_PWM_USE_EMIOS_CH14 FALSE -#define SPC5_PWM_USE_EMIOS_CH15 FALSE -#define SPC5_PWM_USE_EMIOS_CH23 FALSE -#define SPC5_EMIOS_FLAG_F0_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F8_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F9_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F10_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F12_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F14_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F15_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F23_PRIORITY 8 - -/* - * CAN driver system settings. - */ -#define SPC5_CAN_USE_FILTERS FALSE - -#define SPC5_CAN_USE_FLEXCAN0 FALSE -#define SPC5_CAN_FLEXCAN0_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN0_IRQ_PRIORITY 11 - -#define SPC5_CAN_USE_FLEXCAN1 FALSE -#define SPC5_CAN_FLEXCAN1_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN1_IRQ_PRIORITY 11 - -#endif /* _MCUCONF_H_ */ diff --git a/demos/SPC5/RT-SPC564A-EVB/.cproject b/demos/SPC5/RT-SPC564A-EVB/.cproject deleted file mode 100644 index 2809e0659..000000000 --- a/demos/SPC5/RT-SPC564A-EVB/.cproject +++ /dev/null @@ -1,57 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/SPC5/RT-SPC564A-EVB/.project b/demos/SPC5/RT-SPC564A-EVB/.project deleted file mode 100644 index a1b48ba76..000000000 --- a/demos/SPC5/RT-SPC564A-EVB/.project +++ /dev/null @@ -1,43 +0,0 @@ - - - RT-SPC564A-EVB - - - - - - org.eclipse.cdt.managedbuilder.core.genmakebuilder - clean,full,incremental, - - - - - org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder - full,incremental, - - - - - - org.eclipse.cdt.core.cnature - org.eclipse.cdt.managedbuilder.core.managedBuildNature - org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - - - - board - 2 - CHIBIOS/os/hal/boards/ST_EVB_SPC564A - - - os - 2 - CHIBIOS/os - - - test - 2 - CHIBIOS/test - - - diff --git a/demos/SPC5/RT-SPC564A-EVB/Makefile b/demos/SPC5/RT-SPC564A-EVB/Makefile deleted file mode 100644 index 552d0b747..000000000 --- a/demos/SPC5/RT-SPC564A-EVB/Makefile +++ /dev/null @@ -1,188 +0,0 @@ -############################################################################## -# Build global options -# NOTE: Can be overridden externally. -# - -# Compiler options here. -ifeq ($(USE_OPT),) - USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16 -endif - -# C specific options here (added to USE_OPT). -ifeq ($(USE_COPT),) - USE_COPT = -endif - -# C++ specific options here (added to USE_OPT). -ifeq ($(USE_CPPOPT),) - USE_CPPOPT = -fno-rtti -endif - -# Enable this if you want the linker to remove unused code and data. -ifeq ($(USE_LINK_GC),) - USE_LINK_GC = yes -endif - -# Linker extra options here. -ifeq ($(USE_LDOPT),) - USE_LDOPT = -endif - -# Enable this if you want link time optimizations (LTO) -ifeq ($(USE_LTO),) - USE_LTO = no -endif - -# If enabled, this option allows to compile the application in VLE mode. -ifeq ($(USE_VLE),) - USE_VLE = yes -endif - -# Enable this if you want to see the full log while compiling. -ifeq ($(USE_VERBOSE_COMPILE),) - USE_VERBOSE_COMPILE = no -endif - -# If enabled, this option makes the build process faster by not compiling -# modules not used in the current configuration. -ifeq ($(USE_SMART_BUILD),) - USE_SMART_BUILD = yes -endif - -# -# Build global options -############################################################################## - -############################################################################## -# Architecture or project specific options -# - -# Stack size to be allocated to the process stack. This stack is -# the stack used by the main() thread. -ifeq ($(USE_PROCESS_STACKSIZE),) - USE_PROCESS_STACKSIZE = 0x400 -endif - -# Stack size to the allocated to the optional exceptions stack. This -# stack is used for processing interrupts and exceptions. -ifeq ($(USE_EXCEPTIONS_STACKSIZE),) - USE_EXCEPTIONS_STACKSIZE = 0 -endif - -# -# Architecture or project specific options -############################################################################## - -############################################################################## -# Project, sources and paths -# - -# Define project name here -PROJECT = ch - -# Imported source files and paths -CHIBIOS = ../../.. -# Startup files. -include $(CHIBIOS)/os/common/ports/e200/compilers/GCC/mk/startup_spc564axx.mk -# HAL-OSAL files (optional). -include $(CHIBIOS)/os/hal/hal.mk -include $(CHIBIOS)/os/hal/boards/ST_EVB_SPC564A/board.mk -include $(CHIBIOS)/os/hal/ports/SPC5/SPC564Axx/platform.mk -include $(CHIBIOS)/os/hal/osal/rt/osal.mk -# RTOS files (optional). -include $(CHIBIOS)/os/rt/rt.mk -include $(CHIBIOS)/os/rt/ports/e200/compilers/GCC/mk/port.mk -# Other files (optional). -include $(CHIBIOS)/test/rt/test.mk - -# Define linker script file here -LDSCRIPT= $(STARTUPLD)/SPC564A80.ld - -# C sources here. -CSRC = $(STARTUPSRC) \ - $(KERNSRC) \ - $(PORTSRC) \ - $(OSALSRC) \ - $(HALSRC) \ - $(PLATFORMSRC) \ - $(BOARDSRC) \ - $(TESTSRC) \ - $(CHIBIOS)/os/hal/lib/streams/memstreams.c \ - $(CHIBIOS)/os/hal/lib/streams/chprintf.c \ - $(CHIBIOS)/os/various/shell.c \ - main.c - -# C++ sources here. -CPPSRC = - -# List ASM source files here -ASMSRC = $(STARTUPASM) $(PORTASM) $(OSALASM) - -INCDIR = $(STARTUPINC) $(KERNINC) $(PORTINC) $(OSALINC) \ - $(HALINC) $(PLATFORMINC) $(BOARDINC) $(TESTINC) \ - $(CHIBIOS)/os/hal/lib/streams $(CHIBIOS)/os/various - -# -# Project, sources and paths -############################################################################## - -############################################################################## -# Compiler settings -# - -#MCU = e500mc -meabi -msdata=none -mnew-mnemonics -mregnames -MCU = e200zx -meabi -msdata=none -mnew-mnemonics -mregnames - -#TRGT = powerpc-eabi- -TRGT = ppc-vle- -CC = $(TRGT)gcc -CPPC = $(TRGT)g++ -# Enable loading with g++ only if you need C++ runtime support. -# NOTE: You can use C++ even without C++ support if you are careful. C++ -# runtime support makes code size explode. -LD = $(TRGT)gcc -#LD = $(TRGT)g++ -CP = $(TRGT)objcopy -AS = $(TRGT)gcc -x assembler-with-cpp -AR = $(TRGT)ar -OD = $(TRGT)objdump -SZ = $(TRGT)size -HEX = $(CP) -O ihex -MOT = $(CP) -O srec -BIN = $(CP) -O binary - -# Define C warning options here -CWARN = -Wall -Wextra -Wundef -Wstrict-prototypes - -# Define C++ warning options here -CPPWARN = -Wall -Wextra -Wundef - -# -# Compiler settings -############################################################################## - -############################################################################## -# Start of user section -# - -# List all user C define here, like -D_DEBUG=1 -UDEFS = - -# Define ASM defines here -UADEFS = - -# List all user directories here -UINCDIR = - -# List the user directory to look for the libraries here -ULIBDIR = - -# List all user libraries here -ULIBS = - -# -# End of user defines -############################################################################## - -RULESPATH = $(CHIBIOS)/os/common/ports/e200/compilers/GCC -include $(RULESPATH)/rules.mk diff --git a/demos/SPC5/RT-SPC564A-EVB/UDE/debug.wsx b/demos/SPC5/RT-SPC564A-EVB/UDE/debug.wsx deleted file mode 100644 index f9f01f157..000000000 --- a/demos/SPC5/RT-SPC564A-EVB/UDE/debug.wsx +++ /dev/null @@ -1,275 +0,0 @@ - - - debug.wsx001vQTv/gAAAQAXAAIA8QkPAAAABAAAAAAAPwAAAAAAAAAEAAAAAgAAAAAAAAAAAAAAAAAAAA==4.018.03.2013 09:20:44:999000WorkspaceManagerWorkspaceManager01Core1Target0.Controller0.CoreTarget0.Controller0.Core102200702051512968711280833NormalfalseTop1272falseBottom0000falsefalse00DockPaneltrue510falseLeft0000falsefalse00DockPaneltrue510falseLeft0000falsefalse10DockPanelfalse0falseTop0000falsefalse0-1TabbedDocumenttrue510falseLeft0000falsefalse20DockPanelfalse510falseLeft0000falsefalse30DockPanelfalsetrue589false200false200true200true100truetrue0012807400128024Platform Main Menufalsetrue32444025Views ToolbarfalsetrueUDE_0x4_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueTarget BrowserImagetrueUDE_0x15_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueDiagnostic Message ViewerImagetrueUDE_0xF_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueConsoleImagetrueUDE_0x0_{DED51A60-E0B7-11D4-9112-0001034962B6}trueCPU WindowImagetrueUDE_0x1E_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueExplore SymbolsImagetrueUDE_0xA_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueProgramImagetrueUDE_0x5C_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueSingle Program WindowImagetrueUDE_0x5A_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueDisassembly WindowImagetrueUDE_0x2D_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow Special Function RegisterImagetrueUDE_0x3C_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueLocalsImagetrueUDE_0x46_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueWatchImagetrueUDE_0xA_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueSimulated I/OImagetrueUDE_0x14_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueUDE HTMLImagetrueUDE_0x19_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueArray ChartImagetrueUDE_0x1B_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueTime Traced Signal ChartImagetrueUDE_0x50_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueIP Trace ProfilingImagetrueUDE_0x28_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueMemoryImagetrueUDE_0x46_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueCall StackImagetrue443249525Edit ToolbarfalsetrueUDE_Workspace_0x1779trueCutImagetrueUDE_Workspace_0x177AtrueCopyImagetrueUDE_Workspace_0x177BtruePasteImagetrue5382427625Macro ToolbarfalsetrueUDE_0x3B_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueRun MacroImagetrueUDE_0x40_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueDebug MacroImagetrueUDE_0x3_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueBreak MacroImagetrueUDE_0x3C_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueReload MacroImagetrueUDE_Ctrl_{4D5190CD-077D-4F92-B890-4545242BF32A}_UDEWorkspacetrueImageAndTextfalse8142421025File ToolbarfalsetrueUDE_Workspace_0x1770trueNew WorkspaceImagetrueUDE_Workspace_0x1771trueOpen workspaceImagetrueUDE_Workspace_0x1772trueSave workspace asImagetrueUDE_Workspace_0x1773trueSave workspaceImagetrueUDE_Workspace_0x1774trueClose workspaceImagetrueUDE_Workspace_0x177FtrueExport view contentImagetrueUDE_Workspace_0x1778truePrintImagetrueUDE_0x1_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueLoad ProgramImagetrue34914125Config ToolbarfalsetrueUDE_0x3_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueTarget ConfigurationImagetrueUDE_0xFE_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueConnect TargetImagetrueUDE_0x100_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueDisconnect TargetImagetrueUDE_0x6_{1C85B31A-5D25-4197-9635-9C5DC28EAFD7}trueSetup Target InterfaceImagetrueUDE_0x12_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueMCU Run ControlImagetrue1444950925Debug ToolbarfalsetrueUDE_0x18_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow IPImagetrueUDE_0x5E_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow program codeImagetrueUDE_0x7_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStart ProgramImagetrueUDE_0x9_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep OverImagetrueUDE_0xA_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep IntoImagetrueUDE_0xB_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep OutImagetrueUDE_0x8_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueRun CursorImagetrueUDE_0x321_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueBreak ProgramImagetrueUDE_0xD_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueResetImagetrueUDE_0xC_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueRestart ProgramImagetrueUDE_0x3_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueBreakpointsImagetrueUDE_0x6_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueToggle BreakImagetrueUDE_Ctrl_{FB7BC773-88A4-4ECE-B9B6-7189610B0735}_CoretrueImageAndTextfalseUDE_0x3_{1C85B31A-5D25-4197-9635-9C5DC28EAFD7}trueTrigger setupImagetrue6534915125Tools ToolbarfalsetrueUDE_Ctrl_{377CE046-823C-4A05-8828-13C25D345D77}_CoretrueImageAndTextfalseUDE_0xE1_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueExecution Time SetupImagetrue01002625Show Toolbarfalsefalse02002625Window Toolbarfalsefalse02252625Workspace Toolbarfalsefalse02752625Help Toolbarfalsefalse081012802300128023Platform Status Barfalsetrue0740736128074073618.03.2013 09:21:14:0971007782411WorkspaceManager11018.03.2013 09:21:13:723MgAAAA==AQAAAA==ZAAAAA==AQAAAA==lgAAAA==AQAAAA==6AMAAA==AQAAAA==9011201WorkspaceManager110023.04.2013 11:24:02:240nAAAAD8AAYAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9011361WorkspaceManager1000\\napnt002.nap.st.com\NAPPRT0001..\..\..\..\..\Program Files\pls\UDE 4.0\StdLibrary.mso{866f82d3-fac5-43cd-8a82-0af01e46e2c5}..\..\..\..\..\Documents and Settings\disiriog\My Documents\pls\UDE 4.0The script contains a collection of macros to save memory content into different file formats -and fill target memory rangesV:\UDE\AddOns\Macro\MacroLibrary\StdMacros1.dsm' -' $Header: /Ude/AddOns/Macro/MacroLibrary/StdMacros.dsm 3 30.04.04 9:34 Weisses $ -'_______________________________________________________ -' -' universal debug engine -' -' Standard command line macros - part 1 -' -' pls Development Tools 1999-2004 -' -' 28.04.04 SW correction for UDE 1.10 -' 03.06.03 SW initial version -'_______________________________________________________ - -'_______________________________________________________ -' -' UnAss command line function -' -' generates disassembly file -' -' command line UnAss output-file range1 [range2] [range3] ..... -' range description: -' C:<startaddress>,<length> or - code -' DB:<startaddress>,<length> or - data byte -' DW:<startaddress>,<length> or - data word -' DD:<startaddress>,<length> or - data dword -'_______________________________________________________ - -Sub UnAss(File,ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - If IsNumeric(File) Then - MsgBox "File parameter wrong - " & File - Exit Sub - End If - DisASMObj.OutputPath = CStr(File) - bRetVal = DisASMObj.CreateStream(True,"UDE Disassembler output of current Program",False) - If bRetVal = True Then - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - For Range = 0 To RangeCnt -1 - KindOfRange = CStr(ParameterObj.Parameter(ParamIndex)) - KindOfRange = UCase(KindOfRange) - Address = CLng(ParameterObj.Parameter(ParamIndex +1)) - Length = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - If IsNumeric(KindOfRange) Then - If KindOfRange = 12 Then - DisASMObj.AddRange Address,Length,1 - ElseIf KindOfRange = 219 Then - DisASMObj.AddRange Address,Length,2 - ElseIf KindOfRange = 221 Then - DisASMObj.AddRange Address,Length,4 - Else - MsgBox "Invalid range type " & KindOfRange & "of range " & Range +1 - Exit Sub - End If - Else - If KindOfRange = "C" Then - DisASMObj.AddRange Address,Length,1 - ElseIf KindOfRange = "DB" Then - DisASMObj.AddRange Address,Length,2 - ElseIf KindOfRange = "DW" Then - DisASMObj.AddRange Address,Length,3 - ElseIf KindOfRange = "DD" Then - DisASMObj.AddRange Address,Length,4 - Else - MsgBox "Invalid range type " & KindOfRange & "of range " & Range +1 - Exit Sub - End If - End If - Next - DisASMObj.HexFileModeFlag = False - DisASMObj.ListModeFlag = False - DisASMObj.WriteAllRanges(False) - End If - -End Sub - -'_______________________________________________________ -' -' SaveHEX command line function -' -' generates intel-HEX file -' -' command line SaveHex output-file range1 [range2] [range3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub SaveHEX(File,ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - If IsNumeric(File) Then - MsgBox "File parameter wrong - " & File - Exit Sub - End If - DisASMObj.OutputPath = CStr(File) - bRetVal = DisASMObj.CreateStream(True,"UDE generated intel-Hex file of current Program",False) - If bRetVal = True Then - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 2 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/2 - ParamIndex = 0 - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)) - ParamIndex = ParamIndex +2 - DisASMObj.AddRange Address,Length,0 - Next - DisASMObj.HexFileModeFlag = True - DisASMObj.WriteAllRanges(False) - End If - -End Sub - -'_______________________________________________________ -' -' FillByte command line function -' -' fills memory range with byte pattern -' -' command line FillByte range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillByte(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.ByteArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub - -'_______________________________________________________ -' -' FillWord command line function -' -' fills memory range with word pattern -' -' command line FillWord range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillWord(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.WordArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)/2) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub - -'_______________________________________________________ -' -' FillDWord command line function -' -' fills memory range with dword pattern -' -' command line FillDWord range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillDWord(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.DWordArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)/4) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub63VBScript24.11.2006 14:43:20:0001WS_CORE_DUOMacro_27_02_14_13_49_07_010Execute UnAss ..Macro UnAssExecute macro UnAss0210Execute SaveHEX ..Macro SaveHEXExecute macro SaveHEX0210Execute FillByte ..Macro FillByteExecute macro FillByte0110Execute FillWord ..Macro FillWordExecute macro FillWord0110Execute FillDWord ..Macro FillDWordExecute macro FillDWord0150123.04.2013 11:22:41:9937782750Target0.Controller0.Core1023.04.2013 11:22:37:6657782640Target0.Controller0.Core110123.04.2013 11:23:07:727..\main.c7372830Target0.Controller0.Core11023.04.2013 13:49:54:0097372860Target0.Controller0.Core1123.04.2013 11:22:28:805AwAAAA==AQAAAA==kAAAAA==YAAAAA==TgAAAA==TgAAAA==TgAAAA==TgAAAA==TgAAAA==TgAAAA==AAAAAA==AAAAAA==AAAAAA==AAAAAA==7782520Target0.Controller0.Core100000000000..\build11..\build\ch.elfSoftware;enabled;0;disabled;'main {C:\ChibiStudio\workspace\SPC5\demos\SPC564Axx OS-Less Test Application\main.c} .25';main.c;1;0;;$disabled; ;disabled; ;10011100verify.txt0000000001..\main.cstm_xpc564a_spc564a70_minimodule_debug_jtag.cfg27.02.2014 13:49:06:999 diff --git a/demos/SPC5/RT-SPC564A-EVB/UDE/stm_xpc564a_spc564a70_minimodule_debug_jtag.cfg b/demos/SPC5/RT-SPC564A-EVB/UDE/stm_xpc564a_spc564a70_minimodule_debug_jtag.cfg deleted file mode 100644 index 0925a2eeb..000000000 --- a/demos/SPC5/RT-SPC564A-EVB/UDE/stm_xpc564a_spc564a70_minimodule_debug_jtag.cfg +++ /dev/null @@ -1,194 +0,0 @@ -[Main] -Signature=UDE_TARGINFO_2.0 -Description=STM XPC564A Mini Module with SPC564A70 (Jtag) -Description1=MMU preinitialized, memory mapping 1:1, VLE enabled for SRAM and Flash -Description2=PLL set for 120MHz -Description3=FLASH programming prepared but not enabled -Description4=Write Filter for BAM Module -MCUs=Controller0 -Architecture=PowerPC -Vendor=STM -Board=XPC564A Mini Module - -[Controller0] -Family=PowerPC -Type=SPC564A70 -Enabled=1 -IntClock=120000 -MemDevs=BAMWriteFilter -ExtClock=8000 - -[Controller0.Core] -Protocol=PPCJTAG -Enabled=1 - -[Controller0.Core.LoadedAddOn] -UDEMemtool=1 - -[Controller0.Core.PpcJtagTargIntf] -PortType=FTDI -ResetWaitTime=50 -MaxJtagClk=5000 -DoSramInit=1 -UseNexus=1 -AdaptiveJtagPhaseShift=1 -ConnOption=Default -ChangeJtagClk=-1 -HaltAfterReset=1 -SimioAddr=g_JtagSimioAccess -FreezeTimers=1 -InvalidTlbOnReset=1 -InvalidateCache=1 -ForceCacheFlush=1 -IgnoreLockedLines=0 -ExecInitCmds=1 -JtagTapNumber=0 -JtagNumOfTaps=1 -JtagNumIrBefore=0 -JtagNumIrAfter=0 - -SimioAddr=g_JtagSimioAccess - -FlushCache=0 -AllowMmuSetup=1 -UseExtReset=1 -HandleWdtBug=0 -ForceEndOfReset=0 -JtagViaPod=0 -AllowResetOnCheck=0 -ChangeMsr=0 -ChangeMsrValue=0x0 -ExecOnStartCmds=0 -ExecOnHaltCmds=0 -EnableProgramTimeMeasurement=0 -UseHwResetMode=0 -TargetPort=Default -HandleNexusAccessBug=0 -CommDevSel=PortType=USB,Type=FTDI -DoNotEnableTrapSwBrp=0 -BootPasswd0=0xFEEDFACE -BootPasswd1=0xCAFEBEEF -BootPasswd2=0xFFFFFFFF -BootPasswd3=0xFFFFFFFF -BootPasswd4=0xFFFFFFFF -BootPasswd5=0xFFFFFFFF -BootPasswd6=0xFFFFFFFF -BootPasswd7=0xFFFFFFFF -JtagIoType=Jtag -ExecOnHaltCmdsWhileHalted=0 -TimerForPTM=Default -AllowBreakOnUpdateBreakpoints=0 -ClearDebugStatusOnHalt=1 -HwResetMode=Simulate -UseMasterNexusIfResetState=1 -UseLocalAddressTranslation=1 -Use64BitNexus=0 -InitSramOnlyWhenNotInitialized=0 -AllowHarrForUpdateDebugRegs=0 -DisableE2EECC=0 -UseCore0ForNexusMemoryAccessWhileRunning=0 - -[Controller0.Core.PpcJtagTargIntf.InitScript] - -// select TLB 1 -SETSPR 0x274 0x10000108 0xFFFFFFFF - -// programm peripheral B modules -// TLB 1, entry 0 -SETSPR 0x270 0x10000000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=1MB -SETSPR 0x271 0xC0000500 0xFFFFFFFF -// effective page number FFF00000, I,G -SETSPR 0x272 0xFFF0000A 0xFFFFFFFF -// real page FFF00000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0xFFF0003F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// programm internal Flash, no cache because of flash -// TLB 1, entry 1 -SETSPR 0x270 0x10010000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=16MB -SETSPR 0x271 0xC0000700 0xFFFFFFFF -// effective page number 00000000 -SETSPR 0x272 0x28 0xFFFFFFFF -// real page 00000000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0x3F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// programm external memory -// TLB 1, entry 2 -SETSPR 0x270 0x10020000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=16MB -SETSPR 0x271 0xC0000700 0xFFFFFFFF -// effective page number 20000000 -SETSPR 0x272 0x20000020 0xFFFFFFFF -// real page 20000000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0x2000003F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// programm internal SRAM -// TLB 1, entry 3 -SETSPR 0x270 0x10030000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=256k -SETSPR 0x271 0xC0000400 0xFFFFFFFF -// effective page number 40000000, I -SETSPR 0x272 0x40000028 0xFFFFFFFF -// real page 0x40000028, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0x4000003F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// programm peripheral A modules -// TLB 1, entry 4 -SETSPR 0x270 0x10040000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=1MB -SETSPR 0x271 0xC0000500 0xFFFFFFFF -// effective page number C3F00000, I -SETSPR 0x272 0xC3F0000A 0xFFFFFFFF -// real page C3F00000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0xC3F0003F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// cache invalidate -SETSPR 0x3F3 0x00000003 0x00000003 -SETSPR 0x3F3 0x00000000 0x00000003 - -// setup IVOPR -// points to internal memory at 0x40000000 -SETSPR 0x3F 0x40000000 0xFFFFFFFF - -// disable watchdog -SET SWT_SR 0x0000C520 -SET SWT_SR 0x0000D928 -SET SWT_MCR 0xFF00000A - -// setup clock to 120MHz -SET 0xC3F80008 0xF000003C 0xF00F00FF -WAIT 0x2 -SET 0xC3F8000C 0x00000001 0x000000FF -WAIT 0x5 - -[Controller0.Core.PpcJtagTargIntf.OnStartScript] - -[Controller0.Core.PpcJtagTargIntf.OnHaltScript] - -[Controller0.BAMWriteFilter] -Description=BAM WriteAccess Filter -Range0Start=0xFFFFC000 -Range0Size=0x4000 -Enabled=1 -Handler=AccessFilter -Mode=ReadOnly - -[Controller0.PFLASH] -Enabled=1 -EnableMemtoolByDefault=1 - -[Controller0.Core.DebugServer.DbgFramework] -FRAMEWORK_COLOR=14804223 -[Controller0.EngineA.DebugServer.DbgFramework] -FRAMEWORK_COLOR=14794944 diff --git a/demos/SPC5/RT-SPC564A-EVB/chconf.h b/demos/SPC5/RT-SPC564A-EVB/chconf.h deleted file mode 100644 index f6244ad4b..000000000 --- a/demos/SPC5/RT-SPC564A-EVB/chconf.h +++ /dev/null @@ -1,499 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file templates/chconf.h - * @brief Configuration file template. - * @details A copy of this file must be placed in each project directory, it - * contains the application specific kernel settings. - * - * @addtogroup config - * @details Kernel related settings and hooks. - * @{ - */ - -#ifndef _CHCONF_H_ -#define _CHCONF_H_ - -/*===========================================================================*/ -/** - * @name System timers settings - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System time counter resolution. - * @note Allowed values are 16 or 32 bits. - */ -#define CH_CFG_ST_RESOLUTION 32 - -/** - * @brief System tick frequency. - * @details Frequency of the system timer that drives the system ticks. This - * setting also defines the system tick time unit. - */ -#define CH_CFG_ST_FREQUENCY 1000 - -/** - * @brief Time delta constant for the tick-less mode. - * @note If this value is zero then the system uses the classic - * periodic tick. This value represents the minimum number - * of ticks that is safe to specify in a timeout directive. - * The value one is not valid, timeouts are rounded up to - * this value. - */ -#define CH_CFG_ST_TIMEDELTA 0 - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel parameters and options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Round robin interval. - * @details This constant is the number of system ticks allowed for the - * threads before preemption occurs. Setting this value to zero - * disables the preemption for threads with equal priority and the - * round robin becomes cooperative. Note that higher priority - * threads can still preempt, the kernel is always preemptive. - * @note Disabling the round robin preemption makes the kernel more compact - * and generally faster. - * @note The round robin preemption is not supported in tickless mode and - * must be set to zero in that case. - */ -#define CH_CFG_TIME_QUANTUM 0 - -/** - * @brief Managed RAM size. - * @details Size of the RAM area to be managed by the OS. If set to zero - * then the whole available RAM is used. The core memory is made - * available to the heap allocator and/or can be used directly through - * the simplified core memory allocator. - * - * @note In order to let the OS manage the whole RAM the linker script must - * provide the @p __heap_base__ and @p __heap_end__ symbols. - * @note Requires @p CH_CFG_USE_MEMCORE. - */ -#define CH_CFG_MEMCORE_SIZE 0 - -/** - * @brief Idle thread automatic spawn suppression. - * @details When this option is activated the function @p chSysInit() - * does not spawn the idle thread. The application @p main() - * function becomes the idle thread and must implement an - * infinite loop. - */ -#define CH_CFG_NO_IDLE_THREAD FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Performance options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief OS optimization. - * @details If enabled then time efficient rather than space efficient code - * is used when two possible implementations exist. - * - * @note This is not related to the compiler optimization options. - * @note The default is @p TRUE. - */ -#define CH_CFG_OPTIMIZE_SPEED TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Subsystem options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Time Measurement APIs. - * @details If enabled then the time measurement APIs are included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_TM FALSE - -/** - * @brief Threads registry APIs. - * @details If enabled then the registry APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_REGISTRY TRUE - -/** - * @brief Threads synchronization APIs. - * @details If enabled then the @p chThdWait() function is included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_WAITEXIT TRUE - -/** - * @brief Semaphores APIs. - * @details If enabled then the Semaphores APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_SEMAPHORES TRUE - -/** - * @brief Semaphores queuing mode. - * @details If enabled then the threads are enqueued on semaphores by - * priority rather than in FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE - -/** - * @brief Mutexes APIs. - * @details If enabled then the mutexes APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MUTEXES TRUE - -/** - * @brief Enables recursive behavior on mutexes. - * @note Recursive mutexes are heavier and have an increased - * memory footprint. - * - * @note The default is @p FALSE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_MUTEXES_RECURSIVE FALSE - -/** - * @brief Conditional Variables APIs. - * @details If enabled then the conditional variables APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_CONDVARS TRUE - -/** - * @brief Conditional Variables APIs with timeout. - * @details If enabled then the conditional variables APIs with timeout - * specification are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_CONDVARS. - */ -#define CH_CFG_USE_CONDVARS_TIMEOUT TRUE - -/** - * @brief Events Flags APIs. - * @details If enabled then the event flags APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_EVENTS TRUE - -/** - * @brief Events Flags APIs with timeout. - * @details If enabled then the events APIs with timeout specification - * are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_EVENTS. - */ -#define CH_CFG_USE_EVENTS_TIMEOUT TRUE - -/** - * @brief Synchronous Messages APIs. - * @details If enabled then the synchronous messages APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MESSAGES TRUE - -/** - * @brief Synchronous Messages queuing mode. - * @details If enabled then messages are served by priority rather than in - * FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_MESSAGES. - */ -#define CH_CFG_USE_MESSAGES_PRIORITY FALSE - -/** - * @brief Mailboxes APIs. - * @details If enabled then the asynchronous messages (mailboxes) APIs are - * included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_MAILBOXES TRUE - -/** - * @brief I/O Queues APIs. - * @details If enabled then the I/O queues APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_QUEUES TRUE - -/** - * @brief Core Memory Manager APIs. - * @details If enabled then the core memory manager APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMCORE TRUE - -/** - * @brief Heap Allocator APIs. - * @details If enabled then the memory heap allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or - * @p CH_CFG_USE_SEMAPHORES. - * @note Mutexes are recommended. - */ -#define CH_CFG_USE_HEAP TRUE - -/** - * @brief Memory Pools Allocator APIs. - * @details If enabled then the memory pools allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMPOOLS TRUE - -/** - * @brief Dynamic Threads APIs. - * @details If enabled then the dynamic threads creation APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_WAITEXIT. - * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS. - */ -#define CH_CFG_USE_DYNAMIC TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Debug options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Debug option, kernel statistics. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_STATISTICS FALSE - -/** - * @brief Debug option, system state check. - * @details If enabled the correct call protocol for system APIs is checked - * at runtime. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_SYSTEM_STATE_CHECK FALSE - -/** - * @brief Debug option, parameters checks. - * @details If enabled then the checks on the API functions input - * parameters are activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_CHECKS FALSE - -/** - * @brief Debug option, consistency checks. - * @details If enabled then all the assertions in the kernel code are - * activated. This includes consistency checks inside the kernel, - * runtime anomalies and port-defined checks. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_ASSERTS FALSE - -/** - * @brief Debug option, trace buffer. - * @details If enabled then the context switch circular trace buffer is - * activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_TRACE FALSE - -/** - * @brief Debug option, stack checks. - * @details If enabled then a runtime stack check is performed. - * - * @note The default is @p FALSE. - * @note The stack check is performed in a architecture/port dependent way. - * It may not be implemented or some ports. - * @note The default failure mode is to halt the system with the global - * @p panic_msg variable set to @p NULL. - */ -#define CH_DBG_ENABLE_STACK_CHECK FALSE - -/** - * @brief Debug option, stacks initialization. - * @details If enabled then the threads working area is filled with a byte - * value when a thread is created. This can be useful for the - * runtime measurement of the used stack. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_FILL_THREADS FALSE - -/** - * @brief Debug option, threads profiling. - * @details If enabled then a field is added to the @p thread_t structure that - * counts the system ticks occurred while executing the thread. - * - * @note The default is @p FALSE. - * @note This debug option is not currently compatible with the - * tickless mode. - */ -#define CH_DBG_THREADS_PROFILING FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel hooks - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Threads descriptor structure extension. - * @details User fields added to the end of the @p thread_t structure. - */ -#define CH_CFG_THREAD_EXTRA_FIELDS \ - /* Add threads custom fields here.*/ - -/** - * @brief Threads initialization hook. - * @details User initialization code added to the @p chThdInit() API. - * - * @note It is invoked from within @p chThdInit() and implicitly from all - * the threads creation APIs. - */ -#define CH_CFG_THREAD_INIT_HOOK(tp) { \ - /* Add threads initialization code here.*/ \ -} - -/** - * @brief Threads finalization hook. - * @details User finalization code added to the @p chThdExit() API. - * - * @note It is inserted into lock zone. - * @note It is also invoked when the threads simply return in order to - * terminate. - */ -#define CH_CFG_THREAD_EXIT_HOOK(tp) { \ - /* Add threads finalization code here.*/ \ -} - -/** - * @brief Context switch hook. - * @details This hook is invoked just before switching between threads. - */ -#define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) { \ - /* Context switch code here.*/ \ -} - -/** - * @brief Idle thread enter hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to activate a power saving mode. - */ -#define CH_CFG_IDLE_ENTER_HOOK() { \ -} - -/** - * @brief Idle thread leave hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to deactivate a power saving mode. - */ -#define CH_CFG_IDLE_LEAVE_HOOK() { \ -} - -/** - * @brief Idle Loop hook. - * @details This hook is continuously invoked by the idle thread loop. - */ -#define CH_CFG_IDLE_LOOP_HOOK() { \ - /* Idle loop code here.*/ \ -} - -/** - * @brief System tick event hook. - * @details This hook is invoked in the system tick handler immediately - * after processing the virtual timers queue. - */ -#define CH_CFG_SYSTEM_TICK_HOOK() { \ - /* System tick event code here.*/ \ -} - -/** - * @brief System halt hook. - * @details This hook is invoked in case to a system halting error before - * the system is halted. - */ -#define CH_CFG_SYSTEM_HALT_HOOK(reason) { \ - /* System halt code here.*/ \ -} - -/** @} */ - -/*===========================================================================*/ -/* Port-specific settings (override port settings defaulted in chcore.h). */ -/*===========================================================================*/ - -#endif /* _CHCONF_H_ */ - -/** @} */ diff --git a/demos/SPC5/RT-SPC564A-EVB/halconf.h b/demos/SPC5/RT-SPC564A-EVB/halconf.h deleted file mode 100644 index 682795338..000000000 --- a/demos/SPC5/RT-SPC564A-EVB/halconf.h +++ /dev/null @@ -1,388 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file templates/halconf.h - * @brief HAL configuration header. - * @details HAL configuration file, this file allows to enable or disable the - * various device drivers from your application. You may also use - * this file in order to override the device drivers default settings. - * - * @addtogroup HAL_CONF - * @{ - */ - -#ifndef _HALCONF_H_ -#define _HALCONF_H_ - -#include "mcuconf.h" - -/** - * @brief Enables the TM subsystem. - */ -#if !defined(HAL_USE_TM) || defined(__DOXYGEN__) -#define HAL_USE_TM FALSE -#endif - -/** - * @brief Enables the PAL subsystem. - */ -#if !defined(HAL_USE_PAL) || defined(__DOXYGEN__) -#define HAL_USE_PAL TRUE -#endif - -/** - * @brief Enables the ADC subsystem. - */ -#if !defined(HAL_USE_ADC) || defined(__DOXYGEN__) -#define HAL_USE_ADC FALSE -#endif - -/** - * @brief Enables the CAN subsystem. - */ -#if !defined(HAL_USE_CAN) || defined(__DOXYGEN__) -#define HAL_USE_CAN FALSE -#endif - -/** - * @brief Enables the DAC subsystem. - */ -#if !defined(HAL_USE_DAC) || defined(__DOXYGEN__) -#define HAL_USE_DAC FALSE -#endif - -/** - * @brief Enables the EXT subsystem. - */ -#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) -#define HAL_USE_EXT FALSE -#endif - -/** - * @brief Enables the GPT subsystem. - */ -#if !defined(HAL_USE_GPT) || defined(__DOXYGEN__) -#define HAL_USE_GPT FALSE -#endif - -/** - * @brief Enables the I2C subsystem. - */ -#if !defined(HAL_USE_I2C) || defined(__DOXYGEN__) -#define HAL_USE_I2C FALSE -#endif - -/** - * @brief Enables the I2S subsystem. - */ -#if !defined(HAL_USE_I2S) || defined(__DOXYGEN__) -#define HAL_USE_I2S FALSE -#endif - -/** - * @brief Enables the ICU subsystem. - */ -#if !defined(HAL_USE_ICU) || defined(__DOXYGEN__) -#define HAL_USE_ICU FALSE -#endif - -/** - * @brief Enables the MAC subsystem. - */ -#if !defined(HAL_USE_MAC) || defined(__DOXYGEN__) -#define HAL_USE_MAC FALSE -#endif - -/** - * @brief Enables the MMC_SPI subsystem. - */ -#if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__) -#define HAL_USE_MMC_SPI FALSE -#endif - -/** - * @brief Enables the PWM subsystem. - */ -#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__) -#define HAL_USE_PWM FALSE -#endif - -/** - * @brief Enables the RTC subsystem. - */ -#if !defined(HAL_USE_RTC) || defined(__DOXYGEN__) -#define HAL_USE_RTC FALSE -#endif - -/** - * @brief Enables the SDC subsystem. - */ -#if !defined(HAL_USE_SDC) || defined(__DOXYGEN__) -#define HAL_USE_SDC FALSE -#endif - -/** - * @brief Enables the SERIAL subsystem. - */ -#if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__) -#define HAL_USE_SERIAL TRUE -#endif - -/** - * @brief Enables the SERIAL over USB subsystem. - */ -#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__) -#define HAL_USE_SERIAL_USB FALSE -#endif - -/** - * @brief Enables the SPI subsystem. - */ -#if !defined(HAL_USE_SPI) || defined(__DOXYGEN__) -#define HAL_USE_SPI FALSE -#endif - -/** - * @brief Enables the UART subsystem. - */ -#if !defined(HAL_USE_UART) || defined(__DOXYGEN__) -#define HAL_USE_UART FALSE -#endif - -/** - * @brief Enables the USB subsystem. - */ -#if !defined(HAL_USE_USB) || defined(__DOXYGEN__) -#define HAL_USE_USB FALSE -#endif - -/** - * @brief Enables the WDG subsystem. - */ -#if !defined(HAL_USE_WDG) || defined(__DOXYGEN__) -#define HAL_USE_WDG FALSE -#endif - -/*===========================================================================*/ -/* ADC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__) -#define ADC_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define ADC_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* CAN driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Sleep mode related APIs inclusion switch. - */ -#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__) -#define CAN_USE_SLEEP_MODE TRUE -#endif - -/*===========================================================================*/ -/* I2C driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables the mutual exclusion APIs on the I2C bus. - */ -#if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define I2C_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* MAC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables an event sources for incoming packets. - */ -#if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__) -#define MAC_USE_ZERO_COPY FALSE -#endif - -/** - * @brief Enables an event sources for incoming packets. - */ -#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__) -#define MAC_USE_EVENTS TRUE -#endif - -/*===========================================================================*/ -/* MMC_SPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Delays insertions. - * @details If enabled this options inserts delays into the MMC waiting - * routines releasing some extra CPU time for the threads with - * lower priority, this may slow down the driver a bit however. - * This option is recommended also if the SPI driver does not - * use a DMA channel and heavily loads the CPU. - */ -#if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__) -#define MMC_NICE_WAITING TRUE -#endif - -/*===========================================================================*/ -/* SDC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Number of initialization attempts before rejecting the card. - * @note Attempts are performed at 10mS intervals. - */ -#if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__) -#define SDC_INIT_RETRY 100 -#endif - -/** - * @brief Include support for MMC cards. - * @note MMC support is not yet implemented so this option must be kept - * at @p FALSE. - */ -#if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__) -#define SDC_MMC_SUPPORT FALSE -#endif - -/** - * @brief Delays insertions. - * @details If enabled this options inserts delays into the MMC waiting - * routines releasing some extra CPU time for the threads with - * lower priority, this may slow down the driver a bit however. - */ -#if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__) -#define SDC_NICE_WAITING TRUE -#endif - -/*===========================================================================*/ -/* SERIAL driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Default bit rate. - * @details Configuration parameter, this is the baud rate selected for the - * default configuration. - */ -#if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__) -#define SERIAL_DEFAULT_BITRATE 38400 -#endif - -/** - * @brief Serial buffers size. - * @details Configuration parameter, you can change the depth of the queue - * buffers depending on the requirements of your application. - * @note The default is 16 bytes for both the transmission and receive - * buffers. - */ -#if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__) -#define SERIAL_BUFFERS_SIZE 16 -#endif - -/*===========================================================================*/ -/* SERIAL_USB driver related setting. */ -/*===========================================================================*/ - -/** - * @brief Serial over USB buffers size. - * @details Configuration parameter, the buffer size must be a multiple of - * the USB data endpoint maximum packet size. - * @note The default is 256 bytes for both the transmission and receive - * buffers. - */ -#if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__) -#define SERIAL_USB_BUFFERS_SIZE 256 -#endif - -/** - * @brief Serial over USB number of buffers. - * @note The default is 2 buffers. - */ -#if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__) -#define SERIAL_USB_BUFFERS_NUMBER 2 -#endif - -/*===========================================================================*/ -/* SPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__) -#define SPI_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define SPI_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* UART driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__) -#define UART_USE_WAIT FALSE -#endif - -/** - * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define UART_USE_MUTUAL_EXCLUSION FALSE -#endif - -/*===========================================================================*/ -/* USB driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(USB_USE_WAIT) || defined(__DOXYGEN__) -#define USB_USE_WAIT FALSE -#endif - -#endif /* _HALCONF_H_ */ - -/** @} */ diff --git a/demos/SPC5/RT-SPC564A-EVB/main.c b/demos/SPC5/RT-SPC564A-EVB/main.c deleted file mode 100644 index ab881fdc4..000000000 --- a/demos/SPC5/RT-SPC564A-EVB/main.c +++ /dev/null @@ -1,185 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#include "ch.h" -#include "hal.h" -#include "test.h" -#include "shell.h" -#include "chprintf.h" - -#define SHELL_WA_SIZE THD_WORKING_AREA_SIZE(1024) -#define TEST_WA_SIZE THD_WORKING_AREA_SIZE(256) - -static void cmd_mem(BaseSequentialStream *chp, int argc, char *argv[]) { - size_t n, size; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: mem\r\n"); - return; - } - n = chHeapStatus(NULL, &size); - chprintf(chp, "core free memory : %u bytes\r\n", chCoreGetStatusX()); - chprintf(chp, "heap fragments : %u\r\n", n); - chprintf(chp, "heap free total : %u bytes\r\n", size); -} - -static void cmd_threads(BaseSequentialStream *chp, int argc, char *argv[]) { - static const char *states[] = {CH_STATE_NAMES}; - thread_t *tp; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: threads\r\n"); - return; - } - chprintf(chp, " addr stack prio refs state time\r\n"); - tp = chRegFirstThread(); - do { - chprintf(chp, "%08lx %08lx %4lu %4lu %9s\r\n", - (uint32_t)tp, (uint32_t)tp->p_ctx.sp, - (uint32_t)tp->p_prio, (uint32_t)(tp->p_refs - 1), - states[tp->p_state]); - tp = chRegNextThread(tp); - } while (tp != NULL); -} - -static void cmd_test(BaseSequentialStream *chp, int argc, char *argv[]) { - thread_t *tp; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: test\r\n"); - return; - } - tp = chThdCreateFromHeap(NULL, TEST_WA_SIZE, chThdGetPriorityX(), - TestThread, chp); - if (tp == NULL) { - chprintf(chp, "out of memory\r\n"); - return; - } - chThdWait(tp); -} - -static const ShellCommand commands[] = { - {"mem", cmd_mem}, - {"threads", cmd_threads}, - {"test", cmd_test}, - {NULL, NULL} -}; - -static const ShellConfig shell_cfg1 = { - (BaseSequentialStream *)&SD1, - commands -}; - -/* - * LEDs blinker thread, times are in milliseconds. - */ -static THD_WORKING_AREA(waThread1, 128); -static THD_FUNCTION(Thread1, arg) { - - (void)arg; - chRegSetThreadName("blinker"); - - while (true) { - unsigned i; - - for (i = 0; i < 4; i++) { - palClearPad(PORT11, P11_LED1); - chThdSleepMilliseconds(100); - palClearPad(PORT11, P11_LED2); - chThdSleepMilliseconds(100); - palClearPad(PORT11, P11_LED3); - chThdSleepMilliseconds(100); - palClearPad(PORT11, P11_LED4); - chThdSleepMilliseconds(100); - palSetPad(PORT11, P11_LED1); - chThdSleepMilliseconds(100); - palSetPad(PORT11, P11_LED2); - chThdSleepMilliseconds(100); - palSetPad(PORT11, P11_LED3); - chThdSleepMilliseconds(100); - palSetPad(PORT11, P11_LED4); - chThdSleepMilliseconds(300); - } - - for (i = 0; i < 4; i++) { - palTogglePad(PORT11, P11_LED1); - chThdSleepMilliseconds(250); - palTogglePad(PORT11, P11_LED1); - palTogglePad(PORT11, P11_LED2); - chThdSleepMilliseconds(250); - palTogglePad(PORT11, P11_LED2); - palTogglePad(PORT11, P11_LED3); - chThdSleepMilliseconds(250); - palTogglePad(PORT11, P11_LED3); - palTogglePad(PORT11, P11_LED4); - chThdSleepMilliseconds(250); - palTogglePad(PORT11, P11_LED4); - } - - palSetPort(PORT11, - PAL_PORT_BIT(P11_LED1) | PAL_PORT_BIT(P11_LED2) | - PAL_PORT_BIT(P11_LED3) | PAL_PORT_BIT(P11_LED4)); - } -} - -/* - * Application entry point. - */ -int main(void) { - thread_t *shelltp = NULL; - - /* - * System initializations. - * - HAL initialization, this also initializes the configured device drivers - * and performs the board-specific initializations. - * - Kernel initialization, the main() function becomes a thread and the - * RTOS is active. - */ - halInit(); - chSysInit(); - - /* - * Shell manager initialization. - */ - shellInit(); - - /* - * Activates the serial driver 1 using the driver default configuration. - */ - sdStart(&SD1, NULL); - - /* - * Creates the blinker thread. - */ - chThdCreateStatic(waThread1, sizeof(waThread1), NORMALPRIO, Thread1, NULL); - - /* - * Normal main() thread activity. - */ - while (true) { - if (!shelltp) - shelltp = shellCreate(&shell_cfg1, SHELL_WA_SIZE, NORMALPRIO); - else if (chThdTerminatedX(shelltp)) { - chThdRelease(shelltp); /* Recovers memory of the previous shell. */ - shelltp = NULL; /* Triggers spawning of a new shell. */ - } - chThdSleepMilliseconds(1000); - } - return 0; -} diff --git a/demos/SPC5/RT-SPC564A-EVB/mcuconf.h b/demos/SPC5/RT-SPC564A-EVB/mcuconf.h deleted file mode 100644 index 9094394d5..000000000 --- a/demos/SPC5/RT-SPC564A-EVB/mcuconf.h +++ /dev/null @@ -1,188 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#ifndef _MCUCONF_H_ -#define _MCUCONF_H_ - -/* - * SPC564Axx drivers configuration. - * The following settings override the default settings present in - * the various device driver implementation headers. - * Note that the settings for each driver only have effect if the whole - * driver is enabled in halconf.h. - * - * IRQ priorities: - * 1...15 Lowest...Highest. - * DMA priorities: - * 0...15 Highest...Lowest. - */ - -#define SPC564Axx_MCUCONF - -/* - * HAL driver system settings. - */ -#define SPC5_NO_INIT FALSE -#define SPC5_CLK_BYPASS FALSE -#define SPC5_ALLOW_OVERCLOCK FALSE -#define SPC5_CLK_PREDIV_VALUE 2 -#define SPC5_CLK_MFD_VALUE 75 -#define SPC5_CLK_RFD SPC5_RFD_DIV2 -#define SPC5_FLASH_BIUCR (BIUCR_BANK1_TOO | \ - BIUCR_MASTER4_PREFETCH | \ - BIUCR_MASTER0_PREFETCH | \ - BIUCR_DPFEN | \ - BIUCR_IPFEN | \ - BIUCR_PFLIM_ON_MISS | \ - BIUCR_BFEN) -#define SPC5_EMIOS_GPRE_VALUE 20 - -/* - * EDMA driver settings. - */ -#define SPC5_EDMA_CR_SETTING (EDMA_CR_GRP3PRI(3) | \ - EDMA_CR_GRP2PRI(2) | \ - EDMA_CR_GRP1PRI(1) | \ - EDMA_CR_GRP0PRI(0) | \ - EDMA_CR_EMLM | \ - EDMA_CR_ERGA) -#define SPC5_EDMA_GROUP0_PRIORITIES 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 -#define SPC5_EDMA_GROUP1_PRIORITIES 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 -#define SPC5_EDMA_GROUP2_PRIORITIES 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 -#define SPC5_EDMA_GROUP3_PRIORITIES 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 -#define SPC5_EDMA_ERROR_IRQ_PRIO 12 -#define SPC5_EDMA_ERROR_HANDLER() osalSysHalt("DMA failure") - -/* - * ADC driver settings. - */ -#define SPC5_ADC_USE_ADC0_Q0 FALSE -#define SPC5_ADC_USE_ADC0_Q1 FALSE -#define SPC5_ADC_USE_ADC0_Q2 FALSE -#define SPC5_ADC_USE_ADC1_Q3 FALSE -#define SPC5_ADC_USE_ADC1_Q4 FALSE -#define SPC5_ADC_USE_ADC1_Q5 FALSE -#define SPC5_ADC_FIFO0_DMA_IRQ_PRIO 12 -#define SPC5_ADC_FIFO1_DMA_IRQ_PRIO 12 -#define SPC5_ADC_FIFO2_DMA_IRQ_PRIO 12 -#define SPC5_ADC_FIFO3_DMA_IRQ_PRIO 12 -#define SPC5_ADC_FIFO4_DMA_IRQ_PRIO 12 -#define SPC5_ADC_FIFO5_DMA_IRQ_PRIO 12 -#define SPC5_ADC_CR_CLK_PS ADC_CR_CLK_PS(5) -#define SPC5_ADC_PUDCR {ADC_PUDCR_NONE,ADC_PUDCR_NONE,ADC_PUDCR_NONE,ADC_PUDCR_NONE,ADC_PUDCR_NONE,ADC_PUDCR_NONE,ADC_PUDCR_NONE,ADC_PUDCR_NONE} - -/* - * SERIAL driver system settings. - */ -#define SPC5_USE_ESCIA TRUE -#define SPC5_USE_ESCIB FALSE -#define SPC5_USE_ESCIC FALSE -#define SPC5_ESCIA_PRIORITY 8 -#define SPC5_ESCIB_PRIORITY 8 -#define SPC5_ESCIC_PRIORITY 8 - -/* - * SPI driver system settings. - */ -#define SPC5_SPI_USE_DSPI1 FALSE -#define SPC5_SPI_USE_DSPI2 FALSE -#define SPC5_SPI_USE_DSPI3 FALSE -#define SPC5_SPI_DMA_MODE SPC5_SPI_DMA_RX_ONLY -#define SPC5_SPI_DSPI1_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3 | SPC5_MCR_PCSIS4 | SPC5_MCR_PCSIS5 | SPC5_MCR_PCSIS6 | SPC5_MCR_PCSIS7) -#define SPC5_SPI_DSPI2_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3 | SPC5_MCR_PCSIS4 | SPC5_MCR_PCSIS5 | SPC5_MCR_PCSIS6 | SPC5_MCR_PCSIS7) -#define SPC5_SPI_DSPI3_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3 | SPC5_MCR_PCSIS4 | SPC5_MCR_PCSIS5 | SPC5_MCR_PCSIS6 | SPC5_MCR_PCSIS7) -#define SPC5_SPI_DSPI1_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI2_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI3_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI1_IRQ_PRIO 10 -#define SPC5_SPI_DSPI2_IRQ_PRIO 10 -#define SPC5_SPI_DSPI3_IRQ_PRIO 10 -#define SPC5_SPI_DMA_ERROR_HOOK(spip) osalSysHalt("DSPI DMA failure") - -/* - * ICU driver system settings. - */ -#define SPC5_ICU_USE_EMIOS_CH1 FALSE -#define SPC5_ICU_USE_EMIOS_CH2 FALSE -#define SPC5_ICU_USE_EMIOS_CH3 FALSE -#define SPC5_ICU_USE_EMIOS_CH4 FALSE -#define SPC5_ICU_USE_EMIOS_CH5 FALSE -#define SPC5_ICU_USE_EMIOS_CH6 FALSE -#define SPC5_ICU_USE_EMIOS_CH11 FALSE -#define SPC5_ICU_USE_EMIOS_CH13 FALSE -#define SPC5_ICU_USE_EMIOS_CH7 FALSE -#define SPC5_ICU_USE_EMIOS_CH16 FALSE -#define SPC5_ICU_USE_EMIOS_CH17 FALSE -#define SPC5_ICU_USE_EMIOS_CH18 FALSE -#define SPC5_EMIOS_FLAG_F1_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F2_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F3_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F4_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F5_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F6_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F11_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F13_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F7_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F16_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F17_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F18_PRIORITY 8 - -/* - * PWM driver system settings. - */ -#define SPC5_PWM_USE_EMIOS_CH0 FALSE -#define SPC5_PWM_USE_EMIOS_CH8 FALSE -#define SPC5_PWM_USE_EMIOS_CH9 FALSE -#define SPC5_PWM_USE_EMIOS_CH10 FALSE -#define SPC5_PWM_USE_EMIOS_CH12 FALSE -#define SPC5_PWM_USE_EMIOS_CH14 FALSE -#define SPC5_PWM_USE_EMIOS_CH15 FALSE -#define SPC5_PWM_USE_EMIOS_CH23 FALSE -#define SPC5_PWM_USE_EMIOS_CH19 FALSE -#define SPC5_PWM_USE_EMIOS_CH20 FALSE -#define SPC5_PWM_USE_EMIOS_CH21 FALSE -#define SPC5_PWM_USE_EMIOS_CH22 FALSE -#define SPC5_EMIOS_FLAG_F0_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F8_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F9_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F10_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F12_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F14_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F15_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F23_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F19_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F20_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F21_PRIORITY 8 -#define SPC5_EMIOS_FLAG_F22_PRIORITY 8 - -/* - * CAN driver system settings. - */ -#define SPC5_CAN_USE_FILTERS FALSE - -#define SPC5_CAN_USE_FLEXCAN0 FALSE -#define SPC5_CAN_FLEXCAN0_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN0_IRQ_PRIORITY 11 - -#define SPC5_CAN_USE_FLEXCAN1 FALSE -#define SPC5_CAN_FLEXCAN1_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN1_IRQ_PRIORITY 11 - -#define SPC5_CAN_USE_FLEXCAN2 FALSE -#define SPC5_CAN_FLEXCAN2_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN2_IRQ_PRIORITY 11 - -#endif /* _MCUCONF_H_ */ diff --git a/demos/SPC5/RT-SPC56EC-EVB/.cproject b/demos/SPC5/RT-SPC56EC-EVB/.cproject deleted file mode 100644 index dfc5a6ae8..000000000 --- a/demos/SPC5/RT-SPC56EC-EVB/.cproject +++ /dev/null @@ -1,57 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/SPC5/RT-SPC56EC-EVB/.project b/demos/SPC5/RT-SPC56EC-EVB/.project deleted file mode 100644 index 4eee5e231..000000000 --- a/demos/SPC5/RT-SPC56EC-EVB/.project +++ /dev/null @@ -1,43 +0,0 @@ - - - RT-SPC56EC-EVB - - - - - - org.eclipse.cdt.managedbuilder.core.genmakebuilder - clean,full,incremental, - - - - - org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder - full,incremental, - - - - - - org.eclipse.cdt.core.cnature - org.eclipse.cdt.managedbuilder.core.managedBuildNature - org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - - - - board - 2 - CHIBIOS/os/hal/boards/ST_EVB_SPC56EC - - - os - 2 - CHIBIOS/os - - - test - 2 - CHIBIOS/test - - - diff --git a/demos/SPC5/RT-SPC56EC-EVB/Makefile b/demos/SPC5/RT-SPC56EC-EVB/Makefile deleted file mode 100644 index bacf31add..000000000 --- a/demos/SPC5/RT-SPC56EC-EVB/Makefile +++ /dev/null @@ -1,188 +0,0 @@ -############################################################################## -# Build global options -# NOTE: Can be overridden externally. -# - -# Compiler options here. -ifeq ($(USE_OPT),) - USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16 -endif - -# C specific options here (added to USE_OPT). -ifeq ($(USE_COPT),) - USE_COPT = -endif - -# C++ specific options here (added to USE_OPT). -ifeq ($(USE_CPPOPT),) - USE_CPPOPT = -fno-rtti -endif - -# Enable this if you want the linker to remove unused code and data. -ifeq ($(USE_LINK_GC),) - USE_LINK_GC = yes -endif - -# Linker extra options here. -ifeq ($(USE_LDOPT),) - USE_LDOPT = -endif - -# Enable this if you want link time optimizations (LTO) -ifeq ($(USE_LTO),) - USE_LTO = no -endif - -# If enabled, this option allows to compile the application in VLE mode. -ifeq ($(USE_VLE),) - USE_VLE = yes -endif - -# Enable this if you want to see the full log while compiling. -ifeq ($(USE_VERBOSE_COMPILE),) - USE_VERBOSE_COMPILE = no -endif - -# If enabled, this option makes the build process faster by not compiling -# modules not used in the current configuration. -ifeq ($(USE_SMART_BUILD),) - USE_SMART_BUILD = yes -endif - -# -# Build global options -############################################################################## - -############################################################################## -# Architecture or project specific options -# - -# Stack size to be allocated to the process stack. This stack is -# the stack used by the main() thread. -ifeq ($(USE_PROCESS_STACKSIZE),) - USE_PROCESS_STACKSIZE = 0x400 -endif - -# Stack size to the allocated to the optional exceptions stack. This -# stack is used for processing interrupts and exceptions. -ifeq ($(USE_EXCEPTIONS_STACKSIZE),) - USE_EXCEPTIONS_STACKSIZE = 0 -endif - -# -# Architecture or project specific options -############################################################################## - -############################################################################## -# Project, sources and paths -# - -# Define project name here -PROJECT = ch - -# Imported source files and paths -CHIBIOS = ../../.. -# Startup files. -include $(CHIBIOS)/os/common/ports/e200/compilers/GCC/mk/startup_spc56ecxx.mk -# HAL-OSAL files (optional). -include $(CHIBIOS)/os/hal/hal.mk -include $(CHIBIOS)/os/hal/boards/ST_EVB_SPC56EC/board.mk -include $(CHIBIOS)/os/hal/ports/SPC5/SPC56ECxx/platform.mk -include $(CHIBIOS)/os/hal/osal/rt/osal.mk -# RTOS files (optional). -include $(CHIBIOS)/os/rt/rt.mk -include $(CHIBIOS)/os/rt/ports/e200/compilers/GCC/mk/port.mk -# Other files (optional). -include $(CHIBIOS)/test/rt/test.mk - -# Define linker script file here -LDSCRIPT= $(STARTUPLD)/SPC56EC74.ld - -# C sources here. -CSRC = $(STARTUPSRC) \ - $(KERNSRC) \ - $(PORTSRC) \ - $(OSALSRC) \ - $(HALSRC) \ - $(PLATFORMSRC) \ - $(BOARDSRC) \ - $(TESTSRC) \ - $(CHIBIOS)/os/hal/lib/streams/memstreams.c \ - $(CHIBIOS)/os/hal/lib/streams/chprintf.c \ - $(CHIBIOS)/os/various/shell.c \ - main.c - -# C++ sources here. -CPPSRC = - -# List ASM source files here -ASMSRC = $(STARTUPASM) $(PORTASM) $(OSALASM) - -INCDIR = $(STARTUPINC) $(KERNINC) $(PORTINC) $(OSALINC) \ - $(HALINC) $(PLATFORMINC) $(BOARDINC) $(TESTINC) \ - $(CHIBIOS)/os/hal/lib/streams $(CHIBIOS)/os/various - -# -# Project, sources and paths -############################################################################## - -############################################################################## -# Compiler settings -# - -#MCU = e500mc -meabi -msdata=none -mnew-mnemonics -mregnames -MCU = e200zx -meabi -msdata=none -mnew-mnemonics -mregnames - -#TRGT = powerpc-eabi- -TRGT = ppc-vle- -CC = $(TRGT)gcc -CPPC = $(TRGT)g++ -# Enable loading with g++ only if you need C++ runtime support. -# NOTE: You can use C++ even without C++ support if you are careful. C++ -# runtime support makes code size explode. -LD = $(TRGT)gcc -#LD = $(TRGT)g++ -CP = $(TRGT)objcopy -AS = $(TRGT)gcc -x assembler-with-cpp -AR = $(TRGT)ar -OD = $(TRGT)objdump -SZ = $(TRGT)size -HEX = $(CP) -O ihex -MOT = $(CP) -O srec -BIN = $(CP) -O binary - -# Define C warning options here -CWARN = -Wall -Wextra -Wundef -Wstrict-prototypes - -# Define C++ warning options here -CPPWARN = -Wall -Wextra -Wundef - -# -# Compiler settings -############################################################################## - -############################################################################## -# Start of user section -# - -# List all user C define here, like -D_DEBUG=1 -UDEFS = -DSPC56ECXX_FMPLL_CLOCK_ERRATA_WORKAROUND=0 - -# Define ASM defines here -UADEFS = - -# List all user directories here -UINCDIR = - -# List the user directory to look for the libraries here -ULIBDIR = - -# List all user libraries here -ULIBS = - -# -# End of user defines -############################################################################## - -RULESPATH = $(CHIBIOS)/os/common/ports/e200/compilers/GCC -include $(RULESPATH)/rules.mk diff --git a/demos/SPC5/RT-SPC56EC-EVB/UDE/debug.wsx b/demos/SPC5/RT-SPC56EC-EVB/UDE/debug.wsx deleted file mode 100644 index df26ace35..000000000 --- a/demos/SPC5/RT-SPC56EC-EVB/UDE/debug.wsx +++ /dev/null @@ -1,273 +0,0 @@ - - - debug.wsx000vQTv/gAAAQAXAAIA8QkPAAAABAAAAAAAPwAAAAAAAAAEAAAAAgAAAAAAAAAAAAAAAAAAAA==4.028.08.2013 14:58:49:999000000WorkspaceManagerWorkspaceManager01Core01Target0.Controller0.Core0Target0.Controller0.Core010Core11Target0.Controller0.Core1Target0.Controller0.Core11033007632112968181280780NormalfalseTop1272falseBottom0000falsefalse00DockPaneltrue457falseLeft0000falsefalse00DockPanelfalse457falseLeft0000falsefalse10DockPanelfalse0falseTop0000falsefalse2-1TabbedDocumentfalse457falseLeft0000falsefalse30DockPaneltrue457falseLeft0000falsefalse20DockPanelfalse457falseLeft0000falsefalse40DockPanelfalse0falseTop0000falsefalse1-1TabbedDocumentfalse0falseTop0000falsefalse0-1TabbedDocumenttruetrue632false200false200true200true100truetrue0012807400128024Platform Main Menufalsetrue32427625Macro ToolbarfalsetrueUDE_0x3B_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueRun MacroImagetrueUDE_0x40_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueDebug MacroImagetrueUDE_0x3_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueBreak MacroImagetrueUDE_0x3C_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueReload MacroImagetrueUDE_Ctrl_{4D5190CD-077D-4F92-B890-4545242BF32A}_UDEWorkspacetrueImageAndTextfalse2792414125Config ToolbarfalsetrueUDE_0x3_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueTarget ConfigurationImagetrueUDE_0xFE_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueConnect TargetImagetrueUDE_0x100_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueDisconnect TargetImagetrueUDE_0x6_{1C85B31A-5D25-4197-9635-9C5DC28EAFD7}trueSetup Target InterfaceImagetrueUDE_0x12_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueMCU Run ControlImagetrue4202425925Tools ToolbarfalsetrueUDE_Ctrl_{377CE046-823C-4A05-8828-13C25D345D77}_Core0trueImageAndTextfalseUDE_0xE1_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueExecution Time SetupImagetrueUDE_Ctrl_{377CE046-823C-4A05-8828-13C25D345D77}_Core1trueImageAndTextfalse679249525Edit ToolbarfalsetrueUDE_Workspace_0x1779trueCutImagetrueUDE_Workspace_0x177AtrueCopyImagetrueUDE_Workspace_0x177BtruePasteImagetrue774244925File ToolbarfalsetrueUDE_Workspace_0x1770trueNew WorkspaceImagetrueUDE_Workspace_0x1771falseOpen workspaceImagetrueUDE_Workspace_0x1772falseSave workspace asImagetrueUDE_Workspace_0x1773falseSave workspaceImagetrueUDE_Workspace_0x1774falseClose workspaceImagetrueUDE_Workspace_0x177FfalseExport view contentImagetrueUDE_Workspace_0x1778falsePrintImagetrueUDE_0x1_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}falseLoad ProgramImagetrue8232444025Views ToolbarfalsetrueUDE_0x4_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueTarget BrowserImagetrueUDE_0x15_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueDiagnostic Message ViewerImagetrueUDE_0xF_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueConsoleImagetrueUDE_0x0_{DED51A60-E0B7-11D4-9112-0001034962B6}trueCPU WindowImagetrueUDE_0x1E_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueExplore SymbolsImagetrueUDE_0xA_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueProgramImagetrueUDE_0x5C_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueSingle Program WindowImagetrueUDE_0x5A_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueDisassembly WindowImagetrueUDE_0x2D_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow Special Function RegisterImagetrueUDE_0x3C_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueLocalsImagetrueUDE_0x46_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueWatchImagetrueUDE_0xA_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueSimulated I/OImagetrueUDE_0x14_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueUDE HTMLImagetrueUDE_0x19_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueArray ChartImagetrueUDE_0x1B_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueTime Traced Signal ChartImagetrueUDE_0x50_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueIP Trace ProfilingImagetrueUDE_0x28_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueMemoryImagetrueUDE_0x46_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueCall StackImagetrue34949225Debug ToolbarfalsetrueUDE_0x18_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow IPImagetrueUDE_0x5E_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow program codeImagetrueUDE_0x7_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStart ProgramImagetrueUDE_0x9_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep OverImagetrueUDE_0xA_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep IntoImagetrueUDE_0xB_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep OutImagetrueUDE_0x8_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueRun CursorImagetrueUDE_0x321_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueBreak ProgramImagetrueUDE_0xD_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueResetImagetrueUDE_0xC_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueRestart ProgramImagetrueUDE_0x3_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueBreakpointsImagetrueUDE_0x6_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueToggle BreakImagetrueUDE_Ctrl_{FB7BC773-88A4-4ECE-B9B6-7189610B0735}_Core0trueImageAndTextfalseUDE_0x3_{1C85B31A-5D25-4197-9635-9C5DC28EAFD7}falseTrigger setupImagetrueUDE_Ctrl_{FB7BC773-88A4-4ECE-B9B6-7189610B0735}_Core1falseImageAndTextfalse01002625Show Toolbarfalsefalse02002625Window Toolbarfalsefalse02252625Workspace Toolbarfalsefalse02752625Help Toolbarfalsefalse075712802300128023Platform Status Barfalsetrue0740683128074068328.08.2013 15:00:07:1451007782411WorkspaceManager11028.08.2013 15:00:07:129MgAAAA==AQAAAA==ZAAAAA==AQAAAA==lgAAAA==AQAAAA==6AMAAA==AQAAAA==9011201WorkspaceManager11000\\napnt002.nap.st.com\NAPPRT0001..\..\..\..\..\..\Program Files (x86)\pls\UDE 4.0\StdLibrary.mso416,1097,367,613620,965,340,66200{866f82d3-fac5-43cd-8a82-0af01e46e2c5}..\..\..\..\..\..\Users\disiriog\Documents\pls\UDE 4.0The script contains a collection of macros to save memory content into different file formats -and fill target memory rangesV:\UDE\AddOns\Macro\MacroLibrary\StdMacros1.dsm' -' $Header: /Ude/AddOns/Macro/MacroLibrary/StdMacros.dsm 3 30.04.04 9:34 Weisses $ -'_______________________________________________________ -' -' universal debug engine -' -' Standard command line macros - part 1 -' -' pls Development Tools 1999-2004 -' -' 28.04.04 SW correction for UDE 1.10 -' 03.06.03 SW initial version -'_______________________________________________________ - -'_______________________________________________________ -' -' UnAss command line function -' -' generates disassembly file -' -' command line UnAss output-file range1 [range2] [range3] ..... -' range description: -' C:<startaddress>,<length> or - code -' DB:<startaddress>,<length> or - data byte -' DW:<startaddress>,<length> or - data word -' DD:<startaddress>,<length> or - data dword -'_______________________________________________________ - -Sub UnAss(File,ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - If IsNumeric(File) Then - MsgBox "File parameter wrong - " & File - Exit Sub - End If - DisASMObj.OutputPath = CStr(File) - bRetVal = DisASMObj.CreateStream(True,"UDE Disassembler output of current Program",False) - If bRetVal = True Then - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - For Range = 0 To RangeCnt -1 - KindOfRange = CStr(ParameterObj.Parameter(ParamIndex)) - KindOfRange = UCase(KindOfRange) - Address = CLng(ParameterObj.Parameter(ParamIndex +1)) - Length = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - If IsNumeric(KindOfRange) Then - If KindOfRange = 12 Then - DisASMObj.AddRange Address,Length,1 - ElseIf KindOfRange = 219 Then - DisASMObj.AddRange Address,Length,2 - ElseIf KindOfRange = 221 Then - DisASMObj.AddRange Address,Length,4 - Else - MsgBox "Invalid range type " & KindOfRange & "of range " & Range +1 - Exit Sub - End If - Else - If KindOfRange = "C" Then - DisASMObj.AddRange Address,Length,1 - ElseIf KindOfRange = "DB" Then - DisASMObj.AddRange Address,Length,2 - ElseIf KindOfRange = "DW" Then - DisASMObj.AddRange Address,Length,3 - ElseIf KindOfRange = "DD" Then - DisASMObj.AddRange Address,Length,4 - Else - MsgBox "Invalid range type " & KindOfRange & "of range " & Range +1 - Exit Sub - End If - End If - Next - DisASMObj.HexFileModeFlag = False - DisASMObj.ListModeFlag = False - DisASMObj.WriteAllRanges(False) - End If - -End Sub - -'_______________________________________________________ -' -' SaveHEX command line function -' -' generates intel-HEX file -' -' command line SaveHex output-file range1 [range2] [range3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub SaveHEX(File,ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - If IsNumeric(File) Then - MsgBox "File parameter wrong - " & File - Exit Sub - End If - DisASMObj.OutputPath = CStr(File) - bRetVal = DisASMObj.CreateStream(True,"UDE generated intel-Hex file of current Program",False) - If bRetVal = True Then - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 2 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/2 - ParamIndex = 0 - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)) - ParamIndex = ParamIndex +2 - DisASMObj.AddRange Address,Length,0 - Next - DisASMObj.HexFileModeFlag = True - DisASMObj.WriteAllRanges(False) - End If - -End Sub - -'_______________________________________________________ -' -' FillByte command line function -' -' fills memory range with byte pattern -' -' command line FillByte range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillByte(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.ByteArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub - -'_______________________________________________________ -' -' FillWord command line function -' -' fills memory range with word pattern -' -' command line FillWord range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillWord(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.WordArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)/2) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub - -'_______________________________________________________ -' -' FillDWord command line function -' -' fills memory range with dword pattern -' -' command line FillDWord range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillDWord(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.DWordArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)/4) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub63VBScript24.11.2006 14:43:20:0001WS_CORE_DUOMacro_24_02_14_14_13_33_010Execute UnAss ..Macro UnAssExecute macro UnAss0210Execute SaveHEX ..Macro SaveHEXExecute macro SaveHEX0210Execute FillByte ..Macro FillByteExecute macro FillByte0110Execute FillWord ..Macro FillWordExecute macro FillWord0110Execute FillDWord ..Macro FillDWordExecute macro FillDWord0150128.08.2013 15:32:24:4787782650Target0.Controller0.Core01028.08.2013 15:00:07:1767782740Target0.Controller0.Core0110228.08.2013 15:30:43:451..\main.c17372830Target0.Controller0.Core01024.02.2014 14:12:15:832..\..\..\..\os\hal\ports\SPC5\SPC56ECxx\hal_lld.c27372880Target0.Controller0.Core011128.08.2013 15:31:19:129AwAAAA==AQAAAA==fQAAAA==UwAAAA==QwAAAA==QwAAAA==QwAAAA==QwAAAA==QwAAAA==SAAAAA==AAAAAA==AAAAAA==AAAAAA==AAAAAA==7782520Target0.Controller0.Core010028.08.2013 15:32:08:193144096008601642949672950Target0.Controller0.Core010000000001..\build\ch.elfSoftware;enabled;0;disabled;'main {C:\ChibiStudio\workspace\SPC5\demos\SPC56ECxx OS-Less Test Application\main.c} .25';main.c;1;0;;$disabled; ;disabled; ;1..\build\ch.elf3,0000000000x140x141011100000verify.txt0000002..\main.c..\..\..\..\os\hal\ports\SPC5\SPC56ECxx\hal_lld.c028.08.2013 15:00:07:3797782860Target0.Controller0.Core111024.02.2014 14:11:46:971code <0xFFFFFC00-0xFFFFFFFF>87372870Target0.Controller0.Core111028.08.2013 15:30:43:4997372842949672950Target0.Controller0.Core1100000000002101..\build\out.elf01100001code <0xFFFFFC00-0xFFFFFFFF>stm_spc56ec74a256s_spc56ec74_minimodule_debug_jtag.cfg24.02.2014 14:13:32:999 diff --git a/demos/SPC5/RT-SPC56EC-EVB/UDE/stm_spc56ec74a256s_spc56ec74_minimodule_debug_jtag.cfg b/demos/SPC5/RT-SPC56EC-EVB/UDE/stm_spc56ec74a256s_spc56ec74_minimodule_debug_jtag.cfg deleted file mode 100644 index efb0181f4..000000000 --- a/demos/SPC5/RT-SPC56EC-EVB/UDE/stm_spc56ec74a256s_spc56ec74_minimodule_debug_jtag.cfg +++ /dev/null @@ -1,290 +0,0 @@ -[Main] -Signature=UDE_TARGINFO_2.0 -Description=STM SPC56EC74A256S Mini Module with Dual Core SPC56EC74 (Jtag) -Description1=MMU preinitialized, memory mapping 1:1, VLE enabled for SRAM and Flash -Description2=PLL set for 120MHz -Description3=FLASH programming prepared but not enabled -Description4=Write Filter for BAM Module -MCUs=Controller0 -Architecture=PowerPC -Vendor=STM -Board=SPC56EC74A256S Mini Module - -[Controller0] -Family=PowerPC -Type=SPC56EC74 -Enabled=1 -IntClock=120000 -MemDevs=BAMWriteFilter -ExtClock=40000 - -[Controller0.Core0] -Protocol=PPCJTAG -Enabled=1 - -[Controller0.Core1] -Protocol=PPCJTAG -Enabled=1 - -[Controller0.BAMWriteFilter] -Description=BAM WriteAccess Filter -Range0Start=0xFFFFC000 -Range0Size=0x4000 -Enabled=1 -Handler=AccessFilter -Mode=ReadOnly - -[Controller0.PFLASH] -Enabled=1 -EnableMemtoolByDefault=1 - -[Controller0.PFLASH1] -Enabled=1 -EnableMemtoolByDefault=1 - -[Controller0.DFLASH] -Enabled=1 -EnableMemtoolByDefault=1 - -[Controller0.SHADOWFLASH] -Enabled=1 -EnableMemtoolByDefault=0 - -[Controller0.Core0.LoadedAddOn] -UDEMemtool=1 - -[Controller0.Core0.PpcJtagTargIntf] -PortType=FTDI -ResetWaitTime=500 -MaxJtagClk=5000 -DoSramInit=1 -UseNexus=1 -AdaptiveJtagPhaseShift=1 -ConnOption=Default -ChangeJtagClk=-1 -HaltAfterReset=1 -SimioAddr=g_JtagSimioAccess -FreezeTimers=1 -InvalidTlbOnReset=1 -InvalidateCache=1 -ForceCacheFlush=1 -IgnoreLockedLines=0 -ExecInitCmds=1 -JtagTapNumber=0 -JtagNumOfTaps=1 -JtagNumIrBefore=0 -JtagNumIrAfter=0 -SimioAddr=g_JtagSimioAccess -FlushCache=0 -AllowMmuSetup=1 -UseExtReset=1 -HandleWdtBug=0 -ForceEndOfReset=0 -JtagViaPod=0 -AllowResetOnCheck=0 -ChangeMsr=0 -ChangeMsrValue=0x0 -ExecOnStartCmds=0 -ExecOnHaltCmds=0 -EnableProgramTimeMeasurement=0 -UseHwResetMode=0 -TargetPort=Default -HandleNexusAccessBug=0 -DoNotEnableTrapSwBrp=0 -BootPasswd0=0xFEEDFACE -BootPasswd1=0xCAFEBEEF -BootPasswd2=0xFFFFFFFF -BootPasswd3=0xFFFFFFFF -BootPasswd4=0xFFFFFFFF -BootPasswd5=0xFFFFFFFF -BootPasswd6=0xFFFFFFFF -BootPasswd7=0xFFFFFFFF -CommDevSel=PortType=USB,Type=FTDI -JtagIoType=Jtag -ExecOnHaltCmdsWhileHalted=0 -TimerForPTM=Default -AllowBreakOnUpdateBreakpoints=0 -ClearDebugStatusOnHalt=1 -HwResetMode=Simulate -UseMasterNexusIfResetState=1 -UseLocalAddressTranslation=1 -Use64BitNexus=0 -InitSramOnlyWhenNotInitialized=0 -AllowHarrForUpdateDebugRegs=0 -DisableE2EECC=0 -UseCore0ForNexusMemoryAccessWhileRunning=0 - -[Controller0.Core0.PpcJtagTargIntf.InitScript] - -// select TLB 1 -SETSPR 0x274 0x10000108 0xFFFFFFFF - -// programm internal Flash, no cache because of flash -// TLB 1, entry 0 -SETSPR 0x270 0x10000000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=16MB -SETSPR 0x271 0xC0000700 0xFFFFFFFF -// effective page number 00000000 -SETSPR 0x272 0x28 0xFFFFFFFF -// real page 00000000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0x3F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// programm internal SRAM -// TLB 1, entry 1 -SETSPR 0x270 0x10010000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=16MB -SETSPR 0x271 0xC0000700 0xFFFFFFFF -// effective page number 40000000, I -SETSPR 0x272 0x40000028 0xFFFFFFFF -// real page 0x40000000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0x4000003F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// programm peripheral A modules -// TLB 1, entry 2 -SETSPR 0x270 0x10020000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=1MB -SETSPR 0x271 0xC0000500 0xFFFFFFFF -// effective page number C3F00000, I -SETSPR 0x272 0xC3F0000A 0xFFFFFFFF -// real page C3F00000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0xC3F0003F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// programm off plattfrom modules -// TLB 1, entry 3 -SETSPR 0x270 0x10030000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=1MB -SETSPR 0x271 0xC0000500 0xFFFFFFFF -// effective page number FFE00000, I,G -SETSPR 0x272 0xFFE0000A 0xFFFFFFFF -// real page FFE00000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0xFFE0003F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// programm on plattfrom modules -// TLB 1, entry 4 -SETSPR 0x270 0x10040000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=1MB -SETSPR 0x271 0xC0000500 0xFFFFFFFF -// effective page number FFF00000, I,G -SETSPR 0x272 0xFFF0000A 0xFFFFFFFF -// real page FFF00000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0xFFF0003F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// setup IVOPR -// points to internal memory at 0x40000000 -SETSPR 0x3F 0x40000000 0xFFFFFFFF - -// disable watchdog -SET SWT_SR 0x0000C520 -SET SWT_SR 0x0000D928 -SET SWT_CR 0xFF00000A - -// setup pll and clocks -// Oscillator select -SET 0xC3FE0374 0x1000000 -SET 0xC3FE0370 0x1 -// enable all modes -SET 0xC3FDC008 0x5FF -// run mode -SET 0xC3FDC02C 0x1F0032 -// enable peripherals in run and low power modes -SET 0xC3FDC080 0xFE -SET 0xC3FDC0A0 0x500 -// Z0 clock dividers -> 0.5 system clock -//SET8 0xC3FE00C0 0x01 -// system clock dividers -SET8 0xC3FE037C 0x80 -SET8 0xC3FE037D 0x80 -SET8 0xC3FE037E 0x80 -// enable auxiliary clocks -SET16 0xC3FE0380 0x100 -SET16 0xC3FE0388 0x0 -SET8 0xC3FE038C 0x80 -// setup clock monitor -SET 0xC3FE0100 0x6 -// Make DRUN configuration active -SET 0xC3FDC004 0x30005AF0 -SET 0xC3FDC004 0x3000A50F -WAIT 5 -// setup pll to 120MHz 40Mz external -SET 0xC3FE00A0 0x0D300041 -// run mode -SET 0xC3FDC02C 0x1F00F4 -// Make DRUN configuration active -SET 0xC3FDC004 0x30005AF0 -SET 0xC3FDC004 0x3000A50F -WAIT 5 -// setup SSCM erro cfg for debug -SET 0xC3FD8006 0x3 0x3 - -[Controller0.Core0.PpcJtagTargIntf.OnStartScript] - -[Controller0.Core0.PpcJtagTargIntf.OnHaltScript] - -[Controller0.Core1.PpcJtagTargIntf] -PortType=Default -ResetWaitTime=500 -MaxJtagClk=5000 -DoSramInit=1 -UseNexus=1 -AdaptiveJtagPhaseShift=1 -ConnOption=Break -ChangeJtagClk=-1 -HaltAfterReset=0 -SimioAddr=g_JtagSimioAccess -FreezeTimers=1 -InvalidTlbOnReset=0 -InvalidateCache=0 -ForceCacheFlush=0 -IgnoreLockedLines=0 -ExecInitCmds=0 -JtagTapNumber=0 -JtagNumOfTaps=1 -JtagNumIrBefore=0 -JtagNumIrAfter=0 -SimioAddr=g_JtagSimioAccess -FlushCache=0 -AllowMmuSetup=0 -UseExtReset=0 -HandleWdtBug=0 -ForceEndOfReset=0 -JtagViaPod=0 -AllowResetOnCheck=0 -TargetPort=Default -ChangeMsr=0 -ChangeMsrValue=0x0 -ExecOnStartCmds=0 -ExecOnHaltCmds=0 -EnableProgramTimeMeasurement=0 -UseHwResetMode=0 -HandleNexusAccessBug=0 -DoNotEnableTrapSwBrp=0 -BootPasswd0=0xFEEDFACE -BootPasswd1=0xCAFEBEEF -BootPasswd2=0xFFFFFFFF -BootPasswd3=0xFFFFFFFF -BootPasswd4=0xFFFFFFFF -BootPasswd5=0xFFFFFFFF -BootPasswd6=0xFFFFFFFF -BootPasswd7=0xFFFFFFFF -CommDevSel= - -[Controller0.Core1.PpcJtagTargIntf.InitScript] - -[Controller0.Core1.PpcJtagTargIntf.OnStartScript] - -[Controller0.Core1.PpcJtagTargIntf.OnHaltScript] - -[Controller0.Core0.DebugServer.DbgFramework] -FRAMEWORK_COLOR=14804223 -[Controller0.Core1.DebugServer.DbgFramework] -FRAMEWORK_COLOR=16777152 diff --git a/demos/SPC5/RT-SPC56EC-EVB/chconf.h b/demos/SPC5/RT-SPC56EC-EVB/chconf.h deleted file mode 100644 index f6244ad4b..000000000 --- a/demos/SPC5/RT-SPC56EC-EVB/chconf.h +++ /dev/null @@ -1,499 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file templates/chconf.h - * @brief Configuration file template. - * @details A copy of this file must be placed in each project directory, it - * contains the application specific kernel settings. - * - * @addtogroup config - * @details Kernel related settings and hooks. - * @{ - */ - -#ifndef _CHCONF_H_ -#define _CHCONF_H_ - -/*===========================================================================*/ -/** - * @name System timers settings - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System time counter resolution. - * @note Allowed values are 16 or 32 bits. - */ -#define CH_CFG_ST_RESOLUTION 32 - -/** - * @brief System tick frequency. - * @details Frequency of the system timer that drives the system ticks. This - * setting also defines the system tick time unit. - */ -#define CH_CFG_ST_FREQUENCY 1000 - -/** - * @brief Time delta constant for the tick-less mode. - * @note If this value is zero then the system uses the classic - * periodic tick. This value represents the minimum number - * of ticks that is safe to specify in a timeout directive. - * The value one is not valid, timeouts are rounded up to - * this value. - */ -#define CH_CFG_ST_TIMEDELTA 0 - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel parameters and options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Round robin interval. - * @details This constant is the number of system ticks allowed for the - * threads before preemption occurs. Setting this value to zero - * disables the preemption for threads with equal priority and the - * round robin becomes cooperative. Note that higher priority - * threads can still preempt, the kernel is always preemptive. - * @note Disabling the round robin preemption makes the kernel more compact - * and generally faster. - * @note The round robin preemption is not supported in tickless mode and - * must be set to zero in that case. - */ -#define CH_CFG_TIME_QUANTUM 0 - -/** - * @brief Managed RAM size. - * @details Size of the RAM area to be managed by the OS. If set to zero - * then the whole available RAM is used. The core memory is made - * available to the heap allocator and/or can be used directly through - * the simplified core memory allocator. - * - * @note In order to let the OS manage the whole RAM the linker script must - * provide the @p __heap_base__ and @p __heap_end__ symbols. - * @note Requires @p CH_CFG_USE_MEMCORE. - */ -#define CH_CFG_MEMCORE_SIZE 0 - -/** - * @brief Idle thread automatic spawn suppression. - * @details When this option is activated the function @p chSysInit() - * does not spawn the idle thread. The application @p main() - * function becomes the idle thread and must implement an - * infinite loop. - */ -#define CH_CFG_NO_IDLE_THREAD FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Performance options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief OS optimization. - * @details If enabled then time efficient rather than space efficient code - * is used when two possible implementations exist. - * - * @note This is not related to the compiler optimization options. - * @note The default is @p TRUE. - */ -#define CH_CFG_OPTIMIZE_SPEED TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Subsystem options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Time Measurement APIs. - * @details If enabled then the time measurement APIs are included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_TM FALSE - -/** - * @brief Threads registry APIs. - * @details If enabled then the registry APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_REGISTRY TRUE - -/** - * @brief Threads synchronization APIs. - * @details If enabled then the @p chThdWait() function is included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_WAITEXIT TRUE - -/** - * @brief Semaphores APIs. - * @details If enabled then the Semaphores APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_SEMAPHORES TRUE - -/** - * @brief Semaphores queuing mode. - * @details If enabled then the threads are enqueued on semaphores by - * priority rather than in FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE - -/** - * @brief Mutexes APIs. - * @details If enabled then the mutexes APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MUTEXES TRUE - -/** - * @brief Enables recursive behavior on mutexes. - * @note Recursive mutexes are heavier and have an increased - * memory footprint. - * - * @note The default is @p FALSE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_MUTEXES_RECURSIVE FALSE - -/** - * @brief Conditional Variables APIs. - * @details If enabled then the conditional variables APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_CONDVARS TRUE - -/** - * @brief Conditional Variables APIs with timeout. - * @details If enabled then the conditional variables APIs with timeout - * specification are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_CONDVARS. - */ -#define CH_CFG_USE_CONDVARS_TIMEOUT TRUE - -/** - * @brief Events Flags APIs. - * @details If enabled then the event flags APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_EVENTS TRUE - -/** - * @brief Events Flags APIs with timeout. - * @details If enabled then the events APIs with timeout specification - * are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_EVENTS. - */ -#define CH_CFG_USE_EVENTS_TIMEOUT TRUE - -/** - * @brief Synchronous Messages APIs. - * @details If enabled then the synchronous messages APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MESSAGES TRUE - -/** - * @brief Synchronous Messages queuing mode. - * @details If enabled then messages are served by priority rather than in - * FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_MESSAGES. - */ -#define CH_CFG_USE_MESSAGES_PRIORITY FALSE - -/** - * @brief Mailboxes APIs. - * @details If enabled then the asynchronous messages (mailboxes) APIs are - * included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_MAILBOXES TRUE - -/** - * @brief I/O Queues APIs. - * @details If enabled then the I/O queues APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_QUEUES TRUE - -/** - * @brief Core Memory Manager APIs. - * @details If enabled then the core memory manager APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMCORE TRUE - -/** - * @brief Heap Allocator APIs. - * @details If enabled then the memory heap allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or - * @p CH_CFG_USE_SEMAPHORES. - * @note Mutexes are recommended. - */ -#define CH_CFG_USE_HEAP TRUE - -/** - * @brief Memory Pools Allocator APIs. - * @details If enabled then the memory pools allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMPOOLS TRUE - -/** - * @brief Dynamic Threads APIs. - * @details If enabled then the dynamic threads creation APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_WAITEXIT. - * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS. - */ -#define CH_CFG_USE_DYNAMIC TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Debug options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Debug option, kernel statistics. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_STATISTICS FALSE - -/** - * @brief Debug option, system state check. - * @details If enabled the correct call protocol for system APIs is checked - * at runtime. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_SYSTEM_STATE_CHECK FALSE - -/** - * @brief Debug option, parameters checks. - * @details If enabled then the checks on the API functions input - * parameters are activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_CHECKS FALSE - -/** - * @brief Debug option, consistency checks. - * @details If enabled then all the assertions in the kernel code are - * activated. This includes consistency checks inside the kernel, - * runtime anomalies and port-defined checks. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_ASSERTS FALSE - -/** - * @brief Debug option, trace buffer. - * @details If enabled then the context switch circular trace buffer is - * activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_TRACE FALSE - -/** - * @brief Debug option, stack checks. - * @details If enabled then a runtime stack check is performed. - * - * @note The default is @p FALSE. - * @note The stack check is performed in a architecture/port dependent way. - * It may not be implemented or some ports. - * @note The default failure mode is to halt the system with the global - * @p panic_msg variable set to @p NULL. - */ -#define CH_DBG_ENABLE_STACK_CHECK FALSE - -/** - * @brief Debug option, stacks initialization. - * @details If enabled then the threads working area is filled with a byte - * value when a thread is created. This can be useful for the - * runtime measurement of the used stack. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_FILL_THREADS FALSE - -/** - * @brief Debug option, threads profiling. - * @details If enabled then a field is added to the @p thread_t structure that - * counts the system ticks occurred while executing the thread. - * - * @note The default is @p FALSE. - * @note This debug option is not currently compatible with the - * tickless mode. - */ -#define CH_DBG_THREADS_PROFILING FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel hooks - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Threads descriptor structure extension. - * @details User fields added to the end of the @p thread_t structure. - */ -#define CH_CFG_THREAD_EXTRA_FIELDS \ - /* Add threads custom fields here.*/ - -/** - * @brief Threads initialization hook. - * @details User initialization code added to the @p chThdInit() API. - * - * @note It is invoked from within @p chThdInit() and implicitly from all - * the threads creation APIs. - */ -#define CH_CFG_THREAD_INIT_HOOK(tp) { \ - /* Add threads initialization code here.*/ \ -} - -/** - * @brief Threads finalization hook. - * @details User finalization code added to the @p chThdExit() API. - * - * @note It is inserted into lock zone. - * @note It is also invoked when the threads simply return in order to - * terminate. - */ -#define CH_CFG_THREAD_EXIT_HOOK(tp) { \ - /* Add threads finalization code here.*/ \ -} - -/** - * @brief Context switch hook. - * @details This hook is invoked just before switching between threads. - */ -#define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) { \ - /* Context switch code here.*/ \ -} - -/** - * @brief Idle thread enter hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to activate a power saving mode. - */ -#define CH_CFG_IDLE_ENTER_HOOK() { \ -} - -/** - * @brief Idle thread leave hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to deactivate a power saving mode. - */ -#define CH_CFG_IDLE_LEAVE_HOOK() { \ -} - -/** - * @brief Idle Loop hook. - * @details This hook is continuously invoked by the idle thread loop. - */ -#define CH_CFG_IDLE_LOOP_HOOK() { \ - /* Idle loop code here.*/ \ -} - -/** - * @brief System tick event hook. - * @details This hook is invoked in the system tick handler immediately - * after processing the virtual timers queue. - */ -#define CH_CFG_SYSTEM_TICK_HOOK() { \ - /* System tick event code here.*/ \ -} - -/** - * @brief System halt hook. - * @details This hook is invoked in case to a system halting error before - * the system is halted. - */ -#define CH_CFG_SYSTEM_HALT_HOOK(reason) { \ - /* System halt code here.*/ \ -} - -/** @} */ - -/*===========================================================================*/ -/* Port-specific settings (override port settings defaulted in chcore.h). */ -/*===========================================================================*/ - -#endif /* _CHCONF_H_ */ - -/** @} */ diff --git a/demos/SPC5/RT-SPC56EC-EVB/cw/ch/ch.lcf b/demos/SPC5/RT-SPC56EC-EVB/cw/ch/ch.lcf deleted file mode 100644 index 0e49bcd1a..000000000 --- a/demos/SPC5/RT-SPC56EC-EVB/cw/ch/ch.lcf +++ /dev/null @@ -1,153 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio. - - This file is part of ChibiOS. - - ChibiOS is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - ChibiOS is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . -*/ - -/* - * SPC56EC74 memory setup. - */ -MEMORY -{ - rom : org = 0x00000000, len = 0x00300000 - dataflash : org = 0x00800000, len = 0x00010000 - ram : org = 0x40000000, len = 0x00030000 -} - -__irq_stack_size__ = 0; -__process_stack_size__ = 0x1000; - -__ram_size__ = SIZEOF(ram); -__ram_start__ = ADDR(ram); -__ram_end__ = ADDR(ram) + SIZEOF(ram); - -SECTIONS -{ - GROUP: - { - .boot ALIGN(16): - { - __ivpr_base__ = .; - KEEP(*(.boot)) - } - - .handlers (VLECODE) ALIGN(16): - { - KEEP(*(.handlers)) - } - - .crt0 (VLECODE) ALIGN(16): - { - KEEP(*(.crt0)) - } - - .init: {} - .init_vle (VLECODE) ALIGN(4): - { - *(.init) - *(.init_vle) - } - - .vectors ALIGN(0x800): - { - KEEP(*(.vectors)) - } - - .code (VLECODE) ALIGN(16): - { - *(.text) - *(.text_vle) - } - - .const (CONST) ALIGN(16): - { - *(.rdata) - *(.rodata) - } - - .sdata2 (CONST) ALIGN(16): - { - __sdata2_start__ = . + 0x8000; - *(.sdata2) - *(.sbss2) - } - - .ctors: {} - .dtors: {} - extab: {} - extabindex: {} - - . = ALIGN(4); - __romdata_start__ = .; - } > rom - - GROUP: - { - .stacks: - { - . = ALIGN(8); - __irq_stack_base__ = .; - . = . + __irq_stack_size__; - . = ALIGN(8); - __irq_stack_end__ = .; - __process_stack_base__ = .; - __main_thread_stack_base__ = .; - . = . + __process_stack_size__; - . = ALIGN(8); - __process_stack_end__ = .; - __main_thread_stack_end__ = .; - } - - .data (DATA) LOAD(__romdata_start__): - { - . = ALIGN(4); - __data_start__ = .; - *(.data) - . = ALIGN(4); - } - - .sdata (DATA) LOAD(ROMADDR(.data) + SIZEOF(.data)): - { - __sdata_start__ = . + 0x8000; - *(.sdata) - __data_end__ = .; - } - - .sbss (BSS): - { - __bss_start__ = .; - *(.sbss) - } - - .bss (BSS): - { - *(.bss) - __bss_end__ = .; - } - - /* The default heap uses the (statically) unused part of a RAM section.*/ - .heap: - { - . = ALIGN(8); - __heap_base__ = .; - . = ADDR(ram) + SIZEOF(ram); - __heap_end__ = .; - } - - .PPC.EMB.sdata0: {} - .PPC.EMB.sbss0: {} - } > ram -} diff --git a/demos/SPC5/RT-SPC56EC-EVB/cw/ch/ch.mcp b/demos/SPC5/RT-SPC56EC-EVB/cw/ch/ch.mcp deleted file mode 100644 index f4823f0959c6ced89eb1a92f189b3a3925ff84c4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 62713 zcmeI532+?Mna6v4$lRDKn0tJH4aTxDV8D=oEz1X%EMeK$0VT?4rmY!!Ml(#0WEn6R zFqp&K_ib*%ecy+H03m@?K?tF;*~(G7*`!j*lGN7jCRdB!AGf1R^0w_*Y|o0vZO4f=#tKQZy(E@zvkTECyHH5A zx0$TDsk9xfkL7Y+#_Wz%IuWhyD&%8EP}AWQvYF^Yd(G->K4G#NnratDo7OmOb~|Oa z+i9t5cB~LjF79Y=w{d^j%)DKfYF|~lyRn9xLbM@QNM+ki(V9~qOSShn&8`z?a87aC zRd!dvdD{8*SUT#ScCq4`sWp=)M{BZ~9PP`?`MEibc{`WSidV8Gx3RG%T03j@g6J&A zu`{izE#^v0&9mF(_+s9iloKlz*UFxG>1-=!AuY+I&UI@n9^p2-M7JREB zWwl{PDL)^(lk)4aJ1c(%yNmL7vAZh&1$H;(f5q;ud>2k^59J5L_f$R|F6Sy~K722i zTFvmim3P4RQGN}4U*-3~_f!5Z{2R)@fbXyT_wX^wx3{4x<2Uh__*mL5ZI<&AKTCVW zH_{j4Yw@4>Q+y#lkhV)ZrF~wzqz}cnUVET@CecdyQui{@0i<53%KFj` zU^NgQi*L^YUEmEMeIR{zHdq6iK|44XoCoAHa1OW)d@E~{yJPaNIkAm-m$H3#@3GgI%3Oo&-0ndWx!1Le*@FI8#ybN9euYx;38e9Y3 z0vT{ESPYuLo8V5c8T@}IiKAga`fvmo397&-AaN+MCVm$G?FOX3y}p;v`% z5~~sezySr&0Xo5I&;{0jbHRDw0F1gn9*bLP|Vd+?6vK!CUkXB-0Lk3GAxp+<5p`nTc~F7lrK!f z$W}{ywPYmY+4cm2crszPcC@){O?xbpiW_cs5(SQ-NjsJ^B-5JhvfaFlor!1jwwrC! zE7`Q}aNM#og)X!6oDRD~kICC@EJ*TeOuj?KF0nJNEyT1wXN_A_A(^*h3FWS+vtYEv zs;iSUpq0g$A*M-^<2K1KZIWl0de>0{C#4S!P#dgjVkXtRCnCDdEmSZY(?0m}X za!E^v(<=MSF^<&S5z8B6^5ry=mP*rUIS&eMahaTv%d(CsvNapai^R1_(?ncH6O*Qi zNz=rnX=2heD4vXQgMv7AH&<|Tz~iZGYdRZWrF&d2xT<0R$O#bL+O^^n`URix7oQ}J zPxzZk30Ke1Wu{HynWXUy?ZY!(D~rTPI@lO@t2MKV{gNTf%}cD2h?G2GZk}xh0m&2Q=IIb6nflQdDj#S)+)!7W zF(Z`OZ$8Y1nbFE)uFf0NB-a}Ngcsw!WWzl|#v%7?-4RIy?qKFIS647YpX3QkTHF}p z&X8TrATGC?s?ThyURqNfv+A4bT55{9tue-1Z`X=MI@Ovf?(?!&+p$%Asyo^Vj@*zwXXGyP;snDs~z-5QRS`GO>wbIP_PnR|{f%$*C4R6YS)rCjEYqm;{>Y$xS1 z$CCN2B$+SCJXey;D`mbb=}I8;UP&^qm-(-xO+eG;bUBCt%4t*{CxO<%5Q)lr2KyP z!OAzoWnL`lQ@G5JC4C7$%%#?^;8EqjgO64I6?~lXzrn{VA5N!;uO;mXKis9(f$$@g zkB3iGUJak5d?sAh0+Qyzk8-Ki0H3UU8C=!~l3L+YTxwC22fd)>)FK!dqNwodW-!^4aj1^7-&q<%{5P zmInQ z^CUe8m+?!|V{lpbNqQN6j!Ug~;CbaghRb?T(r0iMRwn%dF6%={zlC?Y)cQSqwemm1 zW!)(0Kj5-{l=OG_xh^#~5oA3nY0r`FT3z@-a2Z=A9SN89rljNH7rNA%4PU3c5q^>K zGvOC2Z-!r@ycND)c@lo9@^<)T%DdnjlwSb9T={zV70R!K%UCbzI`~yCwQh%RRQ@ph zYUNMBuTlOi{95I&z^_yO7W{hUAHi=>{yF?c<-dX7r2NnDo0b0^ev9&|D)&B`Z0-ZU zP4f?d->!Tj{0`+a;dd&ph2N#T0e-jguF@-F!O$}faJp!^E> zgUWA&KcxI__`}K{fj^@BS@@&MUx$BR`3LaFlz$3;T=_5IPbmL4_>;>20)I;R|G=MC zK5~?MpH4RSgg>kK2f?3HJ`w)B^5ftyD4zv?QTamnOUjqRUsm1%e?@r;{;F~Z{+jZ& z@Yj{!41YuUGw?T+e+Yj|`A^_)EB^(2v+_T|-%%c#9q)k%x2F!J+F`@o`|T0#R(YwL znYm~r$__srLu6!Z0NogL;{xaoKsP>s?m%=C0_YAxcX$BZ!RU?%pgRQJ!~i;c9GMhA zcNn@O1L&gYjtZcoFCvoz=;({c(E)VyMPy0<9eok04xpniB2xqC=!=NVdHv##zK9$X zKu2FhrU%f`7m;HF=;({caRGGnMdbJZy3^4u37}huZfO8r9Xgq7`uVROoyWnx6bZK-m`p}VGOc``1uvM6a zEr5=>e`HnwT^G990d#B7)dbL;i*8N;-FfJ01L)32H#dN8ExLIDbQhqTA3%2@x&;Ar z>(DW_`NsW4=os64br+*!Z1dG!f{wAxSGOJ=G2^Sd6df_+tGf&xG2^S-fR32))m@H` znDNzJfsQf3S9c{kV#`-|6*^+eSGN%zvE{3~8Xd9at7H8cA+~&V*P>e&K*zc@LTve# zcRe~{%U8#GH$rUr>TX0wZ29VLLPu=*>TX6yZ29VLK}T%)>TX3xZ29VLLq}}+>TX9z zZ29W$Ku2u(>h45GZ29W$LPu=*>h4BIZ29W$K}T%)>h48HZ29Uop(D1+>LTQO={|JC zR#}~=5qm#6VympKw7dt<5nE+-QjV7%L`Q6u)s>d_5ISP3tj;S-?8E4YEnnRu=!h*} z-4p2OyRy2{^Lr8DLj=n3aD=qJ7besCn6$^trgYLdQbfx7zi;li4TW@K3 z&!MC5%IZqXdmbHqS5{YA-V5mHyRy2{@?Jzo-<8#smiH1m`mU_5w7i$mJ=%w^w7gf) zeZLP~X?d@rd#n##X?d@qd%O=_X?d@sBeu%6qqMv?&=Ff@b*1IKiH_JRt1B(C%X<$Uu~k-ATHX)P5nE+- zrRBYkj@T-zD=qH>bi`I!U1@nAq9eA->PpM|Av$8Ktgf`YkI)fYWp$ zqYoX~#q>G4JX__~$))xF3>|ZhvbthnkT1|}4xsxvI_4a{<$a0nod7x{VG2DEdSC~6 zK-MTSuahxCKBFT5Bc!OTpQo1*`yVAO#qcBN@;RvLFY}0gQ2Se^JIx85iXqgxp_{dk1n~ zK-T=SPM0;ftgmJ5EbHRPI&cxV7+eC@gG<3>U;|)HC+js?i^)1m)=;uOlC_VlYh=wL z>k(ON$T~vS2r~bdxxLKWWlk>RYUB>Uco?}0F#ndhwal9%o4|d5xvb1nWezIyOPM>$ zyin#;GGCIpkj!&r4kPmunS02*LgoxIACPOkT*u`aE!SVUw#s!*u1yh{OUXRxZLk@< z17u$E9{2%xAAA5l1akfU2*`C;uBjh`Pk>zK=gX{kMPc8lKst`HAZ zW;4CG7}IZD@O+JCeSAt~x~bw??Zw4j{l>+X>yg?y^|Qix=gvtZ9*FzO^)Uitj~gL=4q!x-XUQFjR(BA_(p$m!LtCH&GP`8c}k!OnJ`3# zc>H*Av460*FwxxyDI3nw7qE71coHuOEN%6AY0CM~4omS033 zH&)qc?-JkYm8ir);+yfj%rez(M_ba2$kA!L@8V_XPXm@OZ<$-)SjU?g>l$hnw$v_O zJZs6UmSqi#7tUJTuyoNJIYi!9SUNrI`R3)b>~<@k>h(B{;#rI^9c1p*7P~8Axw*2d zio3XoCCMg#_H$BQ*3L{pFdFgK~k;vQ5wtf>)>nibGv5KuC^2_j%?hBp! zJTA%}L4cJc`;iGOz@w~mj`ufHDbL9Ar(kxMBR_r8eo;9F}mkQZ#qup!&!lZ**b z@OK#?7z|{)TpG#FMcMX#Z*NEu`NsPCa>oyH-f6X61v}p!OGjsSq|%8fH(*xTrS}|; zqQbhy##w`0Z@J=f>0EAy)U#@1Lru98805Usj+5RY^{mLRJbjSQykJm>fN~ zu5m}i{^&V1%XUOPxthgIi_1B5kn?g&me($+?zN)c+B#~c)=Zw<|3RbOdi-Sl7ZSXl zfi)<2J-Pl**k|un)H9%p0@uS09G_Dj=x#R-?5+W|C%{R#^$hT9tbzTOEM(FFPHF%W zw>>Lkov{HFa=QQFZatY*1E?j?p>93dRKIR(XsTTpZCc~BaocYj(`Ga73^3XnV@^EQ z@0nU|dvdXDy-#SG7rdVMfFe6UTwmwZK!aueXie8 zZX9g?Cq8RE_JHEeuQBW&J-4A|c>vvjCDB~!tN|C|UqIvB9aK+8Je%-8odGLy@w_v@ zs19@vxz==Yd&inNk=BmF4yi{ftB$8*+x#y(f!yZ4iKaS{9oU4_zph5p9{zE|UpgSg zXj2dGJ=)Gm>uFuNL+UvNH3;>%*Y+JWH}>LYJ6iKu_A7rd{O0$wUHP|_ z=-j$mzjLWy#^fB1RpbcmfL%adQ4H}>JV-4diq~=3|>9`kAZ_%PrpN;HHh`}ThZXv)BjjIX!ZDv zwS!QPJJ$NFatE)T{;!3DSI>6uAJ=cZd7$?gP`XWf20HGz^`zt5`@W<*C)z>R-0EEa z_iqLv4%P*^e=}(H_^j9lAr9RB@p+ZjVALb=TkUg`m3js|KQQ&QrndRUX6fgwA09RJ z?5Oppo$mK@I%s}N<+J^*45??p^AO`VpY`;hwZ~^YJ$Uu>=QT^_A%hdwx$PeZ5fk+1 zHRiJ`?Ra4=|3tuZ>T~&QuG(kPV2&F~e|q>JzM`$-96)Do;e&qXB}1wAyW7&k2ToyC zI@W5Zt9>rb-G>hecHWX$zRfPoO{ML%)hynJM5DH{5#2ux%R2U|W+xfT+lgkT8qJRR zr_{>&q1;wFZwSeY<3UrlBQI~L?r`jUVNK3B6XZ<8)kfO0w53b3c*%c$xe-`A)C=?)y&c%(AoB z4HD4G$X|dLZ;b4-bqq&+qGzwZ(?}#IP;0!;H`ap$9?_gdPYz5PBf= zKy%Tu|ZI2jVA&;z|Z5HZhyU((Rf{ft+6=zHVR#q&fd zw^m0vg;>7Ok&}nS*VZkVi;ajSyo}}Py~ciu^^TJV#t+LEBm%uGd9KiKemA|37Q-{9 z&0#!;-q-`x@*H}z&2#9DEIx7{xOM(j5s~o`o&V<*|#Vd>(LOEI*hwmY>WT%L6ZrJx47MLo?g_?#)kZ_?Gz`C0vK&MaomEd%8ro2f7gj+bJ*_n8Ke?(X(owQ~SKy7u3F} z_9eA1t9?c7t7>0U`?}gU)V`_qEwyi}-K_Q`xERW@itz~7kWNLX%expj(zD~`H#{~>o}ynSN?qQHp8uy^LzQoYns0wdOnL% zPHFz6QRJhOa!T`mc$j51SL{Gp!qCb0jm3bSA(Vy2`W!}6Z`Cp;0)AIkX z%WB4o{$I|lvi6ir(i#8EA3n{JpI}%YZE`K^HuSjKb*dSjlhSU|FYWeyq02ytzj5pCW$_@gU{g)LCWT zU?cf|WgH)emHZJ`sVqd%DP(`|(wael@h zhzasjPOeA(CB% 0) { - chprintf(chp, "Usage: mem\r\n"); - return; - } - n = chHeapStatus(NULL, &size); - chprintf(chp, "core free memory : %u bytes\r\n", chCoreGetStatusX()); - chprintf(chp, "heap fragments : %u\r\n", n); - chprintf(chp, "heap free total : %u bytes\r\n", size); -} - -static void cmd_threads(BaseSequentialStream *chp, int argc, char *argv[]) { - static const char *states[] = {CH_STATE_NAMES}; - thread_t *tp; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: threads\r\n"); - return; - } - chprintf(chp, " addr stack prio refs state time\r\n"); - tp = chRegFirstThread(); - do { - chprintf(chp, "%08lx %08lx %4lu %4lu %9s\r\n", - (uint32_t)tp, (uint32_t)tp->p_ctx.sp, - (uint32_t)tp->p_prio, (uint32_t)(tp->p_refs - 1), - states[tp->p_state]); - tp = chRegNextThread(tp); - } while (tp != NULL); -} - -static void cmd_test(BaseSequentialStream *chp, int argc, char *argv[]) { - thread_t *tp; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: test\r\n"); - return; - } - tp = chThdCreateFromHeap(NULL, TEST_WA_SIZE, chThdGetPriorityX(), - TestThread, chp); - if (tp == NULL) { - chprintf(chp, "out of memory\r\n"); - return; - } - chThdWait(tp); -} - -static const ShellCommand commands[] = { - {"mem", cmd_mem}, - {"threads", cmd_threads}, - {"test", cmd_test}, - {NULL, NULL} -}; - -static const ShellConfig shell_cfg1 = { - (BaseSequentialStream *)&SD1, - commands -}; - -/* - * LEDs blinker thread, times are in milliseconds. - */ -static THD_WORKING_AREA(waThread1, 128); -static THD_FUNCTION(Thread1, arg) { - - (void)arg; - chRegSetThreadName("blinker"); - - while (true) { - unsigned i; - - for (i = 0; i < 4; i++) { - palClearPad(PORT_E, PE_LED1); - chThdSleepMilliseconds(100); - palClearPad(PORT_E, PE_LED2); - chThdSleepMilliseconds(100); - palClearPad(PORT_E, PE_LED3); - chThdSleepMilliseconds(100); - palClearPad(PORT_E, PE_LED4); - chThdSleepMilliseconds(100); - palSetPad(PORT_E, PE_LED1); - chThdSleepMilliseconds(100); - palSetPad(PORT_E, PE_LED2); - chThdSleepMilliseconds(100); - palSetPad(PORT_E, PE_LED3); - chThdSleepMilliseconds(100); - palSetPad(PORT_E, PE_LED4); - chThdSleepMilliseconds(300); - } - - for (i = 0; i < 4; i++) { - palTogglePort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED2) | - PAL_PORT_BIT(PE_LED3) | PAL_PORT_BIT(PE_LED4)); - chThdSleepMilliseconds(500); - palTogglePort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED2) | - PAL_PORT_BIT(PE_LED3) | PAL_PORT_BIT(PE_LED4)); - chThdSleepMilliseconds(500); - } - - for (i = 0; i < 4; i++) { - palTogglePad(PORT_E, PE_LED1); - chThdSleepMilliseconds(250); - palTogglePad(PORT_E, PE_LED1); - palTogglePad(PORT_E, PE_LED2); - chThdSleepMilliseconds(250); - palTogglePad(PORT_E, PE_LED2); - palTogglePad(PORT_E, PE_LED3); - chThdSleepMilliseconds(250); - palTogglePad(PORT_E, PE_LED3); - palTogglePad(PORT_E, PE_LED4); - chThdSleepMilliseconds(250); - palTogglePad(PORT_E, PE_LED4); - } - - for (i = 0; i < 4; i++) { - palClearPort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED3)); - palSetPort(PORT_E, PAL_PORT_BIT(PE_LED2) | PAL_PORT_BIT(PE_LED4)); - chThdSleepMilliseconds(500); - palClearPort(PORT_E, PAL_PORT_BIT(PE_LED2) | PAL_PORT_BIT(PE_LED4)); - palSetPort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED3)); - chThdSleepMilliseconds(500); - } - - palSetPort(PORT_E, PAL_PORT_BIT(PE_LED1) | PAL_PORT_BIT(PE_LED2) | - PAL_PORT_BIT(PE_LED3) | PAL_PORT_BIT(PE_LED4)); - } -} - -/* - * Application entry point. - */ -int main(void) { - thread_t *shelltp = NULL; - - /* - * System initializations. - * - HAL initialization, this also initializes the configured device drivers - * and performs the board-specific initializations. - * - Kernel initialization, the main() function becomes a thread and the - * RTOS is active. - */ - halInit(); - chSysInit(); - - /* - * Shell manager initialization. - */ - shellInit(); - - /* - * Activates the serial driver 1 using the driver default configuration. - */ - sdStart(&SD1, NULL); - - /* - * Creates the blinker thread. - */ - chThdCreateStatic(waThread1, sizeof(waThread1), NORMALPRIO, Thread1, NULL); - - /* - * Normal main() thread activity. - */ - while (true) { - if (!shelltp) - shelltp = shellCreate(&shell_cfg1, SHELL_WA_SIZE, NORMALPRIO); - else if (chThdTerminatedX(shelltp)) { - chThdRelease(shelltp); /* Recovers memory of the previous shell. */ - shelltp = NULL; /* Triggers spawning of a new shell. */ - } - chThdSleepMilliseconds(1000); - } - return 0; -} diff --git a/demos/SPC5/RT-SPC56EC-EVB/mcuconf.h b/demos/SPC5/RT-SPC56EC-EVB/mcuconf.h deleted file mode 100644 index 0172e8182..000000000 --- a/demos/SPC5/RT-SPC56EC-EVB/mcuconf.h +++ /dev/null @@ -1,293 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#ifndef _MCUCONF_H_ -#define _MCUCONF_H_ - -/* - * SPC56ECxx drivers configuration. - * The following settings override the default settings present in - * the various device driver implementation headers. - * Note that the settings for each driver only have effect if the whole - * driver is enabled in halconf.h. - * - * IRQ priorities: - * 1...15 Lowest...Highest. - * DMA priorities: - * 0...15 Highest...Lowest. - */ - -#define SPC56ECxx_MCUCONF - -/* - * HAL driver system settings. - */ -#define SPC5_NO_INIT FALSE -#define SPC5_ALLOW_OVERCLOCK FALSE -#define SPC5_DISABLE_WATCHDOG TRUE -#define SPC5_FMPLL0_IDF_VALUE 5 -#define SPC5_FMPLL0_NDIV_VALUE 60 -#define SPC5_FMPLL0_ODF SPC5_FMPLL_ODF_DIV4 -#define SPC5_XOSCDIV_VALUE 1 -#define SPC5_IRCDIV_VALUE 1 -#define SPC5_PERIPHERAL1_CLK_DIV_VALUE 4 -#define SPC5_PERIPHERAL2_CLK_DIV_VALUE 2 -#define SPC5_PERIPHERAL3_CLK_DIV_VALUE 2 -#define SPC5_Z0_CLK_DIV_VALUE 2 -#define SPC5_FEC_CLK_DIV_VALUE 2 -#define SPC5_FLASH_CLK_DIV_VALUE 2 -#define SPC5_CLOCK_FAILURE_HOOK() osalSysHalt("clock failure") - -#define SPC5_EMIOS0_GPRE_VALUE 20 -#define SPC5_EMIOS1_GPRE_VALUE 20 - -/* - * EDMA driver settings. - */ -#define SPC5_EDMA_CR_SETTING (EDMA_CR_GRP1PRI(1) | \ - EDMA_CR_GRP0PRI(0) | \ - EDMA_CR_EMLM | \ - EDMA_CR_ERGA) -#define SPC5_EDMA_GROUP0_PRIORITIES 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 -#define SPC5_EDMA_GROUP1_PRIORITIES 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 -#define SPC5_EDMA_ERROR_IRQ_PRIO 12 -#define SPC5_EDMA_ERROR_HANDLER() osalSysHalt("DMA failure") - -/* - * SERIAL driver system settings. - */ -#define SPC5_SERIAL_USE_LINFLEX0 TRUE -#define SPC5_SERIAL_USE_LINFLEX1 FALSE -#define SPC5_SERIAL_USE_LINFLEX2 FALSE -#define SPC5_SERIAL_USE_LINFLEX3 FALSE -#define SPC5_SERIAL_USE_LINFLEX4 FALSE -#define SPC5_SERIAL_USE_LINFLEX5 FALSE -#define SPC5_SERIAL_USE_LINFLEX6 FALSE -#define SPC5_SERIAL_USE_LINFLEX7 FALSE -#define SPC5_SERIAL_USE_LINFLEX8 FALSE -#define SPC5_SERIAL_USE_LINFLEX9 FALSE -#define SPC5_SERIAL_LINFLEX0_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX1_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX2_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX3_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX4_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX5_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX6_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX7_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX8_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX9_PRIORITY 8 - -/* - * SPI driver system settings. - */ -#define SPC5_SPI_USE_DSPI0 FALSE -#define SPC5_SPI_USE_DSPI1 FALSE -#define SPC5_SPI_USE_DSPI2 FALSE -#define SPC5_SPI_USE_DSPI3 FALSE -#define SPC5_SPI_USE_DSPI4 FALSE -#define SPC5_SPI_USE_DSPI5 FALSE -#define SPC5_SPI_USE_DSPI6 FALSE -#define SPC5_SPI_USE_DSPI7 FALSE -#define SPC5_SPI_DMA_MODE SPC5_SPI_DMA_RX_ONLY -#define SPC5_SPI_DSPI0_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3 | SPC5_MCR_PCSIS4 | SPC5_MCR_PCSIS5) -#define SPC5_SPI_DSPI1_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3 | SPC5_MCR_PCSIS4) -#define SPC5_SPI_DSPI2_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3) -#define SPC5_SPI_DSPI3_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1) -#define SPC5_SPI_DSPI4_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1) -#define SPC5_SPI_DSPI5_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2) -#define SPC5_SPI_DSPI6_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3) -#define SPC5_SPI_DSPI7_MCR (0 | SPC5_MCR_PCSIS0 | SPC5_MCR_PCSIS1 | SPC5_MCR_PCSIS2 | SPC5_MCR_PCSIS3) -#define SPC5_SPI_DSPI0_TX1_DMA_CH_ID 4 -#define SPC5_SPI_DSPI0_TX2_DMA_CH_ID 5 -#define SPC5_SPI_DSPI0_RX_DMA_CH_ID 6 -#define SPC5_SPI_DSPI1_TX1_DMA_CH_ID 7 -#define SPC5_SPI_DSPI1_TX2_DMA_CH_ID 8 -#define SPC5_SPI_DSPI1_RX_DMA_CH_ID 9 -#define SPC5_SPI_DSPI2_TX1_DMA_CH_ID 10 -#define SPC5_SPI_DSPI2_TX2_DMA_CH_ID 11 -#define SPC5_SPI_DSPI2_RX_DMA_CH_ID 12 -#define SPC5_SPI_DSPI3_TX1_DMA_CH_ID 13 -#define SPC5_SPI_DSPI3_TX2_DMA_CH_ID 14 -#define SPC5_SPI_DSPI3_RX_DMA_CH_ID 15 -#define SPC5_SPI_DSPI4_TX1_DMA_CH_ID 16 -#define SPC5_SPI_DSPI4_TX2_DMA_CH_ID 17 -#define SPC5_SPI_DSPI4_RX_DMA_CH_ID 18 -#define SPC5_SPI_DSPI5_TX1_DMA_CH_ID 19 -#define SPC5_SPI_DSPI5_TX2_DMA_CH_ID 20 -#define SPC5_SPI_DSPI5_RX_DMA_CH_ID 21 -#define SPC5_SPI_DSPI6_TX1_DMA_CH_ID 22 -#define SPC5_SPI_DSPI6_TX2_DMA_CH_ID 23 -#define SPC5_SPI_DSPI6_RX_DMA_CH_ID 24 -#define SPC5_SPI_DSPI7_TX1_DMA_CH_ID 25 -#define SPC5_SPI_DSPI7_TX2_DMA_CH_ID 26 -#define SPC5_SPI_DSPI7_RX_DMA_CH_ID 27 -#define SPC5_SPI_DSPI0_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI1_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI2_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI3_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI4_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI5_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI6_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI7_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI0_IRQ_PRIO 10 -#define SPC5_SPI_DSPI1_IRQ_PRIO 10 -#define SPC5_SPI_DSPI2_IRQ_PRIO 10 -#define SPC5_SPI_DSPI3_IRQ_PRIO 10 -#define SPC5_SPI_DSPI4_IRQ_PRIO 10 -#define SPC5_SPI_DSPI5_IRQ_PRIO 10 -#define SPC5_SPI_DSPI6_IRQ_PRIO 10 -#define SPC5_SPI_DSPI7_IRQ_PRIO 10 -#define SPC5_SPI_DMA_ERROR_HOOK(spip) osalSysHalt("DSPI DMA failure") - -/* - * ICU-PWM driver system settings. - */ -#define SPC5_ICU_USE_EMIOS0_CH0 FALSE -#define SPC5_ICU_USE_EMIOS0_CH1 FALSE -#define SPC5_ICU_USE_EMIOS0_CH2 FALSE -#define SPC5_ICU_USE_EMIOS0_CH3 FALSE -#define SPC5_ICU_USE_EMIOS0_CH4 FALSE -#define SPC5_ICU_USE_EMIOS0_CH5 FALSE -#define SPC5_ICU_USE_EMIOS0_CH6 FALSE -#define SPC5_ICU_USE_EMIOS0_CH7 FALSE -#define SPC5_ICU_USE_EMIOS0_CH24 FALSE - -#define SPC5_PWM_USE_EMIOS0_GROUP0 FALSE -#define SPC5_PWM_USE_EMIOS0_GROUP1 FALSE - -#define SPC5_EMIOS0_GFR_F0F1_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F2F3_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F4F5_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F6F7_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F8F9_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F10F11_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F12F13_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F14F15_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F16F17_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F18F19_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F20F21_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F22F23_PRIORITY 8 -#define SPC5_EMIOS0_GFR_F24F25_PRIORITY 8 - -#define SPC5_EMIOS0_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_EMIOS0_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_ICU_USE_EMIOS1_CH24 FALSE - -#define SPC5_PWM_USE_EMIOS1_GROUP0 FALSE -#define SPC5_PWM_USE_EMIOS1_GROUP1 FALSE -#define SPC5_PWM_USE_EMIOS1_GROUP2 FALSE - -#define SPC5_EMIOS1_GFR_F0F1_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F2F3_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F4F5_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F6F7_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F8F9_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F10F11_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F12F13_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F14F15_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F16F17_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F18F19_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F20F21_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F22F23_PRIORITY 8 -#define SPC5_EMIOS1_GFR_F24F25_PRIORITY 8 - -#define SPC5_EMIOS1_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_EMIOS1_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -/* - * CAN driver system settings. - */ -#define SPC5_CAN_USE_FILTERS FALSE - -#define SPC5_CAN_USE_FLEXCAN0 FALSE -#define SPC5_CAN_FLEXCAN0_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN0_PRIORITY 11 -#define SPC5_CAN_FLEXCAN0_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_CAN_FLEXCAN0_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_CAN_USE_FLEXCAN1 FALSE -#define SPC5_CAN_FLEXCAN1_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN1_PRIORITY 11 -#define SPC5_CAN_FLEXCAN1_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_CAN_FLEXCAN1_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_CAN_USE_FLEXCAN2 FALSE -#define SPC5_CAN_FLEXCAN2_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN2_PRIORITY 11 -#define SPC5_CAN_FLEXCAN2_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_CAN_FLEXCAN2_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_CAN_USE_FLEXCAN3 FALSE -#define SPC5_CAN_FLEXCAN3_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN3_PRIORITY 11 -#define SPC5_CAN_FLEXCAN3_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_CAN_FLEXCAN3_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_CAN_USE_FLEXCAN4 FALSE -#define SPC5_CAN_FLEXCAN4_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN4_PRIORITY 11 -#define SPC5_CAN_FLEXCAN4_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_CAN_FLEXCAN4_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_CAN_USE_FLEXCAN5 FALSE -#define SPC5_CAN_FLEXCAN5_USE_EXT_CLK FALSE -#define SPC5_CAN_FLEXCAN5_PRIORITY 11 -#define SPC5_CAN_FLEXCAN5_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_CAN_FLEXCAN5_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -/* -* ADC driver system settings. -*/ -#define SPC5_ADC_USE_ADC0 FALSE -#define SPC5_ADC_ADC0_CLK_FREQUENCY HALF_PERIPHERAL_SET_CLOCK_FREQUENCY -#define SPC5_ADC_ADC0_AUTO_CLOCK_OFF FALSE -#define SPC5_ADC_ADC0_WD_PRIORITY 12 -#define SPC5_ADC_ADC0_DMA_CH_ID 1 -#define SPC5_ADC_ADC0_DMA_IRQ_PRIO 12 -#define SPC5_ADC_ADC0_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_ADC_ADC0_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_ADC_USE_ADC1 FALSE -#define SPC5_ADC_ADC1_CLK_FREQUENCY HALF_PERIPHERAL_SET_CLOCK_FREQUENCY -#define SPC5_ADC_ADC1_AUTO_CLOCK_OFF FALSE -#define SPC5_ADC_ADC1_WD_PRIORITY 12 -#define SPC5_ADC_ADC1_DMA_CH_ID 2 -#define SPC5_ADC_ADC1_DMA_IRQ_PRIO 12 -#define SPC5_ADC_ADC1_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_ADC_ADC1_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#endif /* _MCUCONF_H_ */ diff --git a/demos/SPC5/RT-SPC56EL-EVB/.cproject b/demos/SPC5/RT-SPC56EL-EVB/.cproject deleted file mode 100644 index bef983bdb..000000000 --- a/demos/SPC5/RT-SPC56EL-EVB/.cproject +++ /dev/null @@ -1,57 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/SPC5/RT-SPC56EL-EVB/.project b/demos/SPC5/RT-SPC56EL-EVB/.project deleted file mode 100644 index ed857f02f..000000000 --- a/demos/SPC5/RT-SPC56EL-EVB/.project +++ /dev/null @@ -1,43 +0,0 @@ - - - RT-SPC56EL-EVB - - - - - - org.eclipse.cdt.managedbuilder.core.genmakebuilder - clean,full,incremental, - - - - - org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder - full,incremental, - - - - - - org.eclipse.cdt.core.cnature - org.eclipse.cdt.managedbuilder.core.managedBuildNature - org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - - - - board - 2 - CHIBIOS/os/hal/boards/ST_EVB_SPC56EL - - - os - 2 - CHIBIOS/os - - - test - 2 - CHIBIOS/test - - - diff --git a/demos/SPC5/RT-SPC56EL-EVB/Makefile b/demos/SPC5/RT-SPC56EL-EVB/Makefile deleted file mode 100644 index 615fd8fc4..000000000 --- a/demos/SPC5/RT-SPC56EL-EVB/Makefile +++ /dev/null @@ -1,188 +0,0 @@ -############################################################################## -# Build global options -# NOTE: Can be overridden externally. -# - -# Compiler options here. -ifeq ($(USE_OPT),) - USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16 -endif - -# C specific options here (added to USE_OPT). -ifeq ($(USE_COPT),) - USE_COPT = -endif - -# C++ specific options here (added to USE_OPT). -ifeq ($(USE_CPPOPT),) - USE_CPPOPT = -fno-rtti -endif - -# Enable this if you want the linker to remove unused code and data. -ifeq ($(USE_LINK_GC),) - USE_LINK_GC = yes -endif - -# Linker extra options here. -ifeq ($(USE_LDOPT),) - USE_LDOPT = -endif - -# Enable this if you want link time optimizations (LTO) -ifeq ($(USE_LTO),) - USE_LTO = no -endif - -# If enabled, this option allows to compile the application in VLE mode. -ifeq ($(USE_VLE),) - USE_VLE = yes -endif - -# Enable this if you want to see the full log while compiling. -ifeq ($(USE_VERBOSE_COMPILE),) - USE_VERBOSE_COMPILE = no -endif - -# If enabled, this option makes the build process faster by not compiling -# modules not used in the current configuration. -ifeq ($(USE_SMART_BUILD),) - USE_SMART_BUILD = yes -endif - -# -# Build global options -############################################################################## - -############################################################################## -# Architecture or project specific options -# - -# Stack size to be allocated to the process stack. This stack is -# the stack used by the main() thread. -ifeq ($(USE_PROCESS_STACKSIZE),) - USE_PROCESS_STACKSIZE = 0x400 -endif - -# Stack size to the allocated to the optional exceptions stack. This -# stack is used for processing interrupts and exceptions. -ifeq ($(USE_EXCEPTIONS_STACKSIZE),) - USE_EXCEPTIONS_STACKSIZE = 0 -endif - -# -# Architecture or project specific options -############################################################################## - -############################################################################## -# Project, sources and paths -# - -# Define project name here -PROJECT = ch - -# Imported source files and paths -CHIBIOS = ../../.. -# Startup files. -include $(CHIBIOS)/os/common/ports/e200/compilers/GCC/mk/startup_spc56elxx.mk -# HAL-OSAL files (optional). -include $(CHIBIOS)/os/hal/hal.mk -include $(CHIBIOS)/os/hal/boards/ST_EVB_SPC56EL/board.mk -include $(CHIBIOS)/os/hal/ports/SPC5/SPC56ELxx/platform.mk -include $(CHIBIOS)/os/hal/osal/rt/osal.mk -# RTOS files (optional). -include $(CHIBIOS)/os/rt/rt.mk -include $(CHIBIOS)/os/rt/ports/e200/compilers/GCC/mk/port.mk -# Other files (optional). -include $(CHIBIOS)/test/rt/test.mk - -# Define linker script file here -LDSCRIPT= $(STARTUPLD)/SPC56EL60_LSM.ld - -# C sources here. -CSRC = $(STARTUPSRC) \ - $(KERNSRC) \ - $(PORTSRC) \ - $(OSALSRC) \ - $(HALSRC) \ - $(PLATFORMSRC) \ - $(BOARDSRC) \ - $(TESTSRC) \ - $(CHIBIOS)/os/hal/lib/streams/memstreams.c \ - $(CHIBIOS)/os/hal/lib/streams/chprintf.c \ - $(CHIBIOS)/os/various/shell.c \ - main.c - -# C++ sources here. -CPPSRC = - -# List ASM source files here -ASMSRC = $(STARTUPASM) $(PORTASM) $(OSALASM) - -INCDIR = $(STARTUPINC) $(KERNINC) $(PORTINC) $(OSALINC) \ - $(HALINC) $(PLATFORMINC) $(BOARDINC) $(TESTINC) \ - $(CHIBIOS)/os/hal/lib/streams $(CHIBIOS)/os/various - -# -# Project, sources and paths -############################################################################## - -############################################################################## -# Compiler settings -# - -#MCU = e500mc -meabi -msdata=none -mnew-mnemonics -mregnames -MCU = e200zx -meabi -msdata=none -mnew-mnemonics -mregnames - -#TRGT = powerpc-eabi- -TRGT = ppc-vle- -CC = $(TRGT)gcc -CPPC = $(TRGT)g++ -# Enable loading with g++ only if you need C++ runtime support. -# NOTE: You can use C++ even without C++ support if you are careful. C++ -# runtime support makes code size explode. -LD = $(TRGT)gcc -#LD = $(TRGT)g++ -CP = $(TRGT)objcopy -AS = $(TRGT)gcc -x assembler-with-cpp -AR = $(TRGT)ar -OD = $(TRGT)objdump -SZ = $(TRGT)size -HEX = $(CP) -O ihex -MOT = $(CP) -O srec -BIN = $(CP) -O binary - -# Define C warning options here -CWARN = -Wall -Wextra -Wundef -Wstrict-prototypes - -# Define C++ warning options here -CPPWARN = -Wall -Wextra -Wundef - -# -# Compiler settings -############################################################################## - -############################################################################## -# Start of user section -# - -# List all user C define here, like -D_DEBUG=1 -UDEFS = - -# Define ASM defines here -UADEFS = - -# List all user directories here -UINCDIR = - -# List the user directory to look for the libraries here -ULIBDIR = - -# List all user libraries here -ULIBS = - -# -# End of user defines -############################################################################## - -RULESPATH = $(CHIBIOS)/os/common/ports/e200/compilers/GCC -include $(RULESPATH)/rules.mk diff --git a/demos/SPC5/RT-SPC56EL-EVB/UDE/debug.wsx b/demos/SPC5/RT-SPC56EL-EVB/UDE/debug.wsx deleted file mode 100644 index 764df1fe6..000000000 --- a/demos/SPC5/RT-SPC56EL-EVB/UDE/debug.wsx +++ /dev/null @@ -1,275 +0,0 @@ - - - debug.wsx000vQTv/gAAAQAXAAIA8QkPAAAABAAAAAAAPwAAAAAAAAAEAAAAAgAAAAAAAAAAAAAAAAAAAA==4.006.02.2013 12:41:07:000MCAAAAAAAAAAAAAABAAAAAAAPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPHHAAAAAAPBAAAAAAMGFAAAAAJEDAAAAAFalseTrue1616801050593930FalseFalse1000000000000000UDEStatusBarFor Help, press F105941912059647059398593975940159406059403593995940200FalseFalse0000000000CUDEDockBar0594224025625700FalseFalse0000000000CUDEDockBar0594205091000911000FalseFalse0000000000CUDEDockBar059647381True59419-1-11260268196-21474836480908FalseFalse1000000381271261277652106144014947UDEMDIMenuBarMenu bar0Menu barBAAAAAAIAACAAAAAAIAADAAAAAAIAAEAAAAAAIAAFAAAAAAIAAGAAAAAAIAAHAAAAAAIAAIAAAAAAIAAJAAAAAAIAAKAAAAAAIAA5939826True0-126110568196-21474836480780FalseFalse7142800111300006144014946CUdeCustomToolBarEdit0Edit2DCBOAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAACCBOAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAFCBOAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAIABOAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAA5939711026True011026290568196-21474836480780FalseFalse7142800180300006144014946CUdeCustomToolBarFile0File3AHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAABHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAACHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAADHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAEHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAFHHBAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAOKHBAAAAAABAAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAA5940356134True59419-156133868196-21474836481919251557780FalseFalse2358913430134303112906144014946CUdeCustomToolBarConfig0Config2GJHBAAAAAADAAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAAMMHBAAAAAAOPAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAANMHBAAAAAAAABAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAAFNHBAAAAAAGAAAAAAAKBDLFIMBFCNFHJBEGJFDMJNFCMOIPKHNAAAAAAAAPPPPPPPPAAAAAAAAINHBAAAAAACBAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAA5940129026479True5941929026769568196-21474836481600085855780FalseFalse28571447930479303145906144014946CUdeCustomToolBarViews0Views6JJHBAAAAAAFBAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAAKJHBAAAAAAPAAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAAMJHBAAAAAAGBAAAAAADBGGJPINFFOGHPIEPKKCPFOMBDBNDAKPAAAAAAAAPPPPPPPPAAAAAAAANKHBAAAAAAAAAAAAAAAGKBFNONHLAOENBBBJCBAABADAJECGGLAAAAAAAAPPPPPPPPAAAAAAAAALHBAAAAAAKAAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAACLHBAAAAAAMFAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAADLHBAAAAAAKFAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAFLHBAAAAAANCAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAGLHBAAAAAAMDAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAHLHBAAAAAAGEAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAAMHBAAAAAAKAAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAABMHBAAAAAAEBAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAACMHBAAAAAAJBAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAADMHBAAAAAALBAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAAEMHBAAAAAAAFAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAAFMHBAAAAAAICAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAAHMHBAAAAAANEEAAAAAJEOEILFFBLMIPBEEPLLMEDEOPKHPBGJHAAAAAAAAPPPPPPPPAAAAAAAAIMHBAAAAAAGFEAAAAAJEOEILFFBLMIPBEEPLLMEDEOPKHPBGJHAAAAAAAAPPPPPPPPAAAAAAAAJMHBAAAAAAAGEAAAAAJEOEILFFBLMIPBEEPLLMEDEOPKHPBGJHAAAAAAAAPPPPPPPPAAAAAAAALMHBAAAAAAGEAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAA5940676926246True59419769261015568196-21474836480780FalseFalse5714282463024630774606144014946CUdeCustomToolBarMacro0Macro2DKHBAAAAAALDAAAAAAGDHJMPFPDOOJLAGELLAIHGBMMEFJBIPLAAAAAAAAPPPPPPPPAAAAAAAAEKHBAAAAAAAEAAAAAAGDHJMPFPDOOJLAGELLAIHGBMMEFJBIPLAAAAAAAAPPPPPPPPAAAAAAAAGKHBAAAAAAMDAAAAAAGDHJMPFPDOOJLAGELLAIHGBMMEFJBIPLAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAMKHBAAAACAGJAAAAAAAAAANMAJBFNENHHACJPEILAJFEFEECLCDPKCBAAAAAAAKAAAAAAANAAAAAAAFFEEFEHFPGCHLGDHAHBGDGFGAA5939913356504True5941913356637868196-21474836480780FalseFalse56615350430504301239006144014946CUdeCustomToolBarDebug0Debug5BLHBAAAAAAIBAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAELHBAAAAAAOFAAAAAALGLJALHCJPMBOILEPIDADGENFBIDFOCNAAAAAAAAPPPPPPPPAAAAAAAAILHBAAAAAAHAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAJLHBAAAAAAJAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAKLHBAAAAAAKAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAALLHBAAAAAALAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAMLHBAAAAAAIAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAANLHBAAAAAABCDAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAOLHBAAAAAANAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAPLHBAAAAAAMAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAANHBAAAAAADAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAABNHBAAAAAAGAAAAAAABINLNCJGPDKECNBBCLNMAAAKECHFPLPAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPPPPPPPAAAAAAAACNHBAAAACAKKAAAAAAAAAADHHMLHLPEKIIOMOEJLGLBHJIBGLAHAFDBAAAAAAADAAAAAAAFAAAAAAADEPGCHFGAAENHBAAAAAADAAAAAAAKBDLFIMBFCNFHJBEGJFDMJNFCMOIPKHNAAAAAAAAPPPPPPPPAAAAAAAA5940263756142True5941963756779868196-21474836480780FalseFalse4102561423014230314606144014946CUdeCustomToolBarTools0ToolsDNHBAAAACAEGAAAAAAAAAAGEAOMHHDMDCIFAKEIIICDBCMNFEDNFHHBAAAAAAAGAAAAAAAFAAAAAAADEPGCHFGAAHNHBAAAAAABOAAAAAAKEMNADOLNFNPBMHEJJNEMIOMIMCHOAOGAAAAAAAAPPPPPPPPAAAAAAAA91100-2True594200-25144914-214748364803889FalseFalse1000000300180126015051449306144014948CTabWndControlBarTab Window Bar 00-1FalseUDEDesktop Standard BarsTab Window Bar 0UDEDesktop1051419100False00True000004-214748364803889FalseFalse100000030018030018015018006144014948CUdeProjectWspBarProject Workspace Bar0-1FalseUDEDesktop Standard BarsProject Workspace BarUDEDesktop000125615True59422156281854-2147483648064FalseFalse50000030018062718015068006144014948UDEFrameBarMessage View0-1FalseStdUDEMessageWinMainFrame.StdUDEMessageWin.OPEN_VIEWWorkspaceManager0018022576345True59422634512611854-2147483648064FalseFalse50000030018062718015049306144014948UDEFrameBarConsole View0-1FalseStdUDECmdWinMainFrame.StdUDECmdWin.OPEN_VIEWWorkspaceManager011802TrueTrueFalse06.02.2013 14:41:15:735437782421WorkspaceManager11014.02.2013 14:12:56:606MgAAAA==AQAAAA==ZAAAAA==AQAAAA==lgAAAA==AQAAAA==6AMAAA==AQAAAA==1225619011311WorkspaceManager110106.02.2013 12:44:29:131nAAAAD8AAYAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1225719011201WorkspaceManager1000110010\\napnt002.nap.st.com\NAPPRT0001000WorkspaceManagerWorkspaceManager01Core1Target0.Controller0.CoreTarget0.Controller0.Core102200701363012947811278743NormalfalseTop1270falseBottom0000falsefalse00DockPanelfalse1270falseBottom0000falsefalse10DockPaneltrue420falseLeft0000falsefalse00DockPaneltrue420falseLeft0000falsefalse10DockPanelfalse420falseLeft0000falsefalse20DockPanelfalse0falseTop0000falsefalse0-1TabbedDocumenttrue420falseLeft0000falsefalse30DockPanelfalse420falseLeft0000falsefalse40DockPanelfalse420falseLeft0000falsefalse50DockPanelfalsetrue634false562false200true200true100truetrue0012787400127824Platform Main Menufalsetrue32427625Macro ToolbarfalsetrueUDE_0x3B_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueRun MacroImagetrueUDE_0x40_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueDebug MacroImagetrueUDE_0x3_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueBreak MacroImagetrueUDE_0x3C_{F5FC9736-9EE3-460B-BB80-67C14C9581BF}trueReload MacroImagetrueUDE_Ctrl_{4D5190CD-077D-4F92-B890-4545242BF32A}_UDEWorkspacetrueImageAndTextfalse2792421025File ToolbarfalsetrueUDE_Workspace_0x1770trueNew WorkspaceImagetrueUDE_Workspace_0x1771trueOpen workspaceImagetrueUDE_Workspace_0x1772trueSave workspace asImagetrueUDE_Workspace_0x1773trueSave workspaceImagetrueUDE_Workspace_0x1774trueClose workspaceImagetrueUDE_Workspace_0x177FtrueExport view contentImagetrueUDE_Workspace_0x1778truePrintImagetrueUDE_0x1_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueLoad ProgramImagetrue489249525Edit ToolbarfalsetrueUDE_Workspace_0x1779trueCutImagetrueUDE_Workspace_0x177AtrueCopyImagetrueUDE_Workspace_0x177BtruePasteImagetrue5842444025Views ToolbarfalsetrueUDE_0x4_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueTarget BrowserImagetrueUDE_0x15_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueDiagnostic Message ViewerImagetrueUDE_0xF_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueConsoleImagetrueUDE_0x0_{DED51A60-E0B7-11D4-9112-0001034962B6}trueCPU WindowImagetrueUDE_0x1E_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueExplore SymbolsImagetrueUDE_0xA_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueProgramImagetrueUDE_0x5C_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueSingle Program WindowImagetrueUDE_0x5A_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueDisassembly WindowImagetrueUDE_0x2D_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow Special Function RegisterImagetrueUDE_0x3C_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueLocalsImagetrueUDE_0x46_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueWatchImagetrueUDE_0xA_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueSimulated I/OImagetrueUDE_0x14_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueUDE HTMLImagetrueUDE_0x19_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueArray ChartImagetrueUDE_0x1B_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueTime Traced Signal ChartImagetrueUDE_0x50_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueIP Trace ProfilingImagetrueUDE_0x28_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueMemoryImagetrueUDE_0x46_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueCall StackImagetrue34914125Config ToolbarfalsetrueUDE_0x3_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueTarget ConfigurationImagetrueUDE_0xFE_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueConnect TargetImagetrueUDE_0x100_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueDisconnect TargetImagetrueUDE_0x6_{1C85B31A-5D25-4197-9635-9C5DC28EAFD7}trueSetup Target InterfaceImagetrueUDE_0x12_{D8F96613-6E55-48F7-AF2A-5FCE31D103FA}trueMCU Run ControlImagetrue1444950925Debug ToolbarfalsetrueUDE_0x18_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow IPImagetrueUDE_0x5E_{27B09B6B-1CF9-4B8E-8F03-63D41538E5D2}trueShow program codeImagetrueUDE_0x7_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStart ProgramImagetrueUDE_0x9_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep OverImagetrueUDE_0xA_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep IntoImagetrueUDE_0xB_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueStep OutImagetrueUDE_0x8_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueRun CursorImagetrueUDE_0x321_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueBreak ProgramImagetrueUDE_0xD_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueResetImagetrueUDE_0xC_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueRestart ProgramImagetrueUDE_0x3_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueBreakpointsImagetrueUDE_0x6_{692DBD81-4A3F-11D2-B2CD-00A02457BF0F}trueToggle BreakImagetrueUDE_Ctrl_{FB7BC773-88A4-4ECE-B9B6-7189610B0735}_CoretrueImageAndTextfalseUDE_0x3_{1C85B31A-5D25-4197-9635-9C5DC28EAFD7}trueTrigger setupImagetrue6534915125Tools ToolbarfalsetrueUDE_Ctrl_{377CE046-823C-4A05-8828-13C25D345D77}_CoretrueImageAndTextfalseUDE_0xE1_{BE30DC4A-FD5D-47C1-994D-8CCEC8720E6E}trueExecution Time SetupImagetrue01002625Show Toolbarfalsefalse02002625Window Toolbarfalsefalse02252625Workspace Toolbarfalsefalse02752625Help Toolbarfalsefalse072012782300127823Platform Status Barfalsetrue07406461278740646..\..\..\..\..\Program Files\pls\UDE 4.0\StdLibrary.mso{866f82d3-fac5-43cd-8a82-0af01e46e2c5}..\..\..\..\..\Documents and Settings\disiriog\My Documents\pls\UDE 4.0660,997,321,6320..\..\..\..\..\Documents and Settings\disiriog\My Documents\pls\UDE 4.0The script contains a collection of macros to save memory content into different file formats -and fill target memory rangesV:\UDE\AddOns\Macro\MacroLibrary\StdMacros1.dsm' -' $Header: /Ude/AddOns/Macro/MacroLibrary/StdMacros.dsm 3 30.04.04 9:34 Weisses $ -'_______________________________________________________ -' -' universal debug engine -' -' Standard command line macros - part 1 -' -' pls Development Tools 1999-2004 -' -' 28.04.04 SW correction for UDE 1.10 -' 03.06.03 SW initial version -'_______________________________________________________ - -'_______________________________________________________ -' -' UnAss command line function -' -' generates disassembly file -' -' command line UnAss output-file range1 [range2] [range3] ..... -' range description: -' C:<startaddress>,<length> or - code -' DB:<startaddress>,<length> or - data byte -' DW:<startaddress>,<length> or - data word -' DD:<startaddress>,<length> or - data dword -'_______________________________________________________ - -Sub UnAss(File,ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - If IsNumeric(File) Then - MsgBox "File parameter wrong - " & File - Exit Sub - End If - DisASMObj.OutputPath = CStr(File) - bRetVal = DisASMObj.CreateStream(True,"UDE Disassembler output of current Program",False) - If bRetVal = True Then - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - For Range = 0 To RangeCnt -1 - KindOfRange = CStr(ParameterObj.Parameter(ParamIndex)) - KindOfRange = UCase(KindOfRange) - Address = CLng(ParameterObj.Parameter(ParamIndex +1)) - Length = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - If IsNumeric(KindOfRange) Then - If KindOfRange = 12 Then - DisASMObj.AddRange Address,Length,1 - ElseIf KindOfRange = 219 Then - DisASMObj.AddRange Address,Length,2 - ElseIf KindOfRange = 221 Then - DisASMObj.AddRange Address,Length,4 - Else - MsgBox "Invalid range type " & KindOfRange & "of range " & Range +1 - Exit Sub - End If - Else - If KindOfRange = "C" Then - DisASMObj.AddRange Address,Length,1 - ElseIf KindOfRange = "DB" Then - DisASMObj.AddRange Address,Length,2 - ElseIf KindOfRange = "DW" Then - DisASMObj.AddRange Address,Length,3 - ElseIf KindOfRange = "DD" Then - DisASMObj.AddRange Address,Length,4 - Else - MsgBox "Invalid range type " & KindOfRange & "of range " & Range +1 - Exit Sub - End If - End If - Next - DisASMObj.HexFileModeFlag = False - DisASMObj.ListModeFlag = False - DisASMObj.WriteAllRanges(False) - End If - -End Sub - -'_______________________________________________________ -' -' SaveHEX command line function -' -' generates intel-HEX file -' -' command line SaveHex output-file range1 [range2] [range3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub SaveHEX(File,ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - If IsNumeric(File) Then - MsgBox "File parameter wrong - " & File - Exit Sub - End If - DisASMObj.OutputPath = CStr(File) - bRetVal = DisASMObj.CreateStream(True,"UDE generated intel-Hex file of current Program",False) - If bRetVal = True Then - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 2 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/2 - ParamIndex = 0 - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)) - ParamIndex = ParamIndex +2 - DisASMObj.AddRange Address,Length,0 - Next - DisASMObj.HexFileModeFlag = True - DisASMObj.WriteAllRanges(False) - End If - -End Sub - -'_______________________________________________________ -' -' FillByte command line function -' -' fills memory range with byte pattern -' -' command line FillByte range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillByte(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.ByteArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub - -'_______________________________________________________ -' -' FillWord command line function -' -' fills memory range with word pattern -' -' command line FillWord range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillWord(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.WordArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)/2) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub - -'_______________________________________________________ -' -' FillDWord command line function -' -' fills memory range with dword pattern -' -' command line FillDWord range1,pattern1 [range2,pattern2] [range3,pattern3] ..... -' range description: -' <startaddress>,<length> -'_______________________________________________________ - -Sub FillDWord(ParameterObj) - - set debugger = workspace.Coredebugger(0) - set DisASMObj = debugger.DisASMObj - If Not IsObject(ParameterObj) Then - MsgBox "Number of parameters wrong" - Exit Sub - End If - ParmeterCnt = ParameterObj.ParameterCount - If ParmeterCnt = 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - If ( ParmeterCnt Mod 3 ) <> 0 Then - MsgBox "Number of parameters wrong " & ParmeterCnt - Exit Sub - End If - RangeCnt = ParmeterCnt/3 - ParamIndex = 0 - set udearrayobj = debugger.DWordArrayObj(1) - For Range = 0 To RangeCnt -1 - Address = CLng(ParameterObj.Parameter(ParamIndex)) - Length = CLng(ParameterObj.Parameter(ParamIndex +1)/4) - Pattern = CLng(ParameterObj.Parameter(ParamIndex +2)) - ParamIndex = ParamIndex +3 - udearrayobj.Resize(Length) - udearrayobj.Fill(Pattern) - debugger.Write Address,udearrayobj - Next - -End Sub63VBScript24.11.2006 14:43:20:0001WS_CORE_DUOMacro_14_06_13_15_04_25_010Execute UnAss ..Macro UnAssExecute macro UnAss0210Execute SaveHEX ..Macro SaveHEXExecute macro SaveHEX0210Execute FillByte ..Macro FillByteExecute macro FillByte0110Execute FillWord ..Macro FillWordExecute macro FillWord0110Execute FillDWord ..Macro FillDWordExecute macro FillDWord0150106.02.2013 13:47:02:7541,0,0,363,11033112567782870Target0.Controller0.Core1006.02.2013 13:48:36:1887782760Target0.Controller0.Core110111.06.2013 14:14:51:8451,0,0,363,11030017372860Target0.Controller0.Core1..\..\..\..\os\kernel\src\chsys.c1106.02.2013 15:16:10:4957372850Target0.Controller0.Core1..\main.c1014.02.2013 11:00:49:5527372870Target0.Controller0.Core1..\..\..\os\kernel\src\chsys.c15.02.2013 10:59:43:27373728120Target0.Controller0.Core1..\..\..\os\various\shell.c2313.02.2013 10:45:38:722..\..\..\test\testthd.c7372890Target0.Controller0.Core1413.02.2013 11:35:04:648..\..\..\os\kernel\src\chthreads.c73728100Target0.Controller0.Core15106.02.2013 13:47:33:227AwAAAA==AQAAAA==awAAAA==RwAAAA==OgAAAA==OgAAAA==OgAAAA==OgAAAA==OgAAAA==PwAAAA==AAAAAA==AAAAAA==AAAAAA==AAAAAA==TQBFAF8ARwBTAAAAAQAAAA==1,90,85,453,6823112571,254,867,432,11637782640Target0.Controller0.Core10013.02.2013 11:36:19:9747610508001,0,0,363,11030019011430Target0.Controller0.Core10113.02.2013 10:33:12:526003700247003300337782530Target0.Controller0.Core1014.02.2013 14:12:30:57500144096007372842949672950Target0.Controller0.Core100006.02.2013 15:13:15:766{6DE08EE5-E20C-42A4-896B-6821C2489841}240,240,240255,255,255111105011000{A9EAEABD-F574-486F-9B50-4EA4960DD2A7}{1DC51D03-5E6D-4FB4-A62D-5B8A6CAAC532}7372842949672950Target0.Controller0.Core100013.02.2013 11:45:30:676AgAAAA==AQAAAA==AAAAAA==AAAAAA==BAAAAA==
AMsAAA==
7786414521684368482
73728130Target0.Controller0.Core1
0
000108.02.2013 14:45:17:544<_ExtentX type="bin" size="8">xT8AAA==<_ExtentY type="bin" size="8">jCkAAA==<_StockProps type="bin" size="8">AAAAAA==AgAAAA==UABDAAAAUABDAAAAAAAAAA==YAAAAA==RgB1AG4AYwB0AGkAbwBuAAAARgB1AG4AYwB0AGkAbwBuAAAAAAAAAA==QAYAAA==1,0,0,363,11030017782980Target0.Controller0.Core10
OFFboard.c [C:\ChibiStudio\chibios\boards\GENERIC_SPC56EL\board.c],__early_init,56,0x52A000000000000x000000000x000000000x000000000x000000000x000000000x0000000000000000000000000x00000x00000x00000x000000000x00000x00000x00000x00000x00000x000000000000000000000000000000000000000000000000000000x000000000x000000000x000000000x00000000000000000000000000..\build11..\build\ch.elfSoftware;enabled;0;disabled;'main {C:\ChibiStudio\workspace\SPC5\demos\SPC56ELxx OS-Less Test Application\main.c} .23';main.c;1;0;;$disabled; ;disabled; ;1main0011100verify.txt0100000001..\main.c
stm_xpc56el_minimodule_lockstep_debug_jtag.cfg14.06.2013 15:04:24:999
diff --git a/demos/SPC5/RT-SPC56EL-EVB/UDE/stm_xpc56el_minimodule_lockstep_debug_jtag.cfg b/demos/SPC5/RT-SPC56EL-EVB/UDE/stm_xpc56el_minimodule_lockstep_debug_jtag.cfg deleted file mode 100644 index 87117b43f..000000000 --- a/demos/SPC5/RT-SPC56EL-EVB/UDE/stm_xpc56el_minimodule_lockstep_debug_jtag.cfg +++ /dev/null @@ -1,188 +0,0 @@ -[Main] -Signature=UDE_TARGINFO_2.0 -Description=STM XPC56XL Mini Module with SPC56EL60, Lockstep mode (Jtag) -Description1=MMU preinitialized, memory mapping 1:1, VLE enabled -Description2=FLASH programming prepared but not enabled -Description2=PLL init sequence for 80MHz -Description3=Write Filter for BAM Module -MCUs=Controller0 -Architecture=PowerPC -Vendor=STM -Board=XPC56XL Mini Module - -[Controller0] -Family=PowerPC -Type=SPC56EL60 -Enabled=1 -IntClock=80000 -MemDevs=BAMWriteFilter -ExtClock=40000 - -[Controller0.Core] -Protocol=PPCJTAG -Enabled=1 -ExecuteOpcodeAddr=0x00000000 - -[Controller0.Core.LoadedAddOn] -UDEMemtool=1 - -[Controller0.Core.PpcJtagTargIntf] -PortType=FTDI -ResetWaitTime=50 -MaxJtagClk=5000 -DoSramInit=1 -UseNexus=1 -AdaptiveJtagPhaseShift=1 -ConnOption=Reset -ChangeJtagClk=-1 -HaltAfterReset=1 -SimioAddr=g_JtagSimioAccess -FreezeTimers=1 -InvalidTlbOnReset=1 -InvalidateCache=1 -ForceCacheFlush=1 -IgnoreLockedLines=0 -ExecInitCmds=1 -JtagTapNumber=0 -JtagNumOfTaps=1 -JtagNumIrBefore=0 -JtagNumIrAfter=0 -SimioAddr=g_JtagSimioAccess -FlushCache=0 -AllowMmuSetup=0 -UseExtReset=0 -HandleWdtBug=0 -ForceEndOfReset=0 -JtagViaPod=1 -AllowResetOnCheck=0 -TargetPort=Default -ChangeMsr=0 -ChangeMsrValue=0x0 -ExecOnStartCmds=0 -ExecOnHaltCmds=0 -EnableProgramTimeMeasurement=0 -UseHwResetMode=1 -CommDevSel=PortType=USB,Type=FTDI -HandleNexusAccessBug=0 -DoNotEnableTrapSwBrp=0 -BootPasswd0=0xFEEDFACE -BootPasswd1=0xCAFEBEEF -BootPasswd2=0xFFFFFFFF -BootPasswd3=0xFFFFFFFF -BootPasswd4=0xFFFFFFFF -BootPasswd5=0xFFFFFFFF -BootPasswd6=0xFFFFFFFF -BootPasswd7=0xFFFFFFFF -JtagIoType=Jtag -ExecOnHaltCmdsWhileHalted=0 -TimerForPTM=Default -AllowBreakOnUpdateBreakpoints=0 -ClearDebugStatusOnHalt=1 -HwResetMode=Simulate -UseMasterNexusIfResetState=1 -UseLocalAddressTranslation=1 -Use64BitNexus=0 -InitSramOnlyWhenNotInitialized=0 -DisableE2EECC=0 -AllowHarrForUpdateDebugRegs=0 -UseCore0ForNexusMemoryAccessWhileRunning=0 - -[Controller0.BAMWriteFilter] -Description=BAM WriteAccess Filter -Range0Start=0xFFFFC000 -Range0Size=0x4000 -Enabled=1 -Handler=AccessFilter -Mode=ReadOnly - -[Controller0.PFLASH] -Enabled=1 -EnableMemtoolByDefault=1 - -[Controller0.Core.PpcJtagTargIntf.InitScript] -// disable watchdog -SET SWT_SR 0xC520 -SET SWT_SR 0xD928 -SET SWT_CR 0xFF00000A - -// select TLB 1 -SETSPR 0x274 0x10000108 0xFFFFFFFF - -// programm internal flash -// TLB 1, entry 0 -SETSPR 0x270 0x10000000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=16MB -SETSPR 0x271 0xC0000700 0xFFFFFFFF -// effective page number 00000000, I,G -SETSPR 0x272 0x00000028 0xFFFFFFFF -// real page 00000000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0x0000003F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// programm internal SRAM -// TLB 1, entry 1 -SETSPR 0x270 0x10010000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=16MB -SETSPR 0x271 0xC0000700 0xFFFFFFFF -// effective page number 40000000 I,G -SETSPR 0x272 0x40000028 0xFFFFFFFF -// real page 40000000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0x4000003F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// programm On plattform 1 peripherals -// TLB 1, entry 2 -SETSPR 0x270 0x10020000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=1MB -SETSPR 0x271 0xC0000500 0xFFFFFFFF -// effective page number 8FF00000, I,G -SETSPR 0x272 0x8FF00008 0xFFFFFFFF -// real page 8FF00000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0x8FF0003F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// programm peripheral A modules -// TLB 1, entry 3 -SETSPR 0x270 0x10030000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=1MB -SETSPR 0x271 0xC0000500 0xFFFFFFFF -// effective page number C3F00000, I -SETSPR 0x272 0xC3F0000A 0xFFFFFFFF -// real page C3F00000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0xC3F0003F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// programm Off plattform peripherals -// TLB 1, entry 4 -SETSPR 0x270 0x10040000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=1MB -SETSPR 0x271 0xC0000500 0xFFFFFFFF -// effective page number FFE00000, I -SETSPR 0x272 0xFFE00008 0xFFFFFFFF -// real page FFE00000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0xFFE0003F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// programm On plattform 0 peripherals -// TLB 1, entry 5 -SETSPR 0x270 0x10050000 0xFFFFFFFF -// Valid, protect against invalidation, global entry, size=1MB -SETSPR 0x271 0xC0000500 0xFFFFFFFF -// effective page number FFF00000, I -SETSPR 0x272 0xFFF00028 0xFFFFFFFF -// real page FFF00000, UX,SX,UW,SW,UR,SR -SETSPR 0x273 0xFFF0003F 0xFFFFFFFF -// execute TLB write instruction -EXECOPCODE 0x7C0007A4 - -// clear fault status -SET16 RGM_FES 0xFFFF -[Controller0.Core.PpcJtagTargIntf.OnStartScript] - -[Controller0.Core.PpcJtagTargIntf.OnHaltScript] - diff --git a/demos/SPC5/RT-SPC56EL-EVB/chconf.h b/demos/SPC5/RT-SPC56EL-EVB/chconf.h deleted file mode 100644 index f6244ad4b..000000000 --- a/demos/SPC5/RT-SPC56EL-EVB/chconf.h +++ /dev/null @@ -1,499 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file templates/chconf.h - * @brief Configuration file template. - * @details A copy of this file must be placed in each project directory, it - * contains the application specific kernel settings. - * - * @addtogroup config - * @details Kernel related settings and hooks. - * @{ - */ - -#ifndef _CHCONF_H_ -#define _CHCONF_H_ - -/*===========================================================================*/ -/** - * @name System timers settings - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System time counter resolution. - * @note Allowed values are 16 or 32 bits. - */ -#define CH_CFG_ST_RESOLUTION 32 - -/** - * @brief System tick frequency. - * @details Frequency of the system timer that drives the system ticks. This - * setting also defines the system tick time unit. - */ -#define CH_CFG_ST_FREQUENCY 1000 - -/** - * @brief Time delta constant for the tick-less mode. - * @note If this value is zero then the system uses the classic - * periodic tick. This value represents the minimum number - * of ticks that is safe to specify in a timeout directive. - * The value one is not valid, timeouts are rounded up to - * this value. - */ -#define CH_CFG_ST_TIMEDELTA 0 - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel parameters and options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Round robin interval. - * @details This constant is the number of system ticks allowed for the - * threads before preemption occurs. Setting this value to zero - * disables the preemption for threads with equal priority and the - * round robin becomes cooperative. Note that higher priority - * threads can still preempt, the kernel is always preemptive. - * @note Disabling the round robin preemption makes the kernel more compact - * and generally faster. - * @note The round robin preemption is not supported in tickless mode and - * must be set to zero in that case. - */ -#define CH_CFG_TIME_QUANTUM 0 - -/** - * @brief Managed RAM size. - * @details Size of the RAM area to be managed by the OS. If set to zero - * then the whole available RAM is used. The core memory is made - * available to the heap allocator and/or can be used directly through - * the simplified core memory allocator. - * - * @note In order to let the OS manage the whole RAM the linker script must - * provide the @p __heap_base__ and @p __heap_end__ symbols. - * @note Requires @p CH_CFG_USE_MEMCORE. - */ -#define CH_CFG_MEMCORE_SIZE 0 - -/** - * @brief Idle thread automatic spawn suppression. - * @details When this option is activated the function @p chSysInit() - * does not spawn the idle thread. The application @p main() - * function becomes the idle thread and must implement an - * infinite loop. - */ -#define CH_CFG_NO_IDLE_THREAD FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Performance options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief OS optimization. - * @details If enabled then time efficient rather than space efficient code - * is used when two possible implementations exist. - * - * @note This is not related to the compiler optimization options. - * @note The default is @p TRUE. - */ -#define CH_CFG_OPTIMIZE_SPEED TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Subsystem options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Time Measurement APIs. - * @details If enabled then the time measurement APIs are included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_TM FALSE - -/** - * @brief Threads registry APIs. - * @details If enabled then the registry APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_REGISTRY TRUE - -/** - * @brief Threads synchronization APIs. - * @details If enabled then the @p chThdWait() function is included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_WAITEXIT TRUE - -/** - * @brief Semaphores APIs. - * @details If enabled then the Semaphores APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_SEMAPHORES TRUE - -/** - * @brief Semaphores queuing mode. - * @details If enabled then the threads are enqueued on semaphores by - * priority rather than in FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE - -/** - * @brief Mutexes APIs. - * @details If enabled then the mutexes APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MUTEXES TRUE - -/** - * @brief Enables recursive behavior on mutexes. - * @note Recursive mutexes are heavier and have an increased - * memory footprint. - * - * @note The default is @p FALSE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_MUTEXES_RECURSIVE FALSE - -/** - * @brief Conditional Variables APIs. - * @details If enabled then the conditional variables APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_CONDVARS TRUE - -/** - * @brief Conditional Variables APIs with timeout. - * @details If enabled then the conditional variables APIs with timeout - * specification are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_CONDVARS. - */ -#define CH_CFG_USE_CONDVARS_TIMEOUT TRUE - -/** - * @brief Events Flags APIs. - * @details If enabled then the event flags APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_EVENTS TRUE - -/** - * @brief Events Flags APIs with timeout. - * @details If enabled then the events APIs with timeout specification - * are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_EVENTS. - */ -#define CH_CFG_USE_EVENTS_TIMEOUT TRUE - -/** - * @brief Synchronous Messages APIs. - * @details If enabled then the synchronous messages APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MESSAGES TRUE - -/** - * @brief Synchronous Messages queuing mode. - * @details If enabled then messages are served by priority rather than in - * FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_MESSAGES. - */ -#define CH_CFG_USE_MESSAGES_PRIORITY FALSE - -/** - * @brief Mailboxes APIs. - * @details If enabled then the asynchronous messages (mailboxes) APIs are - * included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_MAILBOXES TRUE - -/** - * @brief I/O Queues APIs. - * @details If enabled then the I/O queues APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_QUEUES TRUE - -/** - * @brief Core Memory Manager APIs. - * @details If enabled then the core memory manager APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMCORE TRUE - -/** - * @brief Heap Allocator APIs. - * @details If enabled then the memory heap allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or - * @p CH_CFG_USE_SEMAPHORES. - * @note Mutexes are recommended. - */ -#define CH_CFG_USE_HEAP TRUE - -/** - * @brief Memory Pools Allocator APIs. - * @details If enabled then the memory pools allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMPOOLS TRUE - -/** - * @brief Dynamic Threads APIs. - * @details If enabled then the dynamic threads creation APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_WAITEXIT. - * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS. - */ -#define CH_CFG_USE_DYNAMIC TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Debug options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Debug option, kernel statistics. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_STATISTICS FALSE - -/** - * @brief Debug option, system state check. - * @details If enabled the correct call protocol for system APIs is checked - * at runtime. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_SYSTEM_STATE_CHECK FALSE - -/** - * @brief Debug option, parameters checks. - * @details If enabled then the checks on the API functions input - * parameters are activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_CHECKS FALSE - -/** - * @brief Debug option, consistency checks. - * @details If enabled then all the assertions in the kernel code are - * activated. This includes consistency checks inside the kernel, - * runtime anomalies and port-defined checks. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_ASSERTS FALSE - -/** - * @brief Debug option, trace buffer. - * @details If enabled then the context switch circular trace buffer is - * activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_TRACE FALSE - -/** - * @brief Debug option, stack checks. - * @details If enabled then a runtime stack check is performed. - * - * @note The default is @p FALSE. - * @note The stack check is performed in a architecture/port dependent way. - * It may not be implemented or some ports. - * @note The default failure mode is to halt the system with the global - * @p panic_msg variable set to @p NULL. - */ -#define CH_DBG_ENABLE_STACK_CHECK FALSE - -/** - * @brief Debug option, stacks initialization. - * @details If enabled then the threads working area is filled with a byte - * value when a thread is created. This can be useful for the - * runtime measurement of the used stack. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_FILL_THREADS FALSE - -/** - * @brief Debug option, threads profiling. - * @details If enabled then a field is added to the @p thread_t structure that - * counts the system ticks occurred while executing the thread. - * - * @note The default is @p FALSE. - * @note This debug option is not currently compatible with the - * tickless mode. - */ -#define CH_DBG_THREADS_PROFILING FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel hooks - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Threads descriptor structure extension. - * @details User fields added to the end of the @p thread_t structure. - */ -#define CH_CFG_THREAD_EXTRA_FIELDS \ - /* Add threads custom fields here.*/ - -/** - * @brief Threads initialization hook. - * @details User initialization code added to the @p chThdInit() API. - * - * @note It is invoked from within @p chThdInit() and implicitly from all - * the threads creation APIs. - */ -#define CH_CFG_THREAD_INIT_HOOK(tp) { \ - /* Add threads initialization code here.*/ \ -} - -/** - * @brief Threads finalization hook. - * @details User finalization code added to the @p chThdExit() API. - * - * @note It is inserted into lock zone. - * @note It is also invoked when the threads simply return in order to - * terminate. - */ -#define CH_CFG_THREAD_EXIT_HOOK(tp) { \ - /* Add threads finalization code here.*/ \ -} - -/** - * @brief Context switch hook. - * @details This hook is invoked just before switching between threads. - */ -#define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) { \ - /* Context switch code here.*/ \ -} - -/** - * @brief Idle thread enter hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to activate a power saving mode. - */ -#define CH_CFG_IDLE_ENTER_HOOK() { \ -} - -/** - * @brief Idle thread leave hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to deactivate a power saving mode. - */ -#define CH_CFG_IDLE_LEAVE_HOOK() { \ -} - -/** - * @brief Idle Loop hook. - * @details This hook is continuously invoked by the idle thread loop. - */ -#define CH_CFG_IDLE_LOOP_HOOK() { \ - /* Idle loop code here.*/ \ -} - -/** - * @brief System tick event hook. - * @details This hook is invoked in the system tick handler immediately - * after processing the virtual timers queue. - */ -#define CH_CFG_SYSTEM_TICK_HOOK() { \ - /* System tick event code here.*/ \ -} - -/** - * @brief System halt hook. - * @details This hook is invoked in case to a system halting error before - * the system is halted. - */ -#define CH_CFG_SYSTEM_HALT_HOOK(reason) { \ - /* System halt code here.*/ \ -} - -/** @} */ - -/*===========================================================================*/ -/* Port-specific settings (override port settings defaulted in chcore.h). */ -/*===========================================================================*/ - -#endif /* _CHCONF_H_ */ - -/** @} */ diff --git a/demos/SPC5/RT-SPC56EL-EVB/halconf.h b/demos/SPC5/RT-SPC56EL-EVB/halconf.h deleted file mode 100644 index 682795338..000000000 --- a/demos/SPC5/RT-SPC56EL-EVB/halconf.h +++ /dev/null @@ -1,388 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file templates/halconf.h - * @brief HAL configuration header. - * @details HAL configuration file, this file allows to enable or disable the - * various device drivers from your application. You may also use - * this file in order to override the device drivers default settings. - * - * @addtogroup HAL_CONF - * @{ - */ - -#ifndef _HALCONF_H_ -#define _HALCONF_H_ - -#include "mcuconf.h" - -/** - * @brief Enables the TM subsystem. - */ -#if !defined(HAL_USE_TM) || defined(__DOXYGEN__) -#define HAL_USE_TM FALSE -#endif - -/** - * @brief Enables the PAL subsystem. - */ -#if !defined(HAL_USE_PAL) || defined(__DOXYGEN__) -#define HAL_USE_PAL TRUE -#endif - -/** - * @brief Enables the ADC subsystem. - */ -#if !defined(HAL_USE_ADC) || defined(__DOXYGEN__) -#define HAL_USE_ADC FALSE -#endif - -/** - * @brief Enables the CAN subsystem. - */ -#if !defined(HAL_USE_CAN) || defined(__DOXYGEN__) -#define HAL_USE_CAN FALSE -#endif - -/** - * @brief Enables the DAC subsystem. - */ -#if !defined(HAL_USE_DAC) || defined(__DOXYGEN__) -#define HAL_USE_DAC FALSE -#endif - -/** - * @brief Enables the EXT subsystem. - */ -#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) -#define HAL_USE_EXT FALSE -#endif - -/** - * @brief Enables the GPT subsystem. - */ -#if !defined(HAL_USE_GPT) || defined(__DOXYGEN__) -#define HAL_USE_GPT FALSE -#endif - -/** - * @brief Enables the I2C subsystem. - */ -#if !defined(HAL_USE_I2C) || defined(__DOXYGEN__) -#define HAL_USE_I2C FALSE -#endif - -/** - * @brief Enables the I2S subsystem. - */ -#if !defined(HAL_USE_I2S) || defined(__DOXYGEN__) -#define HAL_USE_I2S FALSE -#endif - -/** - * @brief Enables the ICU subsystem. - */ -#if !defined(HAL_USE_ICU) || defined(__DOXYGEN__) -#define HAL_USE_ICU FALSE -#endif - -/** - * @brief Enables the MAC subsystem. - */ -#if !defined(HAL_USE_MAC) || defined(__DOXYGEN__) -#define HAL_USE_MAC FALSE -#endif - -/** - * @brief Enables the MMC_SPI subsystem. - */ -#if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__) -#define HAL_USE_MMC_SPI FALSE -#endif - -/** - * @brief Enables the PWM subsystem. - */ -#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__) -#define HAL_USE_PWM FALSE -#endif - -/** - * @brief Enables the RTC subsystem. - */ -#if !defined(HAL_USE_RTC) || defined(__DOXYGEN__) -#define HAL_USE_RTC FALSE -#endif - -/** - * @brief Enables the SDC subsystem. - */ -#if !defined(HAL_USE_SDC) || defined(__DOXYGEN__) -#define HAL_USE_SDC FALSE -#endif - -/** - * @brief Enables the SERIAL subsystem. - */ -#if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__) -#define HAL_USE_SERIAL TRUE -#endif - -/** - * @brief Enables the SERIAL over USB subsystem. - */ -#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__) -#define HAL_USE_SERIAL_USB FALSE -#endif - -/** - * @brief Enables the SPI subsystem. - */ -#if !defined(HAL_USE_SPI) || defined(__DOXYGEN__) -#define HAL_USE_SPI FALSE -#endif - -/** - * @brief Enables the UART subsystem. - */ -#if !defined(HAL_USE_UART) || defined(__DOXYGEN__) -#define HAL_USE_UART FALSE -#endif - -/** - * @brief Enables the USB subsystem. - */ -#if !defined(HAL_USE_USB) || defined(__DOXYGEN__) -#define HAL_USE_USB FALSE -#endif - -/** - * @brief Enables the WDG subsystem. - */ -#if !defined(HAL_USE_WDG) || defined(__DOXYGEN__) -#define HAL_USE_WDG FALSE -#endif - -/*===========================================================================*/ -/* ADC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__) -#define ADC_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define ADC_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* CAN driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Sleep mode related APIs inclusion switch. - */ -#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__) -#define CAN_USE_SLEEP_MODE TRUE -#endif - -/*===========================================================================*/ -/* I2C driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables the mutual exclusion APIs on the I2C bus. - */ -#if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define I2C_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* MAC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables an event sources for incoming packets. - */ -#if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__) -#define MAC_USE_ZERO_COPY FALSE -#endif - -/** - * @brief Enables an event sources for incoming packets. - */ -#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__) -#define MAC_USE_EVENTS TRUE -#endif - -/*===========================================================================*/ -/* MMC_SPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Delays insertions. - * @details If enabled this options inserts delays into the MMC waiting - * routines releasing some extra CPU time for the threads with - * lower priority, this may slow down the driver a bit however. - * This option is recommended also if the SPI driver does not - * use a DMA channel and heavily loads the CPU. - */ -#if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__) -#define MMC_NICE_WAITING TRUE -#endif - -/*===========================================================================*/ -/* SDC driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Number of initialization attempts before rejecting the card. - * @note Attempts are performed at 10mS intervals. - */ -#if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__) -#define SDC_INIT_RETRY 100 -#endif - -/** - * @brief Include support for MMC cards. - * @note MMC support is not yet implemented so this option must be kept - * at @p FALSE. - */ -#if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__) -#define SDC_MMC_SUPPORT FALSE -#endif - -/** - * @brief Delays insertions. - * @details If enabled this options inserts delays into the MMC waiting - * routines releasing some extra CPU time for the threads with - * lower priority, this may slow down the driver a bit however. - */ -#if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__) -#define SDC_NICE_WAITING TRUE -#endif - -/*===========================================================================*/ -/* SERIAL driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Default bit rate. - * @details Configuration parameter, this is the baud rate selected for the - * default configuration. - */ -#if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__) -#define SERIAL_DEFAULT_BITRATE 38400 -#endif - -/** - * @brief Serial buffers size. - * @details Configuration parameter, you can change the depth of the queue - * buffers depending on the requirements of your application. - * @note The default is 16 bytes for both the transmission and receive - * buffers. - */ -#if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__) -#define SERIAL_BUFFERS_SIZE 16 -#endif - -/*===========================================================================*/ -/* SERIAL_USB driver related setting. */ -/*===========================================================================*/ - -/** - * @brief Serial over USB buffers size. - * @details Configuration parameter, the buffer size must be a multiple of - * the USB data endpoint maximum packet size. - * @note The default is 256 bytes for both the transmission and receive - * buffers. - */ -#if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__) -#define SERIAL_USB_BUFFERS_SIZE 256 -#endif - -/** - * @brief Serial over USB number of buffers. - * @note The default is 2 buffers. - */ -#if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__) -#define SERIAL_USB_BUFFERS_NUMBER 2 -#endif - -/*===========================================================================*/ -/* SPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__) -#define SPI_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define SPI_USE_MUTUAL_EXCLUSION TRUE -#endif - -/*===========================================================================*/ -/* UART driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__) -#define UART_USE_WAIT FALSE -#endif - -/** - * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define UART_USE_MUTUAL_EXCLUSION FALSE -#endif - -/*===========================================================================*/ -/* USB driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(USB_USE_WAIT) || defined(__DOXYGEN__) -#define USB_USE_WAIT FALSE -#endif - -#endif /* _HALCONF_H_ */ - -/** @} */ diff --git a/demos/SPC5/RT-SPC56EL-EVB/main.c b/demos/SPC5/RT-SPC56EL-EVB/main.c deleted file mode 100644 index 1806961b2..000000000 --- a/demos/SPC5/RT-SPC56EL-EVB/main.c +++ /dev/null @@ -1,202 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#include "ch.h" -#include "hal.h" -#include "test.h" -#include "shell.h" -#include "chprintf.h" - -#define SHELL_WA_SIZE THD_WORKING_AREA_SIZE(1024) -#define TEST_WA_SIZE THD_WORKING_AREA_SIZE(256) - -static void cmd_mem(BaseSequentialStream *chp, int argc, char *argv[]) { - size_t n, size; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: mem\r\n"); - return; - } - n = chHeapStatus(NULL, &size); - chprintf(chp, "core free memory : %u bytes\r\n", chCoreGetStatusX()); - chprintf(chp, "heap fragments : %u\r\n", n); - chprintf(chp, "heap free total : %u bytes\r\n", size); -} - -static void cmd_threads(BaseSequentialStream *chp, int argc, char *argv[]) { - static const char *states[] = {CH_STATE_NAMES}; - thread_t *tp; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: threads\r\n"); - return; - } - chprintf(chp, " addr stack prio refs state time\r\n"); - tp = chRegFirstThread(); - do { - chprintf(chp, "%08lx %08lx %4lu %4lu %9s\r\n", - (uint32_t)tp, (uint32_t)tp->p_ctx.sp, - (uint32_t)tp->p_prio, (uint32_t)(tp->p_refs - 1), - states[tp->p_state]); - tp = chRegNextThread(tp); - } while (tp != NULL); -} - -static void cmd_test(BaseSequentialStream *chp, int argc, char *argv[]) { - thread_t *tp; - - (void)argv; - if (argc > 0) { - chprintf(chp, "Usage: test\r\n"); - return; - } - tp = chThdCreateFromHeap(NULL, TEST_WA_SIZE, chThdGetPriorityX(), - TestThread, chp); - if (tp == NULL) { - chprintf(chp, "out of memory\r\n"); - return; - } - chThdWait(tp); -} - -static const ShellCommand commands[] = { - {"mem", cmd_mem}, - {"threads", cmd_threads}, - {"test", cmd_test}, - {NULL, NULL} -}; - -static const ShellConfig shell_cfg1 = { - (BaseSequentialStream *)&SD1, - commands -}; - -/* - * LEDs blinker thread, times are in milliseconds. - */ -static THD_WORKING_AREA(waThread1, 128); -static THD_FUNCTION(Thread1, arg) { - - (void)arg; - chRegSetThreadName("blinker"); - - while (true) { - unsigned i; - - for (i = 0; i < 4; i++) { - palClearPad(PORT_D, PD_LED1); - chThdSleepMilliseconds(100); - palClearPad(PORT_D, PD_LED2); - chThdSleepMilliseconds(100); - palClearPad(PORT_D, PD_LED3); - chThdSleepMilliseconds(100); - palClearPad(PORT_D, PD_LED4); - chThdSleepMilliseconds(100); - palSetPad(PORT_D, PD_LED1); - chThdSleepMilliseconds(100); - palSetPad(PORT_D, PD_LED2); - chThdSleepMilliseconds(100); - palSetPad(PORT_D, PD_LED3); - chThdSleepMilliseconds(100); - palSetPad(PORT_D, PD_LED4); - chThdSleepMilliseconds(300); - } - - for (i = 0; i < 4; i++) { - palTogglePort(PORT_D, PAL_PORT_BIT(PD_LED1) | PAL_PORT_BIT(PD_LED2) | - PAL_PORT_BIT(PD_LED3) | PAL_PORT_BIT(PD_LED4)); - chThdSleepMilliseconds(500); - palTogglePort(PORT_D, PAL_PORT_BIT(PD_LED1) | PAL_PORT_BIT(PD_LED2) | - PAL_PORT_BIT(PD_LED3) | PAL_PORT_BIT(PD_LED4)); - chThdSleepMilliseconds(500); - } - - for (i = 0; i < 4; i++) { - palTogglePad(PORT_D, PD_LED1); - chThdSleepMilliseconds(250); - palTogglePad(PORT_D, PD_LED1); - palTogglePad(PORT_D, PD_LED2); - chThdSleepMilliseconds(250); - palTogglePad(PORT_D, PD_LED2); - palTogglePad(PORT_D, PD_LED3); - chThdSleepMilliseconds(250); - palTogglePad(PORT_D, PD_LED3); - palTogglePad(PORT_D, PD_LED4); - chThdSleepMilliseconds(250); - palTogglePad(PORT_D, PD_LED4); - } - - for (i = 0; i < 4; i++) { - palClearPort(PORT_D, PAL_PORT_BIT(PD_LED1) | PAL_PORT_BIT(PD_LED3)); - palSetPort(PORT_D, PAL_PORT_BIT(PD_LED2) | PAL_PORT_BIT(PD_LED4)); - chThdSleepMilliseconds(500); - palClearPort(PORT_D, PAL_PORT_BIT(PD_LED2) | PAL_PORT_BIT(PD_LED4)); - palSetPort(PORT_D, PAL_PORT_BIT(PD_LED1) | PAL_PORT_BIT(PD_LED3)); - chThdSleepMilliseconds(500); - } - - palSetPort(PORT_D, PAL_PORT_BIT(PD_LED1) | PAL_PORT_BIT(PD_LED2) | - PAL_PORT_BIT(PD_LED3) | PAL_PORT_BIT(PD_LED4)); - } -} - -/* - * Application entry point. - */ -int main(void) { - thread_t *shelltp = NULL; - - /* - * System initializations. - * - HAL initialization, this also initializes the configured device drivers - * and performs the board-specific initializations. - * - Kernel initialization, the main() function becomes a thread and the - * RTOS is active. - */ - halInit(); - chSysInit(); - - /* - * Shell manager initialization. - */ - shellInit(); - - /* - * Activates the serial driver 1 using the driver default configuration. - */ - sdStart(&SD1, NULL); - - /* - * Creates the blinker thread. - */ - chThdCreateStatic(waThread1, sizeof(waThread1), NORMALPRIO, Thread1, NULL); - - /* - * Normal main() thread activity. - */ - while (true) { - if (!shelltp) - shelltp = shellCreate(&shell_cfg1, SHELL_WA_SIZE, NORMALPRIO); - else if (chThdTerminatedX(shelltp)) { - chThdRelease(shelltp); /* Recovers memory of the previous shell. */ - shelltp = NULL; /* Triggers spawning of a new shell. */ - } - chThdSleepMilliseconds(1000); - } - return 0; -} diff --git a/demos/SPC5/RT-SPC56EL-EVB/mcuconf.h b/demos/SPC5/RT-SPC56EL-EVB/mcuconf.h deleted file mode 100644 index bf28f0965..000000000 --- a/demos/SPC5/RT-SPC56EL-EVB/mcuconf.h +++ /dev/null @@ -1,294 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#ifndef _MCUCONF_H_ -#define _MCUCONF_H_ - -/* - * SPC56ELxx drivers configuration. - * The following settings override the default settings present in - * the various device driver implementation headers. - * Note that the settings for each driver only have effect if the whole - * driver is enabled in halconf.h. - * - * IRQ priorities: - * 1...15 Lowest...Highest. - * DMA priorities: - * 0...15 Highest...Lowest. - */ - -#define SPC56ELxx_MCUCONF - -/* - * HAL driver system settings. - */ -#define SPC5_NO_INIT FALSE -#define SPC5_ALLOW_OVERCLOCK FALSE -#define SPC5_DISABLE_WATCHDOG TRUE -#define SPC5_FMPLL0_CLK_SRC SPC5_FMPLL_SRC_XOSC -#define SPC5_FMPLL0_IDF_VALUE 5 -#define SPC5_FMPLL0_NDIV_VALUE 60 -#define SPC5_FMPLL0_ODF SPC5_FMPLL_ODF_DIV4 -#define SPC5_FMPLL1_CLK_SRC SPC5_FMPLL_SRC_XOSC -#define SPC5_FMPLL1_IDF_VALUE 5 -#define SPC5_FMPLL1_NDIV_VALUE 60 -#define SPC5_FMPLL1_ODF SPC5_FMPLL_ODF_DIV4 -#define SPC5_SYSCLK_DIVIDER_VALUE 2 -#define SPC5_AUX0CLK_SRC SPC5_CGM_SS_FMPLL1 -#define SPC5_MCONTROL_DIVIDER_VALUE 15 -#define SPC5_SWG_DIVIDER_VALUE 2 -#define SPC5_AUX1CLK_SRC SPC5_CGM_SS_FMPLL1 -#define SPC5_FLEXRAY_DIVIDER_VALUE 2 -#define SPC5_AUX2CLK_SRC SPC5_CGM_SS_FMPLL1 -#define SPC5_FLEXCAN_DIVIDER_VALUE 2 -#define SPC5_ME_ME_BITS (SPC5_ME_ME_RUN1 | \ - SPC5_ME_ME_RUN2 | \ - SPC5_ME_ME_RUN3 | \ - SPC5_ME_ME_HALT0 | \ - SPC5_ME_ME_STOP0) -#define SPC5_ME_SAFE_MC_BITS (SPC5_ME_MC_PDO) -#define SPC5_ME_DRUN_MC_BITS (SPC5_ME_MC_SYSCLK_FMPLL0 | \ - SPC5_ME_MC_IRCON | \ - SPC5_ME_MC_XOSC0ON | \ - SPC5_ME_MC_PLL0ON | \ - SPC5_ME_MC_PLL1ON | \ - SPC5_ME_MC_FLAON_NORMAL | \ - SPC5_ME_MC_MVRON) -#define SPC5_ME_RUN0_MC_BITS (SPC5_ME_MC_SYSCLK_FMPLL0 | \ - SPC5_ME_MC_IRCON | \ - SPC5_ME_MC_XOSC0ON | \ - SPC5_ME_MC_PLL0ON | \ - SPC5_ME_MC_PLL1ON | \ - SPC5_ME_MC_FLAON_NORMAL | \ - SPC5_ME_MC_MVRON) -#define SPC5_ME_RUN1_MC_BITS (SPC5_ME_MC_SYSCLK_FMPLL0 | \ - SPC5_ME_MC_IRCON | \ - SPC5_ME_MC_XOSC0ON | \ - SPC5_ME_MC_PLL0ON | \ - SPC5_ME_MC_PLL1ON | \ - SPC5_ME_MC_FLAON_NORMAL | \ - SPC5_ME_MC_MVRON) -#define SPC5_ME_RUN2_MC_BITS (SPC5_ME_MC_SYSCLK_FMPLL0 | \ - SPC5_ME_MC_IRCON | \ - SPC5_ME_MC_XOSC0ON | \ - SPC5_ME_MC_PLL0ON | \ - SPC5_ME_MC_PLL1ON | \ - SPC5_ME_MC_FLAON_NORMAL | \ - SPC5_ME_MC_MVRON) -#define SPC5_ME_RUN3_MC_BITS (SPC5_ME_MC_SYSCLK_FMPLL0 | \ - SPC5_ME_MC_IRCON | \ - SPC5_ME_MC_XOSC0ON | \ - SPC5_ME_MC_PLL0ON | \ - SPC5_ME_MC_PLL1ON | \ - SPC5_ME_MC_FLAON_NORMAL | \ - SPC5_ME_MC_MVRON) -#define SPC5_ME_HALT0_MC_BITS (SPC5_ME_MC_SYSCLK_FMPLL0 | \ - SPC5_ME_MC_IRCON | \ - SPC5_ME_MC_XOSC0ON | \ - SPC5_ME_MC_PLL0ON | \ - SPC5_ME_MC_PLL1ON | \ - SPC5_ME_MC_FLAON_NORMAL | \ - SPC5_ME_MC_MVRON) -#define SPC5_ME_STOP0_MC_BITS (SPC5_ME_MC_SYSCLK_FMPLL0 | \ - SPC5_ME_MC_IRCON | \ - SPC5_ME_MC_XOSC0ON | \ - SPC5_ME_MC_PLL0ON | \ - SPC5_ME_MC_PLL1ON | \ - SPC5_ME_MC_FLAON_NORMAL | \ - SPC5_ME_MC_MVRON) -#define SPC5_ME_RUN_PC3_BITS (SPC5_ME_RUN_PC_RUN0 | \ - SPC5_ME_RUN_PC_RUN1 | \ - SPC5_ME_RUN_PC_RUN2 | \ - SPC5_ME_RUN_PC_RUN3) -#define SPC5_ME_RUN_PC4_BITS (SPC5_ME_RUN_PC_RUN0 | \ - SPC5_ME_RUN_PC_RUN1 | \ - SPC5_ME_RUN_PC_RUN2 | \ - SPC5_ME_RUN_PC_RUN3) -#define SPC5_ME_RUN_PC5_BITS (SPC5_ME_RUN_PC_RUN0 | \ - SPC5_ME_RUN_PC_RUN1 | \ - SPC5_ME_RUN_PC_RUN2 | \ - SPC5_ME_RUN_PC_RUN3) -#define SPC5_ME_RUN_PC6_BITS (SPC5_ME_RUN_PC_RUN0 | \ - SPC5_ME_RUN_PC_RUN1 | \ - SPC5_ME_RUN_PC_RUN2 | \ - SPC5_ME_RUN_PC_RUN3) -#define SPC5_ME_RUN_PC7_BITS (SPC5_ME_RUN_PC_RUN0 | \ - SPC5_ME_RUN_PC_RUN1 | \ - SPC5_ME_RUN_PC_RUN2 | \ - SPC5_ME_RUN_PC_RUN3) -#define SPC5_ME_LP_PC4_BITS (SPC5_ME_LP_PC_HALT0 | \ - SPC5_ME_LP_PC_STOP0) -#define SPC5_ME_LP_PC5_BITS (SPC5_ME_LP_PC_HALT0 | \ - SPC5_ME_LP_PC_STOP0) -#define SPC5_ME_LP_PC6_BITS (SPC5_ME_LP_PC_HALT0 | \ - SPC5_ME_LP_PC_STOP0) -#define SPC5_ME_LP_PC7_BITS (SPC5_ME_LP_PC_HALT0 | \ - SPC5_ME_LP_PC_STOP0) -#define SPC5_CLOCK_FAILURE_HOOK() chSysHalt("Clock failure") - -/* - * EDMA driver settings. - */ -#define SPC5_EDMA_CR_SETTING 0 -#define SPC5_EDMA_GROUP0_PRIORITIES \ - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 -#define SPC5_EDMA_ERROR_IRQ_PRIO 12 -#define SPC5_EDMA_ERROR_HANDLER() chSysHalt("DMA failure") - -/* - * SERIAL driver system settings. - */ -#define SPC5_SERIAL_USE_LINFLEX0 TRUE -#define SPC5_SERIAL_USE_LINFLEX1 TRUE -#define SPC5_SERIAL_LINFLEX0_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX1_PRIORITY 8 -#define SPC5_SERIAL_LINFLEX0_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_SERIAL_LINFLEX0_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) -#define SPC5_SERIAL_LINFLEX1_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_SERIAL_LINFLEX1_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -/* - * PWM driver system settings. - */ -#define SPC5_PWM_USE_SMOD0 FALSE -#define SPC5_PWM_USE_SMOD1 FALSE -#define SPC5_PWM_USE_SMOD2 FALSE -#define SPC5_PWM_USE_SMOD3 FALSE -#define SPC5_PWM_SMOD0_PRIORITY 7 -#define SPC5_PWM_SMOD1_PRIORITY 7 -#define SPC5_PWM_SMOD2_PRIORITY 7 -#define SPC5_PWM_SMOD3_PRIORITY 7 -#define SPC5_PWM_FLEXPWM0_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_PWM_FLEXPWM0_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_PWM_USE_SMOD4 FALSE -#define SPC5_PWM_USE_SMOD5 FALSE -#define SPC5_PWM_USE_SMOD6 FALSE -#define SPC5_PWM_USE_SMOD7 FALSE -#define SPC5_PWM_SMOD4_PRIORITY 7 -#define SPC5_PWM_SMOD5_PRIORITY 7 -#define SPC5_PWM_SMOD6_PRIORITY 7 -#define SPC5_PWM_SMOD7_PRIORITY 7 -#define SPC5_PWM_FLEXPWM1_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_PWM_FLEXPWM1_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -/* - * ICU driver system settings. - */ -#define SPC5_ICU_USE_SMOD0 FALSE -#define SPC5_ICU_USE_SMOD1 FALSE -#define SPC5_ICU_USE_SMOD2 FALSE -#define SPC5_ICU_USE_SMOD3 FALSE -#define SPC5_ICU_USE_SMOD4 FALSE -#define SPC5_ICU_USE_SMOD5 FALSE -#define SPC5_ICU_ETIMER0_PRIORITY 7 -#define SPC5_ICU_ETIMER0_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_ICU_ETIMER0_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_ICU_USE_SMOD6 FALSE -#define SPC5_ICU_USE_SMOD7 FALSE -#define SPC5_ICU_USE_SMOD8 FALSE -#define SPC5_ICU_USE_SMOD9 FALSE -#define SPC5_ICU_USE_SMOD10 FALSE -#define SPC5_ICU_USE_SMOD11 FALSE -#define SPC5_ICU_ETIMER1_PRIORITY 7 -#define SPC5_ICU_ETIMER1_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_ICU_ETIMER1_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#define SPC5_ICU_USE_SMOD12 FALSE -#define SPC5_ICU_USE_SMOD13 FALSE -#define SPC5_ICU_USE_SMOD14 FALSE -#define SPC5_ICU_USE_SMOD15 FALSE -#define SPC5_ICU_USE_SMOD16 FALSE -#define SPC5_ICU_USE_SMOD17 FALSE -#define SPC5_ICU_ETIMER2_PRIORITY 7 -#define SPC5_ICU_ETIMER2_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_ICU_ETIMER2_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -/* - * SPI driver system settings. - */ -#define SPC5_SPI_USE_DSPI0 FALSE -#define SPC5_SPI_USE_DSPI1 FALSE -#define SPC5_SPI_USE_DSPI2 FALSE -#define SPC5_SPI_DSPI0_MCR (SPC5_MCR_PCSIS0 | \ - SPC5_MCR_PCSIS1 | \ - SPC5_MCR_PCSIS2 | \ - SPC5_MCR_PCSIS3 | \ - SPC5_MCR_PCSIS4 | \ - SPC5_MCR_PCSIS5 | \ - SPC5_MCR_PCSIS6 | \ - SPC5_MCR_PCSIS7) -#define SPC5_SPI_DSPI1_MCR (SPC5_MCR_PCSIS0 | \ - SPC5_MCR_PCSIS1 | \ - SPC5_MCR_PCSIS2 | \ - SPC5_MCR_PCSIS3 | \ - SPC5_MCR_PCSIS4 | \ - SPC5_MCR_PCSIS5 | \ - SPC5_MCR_PCSIS6 | \ - SPC5_MCR_PCSIS7) -#define SPC5_SPI_DSPI2_MCR (SPC5_MCR_PCSIS0 | \ - SPC5_MCR_PCSIS1 | \ - SPC5_MCR_PCSIS2 | \ - SPC5_MCR_PCSIS3 | \ - SPC5_MCR_PCSIS4 | \ - SPC5_MCR_PCSIS5 | \ - SPC5_MCR_PCSIS6 | \ - SPC5_MCR_PCSIS7) -#define SPC5_SPI_DSPI0_TX1_DMA_CH_ID 4 -#define SPC5_SPI_DSPI0_TX2_DMA_CH_ID 5 -#define SPC5_SPI_DSPI0_RX_DMA_CH_ID 6 -#define SPC5_SPI_DSPI1_TX1_DMA_CH_ID 7 -#define SPC5_SPI_DSPI1_TX2_DMA_CH_ID 8 -#define SPC5_SPI_DSPI1_RX_DMA_CH_ID 9 -#define SPC5_SPI_DSPI2_TX1_DMA_CH_ID 10 -#define SPC5_SPI_DSPI2_TX2_DMA_CH_ID 11 -#define SPC5_SPI_DSPI2_RX_DMA_CH_ID 12 -#define SPC5_SPI_DSPI0_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI1_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI2_DMA_IRQ_PRIO 10 -#define SPC5_SPI_DSPI0_IRQ_PRIO 10 -#define SPC5_SPI_DSPI1_IRQ_PRIO 10 -#define SPC5_SPI_DSPI2_IRQ_PRIO 10 -#define SPC5_SPI_DMA_ERROR_HOOK(spip) chSysHalt("DMA failure") -#define SPC5_SPI_DSPI0_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_SPI_DSPI0_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) -#define SPC5_SPI_DSPI1_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_SPI_DSPI1_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) -#define SPC5_SPI_DSPI2_START_PCTL (SPC5_ME_PCTL_RUN(1) | \ - SPC5_ME_PCTL_LP(2)) -#define SPC5_SPI_DSPI2_STOP_PCTL (SPC5_ME_PCTL_RUN(0) | \ - SPC5_ME_PCTL_LP(0)) - -#endif /* _MCUCONF_H_ */ diff --git a/demos/various/NIL-ARMCM0-GENERIC/.cproject b/demos/various/NIL-ARMCM0-GENERIC/.cproject deleted file mode 100644 index 9109f1821..000000000 --- a/demos/various/NIL-ARMCM0-GENERIC/.cproject +++ /dev/null @@ -1,55 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/various/NIL-ARMCM0-GENERIC/.project b/demos/various/NIL-ARMCM0-GENERIC/.project deleted file mode 100644 index 8746134cb..000000000 --- a/demos/various/NIL-ARMCM0-GENERIC/.project +++ /dev/null @@ -1,95 +0,0 @@ - - - NIL-ARMCM0-GENERIC - - - - - - org.eclipse.cdt.managedbuilder.core.genmakebuilder - clean,full,incremental, - - - ?name? - - - - org.eclipse.cdt.make.core.append_environment - true - - - org.eclipse.cdt.make.core.autoBuildTarget - all - - - org.eclipse.cdt.make.core.buildArguments - - - - org.eclipse.cdt.make.core.buildCommand - mingw32-make - - - org.eclipse.cdt.make.core.cleanBuildTarget - clean - - - org.eclipse.cdt.make.core.contents - org.eclipse.cdt.make.core.activeConfigSettings - - - org.eclipse.cdt.make.core.enableAutoBuild - false - - - org.eclipse.cdt.make.core.enableCleanBuild - true - - - org.eclipse.cdt.make.core.enableFullBuild - true - - - org.eclipse.cdt.make.core.fullBuildTarget - all - - - org.eclipse.cdt.make.core.stopOnError - true - - - org.eclipse.cdt.make.core.useDefaultBuildCmd - false - - - - - org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder - full,incremental, - - - - - - org.eclipse.cdt.core.cnature - org.eclipse.cdt.managedbuilder.core.managedBuildNature - org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - - - - board - 2 - CHIBIOS/os/hal/boards/ST_STM32F3_DISCOVERY - - - os - 2 - CHIBIOS/os - - - test - 2 - CHIBIOS/test - - - diff --git a/demos/various/NIL-ARMCM0-GENERIC/Makefile b/demos/various/NIL-ARMCM0-GENERIC/Makefile deleted file mode 100644 index de47bb7c3..000000000 --- a/demos/various/NIL-ARMCM0-GENERIC/Makefile +++ /dev/null @@ -1,217 +0,0 @@ -############################################################################## -# Build global options -# NOTE: Can be overridden externally. -# - -# Compiler options here. -ifeq ($(USE_OPT),) - USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16 -endif - -# C specific options here (added to USE_OPT). -ifeq ($(USE_COPT),) - USE_COPT = -endif - -# C++ specific options here (added to USE_OPT). -ifeq ($(USE_CPPOPT),) - USE_CPPOPT = -fno-rtti -endif - -# Enable this if you want the linker to remove unused code and data -ifeq ($(USE_LINK_GC),) - USE_LINK_GC = yes -endif - -# Linker extra options here. -ifeq ($(USE_LDOPT),) - USE_LDOPT = -endif - -# Enable this if you want link time optimizations (LTO) -ifeq ($(USE_LTO),) - USE_LTO = yes -endif - -# If enabled, this option allows to compile the application in THUMB mode. -ifeq ($(USE_THUMB),) - USE_THUMB = yes -endif - -# Enable this if you want to see the full log while compiling. -ifeq ($(USE_VERBOSE_COMPILE),) - USE_VERBOSE_COMPILE = no -endif - -# If enabled, this option makes the build process faster by not compiling -# modules not used in the current configuration. -ifeq ($(USE_SMART_BUILD),) - USE_SMART_BUILD = yes -endif - -# -# Build global options -############################################################################## - -############################################################################## -# Architecture or project specific options -# - -# Stack size to be allocated to the Cortex-M process stack. This stack is -# the stack used by the main() thread. -ifeq ($(USE_PROCESS_STACKSIZE),) - USE_PROCESS_STACKSIZE = 0x100 -endif - -# Stack size to the allocated to the Cortex-M main/exceptions stack. This -# stack is used for processing interrupts and exceptions. -ifeq ($(USE_EXCEPTIONS_STACKSIZE),) - USE_EXCEPTIONS_STACKSIZE = 0x400 -endif - -# -# Architecture or project specific options -############################################################################## - -############################################################################## -# Project, sources and paths -# - -# Define project name here -PROJECT = ch - -# Imported source files and paths -CHIBIOS = ../../.. -# Startup files. -include $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC/mk/startup_stm32f0xx.mk -# HAL-OSAL files (optional). -#include $(CHIBIOS)/os/hal/hal.mk -#include $(CHIBIOS)/os/hal/ports/STM32/STM32F0xx/platform.mk -#include $(CHIBIOS)/os/hal/boards/ST_STM32F072B_DISCOVERY/board.mk -#include $(CHIBIOS)/os/hal/osal/nil/osal.mk -# RTOS files (optional). -include $(CHIBIOS)/os/nil/nil.mk -include $(CHIBIOS)/os/nil/ports/ARMCMx/compilers/GCC/mk/port_v6m.mk -# Other files (optional). -#include $(CHIBIOS)/test/nil/test.mk - -# Define linker script file here -LDSCRIPT= $(STARTUPLD)/STM32F051x8.ld - -# C sources that can be compiled in ARM or THUMB mode depending on the global -# setting. -CSRC = $(STARTUPSRC) \ - $(KERNSRC) \ - $(PORTSRC) \ - $(OSALSRC) \ - $(HALSRC) \ - $(PLATFORMSRC) \ - $(BOARDSRC) \ - $(TESTSRC) \ - main.c - -# C++ sources that can be compiled in ARM or THUMB mode depending on the global -# setting. -CPPSRC = - -# C sources to be compiled in ARM mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -ACSRC = - -# C++ sources to be compiled in ARM mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -ACPPSRC = - -# C sources to be compiled in THUMB mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -TCSRC = - -# C sources to be compiled in THUMB mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -TCPPSRC = - -# List ASM source files here -ASMSRC = $(STARTUPASM) $(PORTASM) $(OSALASM) - -INCDIR = $(STARTUPINC) $(KERNINC) $(PORTINC) $(OSALINC) \ - $(HALINC) $(PLATFORMINC) $(BOARDINC) $(TESTINC) \ - $(CHIBIOS)/os/various - -# -# Project, sources and paths -############################################################################## - -############################################################################## -# Compiler settings -# - -MCU = cortex-m0 - -#TRGT = arm-elf- -TRGT = arm-none-eabi- -CC = $(TRGT)gcc -CPPC = $(TRGT)g++ -# Enable loading with g++ only if you need C++ runtime support. -# NOTE: You can use C++ even without C++ support if you are careful. C++ -# runtime support makes code size explode. -LD = $(TRGT)gcc -#LD = $(TRGT)g++ -CP = $(TRGT)objcopy -AS = $(TRGT)gcc -x assembler-with-cpp -AR = $(TRGT)ar -OD = $(TRGT)objdump -SZ = $(TRGT)size -HEX = $(CP) -O ihex -BIN = $(CP) -O binary - -# ARM-specific options here -AOPT = - -# THUMB-specific options here -TOPT = -mthumb -DTHUMB - -# Define C warning options here -CWARN = -Wall -Wextra -Wundef -Wstrict-prototypes - -# Define C++ warning options here -CPPWARN = -Wall -Wextra -Wundef - -# -# Compiler settings -############################################################################## - -############################################################################## -# Start of user section -# - -# List all user C define here, like -D_DEBUG=1 -UDEFS = -DSTM32F051x8 - -# Define ASM defines here -UADEFS = - -# List all user directories here -UINCDIR = - -# List the user directory to look for the libraries here -ULIBDIR = - -# List all user libraries here -ULIBS = - -# -# End of user defines -############################################################################## - -RULESPATH = $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC -include $(RULESPATH)/rules.mk - -############################################################################## -# MISRA check rule, requires PCLint and the setup files, not provided. -# -misra: - @lint-nt -v -w3 $(DEFS) pclint/co-gcc.lnt pclint/au-misra3.lnt pclint/waivers.lnt $(IINCDIR) $(CSRC) &> misra.txt diff --git a/demos/various/NIL-ARMCM0-GENERIC/debug/NIL-ARMC0-GENERIC (OpenOCD, Flash and Run).launch b/demos/various/NIL-ARMCM0-GENERIC/debug/NIL-ARMC0-GENERIC (OpenOCD, Flash and Run).launch deleted file mode 100644 index 4ca089dd3..000000000 --- a/demos/various/NIL-ARMCM0-GENERIC/debug/NIL-ARMC0-GENERIC (OpenOCD, Flash and Run).launch +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/various/NIL-ARMCM0-GENERIC/main.c b/demos/various/NIL-ARMCM0-GENERIC/main.c deleted file mode 100644 index a233632ff..000000000 --- a/demos/various/NIL-ARMCM0-GENERIC/main.c +++ /dev/null @@ -1,104 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#include "nil.h" - -#if !defined(SYSTEM_CLOCK) -#define SYSTEM_CLOCK 8000000U -#endif - -/* - * @brief System Timer handler. - */ -CH_IRQ_HANDLER(SysTick_Handler) { - - CH_IRQ_PROLOGUE(); - - chSysLockFromISR(); - chSysTimerHandlerI(); - chSysUnlockFromISR(); - - CH_IRQ_EPILOGUE(); -} - -static uint32_t seconds_counter; -static uint32_t minutes_counter; - -/* - * Seconds counter thread. - */ -static THD_WORKING_AREA(waThread1, 128); -static THD_FUNCTION(Thread1, arg) { - - (void)arg; - - while (true) { - chThdSleepMilliseconds(1000); - seconds_counter++; - } -} - -/* - * Minutes counter thread. - */ -static THD_WORKING_AREA(waThread2, 128); -static THD_FUNCTION(Thread2, arg) { - - (void)arg; - - while (true) { - chThdSleepSeconds(60); - minutes_counter++; - } -} - -/* - * Threads static table, one entry per thread. The number of entries must - * match NIL_CFG_NUM_THREADS. - */ -THD_TABLE_BEGIN -THD_TABLE_ENTRY(waThread1, "counter1", Thread1, NULL) -THD_TABLE_ENTRY(waThread2, "counter2", Thread2, NULL) -THD_TABLE_END - -/* - * Application entry point. - */ -int main(void) { - - /* - * Hardware initialization, in this simple demo just the systick timer is - * initialized. - */ - SysTick->LOAD = SYSTEM_CLOCK / NIL_CFG_ST_FREQUENCY - (systime_t)1; - SysTick->VAL = (uint32_t)0; - SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | SysTick_CTRL_ENABLE_Msk | - SysTick_CTRL_TICKINT_Msk; - - /* - * System initializations. - * - Kernel initialization, the main() function becomes a thread and the - * RTOS is active. - */ - chSysInit(); - - /* This is now the idle thread loop, you may perform here a low priority - task but you must never try to sleep or wait in this loop. Note that - this tasks runs at the lowest priority level so any instruction added - here will be executed after all other tasks have been started.*/ - while (true) { - } -} diff --git a/demos/various/NIL-ARMCM0-GENERIC/nilconf.h b/demos/various/NIL-ARMCM0-GENERIC/nilconf.h deleted file mode 100644 index 27b6bac60..000000000 --- a/demos/various/NIL-ARMCM0-GENERIC/nilconf.h +++ /dev/null @@ -1,179 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file nilconf.h - * @brief Configuration file template. - * @details A copy of this file must be placed in each project directory, it - * contains the application specific kernel settings. - * - * @addtogroup config - * @details Kernel related settings and hooks. - * @{ - */ - -#ifndef _NILCONF_H_ -#define _NILCONF_H_ - -/*===========================================================================*/ -/** - * @name Kernel parameters and options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Number of user threads in the application. - * @note This number is not inclusive of the idle thread which is - * Implicitly handled. - */ -#define NIL_CFG_NUM_THREADS 2 - -/** @} */ - -/*===========================================================================*/ -/** - * @name System timer settings - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System time counter resolution. - * @note Allowed values are 16 or 32 bits. - */ -#define NIL_CFG_ST_RESOLUTION 32 - -/** - * @brief System tick frequency. - * @note This value together with the @p NIL_CFG_ST_RESOLUTION - * option defines the maximum amount of time allowed for - * timeouts. - */ -#define NIL_CFG_ST_FREQUENCY 1000 - -/** - * @brief Time delta constant for the tick-less mode. - * @note If this value is zero then the system uses the classic - * periodic tick. This value represents the minimum number - * of ticks that is safe to specify in a timeout directive. - * The value one is not valid, timeouts are rounded up to - * this value. - */ -#define NIL_CFG_ST_TIMEDELTA 0 - -/** @} */ - -/*===========================================================================*/ -/** - * @name Subsystem options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Events Flags APIs. - * @details If enabled then the event flags APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define NIL_CFG_USE_EVENTS TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Debug options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System assertions. - */ -#define NIL_CFG_ENABLE_ASSERTS FALSE - -/** - * @brief Stack check. - */ -#define NIL_CFG_ENABLE_STACK_CHECK FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel hooks - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System initialization hook. - */ -#if !defined(NIL_CFG_SYSTEM_INIT_HOOK) || defined(__DOXYGEN__) -#define NIL_CFG_SYSTEM_INIT_HOOK() { \ -} -#endif - -/** - * @brief Threads descriptor structure extension. - * @details User fields added to the end of the @p thread_t structure. - */ -#define NIL_CFG_THREAD_EXT_FIELDS \ - /* Add threads custom fields here.*/ - -/** - * @brief Threads initialization hook. - */ -#define NIL_CFG_THREAD_EXT_INIT_HOOK(tr) { \ - /* Add custom threads initialization code here.*/ \ -} - -/** - * @brief Idle thread enter hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to activate a power saving mode. - */ -#define NIL_CFG_IDLE_ENTER_HOOK() { \ -} - -/** - * @brief Idle thread leave hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to deactivate a power saving mode. - */ -#define NIL_CFG_IDLE_LEAVE_HOOK() { \ -} - -/** - * @brief System halt hook. - */ -#if !defined(NIL_CFG_SYSTEM_HALT_HOOK) || defined(__DOXYGEN__) -#define NIL_CFG_SYSTEM_HALT_HOOK(reason) { \ -} -#endif - -/** @} */ - -/*===========================================================================*/ -/* Port-specific settings (override port settings defaulted in nilcore.h). */ -/*===========================================================================*/ - -#endif /* _NILCONF_H_ */ - -/** @} */ diff --git a/demos/various/NIL-ARMCM4-GENERIC/.cproject b/demos/various/NIL-ARMCM4-GENERIC/.cproject deleted file mode 100644 index d9e1ee787..000000000 --- a/demos/various/NIL-ARMCM4-GENERIC/.cproject +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/various/NIL-ARMCM4-GENERIC/.project b/demos/various/NIL-ARMCM4-GENERIC/.project deleted file mode 100644 index d0b5986d4..000000000 --- a/demos/various/NIL-ARMCM4-GENERIC/.project +++ /dev/null @@ -1,95 +0,0 @@ - - - NIL-ARMCM4-GENERIC - - - - - - org.eclipse.cdt.managedbuilder.core.genmakebuilder - clean,full,incremental, - - - ?name? - - - - org.eclipse.cdt.make.core.append_environment - true - - - org.eclipse.cdt.make.core.autoBuildTarget - all - - - org.eclipse.cdt.make.core.buildArguments - - - - org.eclipse.cdt.make.core.buildCommand - mingw32-make - - - org.eclipse.cdt.make.core.cleanBuildTarget - clean - - - org.eclipse.cdt.make.core.contents - org.eclipse.cdt.make.core.activeConfigSettings - - - org.eclipse.cdt.make.core.enableAutoBuild - false - - - org.eclipse.cdt.make.core.enableCleanBuild - true - - - org.eclipse.cdt.make.core.enableFullBuild - true - - - org.eclipse.cdt.make.core.fullBuildTarget - all - - - org.eclipse.cdt.make.core.stopOnError - true - - - org.eclipse.cdt.make.core.useDefaultBuildCmd - false - - - - - org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder - full,incremental, - - - - - - org.eclipse.cdt.core.cnature - org.eclipse.cdt.managedbuilder.core.managedBuildNature - org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - - - - board - 2 - CHIBIOS/os/hal/boards/ST_STM32F3_DISCOVERY - - - os - 2 - CHIBIOS/os - - - test - 2 - CHIBIOS/test - - - diff --git a/demos/various/NIL-ARMCM4-GENERIC/Makefile b/demos/various/NIL-ARMCM4-GENERIC/Makefile deleted file mode 100644 index 1b4ebb822..000000000 --- a/demos/various/NIL-ARMCM4-GENERIC/Makefile +++ /dev/null @@ -1,222 +0,0 @@ -############################################################################## -# Build global options -# NOTE: Can be overridden externally. -# - -# Compiler options here. -ifeq ($(USE_OPT),) - USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16 -endif - -# C specific options here (added to USE_OPT). -ifeq ($(USE_COPT),) - USE_COPT = -endif - -# C++ specific options here (added to USE_OPT). -ifeq ($(USE_CPPOPT),) - USE_CPPOPT = -fno-rtti -endif - -# Enable this if you want the linker to remove unused code and data -ifeq ($(USE_LINK_GC),) - USE_LINK_GC = yes -endif - -# Linker extra options here. -ifeq ($(USE_LDOPT),) - USE_LDOPT = -endif - -# Enable this if you want link time optimizations (LTO) -ifeq ($(USE_LTO),) - USE_LTO = yes -endif - -# If enabled, this option allows to compile the application in THUMB mode. -ifeq ($(USE_THUMB),) - USE_THUMB = yes -endif - -# Enable this if you want to see the full log while compiling. -ifeq ($(USE_VERBOSE_COMPILE),) - USE_VERBOSE_COMPILE = no -endif - -# If enabled, this option makes the build process faster by not compiling -# modules not used in the current configuration. -ifeq ($(USE_SMART_BUILD),) - USE_SMART_BUILD = yes -endif - -# -# Build global options -############################################################################## - -############################################################################## -# Architecture or project specific options -# - -# Stack size to be allocated to the Cortex-M process stack. This stack is -# the stack used by the main() thread. -ifeq ($(USE_PROCESS_STACKSIZE),) - USE_PROCESS_STACKSIZE = 0x100 -endif - -# Stack size to the allocated to the Cortex-M main/exceptions stack. This -# stack is used for processing interrupts and exceptions. -ifeq ($(USE_EXCEPTIONS_STACKSIZE),) - USE_EXCEPTIONS_STACKSIZE = 0x400 -endif - -# Enables the use of FPU on Cortex-M4 (no, softfp, hard). -ifeq ($(USE_FPU),) - USE_FPU = no -endif - -# -# Architecture or project specific options -############################################################################## - -############################################################################## -# Project, sources and paths -# - -# Define project name here -PROJECT = ch - -# Imported source files and paths -CHIBIOS = ../../.. -# Startup files. -include $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC/mk/startup_stm32f4xx.mk -# HAL-OSAL files (optional). -#include $(CHIBIOS)/os/hal/hal.mk -#include $(CHIBIOS)/os/hal/ports/STM32/STM32F4xx/platform.mk -#include $(CHIBIOS)/os/hal/boards/ST_STM32F4_DISCOVERY/board.mk -#include $(CHIBIOS)/os/hal/osal/nil/osal.mk -# RTOS files (optional). -include $(CHIBIOS)/os/nil/nil.mk -include $(CHIBIOS)/os/nil/ports/ARMCMx/compilers/GCC/mk/port_v7m.mk -# Other files (optional). -#include $(CHIBIOS)/test/nil/test.mk - -# Define linker script file here -LDSCRIPT= $(STARTUPLD)/STM32F407xG.ld - -# C sources that can be compiled in ARM or THUMB mode depending on the global -# setting. -CSRC = $(STARTUPSRC) \ - $(KERNSRC) \ - $(PORTSRC) \ - $(OSALSRC) \ - $(HALSRC) \ - $(PLATFORMSRC) \ - $(BOARDSRC) \ - $(TESTSRC) \ - main.c - -# C++ sources that can be compiled in ARM or THUMB mode depending on the global -# setting. -CPPSRC = - -# C sources to be compiled in ARM mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -ACSRC = - -# C++ sources to be compiled in ARM mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -ACPPSRC = - -# C sources to be compiled in THUMB mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -TCSRC = - -# C sources to be compiled in THUMB mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -TCPPSRC = - -# List ASM source files here -ASMSRC = $(STARTUPASM) $(PORTASM) $(OSALASM) - -INCDIR = $(STARTUPINC) $(KERNINC) $(PORTINC) $(OSALINC) \ - $(HALINC) $(PLATFORMINC) $(BOARDINC) $(TESTINC) \ - $(CHIBIOS)/os/various - -# -# Project, sources and paths -############################################################################## - -############################################################################## -# Compiler settings -# - -MCU = cortex-m4 - -#TRGT = arm-elf- -TRGT = arm-none-eabi- -CC = $(TRGT)gcc -CPPC = $(TRGT)g++ -# Enable loading with g++ only if you need C++ runtime support. -# NOTE: You can use C++ even without C++ support if you are careful. C++ -# runtime support makes code size explode. -LD = $(TRGT)gcc -#LD = $(TRGT)g++ -CP = $(TRGT)objcopy -AS = $(TRGT)gcc -x assembler-with-cpp -AR = $(TRGT)ar -OD = $(TRGT)objdump -SZ = $(TRGT)size -HEX = $(CP) -O ihex -BIN = $(CP) -O binary - -# ARM-specific options here -AOPT = - -# THUMB-specific options here -TOPT = -mthumb -DTHUMB - -# Define C warning options here -CWARN = -Wall -Wextra -Wundef -Wstrict-prototypes - -# Define C++ warning options here -CPPWARN = -Wall -Wextra -Wundef - -# -# Compiler settings -############################################################################## - -############################################################################## -# Start of user section -# - -# List all user C define here, like -D_DEBUG=1 -UDEFS = -DSTM32F407xx - -# Define ASM defines here -UADEFS = - -# List all user directories here -UINCDIR = - -# List the user directory to look for the libraries here -ULIBDIR = - -# List all user libraries here -ULIBS = - -# -# End of user defines -############################################################################## - -RULESPATH = $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC -include $(RULESPATH)/rules.mk - -############################################################################## -# MISRA check rule, requires PCLint and the setup files, not provided. -# -misra: - @lint-nt -v -w3 $(DEFS) pclint/co-gcc.lnt pclint/au-misra3.lnt pclint/waivers.lnt $(IINCDIR) $(CSRC) &> misra.txt diff --git a/demos/various/NIL-ARMCM4-GENERIC/debug/NIL-ARMC4-GENERIC (OpenOCD, Flash and Run).launch b/demos/various/NIL-ARMCM4-GENERIC/debug/NIL-ARMC4-GENERIC (OpenOCD, Flash and Run).launch deleted file mode 100644 index 9241157a7..000000000 --- a/demos/various/NIL-ARMCM4-GENERIC/debug/NIL-ARMC4-GENERIC (OpenOCD, Flash and Run).launch +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/various/NIL-ARMCM4-GENERIC/main.c b/demos/various/NIL-ARMCM4-GENERIC/main.c deleted file mode 100644 index a233632ff..000000000 --- a/demos/various/NIL-ARMCM4-GENERIC/main.c +++ /dev/null @@ -1,104 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#include "nil.h" - -#if !defined(SYSTEM_CLOCK) -#define SYSTEM_CLOCK 8000000U -#endif - -/* - * @brief System Timer handler. - */ -CH_IRQ_HANDLER(SysTick_Handler) { - - CH_IRQ_PROLOGUE(); - - chSysLockFromISR(); - chSysTimerHandlerI(); - chSysUnlockFromISR(); - - CH_IRQ_EPILOGUE(); -} - -static uint32_t seconds_counter; -static uint32_t minutes_counter; - -/* - * Seconds counter thread. - */ -static THD_WORKING_AREA(waThread1, 128); -static THD_FUNCTION(Thread1, arg) { - - (void)arg; - - while (true) { - chThdSleepMilliseconds(1000); - seconds_counter++; - } -} - -/* - * Minutes counter thread. - */ -static THD_WORKING_AREA(waThread2, 128); -static THD_FUNCTION(Thread2, arg) { - - (void)arg; - - while (true) { - chThdSleepSeconds(60); - minutes_counter++; - } -} - -/* - * Threads static table, one entry per thread. The number of entries must - * match NIL_CFG_NUM_THREADS. - */ -THD_TABLE_BEGIN -THD_TABLE_ENTRY(waThread1, "counter1", Thread1, NULL) -THD_TABLE_ENTRY(waThread2, "counter2", Thread2, NULL) -THD_TABLE_END - -/* - * Application entry point. - */ -int main(void) { - - /* - * Hardware initialization, in this simple demo just the systick timer is - * initialized. - */ - SysTick->LOAD = SYSTEM_CLOCK / NIL_CFG_ST_FREQUENCY - (systime_t)1; - SysTick->VAL = (uint32_t)0; - SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | SysTick_CTRL_ENABLE_Msk | - SysTick_CTRL_TICKINT_Msk; - - /* - * System initializations. - * - Kernel initialization, the main() function becomes a thread and the - * RTOS is active. - */ - chSysInit(); - - /* This is now the idle thread loop, you may perform here a low priority - task but you must never try to sleep or wait in this loop. Note that - this tasks runs at the lowest priority level so any instruction added - here will be executed after all other tasks have been started.*/ - while (true) { - } -} diff --git a/demos/various/NIL-ARMCM4-GENERIC/nilconf.h b/demos/various/NIL-ARMCM4-GENERIC/nilconf.h deleted file mode 100644 index 27b6bac60..000000000 --- a/demos/various/NIL-ARMCM4-GENERIC/nilconf.h +++ /dev/null @@ -1,179 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file nilconf.h - * @brief Configuration file template. - * @details A copy of this file must be placed in each project directory, it - * contains the application specific kernel settings. - * - * @addtogroup config - * @details Kernel related settings and hooks. - * @{ - */ - -#ifndef _NILCONF_H_ -#define _NILCONF_H_ - -/*===========================================================================*/ -/** - * @name Kernel parameters and options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Number of user threads in the application. - * @note This number is not inclusive of the idle thread which is - * Implicitly handled. - */ -#define NIL_CFG_NUM_THREADS 2 - -/** @} */ - -/*===========================================================================*/ -/** - * @name System timer settings - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System time counter resolution. - * @note Allowed values are 16 or 32 bits. - */ -#define NIL_CFG_ST_RESOLUTION 32 - -/** - * @brief System tick frequency. - * @note This value together with the @p NIL_CFG_ST_RESOLUTION - * option defines the maximum amount of time allowed for - * timeouts. - */ -#define NIL_CFG_ST_FREQUENCY 1000 - -/** - * @brief Time delta constant for the tick-less mode. - * @note If this value is zero then the system uses the classic - * periodic tick. This value represents the minimum number - * of ticks that is safe to specify in a timeout directive. - * The value one is not valid, timeouts are rounded up to - * this value. - */ -#define NIL_CFG_ST_TIMEDELTA 0 - -/** @} */ - -/*===========================================================================*/ -/** - * @name Subsystem options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Events Flags APIs. - * @details If enabled then the event flags APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define NIL_CFG_USE_EVENTS TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Debug options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System assertions. - */ -#define NIL_CFG_ENABLE_ASSERTS FALSE - -/** - * @brief Stack check. - */ -#define NIL_CFG_ENABLE_STACK_CHECK FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel hooks - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System initialization hook. - */ -#if !defined(NIL_CFG_SYSTEM_INIT_HOOK) || defined(__DOXYGEN__) -#define NIL_CFG_SYSTEM_INIT_HOOK() { \ -} -#endif - -/** - * @brief Threads descriptor structure extension. - * @details User fields added to the end of the @p thread_t structure. - */ -#define NIL_CFG_THREAD_EXT_FIELDS \ - /* Add threads custom fields here.*/ - -/** - * @brief Threads initialization hook. - */ -#define NIL_CFG_THREAD_EXT_INIT_HOOK(tr) { \ - /* Add custom threads initialization code here.*/ \ -} - -/** - * @brief Idle thread enter hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to activate a power saving mode. - */ -#define NIL_CFG_IDLE_ENTER_HOOK() { \ -} - -/** - * @brief Idle thread leave hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to deactivate a power saving mode. - */ -#define NIL_CFG_IDLE_LEAVE_HOOK() { \ -} - -/** - * @brief System halt hook. - */ -#if !defined(NIL_CFG_SYSTEM_HALT_HOOK) || defined(__DOXYGEN__) -#define NIL_CFG_SYSTEM_HALT_HOOK(reason) { \ -} -#endif - -/** @} */ - -/*===========================================================================*/ -/* Port-specific settings (override port settings defaulted in nilcore.h). */ -/*===========================================================================*/ - -#endif /* _NILCONF_H_ */ - -/** @} */ diff --git a/demos/various/RT-ARM7-GENERIC/.cproject b/demos/various/RT-ARM7-GENERIC/.cproject deleted file mode 100644 index 9b46e0d4b..000000000 --- a/demos/various/RT-ARM7-GENERIC/.cproject +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/various/RT-ARM7-GENERIC/.project b/demos/various/RT-ARM7-GENERIC/.project deleted file mode 100644 index 8fab5aa0f..000000000 --- a/demos/various/RT-ARM7-GENERIC/.project +++ /dev/null @@ -1,90 +0,0 @@ - - - RT-ARM7-GENERIC - - - - - - org.eclipse.cdt.managedbuilder.core.genmakebuilder - clean,full,incremental, - - - ?name? - - - - org.eclipse.cdt.make.core.append_environment - true - - - org.eclipse.cdt.make.core.autoBuildTarget - all - - - org.eclipse.cdt.make.core.buildArguments - -j1 - - - org.eclipse.cdt.make.core.buildCommand - make - - - org.eclipse.cdt.make.core.cleanBuildTarget - clean - - - org.eclipse.cdt.make.core.contents - org.eclipse.cdt.make.core.activeConfigSettings - - - org.eclipse.cdt.make.core.enableAutoBuild - false - - - org.eclipse.cdt.make.core.enableCleanBuild - true - - - org.eclipse.cdt.make.core.enableFullBuild - true - - - org.eclipse.cdt.make.core.fullBuildTarget - all - - - org.eclipse.cdt.make.core.stopOnError - true - - - org.eclipse.cdt.make.core.useDefaultBuildCmd - true - - - - - org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder - full,incremental, - - - - - - org.eclipse.cdt.core.cnature - org.eclipse.cdt.managedbuilder.core.managedBuildNature - org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - - - - os - 2 - CHIBIOS/os - - - test - 2 - CHIBIOS/test - - - diff --git a/demos/various/RT-ARM7-GENERIC/Makefile b/demos/various/RT-ARM7-GENERIC/Makefile deleted file mode 100644 index bd26b728e..000000000 --- a/demos/various/RT-ARM7-GENERIC/Makefile +++ /dev/null @@ -1,246 +0,0 @@ -############################################################################## -# Build global options -# NOTE: Can be overridden externally. -# - -# Compiler options here. -ifeq ($(USE_OPT),) - USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16 -endif - -# C specific options here (added to USE_OPT). -ifeq ($(USE_COPT),) - USE_COPT = -endif - -# C++ specific options here (added to USE_OPT). -ifeq ($(USE_CPPOPT),) - USE_CPPOPT = -fno-rtti -endif - -# Enable this if you want the linker to remove unused code and data -ifeq ($(USE_LINK_GC),) - USE_LINK_GC = yes -endif - -# Linker extra options here. -ifeq ($(USE_LDOPT),) - USE_LDOPT = -endif - -# Enable this if you want link time optimizations (LTO) -ifeq ($(USE_LTO),) - USE_LTO = yes -endif - -# If enabled, this option allows to compile the application in THUMB mode. -ifeq ($(USE_THUMB),) - USE_THUMB = no -endif - -# Enable this if you want to see the full log while compiling. -ifeq ($(USE_VERBOSE_COMPILE),) - USE_VERBOSE_COMPILE = no -endif - -# If enabled, this option makes the build process faster by not compiling -# modules not used in the current configuration. -ifeq ($(USE_SMART_BUILD),) - USE_SMART_BUILD = yes -endif - -# -# Build global options -############################################################################## - -############################################################################## -# Architecture or project specific options -# - -# Stack size to be allocated to the ARM System/User stack. This -# stack is the stack used by the main() thread. -ifeq ($(USE_SYSTEM_STACKSIZE),) - USE_SYSTEM_STACKSIZE = 0x400 -endif - -# Stack size to the allocated to the ARM IRQ stack. This -# stack is used for processing interrupts and exceptions. -ifeq ($(USE_EXCEPTIONS_STACKSIZE),) - USE_IRQ_STACKSIZE = 0x400 -endif - -# Stack size to the allocated to the ARM FIQ stack. This -# stack is used for processing interrupts and exceptions. -ifeq ($(USE_FIQ_STACKSIZE),) - USE_FIQ_STACKSIZE = 64 -endif - -# Stack size to the allocated to the ARM Supervisor stack. This -# stack is used for processing interrupts and exceptions. -ifeq ($(USE_SUPERVISOR_STACKSIZE),) - USE_SUPERVISOR_STACKSIZE = 8 -endif - -# Stack size to the allocated to the ARM Undefined stack. This -# stack is used for processing interrupts and exceptions. -ifeq ($(USE_UND_STACKSIZE),) - USE_UND_STACKSIZE = 8 -endif - -# Stack size to the allocated to the ARM Abort stack. This -# stack is used for processing interrupts and exceptions. -ifeq ($(USE_ABT_STACKSIZE),) - USE_ABT_STACKSIZE = 8 -endif - -# Enables the use of FPU. -ifeq ($(USE_FPU),) - USE_FPU = no -endif - -# -# Architecture or project specific options -############################################################################## - -############################################################################## -# Project, sources and paths -# - -# Define project name here -PROJECT = ch - -# Imported source files and paths -CHIBIOS = ../../.. -# Startup files. -include $(CHIBIOS)/os/common/ports/ARM/compilers/GCC/mk/startup_lpc214x.mk -# HAL-OSAL files (optional). -#include $(CHIBIOS)/os/hal/hal.mk -#include $(CHIBIOS)/os/hal/ports/LPC/LPC214x/platform.mk -#include $(CHIBIOS)/os/hal/boards/OLIMEX_LPC_P2148/board.mk -#include $(CHIBIOS)/os/hal/osal/rt/osal.mk -# RTOS files (optional). -include $(CHIBIOS)/os/rt/rt.mk -include $(CHIBIOS)/os/rt/ports/ARM/compilers/GCC/mk/port_generic.mk -# Other files (optional). -#include $(CHIBIOS)/test/rt/test.mk - -# Define linker script file here -LDSCRIPT= $(STARTUPLD)/LPC2148.ld - -# C sources that can be compiled in ARM or THUMB mode depending on the global -# setting. -CSRC = $(STARTUPSRC) \ - $(KERNSRC) \ - $(PORTSRC) \ - $(OSALSRC) \ - $(HALSRC) \ - $(PLATFORMSRC) \ - $(BOARDSRC) \ - $(TESTSRC) \ - main.c - -# C++ sources that can be compiled in ARM or THUMB mode depending on the global -# setting. -CPPSRC = - -# C sources to be compiled in ARM mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -ACSRC = - -# C++ sources to be compiled in ARM mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -ACPPSRC = - -# C sources to be compiled in THUMB mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -TCSRC = - -# C sources to be compiled in THUMB mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -TCPPSRC = - -# List ASM source files here -ASMSRC = $(STARTUPASM) $(PORTASM) $(OSALASM) - -INCDIR = $(STARTUPINC) $(KERNINC) $(PORTINC) $(OSALINC) \ - $(HALINC) $(PLATFORMINC) $(BOARDINC) $(TESTINC) \ - $(CHIBIOS)/os/various - -# -# Project, sources and paths -############################################################################## - -############################################################################## -# Compiler settings -# - -MCU = arm7tdmi - -#TRGT = arm-elf- -TRGT = arm-none-eabi- -CC = $(TRGT)gcc -CPPC = $(TRGT)g++ -# Enable loading with g++ only if you need C++ runtime support. -# NOTE: You can use C++ even without C++ support if you are careful. C++ -# runtime support makes code size explode. -LD = $(TRGT)gcc -#LD = $(TRGT)g++ -CP = $(TRGT)objcopy -AS = $(TRGT)gcc -x assembler-with-cpp -AR = $(TRGT)ar -OD = $(TRGT)objdump -SZ = $(TRGT)size -HEX = $(CP) -O ihex -BIN = $(CP) -O binary - -# ARM-specific options here -AOPT = - -# THUMB-specific options here -TOPT = -mthumb -DTHUMB - -# Define C warning options here -CWARN = -Wall -Wextra -Wundef -Wstrict-prototypes - -# Define C++ warning options here -CPPWARN = -Wall -Wextra -Wundef - -# -# Compiler settings -############################################################################## - -############################################################################## -# Start of user section -# - -# List all user C define here, like -D_DEBUG=1 -UDEFS = - -# Define ASM defines here -UADEFS = - -# List all user directories here -UINCDIR = - -# List the user directory to look for the libraries here -ULIBDIR = - -# List all user libraries here -ULIBS = - -# -# End of user defines -############################################################################## - -RULESPATH = $(CHIBIOS)/os/common/ports/ARM/compilers/GCC -include $(RULESPATH)/rules.mk - -############################################################################## -# MISRA check rule, requires PCLint and the setup files, not provided. -# -misra: - @lint-nt -v -w3 $(DEFS) pclint/co-gcc.lnt pclint/au-misra3.lnt pclint/waivers.lnt $(IINCDIR) $(CSRC) &> misra.txt diff --git a/demos/various/RT-ARM7-GENERIC/chconf.h b/demos/various/RT-ARM7-GENERIC/chconf.h deleted file mode 100644 index f6244ad4b..000000000 --- a/demos/various/RT-ARM7-GENERIC/chconf.h +++ /dev/null @@ -1,499 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file templates/chconf.h - * @brief Configuration file template. - * @details A copy of this file must be placed in each project directory, it - * contains the application specific kernel settings. - * - * @addtogroup config - * @details Kernel related settings and hooks. - * @{ - */ - -#ifndef _CHCONF_H_ -#define _CHCONF_H_ - -/*===========================================================================*/ -/** - * @name System timers settings - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System time counter resolution. - * @note Allowed values are 16 or 32 bits. - */ -#define CH_CFG_ST_RESOLUTION 32 - -/** - * @brief System tick frequency. - * @details Frequency of the system timer that drives the system ticks. This - * setting also defines the system tick time unit. - */ -#define CH_CFG_ST_FREQUENCY 1000 - -/** - * @brief Time delta constant for the tick-less mode. - * @note If this value is zero then the system uses the classic - * periodic tick. This value represents the minimum number - * of ticks that is safe to specify in a timeout directive. - * The value one is not valid, timeouts are rounded up to - * this value. - */ -#define CH_CFG_ST_TIMEDELTA 0 - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel parameters and options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Round robin interval. - * @details This constant is the number of system ticks allowed for the - * threads before preemption occurs. Setting this value to zero - * disables the preemption for threads with equal priority and the - * round robin becomes cooperative. Note that higher priority - * threads can still preempt, the kernel is always preemptive. - * @note Disabling the round robin preemption makes the kernel more compact - * and generally faster. - * @note The round robin preemption is not supported in tickless mode and - * must be set to zero in that case. - */ -#define CH_CFG_TIME_QUANTUM 0 - -/** - * @brief Managed RAM size. - * @details Size of the RAM area to be managed by the OS. If set to zero - * then the whole available RAM is used. The core memory is made - * available to the heap allocator and/or can be used directly through - * the simplified core memory allocator. - * - * @note In order to let the OS manage the whole RAM the linker script must - * provide the @p __heap_base__ and @p __heap_end__ symbols. - * @note Requires @p CH_CFG_USE_MEMCORE. - */ -#define CH_CFG_MEMCORE_SIZE 0 - -/** - * @brief Idle thread automatic spawn suppression. - * @details When this option is activated the function @p chSysInit() - * does not spawn the idle thread. The application @p main() - * function becomes the idle thread and must implement an - * infinite loop. - */ -#define CH_CFG_NO_IDLE_THREAD FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Performance options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief OS optimization. - * @details If enabled then time efficient rather than space efficient code - * is used when two possible implementations exist. - * - * @note This is not related to the compiler optimization options. - * @note The default is @p TRUE. - */ -#define CH_CFG_OPTIMIZE_SPEED TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Subsystem options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Time Measurement APIs. - * @details If enabled then the time measurement APIs are included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_TM FALSE - -/** - * @brief Threads registry APIs. - * @details If enabled then the registry APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_REGISTRY TRUE - -/** - * @brief Threads synchronization APIs. - * @details If enabled then the @p chThdWait() function is included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_WAITEXIT TRUE - -/** - * @brief Semaphores APIs. - * @details If enabled then the Semaphores APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_SEMAPHORES TRUE - -/** - * @brief Semaphores queuing mode. - * @details If enabled then the threads are enqueued on semaphores by - * priority rather than in FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE - -/** - * @brief Mutexes APIs. - * @details If enabled then the mutexes APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MUTEXES TRUE - -/** - * @brief Enables recursive behavior on mutexes. - * @note Recursive mutexes are heavier and have an increased - * memory footprint. - * - * @note The default is @p FALSE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_MUTEXES_RECURSIVE FALSE - -/** - * @brief Conditional Variables APIs. - * @details If enabled then the conditional variables APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_CONDVARS TRUE - -/** - * @brief Conditional Variables APIs with timeout. - * @details If enabled then the conditional variables APIs with timeout - * specification are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_CONDVARS. - */ -#define CH_CFG_USE_CONDVARS_TIMEOUT TRUE - -/** - * @brief Events Flags APIs. - * @details If enabled then the event flags APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_EVENTS TRUE - -/** - * @brief Events Flags APIs with timeout. - * @details If enabled then the events APIs with timeout specification - * are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_EVENTS. - */ -#define CH_CFG_USE_EVENTS_TIMEOUT TRUE - -/** - * @brief Synchronous Messages APIs. - * @details If enabled then the synchronous messages APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MESSAGES TRUE - -/** - * @brief Synchronous Messages queuing mode. - * @details If enabled then messages are served by priority rather than in - * FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_MESSAGES. - */ -#define CH_CFG_USE_MESSAGES_PRIORITY FALSE - -/** - * @brief Mailboxes APIs. - * @details If enabled then the asynchronous messages (mailboxes) APIs are - * included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_MAILBOXES TRUE - -/** - * @brief I/O Queues APIs. - * @details If enabled then the I/O queues APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_QUEUES TRUE - -/** - * @brief Core Memory Manager APIs. - * @details If enabled then the core memory manager APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMCORE TRUE - -/** - * @brief Heap Allocator APIs. - * @details If enabled then the memory heap allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or - * @p CH_CFG_USE_SEMAPHORES. - * @note Mutexes are recommended. - */ -#define CH_CFG_USE_HEAP TRUE - -/** - * @brief Memory Pools Allocator APIs. - * @details If enabled then the memory pools allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMPOOLS TRUE - -/** - * @brief Dynamic Threads APIs. - * @details If enabled then the dynamic threads creation APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_WAITEXIT. - * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS. - */ -#define CH_CFG_USE_DYNAMIC TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Debug options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Debug option, kernel statistics. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_STATISTICS FALSE - -/** - * @brief Debug option, system state check. - * @details If enabled the correct call protocol for system APIs is checked - * at runtime. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_SYSTEM_STATE_CHECK FALSE - -/** - * @brief Debug option, parameters checks. - * @details If enabled then the checks on the API functions input - * parameters are activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_CHECKS FALSE - -/** - * @brief Debug option, consistency checks. - * @details If enabled then all the assertions in the kernel code are - * activated. This includes consistency checks inside the kernel, - * runtime anomalies and port-defined checks. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_ASSERTS FALSE - -/** - * @brief Debug option, trace buffer. - * @details If enabled then the context switch circular trace buffer is - * activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_TRACE FALSE - -/** - * @brief Debug option, stack checks. - * @details If enabled then a runtime stack check is performed. - * - * @note The default is @p FALSE. - * @note The stack check is performed in a architecture/port dependent way. - * It may not be implemented or some ports. - * @note The default failure mode is to halt the system with the global - * @p panic_msg variable set to @p NULL. - */ -#define CH_DBG_ENABLE_STACK_CHECK FALSE - -/** - * @brief Debug option, stacks initialization. - * @details If enabled then the threads working area is filled with a byte - * value when a thread is created. This can be useful for the - * runtime measurement of the used stack. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_FILL_THREADS FALSE - -/** - * @brief Debug option, threads profiling. - * @details If enabled then a field is added to the @p thread_t structure that - * counts the system ticks occurred while executing the thread. - * - * @note The default is @p FALSE. - * @note This debug option is not currently compatible with the - * tickless mode. - */ -#define CH_DBG_THREADS_PROFILING FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel hooks - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Threads descriptor structure extension. - * @details User fields added to the end of the @p thread_t structure. - */ -#define CH_CFG_THREAD_EXTRA_FIELDS \ - /* Add threads custom fields here.*/ - -/** - * @brief Threads initialization hook. - * @details User initialization code added to the @p chThdInit() API. - * - * @note It is invoked from within @p chThdInit() and implicitly from all - * the threads creation APIs. - */ -#define CH_CFG_THREAD_INIT_HOOK(tp) { \ - /* Add threads initialization code here.*/ \ -} - -/** - * @brief Threads finalization hook. - * @details User finalization code added to the @p chThdExit() API. - * - * @note It is inserted into lock zone. - * @note It is also invoked when the threads simply return in order to - * terminate. - */ -#define CH_CFG_THREAD_EXIT_HOOK(tp) { \ - /* Add threads finalization code here.*/ \ -} - -/** - * @brief Context switch hook. - * @details This hook is invoked just before switching between threads. - */ -#define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) { \ - /* Context switch code here.*/ \ -} - -/** - * @brief Idle thread enter hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to activate a power saving mode. - */ -#define CH_CFG_IDLE_ENTER_HOOK() { \ -} - -/** - * @brief Idle thread leave hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to deactivate a power saving mode. - */ -#define CH_CFG_IDLE_LEAVE_HOOK() { \ -} - -/** - * @brief Idle Loop hook. - * @details This hook is continuously invoked by the idle thread loop. - */ -#define CH_CFG_IDLE_LOOP_HOOK() { \ - /* Idle loop code here.*/ \ -} - -/** - * @brief System tick event hook. - * @details This hook is invoked in the system tick handler immediately - * after processing the virtual timers queue. - */ -#define CH_CFG_SYSTEM_TICK_HOOK() { \ - /* System tick event code here.*/ \ -} - -/** - * @brief System halt hook. - * @details This hook is invoked in case to a system halting error before - * the system is halted. - */ -#define CH_CFG_SYSTEM_HALT_HOOK(reason) { \ - /* System halt code here.*/ \ -} - -/** @} */ - -/*===========================================================================*/ -/* Port-specific settings (override port settings defaulted in chcore.h). */ -/*===========================================================================*/ - -#endif /* _CHCONF_H_ */ - -/** @} */ diff --git a/demos/various/RT-ARM7-GENERIC/debug/RT-ARMCM0-GENERIC (OpenOCD, Flash and Run).launch b/demos/various/RT-ARM7-GENERIC/debug/RT-ARMCM0-GENERIC (OpenOCD, Flash and Run).launch deleted file mode 100644 index e136b6b24..000000000 --- a/demos/various/RT-ARM7-GENERIC/debug/RT-ARMCM0-GENERIC (OpenOCD, Flash and Run).launch +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/various/RT-ARM7-GENERIC/main.c b/demos/various/RT-ARM7-GENERIC/main.c deleted file mode 100644 index fd6b6558e..000000000 --- a/demos/various/RT-ARM7-GENERIC/main.c +++ /dev/null @@ -1,57 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#include "ch.h" - -/* - * This is a periodic thread that does absolutely nothing except sleeping. - */ -static THD_WORKING_AREA(waThread1, 128); -static THD_FUNCTION(Thread1, arg) { - - (void)arg; - - chRegSetThreadName("sleeper"); - - while (true) { - chThdSleepMilliseconds(1000); - } -} - -/* - * Application entry point. - */ -int main(void) { - - /* - * System initializations. - * - Kernel initialization, the main() function becomes a thread and the - * RTOS is active. - */ - chSysInit(); - - /* - * Creates the example thread. - */ - (void) chThdCreateStatic(waThread1, sizeof(waThread1), NORMALPRIO, Thread1, NULL); - - /* - * Normal main() thread activity, in this demo it just sleeps. - */ - while (true) { - chThdSleepMilliseconds(1000); - } -} diff --git a/demos/various/RT-ARM7-GENERIC/readme.txt b/demos/various/RT-ARM7-GENERIC/readme.txt deleted file mode 100644 index b3feb7551..000000000 --- a/demos/various/RT-ARM7-GENERIC/readme.txt +++ /dev/null @@ -1,17 +0,0 @@ -***************************************************************************** -** ChibiOS/RT port for ARM-Cortex-M0. ** -***************************************************************************** - -** TARGET ** - -The demo targets a generic ARM Cortex-M4 device without HAL support. - -** The Demo ** - -** Build Procedure ** - -** Notes ** - -The files ch.ld and cmparams.h must be customized for your device. You also -need to provide the CMSIS compliant device header from your vendor, it this -demo an ST header is used. diff --git a/demos/various/RT-ARMCM0-GENERIC/.cproject b/demos/various/RT-ARMCM0-GENERIC/.cproject deleted file mode 100644 index 0300ed2c4..000000000 --- a/demos/various/RT-ARMCM0-GENERIC/.cproject +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/various/RT-ARMCM0-GENERIC/.project b/demos/various/RT-ARMCM0-GENERIC/.project deleted file mode 100644 index 1e37dfee0..000000000 --- a/demos/various/RT-ARMCM0-GENERIC/.project +++ /dev/null @@ -1,90 +0,0 @@ - - - RT-ARMCM0-GENERIC - - - - - - org.eclipse.cdt.managedbuilder.core.genmakebuilder - clean,full,incremental, - - - ?name? - - - - org.eclipse.cdt.make.core.append_environment - true - - - org.eclipse.cdt.make.core.autoBuildTarget - all - - - org.eclipse.cdt.make.core.buildArguments - -j1 - - - org.eclipse.cdt.make.core.buildCommand - make - - - org.eclipse.cdt.make.core.cleanBuildTarget - clean - - - org.eclipse.cdt.make.core.contents - org.eclipse.cdt.make.core.activeConfigSettings - - - org.eclipse.cdt.make.core.enableAutoBuild - false - - - org.eclipse.cdt.make.core.enableCleanBuild - true - - - org.eclipse.cdt.make.core.enableFullBuild - true - - - org.eclipse.cdt.make.core.fullBuildTarget - all - - - org.eclipse.cdt.make.core.stopOnError - true - - - org.eclipse.cdt.make.core.useDefaultBuildCmd - true - - - - - org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder - full,incremental, - - - - - - org.eclipse.cdt.core.cnature - org.eclipse.cdt.managedbuilder.core.managedBuildNature - org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - - - - os - 2 - CHIBIOS/os - - - test - 2 - CHIBIOS/test - - - diff --git a/demos/various/RT-ARMCM0-GENERIC/Makefile b/demos/various/RT-ARMCM0-GENERIC/Makefile deleted file mode 100644 index a495b31b1..000000000 --- a/demos/various/RT-ARMCM0-GENERIC/Makefile +++ /dev/null @@ -1,217 +0,0 @@ -############################################################################## -# Build global options -# NOTE: Can be overridden externally. -# - -# Compiler options here. -ifeq ($(USE_OPT),) - USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16 -endif - -# C specific options here (added to USE_OPT). -ifeq ($(USE_COPT),) - USE_COPT = -endif - -# C++ specific options here (added to USE_OPT). -ifeq ($(USE_CPPOPT),) - USE_CPPOPT = -fno-rtti -endif - -# Enable this if you want the linker to remove unused code and data -ifeq ($(USE_LINK_GC),) - USE_LINK_GC = yes -endif - -# Linker extra options here. -ifeq ($(USE_LDOPT),) - USE_LDOPT = -endif - -# Enable this if you want link time optimizations (LTO) -ifeq ($(USE_LTO),) - USE_LTO = yes -endif - -# If enabled, this option allows to compile the application in THUMB mode. -ifeq ($(USE_THUMB),) - USE_THUMB = yes -endif - -# Enable this if you want to see the full log while compiling. -ifeq ($(USE_VERBOSE_COMPILE),) - USE_VERBOSE_COMPILE = no -endif - -# If enabled, this option makes the build process faster by not compiling -# modules not used in the current configuration. -ifeq ($(USE_SMART_BUILD),) - USE_SMART_BUILD = yes -endif - -# -# Build global options -############################################################################## - -############################################################################## -# Architecture or project specific options -# - -# Stack size to be allocated to the Cortex-M process stack. This stack is -# the stack used by the main() thread. -ifeq ($(USE_PROCESS_STACKSIZE),) - USE_PROCESS_STACKSIZE = 0x200 -endif - -# Stack size to the allocated to the Cortex-M main/exceptions stack. This -# stack is used for processing interrupts and exceptions. -ifeq ($(USE_EXCEPTIONS_STACKSIZE),) - USE_EXCEPTIONS_STACKSIZE = 0x400 -endif - -# -# Architecture or project specific options -############################################################################## - -############################################################################## -# Project, sources and paths -# - -# Define project name here -PROJECT = ch - -# Imported source files and paths -CHIBIOS = ../../.. -# Startup files. -include $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC/mk/startup_stm32f0xx.mk -# HAL-OSAL files (optional). -#include $(CHIBIOS)/os/hal/hal.mk -#include $(CHIBIOS)/os/hal/ports/STM32/STM32F0xx/platform.mk -#include $(CHIBIOS)/os/hal/boards/ST_STM32F072B_DISCOVERY/board.mk -#include $(CHIBIOS)/os/hal/osal/rt/osal.mk -# RTOS files (optional). -include $(CHIBIOS)/os/rt/rt.mk -include $(CHIBIOS)/os/rt/ports/ARMCMx/compilers/GCC/mk/port_v6m.mk -# Other files (optional). -#include $(CHIBIOS)/test/rt/test.mk - -# Define linker script file here -LDSCRIPT= $(STARTUPLD)/STM32F051x8.ld - -# C sources that can be compiled in ARM or THUMB mode depending on the global -# setting. -CSRC = $(STARTUPSRC) \ - $(KERNSRC) \ - $(PORTSRC) \ - $(OSALSRC) \ - $(HALSRC) \ - $(PLATFORMSRC) \ - $(BOARDSRC) \ - $(TESTSRC) \ - main.c - -# C++ sources that can be compiled in ARM or THUMB mode depending on the global -# setting. -CPPSRC = - -# C sources to be compiled in ARM mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -ACSRC = - -# C++ sources to be compiled in ARM mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -ACPPSRC = - -# C sources to be compiled in THUMB mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -TCSRC = - -# C sources to be compiled in THUMB mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -TCPPSRC = - -# List ASM source files here -ASMSRC = $(STARTUPASM) $(PORTASM) $(OSALASM) - -INCDIR = $(STARTUPINC) $(KERNINC) $(PORTINC) $(OSALINC) \ - $(HALINC) $(PLATFORMINC) $(BOARDINC) $(TESTINC) \ - $(CHIBIOS)/os/various - -# -# Project, sources and paths -############################################################################## - -############################################################################## -# Compiler settings -# - -MCU = cortex-m0 - -#TRGT = arm-elf- -TRGT = arm-none-eabi- -CC = $(TRGT)gcc -CPPC = $(TRGT)g++ -# Enable loading with g++ only if you need C++ runtime support. -# NOTE: You can use C++ even without C++ support if you are careful. C++ -# runtime support makes code size explode. -LD = $(TRGT)gcc -#LD = $(TRGT)g++ -CP = $(TRGT)objcopy -AS = $(TRGT)gcc -x assembler-with-cpp -AR = $(TRGT)ar -OD = $(TRGT)objdump -SZ = $(TRGT)size -HEX = $(CP) -O ihex -BIN = $(CP) -O binary - -# ARM-specific options here -AOPT = - -# THUMB-specific options here -TOPT = -mthumb -DTHUMB - -# Define C warning options here -CWARN = -Wall -Wextra -Wundef -Wstrict-prototypes - -# Define C++ warning options here -CPPWARN = -Wall -Wextra -Wundef - -# -# Compiler settings -############################################################################## - -############################################################################## -# Start of user section -# - -# List all user C define here, like -D_DEBUG=1 -UDEFS = -DSTM32F051x8 - -# Define ASM defines here -UADEFS = - -# List all user directories here -UINCDIR = - -# List the user directory to look for the libraries here -ULIBDIR = - -# List all user libraries here -ULIBS = - -# -# End of user defines -############################################################################## - -RULESPATH = $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC -include $(RULESPATH)/rules.mk - -############################################################################## -# MISRA check rule, requires PCLint and the setup files, not provided. -# -misra: - @lint-nt -v -w3 $(DEFS) pclint/co-gcc.lnt pclint/au-misra3.lnt pclint/waivers.lnt $(IINCDIR) $(CSRC) &> misra.txt diff --git a/demos/various/RT-ARMCM0-GENERIC/chconf.h b/demos/various/RT-ARMCM0-GENERIC/chconf.h deleted file mode 100644 index f6244ad4b..000000000 --- a/demos/various/RT-ARMCM0-GENERIC/chconf.h +++ /dev/null @@ -1,499 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file templates/chconf.h - * @brief Configuration file template. - * @details A copy of this file must be placed in each project directory, it - * contains the application specific kernel settings. - * - * @addtogroup config - * @details Kernel related settings and hooks. - * @{ - */ - -#ifndef _CHCONF_H_ -#define _CHCONF_H_ - -/*===========================================================================*/ -/** - * @name System timers settings - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System time counter resolution. - * @note Allowed values are 16 or 32 bits. - */ -#define CH_CFG_ST_RESOLUTION 32 - -/** - * @brief System tick frequency. - * @details Frequency of the system timer that drives the system ticks. This - * setting also defines the system tick time unit. - */ -#define CH_CFG_ST_FREQUENCY 1000 - -/** - * @brief Time delta constant for the tick-less mode. - * @note If this value is zero then the system uses the classic - * periodic tick. This value represents the minimum number - * of ticks that is safe to specify in a timeout directive. - * The value one is not valid, timeouts are rounded up to - * this value. - */ -#define CH_CFG_ST_TIMEDELTA 0 - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel parameters and options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Round robin interval. - * @details This constant is the number of system ticks allowed for the - * threads before preemption occurs. Setting this value to zero - * disables the preemption for threads with equal priority and the - * round robin becomes cooperative. Note that higher priority - * threads can still preempt, the kernel is always preemptive. - * @note Disabling the round robin preemption makes the kernel more compact - * and generally faster. - * @note The round robin preemption is not supported in tickless mode and - * must be set to zero in that case. - */ -#define CH_CFG_TIME_QUANTUM 0 - -/** - * @brief Managed RAM size. - * @details Size of the RAM area to be managed by the OS. If set to zero - * then the whole available RAM is used. The core memory is made - * available to the heap allocator and/or can be used directly through - * the simplified core memory allocator. - * - * @note In order to let the OS manage the whole RAM the linker script must - * provide the @p __heap_base__ and @p __heap_end__ symbols. - * @note Requires @p CH_CFG_USE_MEMCORE. - */ -#define CH_CFG_MEMCORE_SIZE 0 - -/** - * @brief Idle thread automatic spawn suppression. - * @details When this option is activated the function @p chSysInit() - * does not spawn the idle thread. The application @p main() - * function becomes the idle thread and must implement an - * infinite loop. - */ -#define CH_CFG_NO_IDLE_THREAD FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Performance options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief OS optimization. - * @details If enabled then time efficient rather than space efficient code - * is used when two possible implementations exist. - * - * @note This is not related to the compiler optimization options. - * @note The default is @p TRUE. - */ -#define CH_CFG_OPTIMIZE_SPEED TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Subsystem options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Time Measurement APIs. - * @details If enabled then the time measurement APIs are included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_TM FALSE - -/** - * @brief Threads registry APIs. - * @details If enabled then the registry APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_REGISTRY TRUE - -/** - * @brief Threads synchronization APIs. - * @details If enabled then the @p chThdWait() function is included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_WAITEXIT TRUE - -/** - * @brief Semaphores APIs. - * @details If enabled then the Semaphores APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_SEMAPHORES TRUE - -/** - * @brief Semaphores queuing mode. - * @details If enabled then the threads are enqueued on semaphores by - * priority rather than in FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE - -/** - * @brief Mutexes APIs. - * @details If enabled then the mutexes APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MUTEXES TRUE - -/** - * @brief Enables recursive behavior on mutexes. - * @note Recursive mutexes are heavier and have an increased - * memory footprint. - * - * @note The default is @p FALSE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_MUTEXES_RECURSIVE FALSE - -/** - * @brief Conditional Variables APIs. - * @details If enabled then the conditional variables APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_CONDVARS TRUE - -/** - * @brief Conditional Variables APIs with timeout. - * @details If enabled then the conditional variables APIs with timeout - * specification are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_CONDVARS. - */ -#define CH_CFG_USE_CONDVARS_TIMEOUT TRUE - -/** - * @brief Events Flags APIs. - * @details If enabled then the event flags APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_EVENTS TRUE - -/** - * @brief Events Flags APIs with timeout. - * @details If enabled then the events APIs with timeout specification - * are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_EVENTS. - */ -#define CH_CFG_USE_EVENTS_TIMEOUT TRUE - -/** - * @brief Synchronous Messages APIs. - * @details If enabled then the synchronous messages APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MESSAGES TRUE - -/** - * @brief Synchronous Messages queuing mode. - * @details If enabled then messages are served by priority rather than in - * FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_MESSAGES. - */ -#define CH_CFG_USE_MESSAGES_PRIORITY FALSE - -/** - * @brief Mailboxes APIs. - * @details If enabled then the asynchronous messages (mailboxes) APIs are - * included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_MAILBOXES TRUE - -/** - * @brief I/O Queues APIs. - * @details If enabled then the I/O queues APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_QUEUES TRUE - -/** - * @brief Core Memory Manager APIs. - * @details If enabled then the core memory manager APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMCORE TRUE - -/** - * @brief Heap Allocator APIs. - * @details If enabled then the memory heap allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or - * @p CH_CFG_USE_SEMAPHORES. - * @note Mutexes are recommended. - */ -#define CH_CFG_USE_HEAP TRUE - -/** - * @brief Memory Pools Allocator APIs. - * @details If enabled then the memory pools allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMPOOLS TRUE - -/** - * @brief Dynamic Threads APIs. - * @details If enabled then the dynamic threads creation APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_WAITEXIT. - * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS. - */ -#define CH_CFG_USE_DYNAMIC TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Debug options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Debug option, kernel statistics. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_STATISTICS FALSE - -/** - * @brief Debug option, system state check. - * @details If enabled the correct call protocol for system APIs is checked - * at runtime. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_SYSTEM_STATE_CHECK FALSE - -/** - * @brief Debug option, parameters checks. - * @details If enabled then the checks on the API functions input - * parameters are activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_CHECKS FALSE - -/** - * @brief Debug option, consistency checks. - * @details If enabled then all the assertions in the kernel code are - * activated. This includes consistency checks inside the kernel, - * runtime anomalies and port-defined checks. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_ASSERTS FALSE - -/** - * @brief Debug option, trace buffer. - * @details If enabled then the context switch circular trace buffer is - * activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_TRACE FALSE - -/** - * @brief Debug option, stack checks. - * @details If enabled then a runtime stack check is performed. - * - * @note The default is @p FALSE. - * @note The stack check is performed in a architecture/port dependent way. - * It may not be implemented or some ports. - * @note The default failure mode is to halt the system with the global - * @p panic_msg variable set to @p NULL. - */ -#define CH_DBG_ENABLE_STACK_CHECK FALSE - -/** - * @brief Debug option, stacks initialization. - * @details If enabled then the threads working area is filled with a byte - * value when a thread is created. This can be useful for the - * runtime measurement of the used stack. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_FILL_THREADS FALSE - -/** - * @brief Debug option, threads profiling. - * @details If enabled then a field is added to the @p thread_t structure that - * counts the system ticks occurred while executing the thread. - * - * @note The default is @p FALSE. - * @note This debug option is not currently compatible with the - * tickless mode. - */ -#define CH_DBG_THREADS_PROFILING FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel hooks - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Threads descriptor structure extension. - * @details User fields added to the end of the @p thread_t structure. - */ -#define CH_CFG_THREAD_EXTRA_FIELDS \ - /* Add threads custom fields here.*/ - -/** - * @brief Threads initialization hook. - * @details User initialization code added to the @p chThdInit() API. - * - * @note It is invoked from within @p chThdInit() and implicitly from all - * the threads creation APIs. - */ -#define CH_CFG_THREAD_INIT_HOOK(tp) { \ - /* Add threads initialization code here.*/ \ -} - -/** - * @brief Threads finalization hook. - * @details User finalization code added to the @p chThdExit() API. - * - * @note It is inserted into lock zone. - * @note It is also invoked when the threads simply return in order to - * terminate. - */ -#define CH_CFG_THREAD_EXIT_HOOK(tp) { \ - /* Add threads finalization code here.*/ \ -} - -/** - * @brief Context switch hook. - * @details This hook is invoked just before switching between threads. - */ -#define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) { \ - /* Context switch code here.*/ \ -} - -/** - * @brief Idle thread enter hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to activate a power saving mode. - */ -#define CH_CFG_IDLE_ENTER_HOOK() { \ -} - -/** - * @brief Idle thread leave hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to deactivate a power saving mode. - */ -#define CH_CFG_IDLE_LEAVE_HOOK() { \ -} - -/** - * @brief Idle Loop hook. - * @details This hook is continuously invoked by the idle thread loop. - */ -#define CH_CFG_IDLE_LOOP_HOOK() { \ - /* Idle loop code here.*/ \ -} - -/** - * @brief System tick event hook. - * @details This hook is invoked in the system tick handler immediately - * after processing the virtual timers queue. - */ -#define CH_CFG_SYSTEM_TICK_HOOK() { \ - /* System tick event code here.*/ \ -} - -/** - * @brief System halt hook. - * @details This hook is invoked in case to a system halting error before - * the system is halted. - */ -#define CH_CFG_SYSTEM_HALT_HOOK(reason) { \ - /* System halt code here.*/ \ -} - -/** @} */ - -/*===========================================================================*/ -/* Port-specific settings (override port settings defaulted in chcore.h). */ -/*===========================================================================*/ - -#endif /* _CHCONF_H_ */ - -/** @} */ diff --git a/demos/various/RT-ARMCM0-GENERIC/debug/RT-ARMCM0-GENERIC (OpenOCD, Flash and Run).launch b/demos/various/RT-ARMCM0-GENERIC/debug/RT-ARMCM0-GENERIC (OpenOCD, Flash and Run).launch deleted file mode 100644 index 73713c9fe..000000000 --- a/demos/various/RT-ARMCM0-GENERIC/debug/RT-ARMCM0-GENERIC (OpenOCD, Flash and Run).launch +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/various/RT-ARMCM0-GENERIC/main.c b/demos/various/RT-ARMCM0-GENERIC/main.c deleted file mode 100644 index 8bd7eeef9..000000000 --- a/demos/various/RT-ARMCM0-GENERIC/main.c +++ /dev/null @@ -1,90 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#include "ch.h" - -#if !defined(SYSTEM_CLOCK) -#define SYSTEM_CLOCK 8000000U -#endif - -/* - * @brief System Timer handler. - */ -CH_IRQ_HANDLER(SysTick_Handler) { - - CH_IRQ_PROLOGUE(); - - chSysLockFromISR(); - chSysTimerHandlerI(); - chSysUnlockFromISR(); - - CH_IRQ_EPILOGUE(); -} - -static uint32_t seconds_counter; -static uint32_t minutes_counter; - -/* - * Seconds counter thread. - */ -static THD_WORKING_AREA(waThread1, 128); -static THD_FUNCTION(Thread1, arg) { - - (void)arg; - - chRegSetThreadName("counter"); - - while (true) { - chThdSleepMilliseconds(1000); - seconds_counter++; - } -} - -/* - * Application entry point. - */ -int main(void) { - - /* - * Hardware initialization, in this simple demo just the systick timer is - * initialized. - */ - SysTick->LOAD = SYSTEM_CLOCK / CH_CFG_ST_FREQUENCY - (systime_t)1; - SysTick->VAL = (uint32_t)0; - SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | SysTick_CTRL_ENABLE_Msk | - SysTick_CTRL_TICKINT_Msk; - - /* - * System initializations. - * - Kernel initialization, the main() function becomes a thread and the - * RTOS is active. - */ - chSysInit(); - - /* - * Creates the example thread. - */ - (void) chThdCreateStatic(waThread1, sizeof(waThread1), NORMALPRIO, Thread1, NULL); - - /* - * Normal main() thread activity, in this demo it does nothing except - * increasing the minutes counter. - */ - while (true) { - chThdSleepSeconds(60); - minutes_counter++; - } -} diff --git a/demos/various/RT-ARMCM0-GENERIC/readme.txt b/demos/various/RT-ARMCM0-GENERIC/readme.txt deleted file mode 100644 index b3feb7551..000000000 --- a/demos/various/RT-ARMCM0-GENERIC/readme.txt +++ /dev/null @@ -1,17 +0,0 @@ -***************************************************************************** -** ChibiOS/RT port for ARM-Cortex-M0. ** -***************************************************************************** - -** TARGET ** - -The demo targets a generic ARM Cortex-M4 device without HAL support. - -** The Demo ** - -** Build Procedure ** - -** Notes ** - -The files ch.ld and cmparams.h must be customized for your device. You also -need to provide the CMSIS compliant device header from your vendor, it this -demo an ST header is used. diff --git a/demos/various/RT-ARMCM4-GENERIC/.cproject b/demos/various/RT-ARMCM4-GENERIC/.cproject deleted file mode 100644 index 0f2085e25..000000000 --- a/demos/various/RT-ARMCM4-GENERIC/.cproject +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/various/RT-ARMCM4-GENERIC/.project b/demos/various/RT-ARMCM4-GENERIC/.project deleted file mode 100644 index 46e96a046..000000000 --- a/demos/various/RT-ARMCM4-GENERIC/.project +++ /dev/null @@ -1,90 +0,0 @@ - - - RT-ARMCM4-GENERIC - - - - - - org.eclipse.cdt.managedbuilder.core.genmakebuilder - clean,full,incremental, - - - ?name? - - - - org.eclipse.cdt.make.core.append_environment - true - - - org.eclipse.cdt.make.core.autoBuildTarget - all - - - org.eclipse.cdt.make.core.buildArguments - -j1 - - - org.eclipse.cdt.make.core.buildCommand - make - - - org.eclipse.cdt.make.core.cleanBuildTarget - clean - - - org.eclipse.cdt.make.core.contents - org.eclipse.cdt.make.core.activeConfigSettings - - - org.eclipse.cdt.make.core.enableAutoBuild - false - - - org.eclipse.cdt.make.core.enableCleanBuild - true - - - org.eclipse.cdt.make.core.enableFullBuild - true - - - org.eclipse.cdt.make.core.fullBuildTarget - all - - - org.eclipse.cdt.make.core.stopOnError - true - - - org.eclipse.cdt.make.core.useDefaultBuildCmd - true - - - - - org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder - full,incremental, - - - - - - org.eclipse.cdt.core.cnature - org.eclipse.cdt.managedbuilder.core.managedBuildNature - org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - - - - os - 2 - CHIBIOS/os - - - test - 2 - CHIBIOS/test - - - diff --git a/demos/various/RT-ARMCM4-GENERIC/Makefile b/demos/various/RT-ARMCM4-GENERIC/Makefile deleted file mode 100644 index f9dc6580a..000000000 --- a/demos/various/RT-ARMCM4-GENERIC/Makefile +++ /dev/null @@ -1,222 +0,0 @@ -############################################################################## -# Build global options -# NOTE: Can be overridden externally. -# - -# Compiler options here. -ifeq ($(USE_OPT),) - USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16 -endif - -# C specific options here (added to USE_OPT). -ifeq ($(USE_COPT),) - USE_COPT = -endif - -# C++ specific options here (added to USE_OPT). -ifeq ($(USE_CPPOPT),) - USE_CPPOPT = -fno-rtti -endif - -# Enable this if you want the linker to remove unused code and data -ifeq ($(USE_LINK_GC),) - USE_LINK_GC = yes -endif - -# Linker extra options here. -ifeq ($(USE_LDOPT),) - USE_LDOPT = -endif - -# Enable this if you want link time optimizations (LTO) -ifeq ($(USE_LTO),) - USE_LTO = yes -endif - -# If enabled, this option allows to compile the application in THUMB mode. -ifeq ($(USE_THUMB),) - USE_THUMB = yes -endif - -# Enable this if you want to see the full log while compiling. -ifeq ($(USE_VERBOSE_COMPILE),) - USE_VERBOSE_COMPILE = no -endif - -# If enabled, this option makes the build process faster by not compiling -# modules not used in the current configuration. -ifeq ($(USE_SMART_BUILD),) - USE_SMART_BUILD = yes -endif - -# -# Build global options -############################################################################## - -############################################################################## -# Architecture or project specific options -# - -# Stack size to be allocated to the Cortex-M process stack. This stack is -# the stack used by the main() thread. -ifeq ($(USE_PROCESS_STACKSIZE),) - USE_PROCESS_STACKSIZE = 0x400 -endif - -# Stack size to the allocated to the Cortex-M main/exceptions stack. This -# stack is used for processing interrupts and exceptions. -ifeq ($(USE_EXCEPTIONS_STACKSIZE),) - USE_EXCEPTIONS_STACKSIZE = 0x400 -endif - -# Enables the use of FPU on Cortex-M4 (no, softfp, hard). -ifeq ($(USE_FPU),) - USE_FPU = no -endif - -# -# Architecture or project specific options -############################################################################## - -############################################################################## -# Project, sources and paths -# - -# Define project name here -PROJECT = ch - -# Imported source files and paths -CHIBIOS = ../../.. -# Startup files. -include $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC/mk/startup_stm32f4xx.mk -# HAL-OSAL files (optional). -#include $(CHIBIOS)/os/hal/hal.mk -#include $(CHIBIOS)/os/hal/ports/STM32/STM32F4xx/platform.mk -#include $(CHIBIOS)/os/hal/boards/ST_STM32F4_DISCOVERY/board.mk -#include $(CHIBIOS)/os/hal/osal/rt/osal.mk -# RTOS files (optional). -include $(CHIBIOS)/os/rt/rt.mk -include $(CHIBIOS)/os/rt/ports/ARMCMx/compilers/GCC/mk/port_v7m.mk -# Other files (optional). -#include $(CHIBIOS)/test/rt/test.mk - -# Define linker script file here -LDSCRIPT= $(STARTUPLD)/STM32F407xG.ld - -# C sources that can be compiled in ARM or THUMB mode depending on the global -# setting. -CSRC = $(STARTUPSRC) \ - $(KERNSRC) \ - $(PORTSRC) \ - $(OSALSRC) \ - $(HALSRC) \ - $(PLATFORMSRC) \ - $(BOARDSRC) \ - $(TESTSRC) \ - main.c - -# C++ sources that can be compiled in ARM or THUMB mode depending on the global -# setting. -CPPSRC = - -# C sources to be compiled in ARM mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -ACSRC = - -# C++ sources to be compiled in ARM mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -ACPPSRC = - -# C sources to be compiled in THUMB mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -TCSRC = - -# C sources to be compiled in THUMB mode regardless of the global setting. -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler -# option that results in lower performance and larger code size. -TCPPSRC = - -# List ASM source files here -ASMSRC = $(STARTUPASM) $(PORTASM) $(OSALASM) - -INCDIR = $(STARTUPINC) $(KERNINC) $(PORTINC) $(OSALINC) \ - $(HALINC) $(PLATFORMINC) $(BOARDINC) $(TESTINC) \ - $(CHIBIOS)/os/various - -# -# Project, sources and paths -############################################################################## - -############################################################################## -# Compiler settings -# - -MCU = cortex-m4 - -#TRGT = arm-elf- -TRGT = arm-none-eabi- -CC = $(TRGT)gcc -CPPC = $(TRGT)g++ -# Enable loading with g++ only if you need C++ runtime support. -# NOTE: You can use C++ even without C++ support if you are careful. C++ -# runtime support makes code size explode. -LD = $(TRGT)gcc -#LD = $(TRGT)g++ -CP = $(TRGT)objcopy -AS = $(TRGT)gcc -x assembler-with-cpp -AR = $(TRGT)ar -OD = $(TRGT)objdump -SZ = $(TRGT)size -HEX = $(CP) -O ihex -BIN = $(CP) -O binary - -# ARM-specific options here -AOPT = - -# THUMB-specific options here -TOPT = -mthumb -DTHUMB - -# Define C warning options here -CWARN = -Wall -Wextra -Wundef -Wstrict-prototypes - -# Define C++ warning options here -CPPWARN = -Wall -Wextra -Wundef - -# -# Compiler settings -############################################################################## - -############################################################################## -# Start of user section -# - -# List all user C define here, like -D_DEBUG=1 -UDEFS = -DSTM32F407xx - -# Define ASM defines here -UADEFS = - -# List all user directories here -UINCDIR = - -# List the user directory to look for the libraries here -ULIBDIR = - -# List all user libraries here -ULIBS = - -# -# End of user defines -############################################################################## - -RULESPATH = $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC -include $(RULESPATH)/rules.mk - -############################################################################## -# MISRA check rule, requires PCLint and the setup files, not provided. -# -misra: - @lint-nt -v -w3 $(DEFS) pclint/co-gcc.lnt pclint/au-misra3.lnt pclint/waivers.lnt $(IINCDIR) $(CSRC) &> misra.txt diff --git a/demos/various/RT-ARMCM4-GENERIC/chconf.h b/demos/various/RT-ARMCM4-GENERIC/chconf.h deleted file mode 100644 index f2f2859e3..000000000 --- a/demos/various/RT-ARMCM4-GENERIC/chconf.h +++ /dev/null @@ -1,499 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file templates/chconf.h - * @brief Configuration file template. - * @details A copy of this file must be placed in each project directory, it - * contains the application specific kernel settings. - * - * @addtogroup config - * @details Kernel related settings and hooks. - * @{ - */ - -#ifndef _CHCONF_H_ -#define _CHCONF_H_ - -/*===========================================================================*/ -/** - * @name System timers settings - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System time counter resolution. - * @note Allowed values are 16 or 32 bits. - */ -#define CH_CFG_ST_RESOLUTION 32 - -/** - * @brief System tick frequency. - * @details Frequency of the system timer that drives the system ticks. This - * setting also defines the system tick time unit. - */ -#define CH_CFG_ST_FREQUENCY 1000 - -/** - * @brief Time delta constant for the tick-less mode. - * @note If this value is zero then the system uses the classic - * periodic tick. This value represents the minimum number - * of ticks that is safe to specify in a timeout directive. - * The value one is not valid, timeouts are rounded up to - * this value. - */ -#define CH_CFG_ST_TIMEDELTA 0 - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel parameters and options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Round robin interval. - * @details This constant is the number of system ticks allowed for the - * threads before preemption occurs. Setting this value to zero - * disables the preemption for threads with equal priority and the - * round robin becomes cooperative. Note that higher priority - * threads can still preempt, the kernel is always preemptive. - * @note Disabling the round robin preemption makes the kernel more compact - * and generally faster. - * @note The round robin preemption is not supported in tickless mode and - * must be set to zero in that case. - */ -#define CH_CFG_TIME_QUANTUM 0 - -/** - * @brief Managed RAM size. - * @details Size of the RAM area to be managed by the OS. If set to zero - * then the whole available RAM is used. The core memory is made - * available to the heap allocator and/or can be used directly through - * the simplified core memory allocator. - * - * @note In order to let the OS manage the whole RAM the linker script must - * provide the @p __heap_base__ and @p __heap_end__ symbols. - * @note Requires @p CH_CFG_USE_MEMCORE. - */ -#define CH_CFG_MEMCORE_SIZE 0 - -/** - * @brief Idle thread automatic spawn suppression. - * @details When this option is activated the function @p chSysInit() - * does not spawn the idle thread. The application @p main() - * function becomes the idle thread and must implement an - * infinite loop. - */ -#define CH_CFG_NO_IDLE_THREAD FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Performance options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief OS optimization. - * @details If enabled then time efficient rather than space efficient code - * is used when two possible implementations exist. - * - * @note This is not related to the compiler optimization options. - * @note The default is @p TRUE. - */ -#define CH_CFG_OPTIMIZE_SPEED TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Subsystem options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Time Measurement APIs. - * @details If enabled then the time measurement APIs are included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_TM TRUE - -/** - * @brief Threads registry APIs. - * @details If enabled then the registry APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_REGISTRY TRUE - -/** - * @brief Threads synchronization APIs. - * @details If enabled then the @p chThdWait() function is included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_WAITEXIT TRUE - -/** - * @brief Semaphores APIs. - * @details If enabled then the Semaphores APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_SEMAPHORES TRUE - -/** - * @brief Semaphores queuing mode. - * @details If enabled then the threads are enqueued on semaphores by - * priority rather than in FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE - -/** - * @brief Mutexes APIs. - * @details If enabled then the mutexes APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MUTEXES TRUE - -/** - * @brief Enables recursive behavior on mutexes. - * @note Recursive mutexes are heavier and have an increased - * memory footprint. - * - * @note The default is @p FALSE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_MUTEXES_RECURSIVE FALSE - -/** - * @brief Conditional Variables APIs. - * @details If enabled then the conditional variables APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#define CH_CFG_USE_CONDVARS TRUE - -/** - * @brief Conditional Variables APIs with timeout. - * @details If enabled then the conditional variables APIs with timeout - * specification are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_CONDVARS. - */ -#define CH_CFG_USE_CONDVARS_TIMEOUT TRUE - -/** - * @brief Events Flags APIs. - * @details If enabled then the event flags APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_EVENTS TRUE - -/** - * @brief Events Flags APIs with timeout. - * @details If enabled then the events APIs with timeout specification - * are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_EVENTS. - */ -#define CH_CFG_USE_EVENTS_TIMEOUT TRUE - -/** - * @brief Synchronous Messages APIs. - * @details If enabled then the synchronous messages APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MESSAGES TRUE - -/** - * @brief Synchronous Messages queuing mode. - * @details If enabled then messages are served by priority rather than in - * FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_MESSAGES. - */ -#define CH_CFG_USE_MESSAGES_PRIORITY FALSE - -/** - * @brief Mailboxes APIs. - * @details If enabled then the asynchronous messages (mailboxes) APIs are - * included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#define CH_CFG_USE_MAILBOXES TRUE - -/** - * @brief I/O Queues APIs. - * @details If enabled then the I/O queues APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_QUEUES TRUE - -/** - * @brief Core Memory Manager APIs. - * @details If enabled then the core memory manager APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMCORE TRUE - -/** - * @brief Heap Allocator APIs. - * @details If enabled then the memory heap allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or - * @p CH_CFG_USE_SEMAPHORES. - * @note Mutexes are recommended. - */ -#define CH_CFG_USE_HEAP TRUE - -/** - * @brief Memory Pools Allocator APIs. - * @details If enabled then the memory pools allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#define CH_CFG_USE_MEMPOOLS TRUE - -/** - * @brief Dynamic Threads APIs. - * @details If enabled then the dynamic threads creation APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_WAITEXIT. - * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS. - */ -#define CH_CFG_USE_DYNAMIC TRUE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Debug options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Debug option, kernel statistics. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_STATISTICS FALSE - -/** - * @brief Debug option, system state check. - * @details If enabled the correct call protocol for system APIs is checked - * at runtime. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_SYSTEM_STATE_CHECK FALSE - -/** - * @brief Debug option, parameters checks. - * @details If enabled then the checks on the API functions input - * parameters are activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_CHECKS FALSE - -/** - * @brief Debug option, consistency checks. - * @details If enabled then all the assertions in the kernel code are - * activated. This includes consistency checks inside the kernel, - * runtime anomalies and port-defined checks. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_ASSERTS FALSE - -/** - * @brief Debug option, trace buffer. - * @details If enabled then the context switch circular trace buffer is - * activated. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_ENABLE_TRACE FALSE - -/** - * @brief Debug option, stack checks. - * @details If enabled then a runtime stack check is performed. - * - * @note The default is @p FALSE. - * @note The stack check is performed in a architecture/port dependent way. - * It may not be implemented or some ports. - * @note The default failure mode is to halt the system with the global - * @p panic_msg variable set to @p NULL. - */ -#define CH_DBG_ENABLE_STACK_CHECK FALSE - -/** - * @brief Debug option, stacks initialization. - * @details If enabled then the threads working area is filled with a byte - * value when a thread is created. This can be useful for the - * runtime measurement of the used stack. - * - * @note The default is @p FALSE. - */ -#define CH_DBG_FILL_THREADS FALSE - -/** - * @brief Debug option, threads profiling. - * @details If enabled then a field is added to the @p thread_t structure that - * counts the system ticks occurred while executing the thread. - * - * @note The default is @p FALSE. - * @note This debug option is not currently compatible with the - * tickless mode. - */ -#define CH_DBG_THREADS_PROFILING FALSE - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel hooks - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Threads descriptor structure extension. - * @details User fields added to the end of the @p thread_t structure. - */ -#define CH_CFG_THREAD_EXTRA_FIELDS \ - /* Add threads custom fields here.*/ - -/** - * @brief Threads initialization hook. - * @details User initialization code added to the @p chThdInit() API. - * - * @note It is invoked from within @p chThdInit() and implicitly from all - * the threads creation APIs. - */ -#define CH_CFG_THREAD_INIT_HOOK(tp) { \ - /* Add threads initialization code here.*/ \ -} - -/** - * @brief Threads finalization hook. - * @details User finalization code added to the @p chThdExit() API. - * - * @note It is inserted into lock zone. - * @note It is also invoked when the threads simply return in order to - * terminate. - */ -#define CH_CFG_THREAD_EXIT_HOOK(tp) { \ - /* Add threads finalization code here.*/ \ -} - -/** - * @brief Context switch hook. - * @details This hook is invoked just before switching between threads. - */ -#define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) { \ - /* Context switch code here.*/ \ -} - -/** - * @brief Idle thread enter hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to activate a power saving mode. - */ -#define CH_CFG_IDLE_ENTER_HOOK() { \ -} - -/** - * @brief Idle thread leave hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to deactivate a power saving mode. - */ -#define CH_CFG_IDLE_LEAVE_HOOK() { \ -} - -/** - * @brief Idle Loop hook. - * @details This hook is continuously invoked by the idle thread loop. - */ -#define CH_CFG_IDLE_LOOP_HOOK() { \ - /* Idle loop code here.*/ \ -} - -/** - * @brief System tick event hook. - * @details This hook is invoked in the system tick handler immediately - * after processing the virtual timers queue. - */ -#define CH_CFG_SYSTEM_TICK_HOOK() { \ - /* System tick event code here.*/ \ -} - -/** - * @brief System halt hook. - * @details This hook is invoked in case to a system halting error before - * the system is halted. - */ -#define CH_CFG_SYSTEM_HALT_HOOK(reason) { \ - /* System halt code here.*/ \ -} - -/** @} */ - -/*===========================================================================*/ -/* Port-specific settings (override port settings defaulted in chcore.h). */ -/*===========================================================================*/ - -#endif /* _CHCONF_H_ */ - -/** @} */ diff --git a/demos/various/RT-ARMCM4-GENERIC/debug/RT-ARMCM4-GENERIC (OpenOCD, Flash and Run).launch b/demos/various/RT-ARMCM4-GENERIC/debug/RT-ARMCM4-GENERIC (OpenOCD, Flash and Run).launch deleted file mode 100644 index 60b3b6b33..000000000 --- a/demos/various/RT-ARMCM4-GENERIC/debug/RT-ARMCM4-GENERIC (OpenOCD, Flash and Run).launch +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/demos/various/RT-ARMCM4-GENERIC/main.c b/demos/various/RT-ARMCM4-GENERIC/main.c deleted file mode 100644 index 8bd7eeef9..000000000 --- a/demos/various/RT-ARMCM4-GENERIC/main.c +++ /dev/null @@ -1,90 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#include "ch.h" - -#if !defined(SYSTEM_CLOCK) -#define SYSTEM_CLOCK 8000000U -#endif - -/* - * @brief System Timer handler. - */ -CH_IRQ_HANDLER(SysTick_Handler) { - - CH_IRQ_PROLOGUE(); - - chSysLockFromISR(); - chSysTimerHandlerI(); - chSysUnlockFromISR(); - - CH_IRQ_EPILOGUE(); -} - -static uint32_t seconds_counter; -static uint32_t minutes_counter; - -/* - * Seconds counter thread. - */ -static THD_WORKING_AREA(waThread1, 128); -static THD_FUNCTION(Thread1, arg) { - - (void)arg; - - chRegSetThreadName("counter"); - - while (true) { - chThdSleepMilliseconds(1000); - seconds_counter++; - } -} - -/* - * Application entry point. - */ -int main(void) { - - /* - * Hardware initialization, in this simple demo just the systick timer is - * initialized. - */ - SysTick->LOAD = SYSTEM_CLOCK / CH_CFG_ST_FREQUENCY - (systime_t)1; - SysTick->VAL = (uint32_t)0; - SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | SysTick_CTRL_ENABLE_Msk | - SysTick_CTRL_TICKINT_Msk; - - /* - * System initializations. - * - Kernel initialization, the main() function becomes a thread and the - * RTOS is active. - */ - chSysInit(); - - /* - * Creates the example thread. - */ - (void) chThdCreateStatic(waThread1, sizeof(waThread1), NORMALPRIO, Thread1, NULL); - - /* - * Normal main() thread activity, in this demo it does nothing except - * increasing the minutes counter. - */ - while (true) { - chThdSleepSeconds(60); - minutes_counter++; - } -} diff --git a/demos/various/RT-ARMCM4-GENERIC/readme.txt b/demos/various/RT-ARMCM4-GENERIC/readme.txt deleted file mode 100644 index da9c630a8..000000000 --- a/demos/various/RT-ARMCM4-GENERIC/readme.txt +++ /dev/null @@ -1,17 +0,0 @@ -***************************************************************************** -** ChibiOS/RT port for ARM-Cortex-M4. ** -***************************************************************************** - -** TARGET ** - -The demo targets a generic ARM Cortex-M4 device without HAL support. - -** The Demo ** - -** Build Procedure ** - -** Notes ** - -The files ch.ld and cmparams.h must be customized for your device. You also -need to provide the CMSIS compliant device header from your vendor, it this -demo an ST header is used. diff --git a/os/common/ports/ARM/devices/LPC214x/armparams.h b/os/common/ports/ARM/devices/LPC214x/armparams.h deleted file mode 100644 index 361107eb5..000000000 --- a/os/common/ports/ARM/devices/LPC214x/armparams.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file armparams.h - * @brief ARM parameters for the LPC214x. - * - * @defgroup ARM_LPC214x LPC214x Specific Parameters - * @ingroup ARM_SPECIFIC - * @details This file contains the ARM specific parameters for the - * LPC214x platform. - * @{ - */ - -#ifndef _ARMPARAMS_H_ -#define _ARMPARAMS_H_ - -/** - * @brief ARM core model. - */ -#define ARM_CORE ARM_CORE_ARM7TDMI - -/** - * @brief Thumb-capable. - */ -#define ARM_SUPPORTS_THUMB 1 - -/** - * @brief Thumb2-capable. - */ -#define ARM_SUPPORTS_THUMB2 0 - -/** - * @brief Implementation of the wait-for-interrupt state enter. - */ -#define ARM_WFI_IMPL (PCON = 1) - -#if !defined(_FROM_ASM_) || defined(__DOXYGEN__) -/** - * @brief Address of the IRQ vector register in the interrupt controller. - */ -#define ARM_IRQ_VECTOR_REG 0xFFFFF030U -#else -#define ARM_IRQ_VECTOR_REG 0xFFFFF030 -#endif - -#endif /* _ARMPARAMS_H_ */ - -/** @} */ diff --git a/os/common/ports/ARM/devices/LPC214x/lpc214x.h b/os/common/ports/ARM/devices/LPC214x/lpc214x.h deleted file mode 100644 index 17b26fc29..000000000 --- a/os/common/ports/ARM/devices/LPC214x/lpc214x.h +++ /dev/null @@ -1,523 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file lpc214x.h - * @brief LPC214x register definitions. - */ - -#ifndef _LPC214X_H_ -#define _LPC214X_H_ - -typedef volatile uint8_t IOREG8; -typedef volatile uint16_t IOREG16; -typedef volatile uint32_t IOREG32; - -/* - * System. - */ -#define MEMMAP (*((IOREG32 *)0xE01FC040)) -#define PCON (*((IOREG32 *)0xE01FC0C0)) -#define PCONP (*((IOREG32 *)0xE01FC0C4)) -#define VPBDIV (*((IOREG32 *)0xE01FC100)) -#define EXTINT (*((IOREG32 *)0xE01FC140)) -#define INTWAKE (*((IOREG32 *)0xE01FC144)) -#define EXTMODE (*((IOREG32 *)0xE01FC148)) -#define EXTPOLAR (*((IOREG32 *)0xE01FC14C)) -#define RSID (*((IOREG32 *)0xE01FC180)) -#define CSPR (*((IOREG32 *)0xE01FC184)) -#define SCS (*((IOREG32 *)0xE01FC1A0)) - -#define VPD_D4 0 -#define VPD_D1 1 -#define VPD_D2 2 -#define VPD_RESERVED 3 - -#define PCTIM0 (1 << 1) -#define PCTIM1 (1 << 2) -#define PCUART0 (1 << 3) -#define PCUART1 (1 << 4) -#define PCPWM0 (1 << 5) -#define PCI2C0 (1 << 7) -#define PCSPI0 (1 << 8) -#define PCRTC (1 << 9) -#define PCSPI1 (1 << 10) -#define PCAD0 (1 << 12) -#define PCI2C1 (1 << 19) -#define PCAD1 (1 << 20) -#define PCUSB (1 << 31) -#define PCALL (PCTIM0 | PCTIM1 | PCUART0 | PCUART1 | \ - PCPWM0 | PCI2C0 | PCSPI0 | PCRTC | PCSPI1 | \ - PCAD0 | PCI2C1 | PCAD1 | PCUSB) - -#define EINT0 1 -#define EINT1 2 -#define EINT2 4 -#define EINT3 8 - -#define EXTWAKE0 1 -#define EXTWAKE1 2 -#define EXTWAKE2 4 -#define EXTWAKE3 8 -#define USBWAKE 0x20 -#define BODWAKE 0x4000 -#define RTCWAKE 0x8000 - -#define EXTMODE0 1 -#define EXTMODE1 2 -#define EXTMODE2 4 -#define EXTMODE3 8 - -#define EXTPOLAR0 1 -#define EXTPOLAR1 2 -#define EXTPOLAR2 4 -#define EXTPOLAR3 8 - -typedef struct { - IOREG32 PLL_CON; - IOREG32 PLL_CFG; - IOREG32 PLL_STAT; - IOREG32 PLL_FEED; -} PLL; - -#define PLL0Base ((PLL *)0xE01FC080) -#define PLL1Base ((PLL *)0xE01FC0A0) -#define PLL0CON (PLL0Base->PLL_CON) -#define PLL0CFG (PLL0Base->PLL_CFG) -#define PLL0STAT (PLL0Base->PLL_STAT) -#define PLL0FEED (PLL0Base->PLL_FEED) -#define PLL1CON (PLL1Base->PLL_CON) -#define PLL1CFG (PLL1Base->PLL_CFG) -#define PLL1STAT (PLL1Base->PLL_STAT) -#define PLL1FEED (PLL1Base->PLL_FEED) - -/* - * Pins. - */ -typedef struct { - IOREG32 PS_SEL0; - IOREG32 PS_SEL1; - IOREG32 _dummy[3]; - IOREG32 PS_SEL2; -} PS; - -#define PSBase ((PS *)0xE002C000) -#define PINSEL0 (PSBase->PS_SEL0) -#define PINSEL1 (PSBase->PS_SEL1) -#define PINSEL2 (PSBase->PS_SEL2) - -/* - * VIC - */ -#define SOURCE_WDT 0 -#define SOURCE_ARMCore0 2 -#define SOURCE_ARMCore1 3 -#define SOURCE_Timer0 4 -#define SOURCE_Timer1 5 -#define SOURCE_UART0 6 -#define SOURCE_UART1 7 -#define SOURCE_PWM0 8 -#define SOURCE_I2C0 9 -#define SOURCE_SPI0 10 -#define SOURCE_SPI1 11 -#define SOURCE_PLL 12 -#define SOURCE_RTC 13 -#define SOURCE_EINT0 14 -#define SOURCE_EINT1 15 -#define SOURCE_EINT2 16 -#define SOURCE_EINT3 17 -#define SOURCE_ADC0 18 -#define SOURCE_I2C1 19 -#define SOURCE_BOD 20 -#define SOURCE_ADC1 21 -#define SOURCE_USB 22 - -#define INTMASK(n) (1 << (n)) -#define ALLINTMASK (INTMASK(SOURCE_WDT) | INTMASK(SOURCE_ARMCore0) | \ - INTMASK(SOURCE_ARMCore1) | INTMASK(SOURCE_Timer0) | \ - INTMASK(SOURCE_Timer1) | INTMASK(SOURCE_UART0) | \ - INTMASK(SOURCE_UART1) | INTMASK(SOURCE_PWM0) | \ - INTMASK(SOURCE_I2C0) | INTMASK(SOURCE_SPI0) | \ - INTMASK(SOURCE_SPI1) | INTMASK(SOURCE_PLL) | \ - INTMASK(SOURCE_RTC) | INTMASK(SOURCE_EINT0) | \ - INTMASK(SOURCE_EINT1) | INTMASK(SOURCE_EINT2) | \ - INTMASK(SOURCE_EINT3) | INTMASK(SOURCE_ADC0) | \ - INTMASK(SOURCE_I2C1) | INTMASK(SOURCE_BOD) | \ - INTMASK(SOURCE_ADC1) | INTMASK(SOURCE_USB)) - -typedef struct { - IOREG32 VIC_IRQStatus; - IOREG32 VIC_FIQStatus; - IOREG32 VIC_RawIntr; - IOREG32 VIC_IntSelect; - IOREG32 VIC_IntEnable; - IOREG32 VIC_IntEnClear; - IOREG32 VIC_SoftInt; - IOREG32 VIC_SoftIntClear; - IOREG32 VIC_Protection; - IOREG32 unused1[3]; - IOREG32 VIC_VectAddr; - IOREG32 VIC_DefVectAddr; - IOREG32 unused2[50]; - IOREG32 VIC_VectAddrs[16]; - IOREG32 unused3[48]; - IOREG32 VIC_VectCntls[16]; -} VIC; - -#define VICBase ((VIC *)0xFFFFF000) -#define VICVectorsBase ((IOREG32 *)0xFFFFF100) -#define VICControlsBase ((IOREG32 *)0xFFFFF200) - -#define VICIRQStatus (VICBase->VIC_IRQStatus) -#define VICFIQStatus (VICBase->VIC_FIQStatus) -#define VICRawIntr (VICBase->VIC_RawIntr) -#define VICIntSelect (VICBase->VIC_IntSelect) -#define VICIntEnable (VICBase->VIC_IntEnable) -#define VICIntEnClear (VICBase->VIC_IntEnClear) -#define VICSoftInt (VICBase->VIC_SoftInt) -#define VICSoftIntClear (VICBase->VIC_SoftIntClear) -#define VICProtection (VICBase->VIC_Protection) -#define VICVectAddr (VICBase->VIC_VectAddr) -#define VICDefVectAddr (VICBase->VIC_DefVectAddr) - -#define VICVectAddrs(n) (VICBase->VIC_VectAddrs[n]) -#define VICVectCntls(n) (VICBase->VIC_VectCntls[n]) - -/* - * MAM. - */ -typedef struct { - IOREG32 MAM_Control; - IOREG32 MAM_Timing; -} MAM; - -#define MAMBase ((MAM *)0xE01FC000) -#define MAMCR (MAMBase->MAM_Control) -#define MAMTIM (MAMBase->MAM_Timing) - -/* - * GPIO - FIO. - */ -typedef struct { - IOREG32 IO_PIN; - IOREG32 IO_SET; - IOREG32 IO_DIR; - IOREG32 IO_CLR; -} GPIO; - -#define GPIO0Base ((GPIO *)0xE0028000) -#define IO0PIN (GPIO0Base->IO_PIN) -#define IO0SET (GPIO0Base->IO_SET) -#define IO0DIR (GPIO0Base->IO_DIR) -#define IO0CLR (GPIO0Base->IO_CLR) - -#define GPIO1Base ((GPIO *)0xE0028010) -#define IO1PIN (GPIO1Base->IO_PIN) -#define IO1SET (GPIO1Base->IO_SET) -#define IO1DIR (GPIO1Base->IO_DIR) -#define IO1CLR (GPIO1Base->IO_CLR) - -typedef struct { - IOREG32 FIO_DIR; - IOREG32 unused1; - IOREG32 unused2; - IOREG32 unused3; - IOREG32 FIO_MASK; - IOREG32 FIO_PIN; - IOREG32 FIO_SET; - IOREG32 FIO_CLR; -} FIO; - -#define FIO0Base ((FIO *)0x3FFFC000) -#define FIO0DIR (FIO0Base->FIO_DIR) -#define FIO0MASK (FIO0Base->FIO_MASK) -#define FIO0PIN (FIO0Base->FIO_PIN) -#define FIO0SET (FIO0Base->FIO_SET) -#define FIO0CLR (FIO0Base->FIO_CLR) - -#define FIO1Base ((FIO *)0x3FFFC020) -#define FIO1DIR (FIO1Base->FIO_DIR) -#define FIO1MASK (FIO1Base->FIO_MASK) -#define FIO1PIN (FIO1Base->FIO_PIN) -#define FIO1SET (FIO1Base->FIO_SET) -#define FIO1CLR (FIO1Base->FIO_CLR) - -/* - * UART. - */ -typedef struct { - union { - IOREG32 UART_RBR; - IOREG32 UART_THR; - IOREG32 UART_DLL; - }; - union { - IOREG32 UART_IER; - IOREG32 UART_DLM; - }; - union { - IOREG32 UART_IIR; - IOREG32 UART_FCR; - }; - IOREG32 UART_LCR; - IOREG32 UART_MCR; - IOREG32 UART_LSR; - IOREG32 unused18; - IOREG32 UART_SCR; - IOREG32 UART_ACR; - IOREG32 unused24; - IOREG32 UART_FDR; - IOREG32 unused2C; - IOREG32 UART_TER; -} UART; - -#define U0Base ((UART *)0xE000C000) -#define U0RBR (U0Base->UART_RBR) -#define U0THR (U0Base->UART_THR) -#define U0DLL (U0Base->UART_DLL) -#define U0IER (U0Base->UART_IER) -#define U0DLM (U0Base->UART_DLM) -#define U0IIR (U0Base->UART_IIR) -#define U0FCR (U0Base->UART_FCR) -#define U0LCR (U0Base->UART_LCR) -#define U0LSR (U0Base->UART_LSR) -#define U0SCR (U0Base->UART_SCR) -#define U0ACR (U0Base->UART_ACR) -#define U0FDR (U0Base->UART_FDR) -#define U0TER (U0Base->UART_TER) - -#define U1Base ((UART *)0xE0010000) -#define U1RBR (U1Base->UART_RBR) -#define U1THR (U1Base->UART_THR) -#define U1DLL (U1Base->UART_DLL) -#define U1IER (U1Base->UART_IER) -#define U1DLM (U1Base->UART_DLM) -#define U1IIR (U1Base->UART_IIR) -#define U1FCR (U1Base->UART_FCR) -#define U1MCR (U1Base->UART_MCR) -#define U1LCR (U1Base->UART_LCR) -#define U1LSR (U1Base->UART_LSR) -#define U1SCR (U1Base->UART_SCR) -#define U1ACR (U1Base->UART_ACR) -#define U1FDR (U1Base->UART_FDR) -#define U1TER (U1Base->UART_TER) - -#define IIR_SRC_MASK 0x0F -#define IIR_SRC_NONE 0x01 -#define IIR_SRC_TX 0x02 -#define IIR_SRC_RX 0x04 -#define IIR_SRC_ERROR 0x06 -#define IIR_SRC_TIMEOUT 0x0C - -#define IER_RBR 1 -#define IER_THRE 2 -#define IER_STATUS 4 - -#define IIR_INT_PENDING 1 - -#define LCR_WL5 0 -#define LCR_WL6 1 -#define LCR_WL7 2 -#define LCR_WL8 3 -#define LCR_STOP1 0 -#define LCR_STOP2 4 -#define LCR_NOPARITY 0 -#define LCR_PARITYODD 0x08 -#define LCR_PARITYEVEN 0x18 -#define LCR_PARITYONE 0x28 -#define LCR_PARITYZERO 0x38 -#define LCR_BREAK_ON 0x40 -#define LCR_DLAB 0x80 - -#define FCR_ENABLE 1 -#define FCR_RXRESET 2 -#define FCR_TXRESET 4 -#define FCR_TRIGGER0 0 -#define FCR_TRIGGER1 0x40 -#define FCR_TRIGGER2 0x80 -#define FCR_TRIGGER3 0xC0 - -#define LSR_RBR_FULL 1 -#define LSR_OVERRUN 2 -#define LSR_PARITY 4 -#define LSR_FRAMING 8 -#define LSR_BREAK 0x10 -#define LSR_THRE 0x20 -#define LSR_TEMT 0x40 -#define LSR_RXFE 0x80 - -#define TER_ENABLE 0x80 - -/* - * SSP. - */ -typedef struct { - IOREG32 SSP_CR0; - IOREG32 SSP_CR1; - IOREG32 SSP_DR; - IOREG32 SSP_SR; - IOREG32 SSP_CPSR; - IOREG32 SSP_IMSC; - IOREG32 SSP_RIS; - IOREG32 SSP_MIS; - IOREG32 SSP_ICR; -} SSP; - -#define SSPBase ((SSP *)0xE0068000) -#define SSPCR0 (SSPBase->SSP_CR0) -#define SSPCR1 (SSPBase->SSP_CR1) -#define SSPDR (SSPBase->SSP_DR) -#define SSPSR (SSPBase->SSP_SR) -#define SSPCPSR (SSPBase->SSP_CPSR) -#define SSPIMSC (SSPBase->SSP_IMSC) -#define SSPRIS (SSPBase->SSP_RIS) -#define SSPMIS (SSPBase->SSP_MIS) -#define SSPICR (SSPBase->SSP_ICR) - -#define CR0_DSSMASK 0x0F -#define CR0_DSS4BIT 3 -#define CR0_DSS5BIT 4 -#define CR0_DSS6BIT 5 -#define CR0_DSS7BIT 6 -#define CR0_DSS8BIT 7 -#define CR0_DSS9BIT 8 -#define CR0_DSS10BIT 9 -#define CR0_DSS11BIT 0xA -#define CR0_DSS12BIT 0xB -#define CR0_DSS13BIT 0xC -#define CR0_DSS14BIT 0xD -#define CR0_DSS15BIT 0xE -#define CR0_DSS16BIT 0xF -#define CR0_FRFSPI 0 -#define CR0_FRFSSI 0x10 -#define CR0_FRFMW 0x20 -#define CR0_CPOL 0x40 -#define CR0_CPHA 0x80 -#define CR0_CLOCKRATE(n) ((n) << 8) - -#define CR1_LBM 1 -#define CR1_SSE 2 -#define CR1_MS 4 -#define CR1_SOD 8 - -#define SR_TFE 1 -#define SR_TNF 2 -#define SR_RNE 4 -#define SR_RFF 8 -#define SR_BSY 0x10 - -#define IMSC_ROR 1 -#define IMSC_RT 2 -#define IMSC_RX 4 -#define IMSC_TX 8 - -#define RIS_ROR 1 -#define RIS_RT 2 -#define RIS_RX 4 -#define RIS_TX 8 - -#define MIS_ROR 1 -#define MIS_RT 2 -#define MIS_RX 4 -#define MIS_TX 8 - -#define ICR_ROR 1 -#define ICR_RT 2 - -/* - * Timers/Counters. - */ -typedef struct { - IOREG32 TC_IR; - IOREG32 TC_TCR; - IOREG32 TC_TC; - IOREG32 TC_PR; - IOREG32 TC_PC; - IOREG32 TC_MCR; - IOREG32 TC_MR0; - IOREG32 TC_MR1; - IOREG32 TC_MR2; - IOREG32 TC_MR3; - IOREG32 TC_CCR; - IOREG32 TC_CR0; - IOREG32 TC_CR1; - IOREG32 TC_CR2; - IOREG32 TC_CR3; - IOREG32 TC_EMR; - IOREG32 TC_CTCR; -} TC; - -#define T0Base ((TC *)0xE0004000) -#define T0IR (T0Base->TC_IR) -#define T0TCR (T0Base->TC_TCR) -#define T0TC (T0Base->TC_TC) -#define T0PR (T0Base->TC_PR) -#define T0PC (T0Base->TC_PC) -#define T0MCR (T0Base->TC_MCR) -#define T0MR0 (T0Base->TC_MR0) -#define T0MR1 (T0Base->TC_MR1) -#define T0MR2 (T0Base->TC_MR2) -#define T0MR3 (T0Base->TC_MR3) -#define T0CCR (T0Base->TC_CCR) -#define T0CR0 (T0Base->TC_CR0) -#define T0CR1 (T0Base->TC_CR1) -#define T0CR2 (T0Base->TC_CR2) -#define T0CR3 (T0Base->TC_CR3) -#define T0EMR (T0Base->TC_EMR) -#define T0CTCR (T0Base->TC_CTCR) - -#define T1Base ((TC *)0xE0008000) -#define T1IR (T1Base->TC_IR) -#define T1TCR (T1Base->TC_TCR) -#define T1TC (T1Base->TC_TC) -#define T1PR (T1Base->TC_PR) -#define T1PC (T1Base->TC_PC) -#define T1MCR (T1Base->TC_MCR) -#define T1MR0 (T1Base->TC_MR0) -#define T1MR1 (T1Base->TC_MR1) -#define T1MR2 (T1Base->TC_MR2) -#define T1MR3 (T1Base->TC_MR3) -#define T1CCR (T1Base->TC_CCR) -#define T1CR0 (T1Base->TC_CR0) -#define T1CR1 (T1Base->TC_CR1) -#define T1CR2 (T1Base->TC_CR2) -#define T1CR3 (T1Base->TC_CR3) -#define T1EMR (T1Base->TC_EMR) -#define T1CTCR (T1Base->TC_CTCR) - -/* - * Watchdog. - */ -typedef struct { - IOREG32 WD_MOD; - IOREG32 WD_TC; - IOREG32 WD_FEED; - IOREG32 WD_TV; -} WD; - -#define WDBase ((WD *)0xE0000000) -#define WDMOD (WDBase->WD_MOD) -#define WDTC (WDBase->WD_TC) -#define WDFEED (WDBase->WD_FEED) -#define WDTV (WDBase->WD_TV) - -/* - * DAC. - */ -#define DACR (*((IOREG32 *)0xE006C000)) - -#endif /* _LPC214X_H_ */ -