summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Vasut <marex@denx.de>2012-09-27 17:08:15 +0200
committerTom Rini <trini@ti.com>2012-10-15 11:53:47 -0700
commit9aed5080834a4e848a88b972738f28dce466b420 (patch)
treee148d3c6053c5a52b35724e3d31f26fa8c1ba1b5
parent868444faa0327756ffe4655b2f8678a5d3b5c505 (diff)
downloadu-boot-imx-9aed5080834a4e848a88b972738f28dce466b420.zip
u-boot-imx-9aed5080834a4e848a88b972738f28dce466b420.tar.gz
u-boot-imx-9aed5080834a4e848a88b972738f28dce466b420.tar.bz2
COMMON: Add __stringify() function
Copied from Linux kernel: commit 8f7c2c37319a81ef4c2bfdec67b1ccd5744d97e4 Date: Wed Apr 8 16:58:57 2009 +0800 Pull in the __stringify() macro from Linux kernel. This macro is usually used to convert numbers to strings at preprocessor level, yet it is not limited only to that. This is useful as it allows higher usage of puts() in favour of printf(). Signed-off-by: Marek Vasut <marex@denx.de> Cc: Wolfgang Denk <wd@denx.de>
-rw-r--r--include/common.h1
-rw-r--r--include/linux/stringify.h12
2 files changed, 13 insertions, 0 deletions
diff --git a/include/common.h b/include/common.h
index a7fb05e..7d9ab15 100644
--- a/include/common.h
+++ b/include/common.h
@@ -39,6 +39,7 @@ typedef volatile unsigned char vu_char;
#include <linux/bitops.h>
#include <linux/types.h>
#include <linux/string.h>
+#include <linux/stringify.h>
#include <asm/ptrace.h>
#include <stdarg.h>
#if defined(CONFIG_PCI) && (defined(CONFIG_4xx) && !defined(CONFIG_AP1000))
diff --git a/include/linux/stringify.h b/include/linux/stringify.h
new file mode 100644
index 0000000..841cec8
--- /dev/null
+++ b/include/linux/stringify.h
@@ -0,0 +1,12 @@
+#ifndef __LINUX_STRINGIFY_H
+#define __LINUX_STRINGIFY_H
+
+/* Indirect stringification. Doing two levels allows the parameter to be a
+ * macro itself. For example, compile with -DFOO=bar, __stringify(FOO)
+ * converts to "bar".
+ */
+
+#define __stringify_1(x...) #x
+#define __stringify(x...) __stringify_1(x)
+
+#endif /* !__LINUX_STRINGIFY_H */