09 Aug, 2014

2 commits


19 Feb, 2014

1 commit

  • Unlike other commands (for example, "fatwrite"), ext4write would
    interpret the "sizebytes" as decimal number. This is not only
    inconsistend and unexpected to most users, it also breaks usage
    like this:

    tftp ${addr} ${name}
    ext4write mmc 0:2 ${addr} ${filename} ${filesize}

    Change this to use the standard notation of base 16 input format.
    See also commit b770e88

    WARNING: this is a change to the user interface!!

    Signed-off-by: Wolfgang Denk
    Cc: Uma Shankar
    Cc: Stephen Warren

    Wolfgang Denk
     

08 Oct, 2013

1 commit

  • As documented, almost all U-Boot commands expect numbers to be entered
    in hexadecimal input format. (Exception: for historical reasons, the
    "sleep" command takes its argument in decimal input format.)

    This rule was broken for the "load" command; for details please see
    especially commits 045fa1e "fs: add filesystem switch libary,
    implement ls and fsload commands" and 3f83c87 "fs: fix number base
    behaviour change in fatload/ext*load". In the result, the load
    command would always require an explicit "0x" prefix for regular
    (i. e. base 16 formatted) input.

    Change this to use the standard notation of base 16 input format.
    While strictly speaking this is a change of the user interface, we
    hope that it will not cause trouble. Stephen Warren comments (see
    [1]):

    I suppose you can change the behaviour if you want; anyone
    writing "0x..." for their values presumably won't be
    affected, and if people really do assume all values in U-Boot
    are in hex, presumably nobody currently relies upon using
    non-prefixed values with the generic load command, since it
    doesn't work like that right now.

    [1] http://article.gmane.org/gmane.comp.boot-loaders.u-boot/171172

    Acked-by: Tom Rini
    Acked-by: Stephen Warren
    Signed-off-by: Wolfgang Denk

    Wolfgang Denk
     

24 Jul, 2013

1 commit


28 Mar, 2013

1 commit


05 Nov, 2012

3 commits

  • When the generic filesystem load command "fsload" was written, I felt
    that "load" was too generic of a name for it, since many other similar
    commands already existed. However, it turns out that there is already
    an "fsload" command, so that name cannot be used. Rename the new
    "fsload" to plain "load" to avoid the conflict. At least anyone who's
    used a Basic interpreter should feel familiar with the name!

    Signed-off-by: Stephen Warren

    Stephen Warren
     
  • 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
    Reviewed-by: Benoît Thébaudeau

    Stephen Warren
     
  • TABs in the help text won't line up in the same place on the console as
    in a source editor. Replace them with spaces to make ensuring correct
    alignment easier.

    Signed-off-by: Stephen Warren
    Reviewed-by: Benoît Thébaudeau

    Stephen Warren
     

30 Oct, 2012

2 commits


26 Sep, 2012

3 commits

  • Rework get_device_and_partition() to:
    a) Implement a new partition ID of "auto", which requests that U-Boot
    search for the first "bootable" partition, and fall back to the first
    valid partition if none is found. This way, users don't need to
    specify an explicit partition in their commands.
    b) Make use of get_device().
    c) Add parameter to indicate whether returning a whole device is
    acceptable, or whether a partition is mandatory.
    d) Make error-checking of the user's device-/partition-specification
    more complete. In particular, if strtoul() doesn't convert all
    characters, it's an error rather than just ignored.

    The resultant device/partition returned by the function will be as
    follows, based on whether the disk has a partition table (ptable) or not,
    and whether the calling command allows the whole device to be returned
    or not.

    (D and P are integers, P >= 1)

    D
    D:
    No ptable:
    !allow_whole_dev: error
    allow_whole_dev: device D
    ptable:
    device D partition 1
    D:0
    !allow_whole_dev: error
    allow_whole_dev: device D
    D:P
    No ptable: error
    ptable: device D partition P
    D:auto
    No ptable:
    !allow_whole_dev: error
    allow_whole_dev: device D
    ptable:
    first partition in device D with bootable flag set.
    If none, first valid paratition in device D.

    Note: In order to review this patch, it's probably easiest to simply
    look at the file contents post-application, rather than reading the
    patch itself.

    Signed-off-by: Rob Herring
    [swarren: Rob implemented scanning for bootable partitions. I fixed a
    couple of issues there, switched the syntax to ":auto", added the
    error-checking rework, and ":0" syntax for the whole device]
    Signed-off-by: Stephen Warren

    Stephen Warren
     
  • Convert ext2/4 load, ls, and write functions to use common device and
    partition parsing function. With the common function "dev:part" can come
    from the environment and a '-' can be used in that case.

    Signed-off-by: Rob Herring

    Rob Herring
     
  • There's no real need to expose this and it can be removed by using a static
    allocation.

    Signed-off-by: Rob Herring

    Rob Herring
     

10 Aug, 2012

2 commits