From afdfd9880ba8d0bb4b48d68ea3ff05d7d0f5cea8 Mon Sep 17 00:00:00 2001 From: gdisirio Date: Tue, 19 Nov 2013 14:25:43 +0000 Subject: git-svn-id: svn://svn.code.sf.net/p/chibios/svn/branches/kernel_3_dev@6495 35acf78f-673a-0410-8e92-d51de3d6d3f4 --- os/rt/ports/e200/chcore.c | 8 ++++---- os/rt/ports/e200/chcore.h | 10 ++++++---- os/rt/ports/e200/compilers/GCC/mk/port_spc56elxx.mk | 3 ++- 3 files changed, 12 insertions(+), 9 deletions(-) (limited to 'os/rt/ports/e200') diff --git a/os/rt/ports/e200/chcore.c b/os/rt/ports/e200/chcore.c index 6205b8084..a74c76cad 100644 --- a/os/rt/ports/e200/chcore.c +++ b/os/rt/ports/e200/chcore.c @@ -60,9 +60,9 @@ * switch performance so optimize here as much as you can. */ #if !defined(__DOXYGEN__) -__attribute__((naked, required)) +__attribute__((naked)) #endif -static void port_dummy1(void) { +void port_dummy1(void) { asm (".global _port_switch"); asm ("_port_switch:"); @@ -91,9 +91,9 @@ static void port_dummy1(void) { * invoked. */ #if !defined(__DOXYGEN__) -__attribute__((naked, required)) +__attribute__((naked)) #endif -static void port_dummy2(void) { +void port_dummy2(void) { asm (".global _port_thread_start"); asm ("_port_thread_start:"); diff --git a/os/rt/ports/e200/chcore.h b/os/rt/ports/e200/chcore.h index 8ea8d0d4f..70bddf239 100644 --- a/os/rt/ports/e200/chcore.h +++ b/os/rt/ports/e200/chcore.h @@ -29,10 +29,6 @@ #ifndef _CHCORE_H_ #define _CHCORE_H_ -#if CH_DBG_ENABLE_STACK_CHECK -#error "option CH_DBG_ENABLE_STACK_CHECK not supported by this port" -#endif - /*===========================================================================*/ /* Module constants. */ /*===========================================================================*/ @@ -360,6 +356,10 @@ struct context { /* External declarations. */ /*===========================================================================*/ +/* The following code is not processed when the file is included from an + asm module.*/ +#if !defined(_FROM_ASM_) + #ifdef __cplusplus extern "C" { #endif @@ -369,6 +369,8 @@ extern "C" { } #endif +#endif /* !defined(_FROM_ASM_) */ + /*===========================================================================*/ /* Module inline functions. */ /*===========================================================================*/ diff --git a/os/rt/ports/e200/compilers/GCC/mk/port_spc56elxx.mk b/os/rt/ports/e200/compilers/GCC/mk/port_spc56elxx.mk index 192ee1773..0133e16f3 100644 --- a/os/rt/ports/e200/compilers/GCC/mk/port_spc56elxx.mk +++ b/os/rt/ports/e200/compilers/GCC/mk/port_spc56elxx.mk @@ -1,8 +1,9 @@ # List of the ChibiOS/RT e200z4 SPC56ELxx port files. -PORTSRC = #${CHIBIOS}/os/rt/ports/e200/chcore.c +PORTSRC = ${CHIBIOS}/os/rt/ports/e200/chcore.c PORTASM = $(CHIBIOS)/os/common/ports/e200/devices/SPC56ELxx/boot.s \ $(CHIBIOS)/os/common/ports/e200/compilers/GCC/vectors.s \ + $(CHIBIOS)/os/common/ports/e200/compilers/GCC/ivor.s \ $(CHIBIOS)/os/common/ports/e200/compilers/GCC/crt0.s PORTINC = ${CHIBIOS}/os/common/ports/e200/devices/SPC56ELxx \ -- cgit v1.2.3