summaryrefslogtreecommitdiffstats
path: root/bsps/sparc/shared/spw/grspw_router.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2018-11-26 15:44:25 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2018-11-27 08:06:53 +0100
commita7267241a9ace0f8c1c1c9a9ee1721e04313aa91 (patch)
tree7d5a93f6339e164d19fbb6890af910e2d2101734 /bsps/sparc/shared/spw/grspw_router.c
parentAdd LICENSE.BSD-2-Clause (diff)
downloadrtems-a7267241a9ace0f8c1c1c9a9ee1721e04313aa91.tar.bz2
bsps/sparc: Add and use <grlib_impl.h>
Reduce copy and paste.
Diffstat (limited to '')
-rw-r--r--bsps/sparc/shared/spw/grspw_router.c53
1 files changed, 2 insertions, 51 deletions
diff --git a/bsps/sparc/shared/spw/grspw_router.c b/bsps/sparc/shared/spw/grspw_router.c
index d95c351443..41ecfb823a 100644
--- a/bsps/sparc/shared/spw/grspw_router.c
+++ b/bsps/sparc/shared/spw/grspw_router.c
@@ -13,12 +13,13 @@
#include <rtems/bspIo.h>
#include <stdio.h>
#include <bsp.h>
-#include <rtems/bspIo.h> /* printk */
#include <drvmgr/drvmgr.h>
#include <drvmgr/ambapp_bus.h>
#include <bsp/grspw_router.h>
+#include <grlib_impl.h>
+
//#define STATIC
#define STATIC static
@@ -34,56 +35,6 @@
#define THREAD_SAFE 1
-/* Use interrupt lock privmitives compatible with SMP defined in
- * RTEMS 4.11.99 and higher.
- */
-#if (((__RTEMS_MAJOR__ << 16) | (__RTEMS_MINOR__ << 8) | __RTEMS_REVISION__) >= 0x040b63)
-
-#ifdef THREAD_SAFE
-/* map via rtems_interrupt_lock_* API: */
-#define SPIN_DECLARE(lock) RTEMS_INTERRUPT_LOCK_MEMBER(lock)
-#define SPIN_INIT(lock, name) rtems_interrupt_lock_initialize(lock, name)
-#define SPIN_LOCK(lock, level) rtems_interrupt_lock_acquire_isr(lock, &level)
-#define SPIN_LOCK_IRQ(lock, level) rtems_interrupt_lock_acquire(lock, &level)
-#define SPIN_UNLOCK(lock, level) rtems_interrupt_lock_release_isr(lock, &level)
-#define SPIN_UNLOCK_IRQ(lock, level) rtems_interrupt_lock_release(lock, &level)
-#define SPIN_IRQFLAGS(k) rtems_interrupt_lock_context k
-#define SPIN_ISR_IRQFLAGS(k) SPIN_IRQFLAGS(k)
-#define SPIN_FREE(lock) rtems_interrupt_lock_destroy(lock)
-#else
-#define SPIN_DECLARE(lock)
-#define SPIN_INIT(lock, name)
-#define SPIN_LOCK(lock, level)
-#define SPIN_LOCK_IRQ(lock, level)
-#define SPIN_UNLOCK(lock, level)
-#define SPIN_UNLOCK_IRQ(lock, level)
-#define SPIN_IRQFLAGS(k)
-#define SPIN_ISR_IRQFLAGS(k)
-#define SPIN_FREE(lock)
-#endif
-
-#else
-
-#ifdef THREAD_SAFE
-#error THREAD SAFE operation not supported on this RTEMS version
-#else
-#define SPIN_DECLARE(lock)
-#define SPIN_INIT(lock, name)
-#define SPIN_LOCK(lock, level)
-#define SPIN_LOCK_IRQ(lock, level)
-#define SPIN_UNLOCK(lock, level)
-#define SPIN_UNLOCK_IRQ(lock, level)
-#define SPIN_IRQFLAGS(k)
-#define SPIN_ISR_IRQFLAGS(k)
-#define SPIN_FREE(lock)
-#endif
-
-#ifdef RTEMS_SMP
-#error SMP mode not compatible with these interrupt lock primitives
-#endif
-
-#endif
-
#define REG_WRITE(addr, val) (*(volatile unsigned int *)(addr) = (unsigned int)(val))
#define REG_READ(addr) (*(volatile unsigned int *)(addr))