[PATCH 1/2] Enable a way to provide the reason for "being here"
Juergen Beisert
jbe at pengutronix.de
Wed Jun 20 15:09:53 EDT 2012
Hi Uwe,
Uwe Kleine-König wrote:
> On Wed, Jun 20, 2012 at 05:08:52PM +0200, Juergen Beisert wrote:
> > Marc Kleine-Budde wrote:
> > > [...]
> > >
> > > > +
> > > > +#include <common.h>
> > > > +#include <init.h>
> > > > +#include <environment.h>
> > > > +#include <globalvar.h>
> > > > +#include <reset_source.h>
> > > > +
> > > > +static const char name[] = "global.system.reset";
> > > > +static const char unknown_reset[] = "unknown";
> > > > +static const char power_on_reset[] = "POR";
> > > > +static const char manual_reset[] = "RST";
> > > > +static const char watchdog[] = "WDG";
> > > > +static const char wake[] = "WKE";
> > > > +static const char jtag[] = "JTAG";
> > >
> > > what about using an array
> > >
> > > static cost char *reset_reason_array[] = {
> > > [RESET_UKWN] = "unknown",
> > > ...
> > > };
> >
> > The result is not the same. The strings are no longer "const". But it
> > should
>
> <kidding>Of course they are not "const" if you write "cost".</kidding>
> Using
>
> static const char * const reset_reason_array[] = {
>
> should do the trick.
No, it doesn't. Only this would:
static const bla[] = "this is a really constant string";
static const char * const reset_reason_array[] = {
[0] = bla,
[...]
};
But its ugly. So I will prefer Marc's suggestion.
> Having said that, I wonder what is the difference between
>
> static const char wake[] = "WKE";
> ... use wake here ...
>
> and
>
> ... just use "WKE" ...
Just based on how U-Boot does it.
jbe
--
Pengutronix e.K. | Juergen Beisert |
Linux Solutions for Science and Industry | Phone: +49-5121-206917-5128 |
Vertretung Sued/Muenchen, Germany | Fax: +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686 | http://www.pengutronix.de/ |
More information about the barebox
mailing list