fs: fix number base behaviour change in fatload/ext*load
authorStephen Warren <swarren@nvidia.com>
Tue, 30 Oct 2012 12:04:19 +0000 (12:04 +0000)
committerTom Rini <trini@ti.com>
Sun, 4 Nov 2012 18:00:31 +0000 (11:00 -0700)
commit3f83c87ee58d86e9a9d2e50b62f38c728bfb31f6
tree872af7c007d0f4ee399dc3531e3c88ecfac25363
parentb6a30444365be7ef4d323b50573a2c591ef36d08
fs: fix number base behaviour change in fatload/ext*load

Commit 045fa1e "fs: add filesystem switch libary, implement ls and
fsload commands" unified the implementation of fatload and ext*load
with the new command fsload. However, this altered the interpretation
of command-line numbers from always being base-16, to requiring a "0x"
prefix for base-16 numbers. Enhance do_fsload() to allow commands to
specify which base to use.

Use base 0, thus requiring a "0x" prefix for the new fsload command.
This feels much cleaner than assuming base 16.

Use base 16 for the pre-existing fatload and ext*load to prevent a
change in behaviour.

Use base 16 exclusively for the loadaddr environment variable, since
that variable is interpreted in multiple places, so we don't want the
behaviour to change.

Update command help text to make it clear where numbers are assumed to
be hex, and where an explicit "0x" prefix is required.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
common/cmd_ext2.c
common/cmd_ext4.c
common/cmd_fat.c
common/cmd_fs.c
fs/fs.c
include/fs.h