From 00c6f5ea40f97385dce7ab7b9d20bc0cb909ad23 Mon Sep 17 00:00:00 2001 From: gdisirio Date: Sat, 6 Oct 2007 09:53:07 +0000 Subject: git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@40 35acf78f-673a-0410-8e92-d51de3d6d3f4 --- src/templates/chcore.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'src/templates/chcore.c') diff --git a/src/templates/chcore.c b/src/templates/chcore.c index f39441ed5..bc8c68b90 100644 --- a/src/templates/chcore.c +++ b/src/templates/chcore.c @@ -33,14 +33,28 @@ /** * This function implements the idle thread infinite loop. The function should * put the processor in the lowest power mode capable to serve interrupts. + * The priority is internally set to the minimum system value so that this + * thread is executed only if there are no other ready threads in the system. */ -void chSysPause(void) {} +void chSysPause(void) { + + chThdSetPriority(IDLEPRIO); + + while (TRUE) + ; +} /** * Abonormal system termination handler. Invoked by the ChibiOS/RT when an * abnormal unrecoverable condition is met. */ -void chSysHalt(void) {} +void chSysHalt(void) { + + chSysLock(); + + while (TRUE) + ; +} /** * Context switch. -- cgit v1.2.3