summaryrefslogtreecommitdiff
path: root/common/cmd_ext2.c
Commit message (Collapse)AuthorAgeLines
* Fix number base handling of "load" commandWolfgang Denk2013-10-07-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 <trini@ti.com> Acked-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Wolfgang Denk <wd@denx.de>
* Add GPL-2.0+ SPDX-License-Identifier to source filesWolfgang Denk2013-07-24-18/+1
| | | | | | Signed-off-by: Wolfgang Denk <wd@denx.de> [trini: Fixup common/cmd_io.c] Signed-off-by: Tom Rini <trini@ti.com>
* fs: rename fsload command to loadStephen Warren2012-11-04-1/+1
| | | | | | | | | | | 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 <swarren@nvidia.com>
* fs: fix number base behaviour change in fatload/ext*loadStephen Warren2012-11-04-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | 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>
* fs: add filesystem switch libary, implement ls and fsload commandsStephen Warren2012-10-29-10/+3
| | | | | | | | | | | | Implement "ls" and "fsload" commands that act like {fat,ext2}{ls,load}, and transparently handle either file-system. This scheme could easily be extended to other filesystem types; I only didn't do it for zfs because I don't have any filesystems of that type to test with. Replace the implementation of {fat,ext[24]}{ls,load} with this new code too. Signed-off-by: Stephen Warren <swarren@nvidia.com>
* ext4fs ls load supportUma Shankar2012-08-09-202/+17
| | | | | | | Signed-off-by: Uma Shankar <uma.shankar@samsung.com> Signed-off-by: Manjunatha C Achar <a.manjunatha@samsung.com> Signed-off-by: Iqbal Shareef <iqbal.ams@samsung.com> Signed-off-by: Hakgoo Lee <goodguy.lee@samsung.com>
* Convert cmd_usage() calls in common to use a return valueSimon Glass2012-03-06-2/+2
| | | | | | | | | Change all files in common/ to use CMD_RET_USAGE instead of calling cmd_usage() directly. I'm not completely sure about this patch since the code since impact is small (100 byte or so on ARM) and it might need splitting into smaller patches. But for now here it is. Signed-off-by: Simon Glass <sjg@chromium.org>
* cmd_usage(): simplify return code handlingWolfgang Denk2010-07-24-6/+4
| | | | | | | | | | | | | | | | Lots of code use this construct: cmd_usage(cmdtp); return 1; Change cmd_usage() let it return 1 - then we can replace all these ocurrances by return cmd_usage(cmdtp); This fixes a few places with incorrect return code handling, too. Signed-off-by: Wolfgang Denk <wd@denx.de>
* Make sure that argv[] argument pointers are not modified.Wolfgang Denk2010-07-04-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The hush shell dynamically allocates (and re-allocates) memory for the argument strings in the "char *argv[]" argument vector passed to commands. Any code that modifies these pointers will cause serious corruption of the malloc data structures and crash U-Boot, so make sure the compiler can check that no such modifications are being done by changing the code into "char * const argv[]". This modification is the result of debugging a strange crash caused after adding a new command, which used the following argument processing code which has been working perfectly fine in all Unix systems since version 6 - but not so in U-Boot: int main (int argc, char **argv) { while (--argc > 0 && **++argv == '-') { /* ====> */ while (*++*argv) { switch (**argv) { case 'd': debug++; break; ... default: usage (); } } } ... } The line marked "====>" will corrupt the malloc data structures and usually cause U-Boot to crash when the next command gets executed by the shell. With the modification, the compiler will prevent this with an error: increment of read-only location '*argv' N.B.: The code above can be trivially rewritten like this: while (--argc > 0 && **++argv == '-') { char *arg = *argv; while (*++arg) { switch (*arg) { ... Signed-off-by: Wolfgang Denk <wd@denx.de> Acked-by: Mike Frysinger <vapier@gentoo.org>
* Fix ext2load return codeWolfgang Denk2009-07-28-36/+38
| | | | | | | | | | Make the ext2load command return 0 on success (instead of the file length). Also fix output format (get rid of random newlines) and some coding style issues (long lines etc.). Signed-off-by: Wolfgang Denk <wd@denx.de>
* General help message cleanupWolfgang Denk2009-06-12-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Many of the help messages were not really helpful; for example, many commands that take no arguments would not print a correct synopsis line, but "No additional help available." which is not exactly wrong, but not helpful either. Commit ``Make "usage" messages more helpful.'' changed this partially. But it also became clear that lots of "Usage" and "Help" messages (fields "usage" and "help" in struct cmd_tbl_s respective) were actually redundant. This patch cleans this up - for example: Before: => help dtt dtt - Digital Thermometer and Thermostat Usage: dtt - Read temperature from digital thermometer and thermostat. After: => help dtt dtt - Read temperature from Digital Thermometer and Thermostat Usage: dtt Signed-off-by: Wolfgang Denk <wd@denx.de>
* cmd_ext2.c: fix compile warningsWolfgang Denk2009-04-28-2/+2
| | | | | | | | | Get rid of these warnings: cmd_ext2.c:247: warning: format '%ld' expects type 'long int', but argument 2 has type 'int' cmd_ext2.c:248: warning: format '%lX' expects type 'long unsigned int', but argument 3 has type 'int' Signed-off-by: Wolfgang Denk <wd@denx.de>
* fs: Fix the wrong type of varGao Guanhua2009-04-28-1/+2
| | | | | | | | | The filelen should be signed type, not unsigned type. otherwise, The condition as below never take. if (filelen < 0) Signed-off-by: Gao Guanhua <B22826@freescale.com> Signed-off-by: Dave Liu <daveliu@freescale.com>
* Command usage cleanupPeter Tyser2009-01-28-2/+2
| | | | | | | | Remove command name from all command "usage" fields and update common/command.c to display "name - usage" instead of just "usage". Also remove newlines from command usage fields. Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
* Standardize command usage messages with cmd_usage()Peter Tyser2009-01-28-2/+2
| | | | Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
* rename CFG_ macros to CONFIG_SYSJean-Christophe PLAGNIOL-VILLARD2008-10-18-1/+1
| | | | Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
* CONFIG_EFI_PARTITION: Added support for EFI partition in cmd_ext2fs.crichardretanubun2008-10-18-2/+2
| | | | | Added support for CONFIG_EFI_PARTITION to ext2 commands. Signed-off-by: Richard Retanubun <RichardRetanubun@RugggedCom.com>
* [BUILD] conditionally compile common/cmd_*.c in common/MakefileGrant Likely2007-11-20-4/+0
| | | | | | | Modify common/Makefile to conditionally compile the cmd_*.c files based on the board config. Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
* common/cmd_[af]*: Remove obsolete references to CONFIG_COMMANDS.Jon Loeliger2007-07-08-3/+3
| | | | Signed-off-by: Jon Loeliger <jdl@freescale.com>
* common/cmd_[a-f]* : Augment CONFIG_COMMANDS tests with defined(CONFIG_CMD_*).Jon Loeliger2007-07-04-2/+2
| | | | | | | | | | | | | | This is a compatibility step that allows both the older form and the new form to co-exist for a while until the older can be removed entirely. All transformations are of the form: Before: #if (CONFIG_COMMANDS & CFG_CMD_AUTOSCRIPT) After: #if (CONFIG_COMMANDS & CFG_CMD_AUTOSCRIPT) || defined(CONFIG_CMD_AUTOSCRIPT) Signed-off-by: Jon Loeliger <jdl@freescale.com>
* [PATCH 1_4] Merge common get_dev() routines for block devicesGrant Likely2007-02-20-37/+3
| | | | | | | Each of the filesystem drivers duplicate the get_dev routine. This change merges them into a single function in part.c Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
* Merge with /home/sr/git/u-bootWolfgang Denk2005-10-17-1/+1
|\
| * Fix identification on ext2ls help entryStefan Roese2005-10-14-1/+1
| | | | | | | | Patch by Stefan Roese, 14 Oct 2005
* | Cleanup for GCC-4.xWolfgang Denk2005-10-13-1/+1
|/
* * Fix get_partition_info() parameter error in all other callswdenk2005-03-04-1/+4
| | | | | | | | | | (common/cmd_ide.c, common/cmd_reiser.c, common/cmd_scsi.c). * Enable USB and IDE support for INKA4x0 board * Patch by Andrew Dyer, 28 February 2005: fix ext2load passing an incorrect pointer to get_partition_info() resulting in load failure for devices other than 0
* * Patch by Cajus Hahn, 04 Feb 2005:wdenk2005-02-04-1/+1
| | | | | | | | - don't insist on leading '/' for filename in ext2load - set default partition to useful value (1) in ext2load * Patch by Andrew Dyer, 08 Jan 2005: fix wrong return codes in ext2 code
* ext2fs support addedstroese2004-12-16-0/+294