From 4bbf70bd988e5bf2387237fe58270a1f3e0e3bff Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Fri, 19 Sep 2008 15:52:09 +0000 Subject: 2008-09-19 Joel Sherrill * rtems/score/m68k.h: Move set cacr, acr0, acr1 routines here to get them out of a BSP. --- cpukit/score/cpu/m68k/ChangeLog | 5 +++++ cpukit/score/cpu/m68k/rtems/score/m68k.h | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/cpukit/score/cpu/m68k/ChangeLog b/cpukit/score/cpu/m68k/ChangeLog index a3bdfa0448..7a8fb22fbe 100644 --- a/cpukit/score/cpu/m68k/ChangeLog +++ b/cpukit/score/cpu/m68k/ChangeLog @@ -1,3 +1,8 @@ +2008-09-19 Joel Sherrill + + * rtems/score/m68k.h: Move set cacr, acr0, acr1 routines here to get + them out of a BSP. + 2008-09-11 Ralf Corsépius * rtems/score/types.h: Do not define boolean, single_precision, diff --git a/cpukit/score/cpu/m68k/rtems/score/m68k.h b/cpukit/score/cpu/m68k/rtems/score/m68k.h index 85cf70b1a7..d2d13a85ed 100644 --- a/cpukit/score/cpu/m68k/rtems/score/m68k.h +++ b/cpukit/score/cpu/m68k/rtems/score/m68k.h @@ -413,6 +413,13 @@ extern void* _VBR; #define m68k_set_vbr( _vbr ) #endif +/* + * Access Control Registers + */ +#define m68k_set_cacr(_cacr) asm volatile ("movec %0,%%cacr" : : "d" (_cacr)) +#define m68k_set_acr0(_acr0) asm volatile ("movec %0,%%acr0" : : "d" (_acr0)) +#define m68k_set_acr1(_acr1) asm volatile ("movec %0,%%acr1" : : "d" (_acr1)) + /* * The following routine swaps the endian format of an unsigned int. * It must be static because it is referenced indirectly. -- cgit v1.2.3