
Dear Albert ARIBAUD,
Hi Marek,
On Sun, 23 Sep 2012 20:21:54 +0200, Marek Vasut marex@denx.de wrote:
Dear Albert ARIBAUD,
Hi Marek,
On Sun, 23 Sep 2012 17:41:22 +0200, Marek Vasut marex@denx.de wrote:
Copied from Linux kernel: commit 8f7c2c37319a81ef4c2bfdec67b1ccd5744d97e4 Date: Wed Apr 8 16:58:57 2009 +0800
This function converts static number to string in preprocessor. This is useful as it allows higher usage of puts() in favour of printf()
Fix commit message: this fonction is not limited to numbers.
WFM, can you review the series please ?
Sorry, should have mentioned that apart from this, the series looks fine to me. FWIW:
Acked-by: Albert ARIBAUD albert.u.boot@aribaud.net
Ok, and it's now build-tested properly on arm and PPC.
What would you expect in the commit message, lemme take a stab:
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.
Seriously, I'm out of creative ideas here, please help :-(
Signed-off-by: Marek Vasut marex@denx.de Cc: Wolfgang Denk wd@denx.de
include/common.h | 1 + include/linux/stringify.h | 12 ++++++++++++ 2 files changed, 13 insertions(+), 0 deletions(-) create mode 100644 include/linux/stringify.h
diff --git a/include/common.h b/include/common.h index 55025c0..9937a57 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 */
Amicalement,
Best regards, Marek Vasut
Amicalement,
Best regards, Marek Vasut