Hi Stefan, Stefan Roese <s...@denx.de> wrote on Sat, 1 Sep 2018 10:43:01 +0200:
> On 31.08.2018 16:57, Miquel Raynal wrote: > > Both ustrtoul and ustrtoull interpret 1k but not 1m or 1g. Even if the > > SI symbols for Mega and Giga are 'M' and 'G', certain entries of > > eg. mtdparts also use (wrongly) the metric prefix 'm' and 'g'. > > > I do not see how parsing lowercase prefixes could break anything, so > > parse them like their uppercase counterpart. > > > Signed-off-by: Miquel Raynal <miquel.ray...@bootlin.com> > > --- > > lib/strto.c | 4 ++++ > > 1 file changed, 4 insertions(+) > > > diff --git a/lib/strto.c b/lib/strto.c > > index 7f6076909a..84f8d92d57 100644 > > --- a/lib/strto.c > > +++ b/lib/strto.c > > @@ -87,9 +87,11 @@ unsigned long ustrtoul(const char *cp, char **endp, > > unsigned int base) > > unsigned long result = simple_strtoul(cp, endp, base); > > switch (**endp) { > > case 'G': > > + case 'g': > > result *= 1024; > > /* fall through */ > > case 'M': > > + case 'm': > > result *= 1024; > > /* fall through */ > > case 'K': > > @@ -110,9 +112,11 @@ unsigned long long ustrtoull(const char *cp, char > > **endp, unsigned int base) > > unsigned long long result = simple_strtoull(cp, endp, base); > > switch (**endp) { > > case 'G': > > + case 'g': > > result *= 1024; > > /* fall through */ > > case 'M': > > + case 'm': > > Wouldn't it be better, to use tolower() on the char and drop all the > upper case checks completely - also for the 'K' case? Sure, I can do that! Thanks, Miquèl _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot