summaryrefslogtreecommitdiffstats
path: root/arch/unicore32/include/mach/bitfield.h
diff options
context:
space:
mode:
authorGuanXuetao <gxt@mprc.pku.edu.cn>2011-02-26 20:08:36 +0800
committerGuanXuetao <gxt@mprc.pku.edu.cn>2011-03-17 09:19:14 +0800
commitb08b4f8e63e60a64f81e194269be14afee396f33 (patch)
treed76aef05929a7f28f1463c72adefd8af780192c8 /arch/unicore32/include/mach/bitfield.h
parentfa7499ef77db8d535e3c609c8064e9ee50c0693c (diff)
downloadlinux-b08b4f8e63e60a64f81e194269be14afee396f33.tar.bz2
unicore32 machine related files: hardware registers
This patch adds all hardware registers definitions. Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
Diffstat (limited to 'arch/unicore32/include/mach/bitfield.h')
-rw-r--r--arch/unicore32/include/mach/bitfield.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/arch/unicore32/include/mach/bitfield.h b/arch/unicore32/include/mach/bitfield.h
new file mode 100644
index 000000000000..128a70281efc
--- /dev/null
+++ b/arch/unicore32/include/mach/bitfield.h
@@ -0,0 +1,24 @@
+/*
+ * linux/arch/unicore32/include/mach/bitfield.h
+ *
+ * Code specific to PKUnity SoC and UniCore ISA
+ *
+ * Copyright (C) 2001-2010 GUAN Xue-tao
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+#ifndef __MACH_PUV3_BITFIELD_H__
+#define __MACH_PUV3_BITFIELD_H__
+
+#ifndef __ASSEMBLY__
+#define UData(Data) ((unsigned long) (Data))
+#else
+#define UData(Data) (Data)
+#endif
+
+#define FIELD(val, vmask, vshift) (((val) & ((UData(1) << (vmask)) - 1)) << (vshift))
+#define FMASK(vmask, vshift) (((UData(1) << (vmask)) - 1) << (vshift))
+
+#endif /* __MACH_PUV3_BITFIELD_H__ */