aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/xen/const.h
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2012-09-11 15:45:20 +0200
committerJan Beulich <jbeulich@suse.com>2012-09-11 15:45:20 +0200
commit0923fba2cf02e08275c6e454906a0420baa455b5 (patch)
tree0acb7d37d0920c77a9775f869aab0e6b60a4b681 /xen/include/xen/const.h
parent28957ed4fd2fecc99b67db60a9266aa2f59ab980 (diff)
downloadxen-0923fba2cf02e08275c6e454906a0420baa455b5.tar.gz
xen-0923fba2cf02e08275c6e454906a0420baa455b5.tar.bz2
xen-0923fba2cf02e08275c6e454906a0420baa455b5.zip
x86: allow early use of fixmaps
As a prerequisite for adding an EHCI debug port based console implementation, set up the page tables needed for (a sub-portion of) the fixmaps together with other boot time page table construction. Signed-off-by: Jan Beulich <jbeulich@suse.com> Acked-by: Keir Fraser <keir@xen.org>
Diffstat (limited to 'xen/include/xen/const.h')
-rw-r--r--xen/include/xen/const.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/xen/include/xen/const.h b/xen/include/xen/const.h
new file mode 100644
index 0000000000..0d5b2c64f5
--- /dev/null
+++ b/xen/include/xen/const.h
@@ -0,0 +1,24 @@
+/* const.h: Macros for dealing with constants. */
+
+#ifndef __XEN_CONST_H__
+#define __XEN_CONST_H__
+
+/* Some constant macros are used in both assembler and
+ * C code. Therefore we cannot annotate them always with
+ * 'UL' and other type specifiers unilaterally. We
+ * use the following macros to deal with this.
+ *
+ * Similarly, _AT() will cast an expression with a type in C, but
+ * leave it unchanged in asm.
+ */
+
+#ifdef __ASSEMBLY__
+#define _AC(X,Y) X
+#define _AT(T,X) X
+#else
+#define __AC(X,Y) (X##Y)
+#define _AC(X,Y) __AC(X,Y)
+#define _AT(T,X) ((T)(X))
+#endif
+
+#endif /* __XEN_CONST_H__ */