Re: [PATCH 1/9] stringify: add HEX_STRING()
From: Randy Dunlap
Date: Wed Jul 13 2011 - 18:00:30 EST
On Wed, 13 Jul 2011 17:49:48 -0400 Arnaud Lacombe wrote:
> Hi,
>
> On Sun, Jul 10, 2011 at 3:51 PM, Randy Dunlap <rdunlap@xxxxxxxxxxxx> wrote:
> > From: Randy Dunlap <rdunlap@xxxxxxxxxxxx>
> >
> > Add HEX_STRING(value) to stringify.h so that drivers can
> > convert kconfig hex values (without leading "0x") to useful
> > hex constants.
> >
> > Several drivers/media/radio/ drivers need this. I haven't
> > checked if any other drivers need to do this.
> >
> > Alternatively, kconfig could produce hex config symbols with
> > leading "0x".
> >
> Actually, I used to have a patch to make hex value have a mandatory
> "0x" prefix, in the Kconfig. I even fixed all the issue in the tree,
> it never make it to the tree (not sure why). Here's the relevant
> thread:
>
> https://patchwork.kernel.org/patch/380591/
> https://patchwork.kernel.org/patch/380621/
> https://patchwork.kernel.org/patch/380601/
>
I prefer that this be fixed in kconfig, so long as it won't cause
any other issues. That's why I mentioned it.
>
> > Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxx>
> > ---
> > include/linux/stringify.h | 7 +++++++
> > 1 file changed, 7 insertions(+)
> >
> > NOTE: The other 8 patches are on lkml and linux-media mailing lists.
> >
> > --- linux-next-20110707.orig/include/linux/stringify.h
> > +++ linux-next-20110707/include/linux/stringify.h
> > @@ -9,4 +9,11 @@
> > #define __stringify_1(x...) #x
> > #define __stringify(x...) __stringify_1(x)
> >
> > +/*
> > + * HEX_STRING(value) is useful for CONFIG_ values that are in hex,
> > + * but kconfig does not put a leading "0x" on them.
> > + */
> > +#define HEXSTRINGVALUE(h, value) h##value
> > +#define HEX_STRING(value) HEXSTRINGVALUE(0x, value)
> > +
> that seems hackish...
It's a common idiom for concatenating strings in the kernel.
How would you do it without (instead of) a kconfig fix/patch?
> > #endif /* !__LINUX_STRINGIFY_H */
> > --
---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/