Files
rtems/c/src/lib/libcpu/m68k/shared/misc/m68kidle.c
Till Straumann 048459aeac 2009-09-10 Till Straumann <strauman@slac.stanford.edu>
* shared/misc/m68kidle.c: added "cc" clobber to inline
	asm; STOP instruction modifies CCR!
2009-09-10 21:20:22 +00:00

44 lines
944 B
C

/*
* Motorola MC68xxx Dependent Idle Body Source
*
* COPYRIGHT (c) 1989-2002.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*
* $Id$
*/
#include <rtems/system.h>
#include <rtems/score/thread.h>
/*PAGE
*
* _CPU_Thread_Idle_body
*
* This kernel routine is the idle thread. The idle thread runs any time
* no other thread is ready to run. This thread loops forever with
* interrupts enabled.
*
* Input parameters:
* ignored - this parameter is ignored
*
* Output parameters: NONE
*/
void *_CPU_Thread_Idle_body( uint32_t ignored )
{
#if defined(mcf5272)
for( ; ; ) {
asm volatile( "nop" );
asm volatile( "nop" );
}
#else
for( ; ; )
asm volatile( "stop #0x3000":::"cc" ); /* supervisor mode, all interrupts on */
#endif
}