aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2007-11-27 13:28:25 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2007-11-27 13:28:25 +0000
commitb74cb5bc1a144b1890e229cd1fc165ece4f10325 (patch)
treea3a39ae3c25c93469f5bb058ba07469b4d33ffce
parenta134cd919ea3e6fee591bc29d360f3da74f46a8b (diff)
downloadChibiOS-b74cb5bc1a144b1890e229cd1fc165ece4f10325.tar.gz
ChibiOS-b74cb5bc1a144b1890e229cd1fc165ece4f10325.tar.bz2
ChibiOS-b74cb5bc1a144b1890e229cd1fc165ece4f10325.zip
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@116 35acf78f-673a-0410-8e92-d51de3d6d3f4
-rw-r--r--demos/ARM7-LPC214x-GCC-minimal/chcore.h28
-rw-r--r--demos/ARM7-LPC214x-GCC/chconf.h4
-rw-r--r--demos/ARM7-LPC214x-GCC/chcore.c2
3 files changed, 16 insertions, 18 deletions
diff --git a/demos/ARM7-LPC214x-GCC-minimal/chcore.h b/demos/ARM7-LPC214x-GCC-minimal/chcore.h
index d5ad07040..5c595ae4f 100644
--- a/demos/ARM7-LPC214x-GCC-minimal/chcore.h
+++ b/demos/ARM7-LPC214x-GCC-minimal/chcore.h
@@ -71,13 +71,13 @@ typedef struct {
/*
* Platform dependent part of the \p chThdCreate() API.
*/
-#define SETUP_CONTEXT(workspace, wsize, pf, arg) { \
- tp->p_ctx.r13 = (struct intctx *)((BYTE8 *)workspace + \
- wsize - \
- sizeof(struct intctx)); \
- tp->p_ctx.r13->r4 = pf; \
- tp->p_ctx.r13->r5 = arg; \
- tp->p_ctx.r13->lr = threadstart; \
+#define SETUP_CONTEXT(workspace, wsize, pf, arg) { \
+ tp->p_ctx.r13 = (struct intctx *)((BYTE8 *)workspace + \
+ wsize - \
+ sizeof(struct intctx)); \
+ tp->p_ctx.r13->r4 = pf; \
+ tp->p_ctx.r13->r5 = arg; \
+ tp->p_ctx.r13->lr = threadstart; \
}
#ifdef THUMB
@@ -88,19 +88,16 @@ extern void chSysUnlock(void);
#define chSysUnlock() asm("msr CPSR_c, #0x1F")
#endif /* THUMB */
-#define chSysPuts(msg) {}
-
#ifdef THUMB
#define INT_REQUIRED_STACK 0x10
#else /* !THUMB */
#define INT_REQUIRED_STACK 0
#endif /* THUMB */
-#define UserStackSize(n) (((sizeof(Thread) + \
- sizeof(struct intctx) + \
- sizeof(struct extctx) + \
- (INT_REQUIRED_STACK) + \
- (n) - 1) | 3) + 1)
-
+#define StackAlign(n) ((((n) - 1) | 3) + 1)
+#define UserStackSize(n) StackAlign(sizeof(Thread) + \
+ sizeof(struct intctx) + \
+ sizeof(struct extctx) + \
+ (n) + (INT_REQUIRED_STACK))
#define WorkingArea(s, n) ULONG32 s[UserStackSize(n) >> 2];
/* It requires zero bytes, but better be safe.*/
@@ -109,6 +106,7 @@ void _IdleThread(void *p) __attribute__((noreturn));
void chSysHalt(void) __attribute__((noreturn));
void chSysSwitchI(Context *oldp, Context *newp);
+void chSysPuts(char *msg);
void threadstart(void);
void DefFiqHandler(void);
void DefIrqHandler(void);
diff --git a/demos/ARM7-LPC214x-GCC/chconf.h b/demos/ARM7-LPC214x-GCC/chconf.h
index 311d6efbc..87402547c 100644
--- a/demos/ARM7-LPC214x-GCC/chconf.h
+++ b/demos/ARM7-LPC214x-GCC/chconf.h
@@ -160,11 +160,11 @@
* @note the debug support is port-dependent, it may be not present on some
* targets. In that case stub functions will be included.
*/
-#define CH_USE_DEBUG
+//#define CH_USE_DEBUG
/** Debug option: Includes the threads context switch tracing feature.
*/
-#define CH_USE_TRACE
+//#define CH_USE_TRACE
#endif /* _CHCONF_H_ */
diff --git a/demos/ARM7-LPC214x-GCC/chcore.c b/demos/ARM7-LPC214x-GCC/chcore.c
index ad6f3a82c..640622e04 100644
--- a/demos/ARM7-LPC214x-GCC/chcore.c
+++ b/demos/ARM7-LPC214x-GCC/chcore.c
@@ -166,7 +166,7 @@ void chSysHalt(void) {
}
/*
- * System console message (implemented via JTAG).
+ * System console message (not implemented).
*/
void chSysPuts(char *msg) {
}