summaryrefslogtreecommitdiffstats
path: root/common/cmd_usb.c
Commit message (Collapse)AuthorAgeFilesLines
* Make sure that argv[] argument pointers are not modified.Wolfgang Denk2010-07-041-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>
* cmd_usb.c: show cmd usage if no args givenSerge Ziryukin2010-05-061-0/+5
| | | | Signed-off-by: Serge Ziryukin <ftrvxmtrx@gmail.com>
* USB storage countKim B. Heino2010-04-081-5/+8
| | | | | | | | | | | | | | | | Here's another USB storage patch. Currently U-Boot handles storage devices #0 - #4 as valid devices, even if there is none connected. This patch fixes usb_stor_get_dev() to check detected device count instead of MAX-define. This is very important for ill behaving devices. usb_dev_desc[] can be partially initialized if device probe fails. After fixing get_dev() it was easy to fix "usb part" etc commands. Previously it outputed "Unknown partition table" five times, now it's "no USB devices available". Signed-off-by: Kim B. Heino <Kim.Heino@bluegiga.com>
* cmd_usb.c: print debug messages only when DEBUG is definedWolfgang Denk2010-03-281-2/+2
| | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* usb: write command for RAW partition.Mahavir Jain2009-12-201-0/+24
| | | | | | | | | | | | | | This patch implements write support to usb device with raw partition. It will be useful for filesystem write support to usb device from u-boot in future. Tested with writing kernel image to raw usb disk & booting with usb read command into ram. [Note: run usb part to get info about start sector & number of sectors on a partition for usb write operation.] Signed-off-by: Mahavir Jain <mjain@marvell.com>
* USB Consolidate descriptor definitionsTom Rix2009-12-201-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The header files usb.h and usbdescriptors.h have the same nameed structure definitions for usb_config_descriptor usb_interface_descriptor usb_endpoint_descriptor usb_device_descriptor usb_string_descriptor These are out right duplicates in usb.h usb_device_descriptor usb_string_descriptor This one has extra unused elements usb_endpoint_descriptor unsigned char bRefresh unsigned char bSynchAddress; These in usb.h have extra elements at the end of the usb 2.0 specified descriptor and are used. usb_config_descriptor usb_interface_descriptor The change is to consolidate the definition of the descriptors to usbdescriptors.h. The dublicates in usb.h are removed. The extra element structure will have their name shorted by removing the '_descriptor' suffix. So usb_config_descriptor -> usb_config usb_interface_descriptor -> usb_interface For these, the common descriptor elements are accessed now by an element 'desc'. As an example - if (iface->bInterfaceClass != USB_CLASS_HUB) + if (iface->desc.bInterfaceClass != USB_CLASS_HUB) This has been compile tested on MAKEALL arm, ppc and mips. Signed-off-by: Tom Rix <Tom.Rix@windriver.com>
* General help message cleanupWolfgang Denk2009-06-121-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* USB: Add high-speed (480Mb/s) to all USB related outputsStefan Roese2009-01-281-1/+11
| | | | | | | | | | With this patch the USB related connection speed output ("usb tree" command and debug output) is now high-speed enabled. This patch also fixes a compilation warning when debugging is enabled. Signed-off-by: Stefan Roese <sr@denx.de> Signed-off-by: Remy Bohmer <linux@bohmer.net>
* Prepare USB layer for ehciMichael Trimarchi2009-01-281-1/+1
| | | | | | | Prepare USB layer for ehci support Signed-off-by: Michael Trimarchi <trimarchi@gandalf.sssup.it> Signed-off-by: Remy Böhmer <linux@bohmer.net>
* Command usage cleanupPeter Tyser2009-01-281-3/+3
| | | | | | | | 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-281-2/+2
| | | | Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
* Remove obsolete command (apply afte USB style patch, 80 chars strict)Michael Trimarchi2008-11-281-9/+0
| | | | | | | Remove USB obsolete commmand Signed-off-by: Michael Trimarchi <trimarchi@gandalf.sssup.it> Signed-off-by: Remy Böhmer <linux@bohmer.net>
* USB style patch, 80 chars strictMichael Trimarchi2008-11-281-279/+316
| | | | | | | USB Code style patch Signed-off-by: Michael Trimarchi <trimarchi@gandalf.sssup.it> Signed-off-by: Remy Böhmer <linux@bohmer.net>
* rename CFG_ macros to CONFIG_SYSJean-Christophe PLAGNIOL-VILLARD2008-10-181-1/+1
| | | | Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
* Code cleanup: fix old style assignment ambiguities like "=-" etc.Wolfgang Denk2008-07-141-1/+1
| | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* Fix "usb part" commandChristian Eggers2008-07-101-4/+15
| | | | | | | | Only print partition for selected device if user supplied the <dev> arg with the "usb part [dev]" command. Signed-off-by: Christian Eggers <ceggers@gmx.de> Acked-by: Markus Klotzbuecher <mk@denx.de>
* Delay FIT format check on sector based devicesMarian Balakowicz2008-06-301-7/+8
| | | | | | | | | | Global FIT image operations like format check cannot be performed on a first sector data, defer them to the point when whole FIT image was uploaded to a system RAM. Signed-off-by: Marian Balakowicz <m8@semihalf.com> Partial ('cmd_nand' case) Acked-by: Grant Erickson <gerickson@nuovations.com> NAND and DOC bits Acked-by: Scott Wood <scottwood@freescale.com>
* Big white-space cleanup.Wolfgang Denk2008-05-211-1/+1
| | | | | | | | | | | This commit gets rid of a huge amount of silly white-space issues. Especially, all sequences of SPACEs followed by TAB characters get removed (unless they appear in print statements). Also remove all embedded "vim:" and "vi:" statements which hide indentation problems. Signed-off-by: Wolfgang Denk <wd@denx.de>
* Merge branch 'master_merge_new-image' of /home/tur/git/u-bootWolfgang Denk2008-03-261-15/+35
|\
| * [new uImage] Add new uImage format handling to other bootm related commandsMarian Balakowicz2008-03-121-8/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | Updated commands: docboot - cmd_doc.c fdcboot - cmd_fdc.c diskboot - cmd_ide.c nboot - cmd_nand.c scsiboot - cmd_scsi.c usbboot - cmd_usb.c Signed-off-by: Marian Balakowicz <m8@semihalf.com>
| * [new uImage] Update naming convention for bootm/uImage related codeMarian Balakowicz2008-02-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch introduces the following prefix convention for the image format handling and bootm related code: genimg_ - dual format shared code image_ - legacy uImage format specific code fit_ - new uImage format specific code boot_ - booting process related code Related routines are renamed and a few pieces of code are moved around and re-grouped. Signed-off-by: Marian Balakowicz <m8@semihalf.com>
| * [new uImage] Add dual format uImage support frameworkMarian Balakowicz2008-02-251-10/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds framework for dual format images. Format detection is added and the bootm controll flow is updated to include cases for new FIT format uImages. When the legacy (image_header based) format is detected appropriate legacy specific handling is invoked. For the new (FIT based) format uImages dual boot framework has a minial support, that will only print out a corresponding debug messages. Implementation of the FIT specific handling will be added in following patches. Signed-off-by: Marian Balakowicz <m8@semihalf.com>
| * [new uImage] Fix erroneous use of image_get_magic() in fdc/usb cmdsMarian Balakowicz2008-02-211-1/+1
| | | | | | | | Signed-off-by: Marian Balakowicz <m8@semihalf.com>
| * [new uImage] Rename and move print_image_hdr() routineMarian Balakowicz2008-02-211-1/+1
| | | | | | | | Signed-off-by: Marian Balakowicz <m8@semihalf.com>
| * [new uImage] Define a API for image handling operationsMarian Balakowicz2008-02-071-8/+4
| | | | | | | | | | | | | | | | | | - Add inline helper macros for basic header processing - Move common non inline code common/image.c - Replace direct header access with the API routines - Rename IH_CPU_* to IH_ARCH_* Signed-off-by: Marian Balakowicz <m8@semihalf.com>
* | USB Storage, add meaningful return valueAras Vaichas2008-03-261-2/+1
|/ | | | | | | This patch changes the "usb storage" command to return success if it finds a USB storage device, otherwise it returns error. Signed-off-by: Markus Klotzbuecher <mk@denx.de>
* [BUILD] conditionally compile common/cmd_*.c in common/MakefileGrant Likely2007-11-201-10/+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_[p-x]*: Remove obsolete references to CONFIG_COMMANDS.Jon Loeliger2007-07-081-3/+3
| | | | Signed-off-by: Jon Loeliger <jdl@freescale.com>
* common/cmd_[i-z]* : Augment CONFIG_COMMANDS tests with defined(CONFIG_CMD_*).Jon Loeliger2007-07-041-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-201-0/+1
| | | | | | | 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>
* Prevent USB commands from working when USB is stopped.Bartlomiej Sieka2006-08-031-0/+5
|
* Add rudimentary handling of alternate settings of USB interfaces - to fixBartlomiej Sieka2006-08-021-1/+1
| | | | problems with some USB storage devices. Some code readability improvements.
* Cleanup for GCC-4.xWolfgang Denk2005-10-131-5/+5
|
* Coding style cleanupWolfgang Denk2005-08-021-2/+1
|
* Fix low-level OHCI transfers for ARM920t and MPC5xxxWolfgang Denk2005-07-211-13/+22
| | | | | | | | A new, Windows compatible init sequence was also backported from Linux 2.6, but disabled with #undef NEW_INIT_SEQ as it wouldn't change the behaviour of the memopry sticks we tested. Maybe it's not relevant for mass storage devices. For recerence, see file common/usb.c, function usb_new_device(), section #ifdef NEW_INIT_SEQ.
* * Fix baudrate calculation problem on MPC5200 systemswdenk2005-06-271-1/+1
| | | | | | | | | * Add MPC8220 boards to MAKEALL script * Add EEPROM and RTC support for HMI1001 board * Patch by Detlev Zundel, 20 Jun 2005: Fix initialization of low active GPIO pins on inka4x0 board
* Fix problems with SNTP support;wdenk2005-04-021-0/+1
| | | | enable SNTP support in some boards.
* Cleanup USB and partition defineswdenk2005-02-241-0/+4
|
* Fix for incomplete byteorder fix in cmd_scsi.c and cmd_usb.cwdenk2005-02-041-1/+2
|
* Fix byteorder problem in usbboot and scsiboot commands.wdenk2005-02-041-2/+2
|
* * Removed '--no-warn-mismatch' option from Makefile. This optionwdenk2005-02-031-17/+18
| | | | | | | | | | | | | | | makes 'ld' to overlook binary objects compatibility. * Moved $(PLATFORM_LIBS) from the library group (--start-group ... --end-group) outside of the group. This will make 'ld' to do _multiple_ search in the library group when resolving symbol references and do only a _single_ seach in libgcc.a after the group search. * Fix stability problems on CPC45 board again. * Make image detection for diskboot / usbboot / scsiboot more robust (also check header checksum)
* * Modify KUP4X board configuration to use SL811 driver for USB memorywdenk2004-04-231-8/+8
| | | | | | | | | | | | | | | sticks (including FAT / VFAT filesystem support) * Add SL811 Host Controller Interface driver for USB * Add CFG_I2C_EEPROM_ADDR_OVERFLOW desription to README * Patch by Pantelis Antoniou, 19 Apr 2004: Allow to use shell style syntax (i. e. ${var} ) with standard parser. Minor patches for Intracom boards. * Patch by Christian Pell, 19 Apr 2004: cleanup support for CF/IDE on PCMCIA for PXA25X
* * Patches by David Müller, 14 Nov 2003:wdenk2003-12-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - board/mpl/common/common_util.c * implement support for BZIP2 compressed images * various cleanups (printf -> puts, ...) - board/mpl/common/flash.c * report correct errors to upper layers * check the erase fail and VPP low bits in status reg - board/mpl/vcma9/cmd_vcma9.c - board/mpl/vcma9/flash.c * various cleanups (printf -> puts, ...) - common/cmd_usb.c * fix typo in comment - cpu/arm920t/usb_ohci.c * support for S3C2410 is missing in #if line - drivers/cs8900.c * reinit some registers in case of error (cable missing, ...) - fs/fat/fat.c * support for USB/MMC devices is missing in #if line - include/configs/MIP405.h - include/configs/PIP405.h * enable BZIP2 support * enlarge malloc space to 1MiB because of BZIP2 support - include/configs/VCMA9.h * enable BZIP2 support * enlarge malloc space to 1MiB because of BZIP2 support * enable USB support - lib_arm/armlinux.c * change calling convention of ARM Linux kernel as described on http://www.arm.linux.org.uk/developer/booting.php * Patch by Thomas Lange, 14 Nov 2003: Split dbau1x00 into dbau1000, dbau1100 and dbau1500 configs to support all these AMD boards. * Patch by Thomas Lange, 14 Nov 2003: Workaround for mips au1x00 physical memory accesses (the au1x00 uses a 36 bit bus internally and cannot access physical memory directly. Use the uncached SDRAM address instead of the physical one.)
* Patch by Kenneth Johansson, 30 Jun 2003:wdenk2003-07-011-6/+6
| | | | get rid of MK_CMD_ENTRY macro; update doc/README.command
* Fix some missing commands, cleanup header fileswdenk2003-06-291-1/+0
| | | | (autoscript, bmp, bsp, fat, mmc, nand, portio, ...)
* * Code cleanup:wdenk2003-06-271-2/+34
| | | | | | | | | - remove trailing white space, trailing empty lines, C++ comments, etc. - split cmd_boot.c (separate cmd_bdinfo.c and cmd_load.c) * Patches by Kenneth Johansson, 25 Jun 2003: - major rework of command structure (work done mostly by Michal Cendrowski and Joakim Kristiansen)
* * LWMON extensions:wdenk2003-04-271-1/+2
| | | | | | | | | | | - Splashscreen support - modem support - sysmon support - temperature dependend enabling of LCD * Allow booting from old "PPCBoot" disk partitions * Add support for TQM8255 Board / MPC8255 CPU
* Initial revisionwdenk2002-08-271-0/+595
OpenPOWER on IntegriCloud