[U-Boot] [PATCH] [v2] powerpc/85xx: fix compatible property for the L2 cache node

Wolfgang Denk wd at denx.de
Fri Apr 29 22:55:13 CEST 2011


Dear Scott Wood,

In message <20110429154457.0fee37c6 at schlenkerla.am.freescale.net> you wrote:
>
> > >  			len = sprintf(compat_buf,
> > > -				"fsl,mpc%s-l2-cache-controller", cpu->name);
> > > +				"fsl,mpc%s-l2-cache-controller" "%c" "cache",
> > > +				cpu->name, 0);
> > 
> > This is a somewhat funny and complicated way of writing
> > 
> > 				"fsl,mpc%s-l2-cache-controller\0cache"
> 
> Except that his version works and your version doesn't.  With your version
> sprintf will stop reading the format string after "controller".

Yes, and this is why I call this a dirty hack, as it's obfuscating
what's going on and what the intended result is.

> The alternative is two separate sprintfs, manually advancing the pointer in
> the calling code, but that's a bit more complicated and error-prone (the
> previous code did it that way, and had an error, thus this patch) and IMHO
> not more readable.

At least people who read the code in a year will then be able to
understand what you are doing.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
In general, if you think something isn't in Perl, try it out, because
it usually is :-) - Larry Wall in <1991Jul31.174523.9447 at netlabs.com>


More information about the U-Boot mailing list