summaryrefslogtreecommitdiffstats
path: root/cpukit/score/include/rtems/score/genericcpuatomic.h
diff options
context:
space:
mode:
authorWeiY <wei.a.yang@gmail.com>2013-01-25 23:55:25 +0800
committerGedare Bloom <gedare@rtems.org>2013-02-07 17:02:12 -0500
commit2f0a09361280027221c2bb11492443e1917fbb1f (patch)
treeab1524ee34e66b9d94d8c8bba373dd7cbce5fcc0 /cpukit/score/include/rtems/score/genericcpuatomic.h
parentscore: atomic support for RTEMS automake and autoconf changes (diff)
downloadrtems-2f0a09361280027221c2bb11492443e1917fbb1f.tar.bz2
score: atomic support for RTEMS. Generic atomic operations API definition.
Diffstat (limited to 'cpukit/score/include/rtems/score/genericcpuatomic.h')
-rw-r--r--cpukit/score/include/rtems/score/genericcpuatomic.h60
1 files changed, 60 insertions, 0 deletions
diff --git a/cpukit/score/include/rtems/score/genericcpuatomic.h b/cpukit/score/include/rtems/score/genericcpuatomic.h
new file mode 100644
index 0000000000..2b49472546
--- /dev/null
+++ b/cpukit/score/include/rtems/score/genericcpuatomic.h
@@ -0,0 +1,60 @@
+/**
+ * @file rtems/score/genericcpuatomic.h
+ *
+ * This include file includes the general atomic data type
+ * for all the architecture.
+ */
+
+/*
+ * COPYRIGHT (c) 2012 Deng Hengyi.
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ */
+
+#ifndef _RTEMS_SCORE_GENERAL_ATOMIC_CPU_H
+#define _RTEMS_SCORE_GEMERAL_ATOMIC_CPU_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**
+ * @defgroup RTEMS general atomic data type
+ *
+ */
+
+/**@{*/
+
+/**
+ * @brief atomic operation unsigned integer type
+ */
+typedef unsigned int Atomic_Int;
+
+/**
+ * @brief atomic operation unsigned long integer type
+ */
+typedef unsigned long Atomic_Long;
+
+/**
+ * @brief atomic operation unsigned 32-bit integer type
+ */
+typedef uint32_t Atomic_Int32;
+
+/**
+ * @brief atomic operation unsigned 64-bit integer type
+ */
+typedef uint64_t Atomic_Int64;
+
+/**
+ * @brief atomic operation unsigned integer the size of a pointer type
+ */
+typedef uintptr_t Atomic_Pointer;
+
+#ifdef __cplusplus
+}
+#endif
+
+/**@}*/
+#endif
+/* end of include file */