summaryrefslogtreecommitdiff
path: root/common
Commit message (Collapse)AuthorAgeLines
* Add simple hwconfig infrastructureAnton Vorontsov2009-07-16-0/+211
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch implements simple hwconfig infrastructure: an interface for software knobs to control a hardware. This is very simple implementation, i.e. it is implemented via `hwconfig' environment variable. Later we could write some "hwconfig <enable|disable|list>" commands, ncurses interface for Award BIOS-like interface, and frame-buffer interface for AMI GUI[1] BIOS-like interface with mouse support[2]. Current implementation details/limitations: 1. Doesn't support options dependencies and mutual exclusion. We can implement this by integrating apt-get[3] into the u-boot. But I didn't bother yet. 2. Since we don't implement hwconfig command, i.e. we're working with the environement directly, there is no way to tell that toggling a particular option will need a reboot to take an effect. So, for now it's advised to always reboot the target after modifying hwconfig variable. 3. We support hwconfig options with arguments. For example, set hwconfig dr_usb:mode=peripheral,phy_type=ulpi That means: - dr_usb - enable Dual-Role USB controller; - dr_usb:mode=peripheral - USB in Function mode; - dr_usb:phy_type=ulpi - USB should work with ULPI PHYs; The purpose of this simple implementation is to define some internal API and then we can continue improving user experience by adding more mature interface, like hwconfig command with bells and whistles. Or not adding, if we feel that current interface fits its needs. [1] http://en.wikipedia.org/wiki/American_Megatrends [2] Regarding ncurses and GUI with mouse support -- I'm just kidding. [3] The comment regarding apt-get is also a joke, meaning that dependency tracking could be non-trivial. For example, for enabling HW feature X we may need to disable Y, and turn Z into reduced mode (like RMII-only interface for ethernet, no MII). It's quite trivial to implement simple cases though. Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com> Acked-by: Kim Phillips <kim.phillips@freescale.com>
* Command improvements for ubifsSimon Kagstrom2009-07-09-5/+21
| | | | | | | | | Check that an argument is passed to ubifsmount and that addresses and sizes are actually numbers for ubifsload. Also improve the instructions a bit. Signed-off-by: Simon Kagstrom <simon.kagstrom@netinsight.net> Signed-off-by: Stefan Roese <sr@denx.de>
* Handle VID header offset in ubi part commandSimon Kagstrom2009-07-09-5/+16
| | | | | | | | | | | | The VID header offset is sometimes needed to initialize the UBI partition. This patch adds it (optionally) to the command line for the ubi part command. (Lines have been properly wrapped since last version) Signed-off-by: Simon Kagstrom <simon.kagstrom@netinsight.net> Acked-by: Stefan Roese <sr@denx.de> Signed-off-by: Stefan Roese <sr@denx.de>
* env_onenand: change env_address type from unsigned long to loff_tHeungJun Kim2009-07-07-1/+1
| | | | | | | | | | | If use the onenand boot, the env_relocate_spec() calls mtd->read(), and the type of the argument #2 of mtd->read() was changed to loff_t. But, the "env_addr" type is still unsigned long, thus this patch change the type from unsigned long to loff_t. Acked-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: HeungJun, Kim <riverful.kim@samsung.com> Signed-off-by: Scott Wood <scottwood@freescale.com>
* nand_spl: read environment early, when booting from NAND using nand_splGuennadi Liakhovetski2009-07-07-13/+30
| | | | | | | | | | | | Currently, when booting from NAND using nand_spl, in the beginning the default environment is used until later in boot process the dynamic environment is read out. This way environment variables that must be interpreted early, like the baudrate or "silent", cannot be modified dynamically and remain at their default values. Fix this problem by reading out main and redundand (if used) copies of the environment in the nand_spl code. Signed-off-by: Guennadi Liakhovetski <lg@denx.de> Signed-off-by: Scott Wood <scottwood@freescale.com>
* nand/onenand: Fix missing argument checking for "markbad" commandWolfgang Denk2009-07-07-22/+44
| | | | | | | | | | | | | The "nand markbad" and "onenand markbad" commands did not check if an argument was passed; if this was forgotten, no error was raised but block 0 was marked as bad. While fixing this bug, clean up the code a bit and allow to pass more than one block address, thus allowing to mark several blocks as bad in a single command invocation. Signed-off-by: Wolfgang Denk <wd@denx.de> Signed-off-by: Scott Wood <scottwood@freescale.com>
* env_nand: remove unused variable.Guennadi Liakhovetski2009-07-07-10/+0
| | | | | | | Remove an unused "total" variable in multiple functions. Signed-off-by: Guennadi Liakhovetski <lg@denx.de> Signed-off-by: Scott Wood <scottwood@freescale.com>
* 8xxx: Second UART port added for MPC85xx, MPC83xx, MPC86xx processorsPoonam Aggrwal2009-07-02-1/+2
| | | | | | | | | | | Defining the next two configs allows to switch the serial port from the console using the setenv stdin and stdout 1. #define CONFIG_SERIAL_MULTI 1 /* Enable both serial ports */ 2. #define CONFIG_SYS_CONSOLE_IS_IN_ENV /* determine from environment */ Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com> Signed-off-by: Ed Swarthout <Ed.Swarthout@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* Blackfin: new spibootldr commandMike Frysinger2009-06-14-0/+37
| | | | | | | Newer Blackfin parts can an on-chip ROM that can boot LDRs over SPI flashes, so add a new 'spibootldr' command to take advantage of it. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* 83xx: Replace CONFIG_MPC83XX with CONFIG_MPC83xxPeter Tyser2009-06-12-2/+2
| | | | | | | | Use the standard lowercase "xx" capitalization that other Freescale architectures use for CPU defines to prevent confusion and errors Signed-off-by: Peter Tyser <ptyser@xes-inc.com> Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
* MPC512x: remove include/mpc512x.hWolfgang Denk2009-06-12-4/+0
| | | | | | | | | | | | | | | | | | | | Move needed definitions (register descriptions etc.) from include/mpc512x.h into include/asm-ppc/immap_512x.h. Instead of using a #define'd register offset, use a function that provides the PATA controller's base address. All the rest of include/mpc512x.h are register offset definitions which can be eliminated by proper use of C structures. There are only a few register offsets remaining that are needed in cpu/mpc512x/start.S; for these we provide cpu/mpc512x/asm-offsets.h which is intended as a temporary workaround only. In a later patch this file will be removed, too, and then auto-generated from the respective C structs. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: John Rigby <jcrigby@gmail.com>
* General help message cleanupWolfgang Denk2009-06-12-241/+237
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* Make "usage" messages more helpful.Wolfgang Denk2009-06-12-17/+16
| | | | | | | | | | | | | | | | | | In case of incorrect command invocations U-Boot used to print pretty useless "usage" messages, for example: => nand markbad Usage: nand - NAND sub-system In the result, the user would have to run the "help" command to get the (available) information about correct command usage. Change this, so that this information gets always printed. Note that this changes the user interface of all commands, but hopefully to the better. Signed-off-by: Wolfgang Denk <wd@denx.de>
* nvedit: speed up printing of environmentMike Frysinger2009-06-12-39/+55
| | | | | | | | | | | | The printing code would check the same environment byte multiple times and write to the console one byte at a time. For some devices (such as the Blackfin JTAG console which operates in 8 bytes at a time), this is pretty damned slow. So create a small 16 byte buffer to fill up and send to puts as needed. In the process, unify the different print functions, shrink the resulting code (source and compiled), and avoid excess env reads as those too can be somewhat expensive depending on the board. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Add support for Linux-like kallsysmsMike Frysinger2009-06-12-0/+53
| | | | | | | The kernel stores address<->symbol names in it so things can be decoded at runtime. Do it in U-Boot, and we get nice symbol decoding when crashing. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* cmd_mtdparts.c: allow to omit definitions for default settingsWolfgang Denk2009-06-12-4/+4
| | | | | | | | | | | | There is actually no good reason to enforce that all board configuations must define default settings for "mtdids" and "mtdparts". Actually this may be difficult to handle, especially on boards where different sizes of flash chips can be fit, so there is no real "default" partition map for all boards. Lift this arbitrary limitation. Signed-off-by: Wolfgang Denk <wd@denx.de>
* cmd_mtdparts: Move to common handling of FLASH devices via MTD layerStefan Roese2009-06-12-160/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch removes all references to the direct CFI FLASH interface (via flash_info[]). Now that all FLASH types currently handled in mtdparts are available (if selected, see below) via the MTD infrastructure. This is NOR, NAND and OneNAND right now. This can be achieved by defining the following options: CONFIG_MTD_DEVICE (for all FLASH types) plus CONFIG_FLASH_CFI_MTD (for NOR FLASH) So we need to add those defines to the board config headers currently using the mtdparts commands. This is done via another patch, so we shouldn't break mtdparts compatibility. One big advantage from this solution is that the cmd_mtdparts.c is *much* cleaner now. Lot's of #ifdef's are removed and the code itself is smaller. Additionally the newly added MDT concatenation feature can new be used via the mtdparts infrastructure and therefor via UBI etc. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Ladislav Michl <ladis@linux-mips.org> Cc: Scott Wood <scottwood@freescale.com>
* mtd: Update MTD infrastructure to support 64bit device sizeStefan Roese2009-06-12-2/+6
| | | | | | | | | | | This patch brings the U-Boot MTD infrastructure in sync with the current Linux MTD version (2.6.30-rc3). Biggest change is the 64bit device size support and a resync of the mtdpart.c file which has seen multiple fixes meanwhile. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Scott Wood <scottwood@freescale.com> Cc: Kyungmin Park <kmpark@infradead.org>
* make MODEM SUPPORT generic instead of duplicate itJean-Christophe PLAGNIOL-VILLARD2009-06-12-0/+119
| | | | | | | | | | and fix comment Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Adjusted Copyright message. Signed-off-by: Wolfgang Denk <wd@denx.de>
* ZOOM2 Add serial support.Tom Rix2009-06-12-0/+2
| | | | | | | | | | | | | | | | | | Zoom2 serial is in general supplied by one of the 4 UARTS on the debug board. The default serial is from the USB connector on left side of the debug board. The USB connector will produce 2 of the 4 UARTS. On your host pick the first enumeration. The details of the setting of the serial gpmc setup are not available. The values were provided by another party. The serial port set up is the same with Zoom1. Baud rate 115200, 8 bit data, no parity, 1 stop bit, no flow. The kernel bootargs are console=ttyS3,115200n8 Signed-off-by: Tom Rix <Tom.Rix@windriver.com>
* cmd_i2c: Fix i2c help command output when CONFIG_I2C_MUXPeter Tyser2009-06-12-2/+2
| | | | | | | | | | | | | | | | | | | When CONFIG_I2C_MUX was defined the output of 'help i2c' was not correct, eg: => help i2c i2c bus [muxtype:muxaddr:muxchannel] - add a new bus reached over muxes. speed [speed] - show or set I2C bus speed i2c dev [dev] - show or set current I2C bus ... It has been changed to: i2c speed [speed] - show or set I2C bus speed i2c bus [muxtype:muxaddr:muxchannel] - add a new bus reached over muxes i2c dev [dev] - show or set current I2C bus ... Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
* cmd_i2c: Clean up trivial helper functionsPeter Tyser2009-06-12-21/+4
| | | | Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
* cmd_i2c: Clean up i2c command argument parsingPeter Tyser2009-06-12-24/+28
| | | | | | | argc and argv should only be modified once instead of once for every i2c sub-command Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
* i2c: Update references to individual i2c commandsPeter Tyser2009-06-12-16/+11
| | | | | | | | The individual i2c commands imd, imm, inm, imw, icrc32, iprobe, iloop, and isdram are no longer available so all references to them have been updated to the new form of "i2c <cmd>". Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
* i2c: Remove deprecated individual i2c commandsPeter Tyser2009-06-12-58/+0
| | | | | | | | | | | | | The following individual I2C commands have been removed: imd, imm, inm, imw, icrc32, iprobe, iloop, isdram. The functionality of the individual commands is still available via the 'i2c' command. This change only has an impact on those boards which did not have CONFIG_I2C_CMD_TREE defined. Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
* i2c: Create common default i2c_[set|get]_bus_speed() functionsPeter Tyser2009-06-12-0/+18
| | | | | | | | | | | | | New default, weak i2c_get_bus_speed() and i2c_set_bus_speed() functions replace a number of architecture-specific implementations. Also, providing default functions will allow all boards to enable CONFIG_I2C_CMD_TREE. This was previously not possible since the tree-form of the i2c command provides the ability to display and modify the i2c bus speed which requires i2c_[set|get]_bus_speed() to be present. Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
* i2c.h: Provide a default CONFIG_SYS_I2C_SLAVE valuePeter Tyser2009-06-12-4/+0
| | | | | | | | Many boards/controllers/drivers don't support an I2C slave interface, however CONFIG_SYS_I2C_SLAVE is used in common code so provide a default Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
* mmc: check find_mmc_device return valueRabin Vincent2009-06-02-0/+9
| | | | | | | find_mmc_device returns NULL if an invalid device number is specified. Check for this to avoid dereferencing NULL pointers. Signed-off-by: Rabin Vincent <rabin@rab.in>
* mmc: clean up help textsRabin Vincent2009-06-02-4/+5
| | | | | | | Remove some repeated words and superfluous newlines in the mmc command help entries. Signed-off-by: Rabin Vincent <rabin@rab.in>
* jffs2/mtdparts: Fix problem with usage from JFFS2 and MTDPARTS togetherStefan Roese2009-05-28-54/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently using JFFS2 with MTDPARTS enabled doesn't work. This is because mtdparts_init() is available in both files, cmd_mtdparts.c and cmd_jffs2.c. Please note that in the original cmd_jffs2.c file (before the jffs2/mtdparts command/file split those 2 different versions already existed. So this is nothing new. The main problem is that the variables "current_dev" and "current_partnum" are declared in both files now. This doesn't work. This patch now changes the names of those variable to more specific names: "current_mtd_dev" and "current_mtd_partnum". This is because this patch also changes the declaration from static to global, so that they can be used from both files. Please note that my first tests were not successful. The MTD devices selected via mtdparts are now accessed but I'm failing to see the directory listed via the "ls" command. Nothing is displayed. Perhaps I didn't generate the JFFS2 image correctly (I never used JFFS2 in U-Boot before). Not sure. Perhaps somebody else could take a look at this as well. I'll continue looking into this on Monday. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Wolfgang Denk <wd@denx.de> Cc: Detlev Zundel <dzu@denx.de> Cc: Ilya Yanok <yanok@emcraft.com> Cc: Renaud barbier <renaud.barbier@ge.com>
* Merge branch 'master' of git://git.denx.de/u-boot-ubiWolfgang Denk2009-05-20-1/+1
|\
| * UBI: fix return code in ubi_volume_readAndreas Huber2009-05-20-1/+1
| | | | | | | | | | | | | | Return -ENODEV instead of 0 when trying to read from a non existing volume. Signed-off-by: Andreas Huber <andreas.huber@keymile.com> Signed-off-by: Stefan Roese <sr@denx.de>
* | common: fix inline--weak error spotted by gcc 4.4Kim Phillips2009-05-20-2/+2
|/ | | | | | | | cmd_ide.c:547: error: inline function 'ide_inb' cannot be declared weak removing the inline attribute fixes it. Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
* Fix e-mail address of Gary Jennejohn.Detlev Zundel2009-05-15-1/+1
| | | | Signed-off-by: Detlev Zundel <dzu@denx.de>
* Remove inline qualifier from show_boot_progress()Emil Medve2009-05-15-1/+1
| | | | | | | | | | | The 'inline' is conflicting with the semantic of 'weak' attribute and with the way the show_boot_progress() function is used. Also gcc 4.4 is complaining about it: main.c:51: error: inline function 'show_boot_progress' cannot be declared weak Signed-off-by: Emil Medve <Emilian.Medve@Freescale.com>
* netloop: updates for NetLoopHeiko Schocher2009-05-15-0/+7
| | | | | | | | | | | | | Fix some issues introduced from commit: 2f70c49e5b9813635ad73666aa30f304c7fdeda9 suggested by Mike Frysinger. - added some comment for the env_id variable in common_cmd_nvedit.c - moved some variables in fn scope instead of file scope - NetInitLoop now static void Signed-off-by: Heiko Schocher <hs@denx.de> Acked-by: Ben Warren <biggerbadderben@gmail.com>
* 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>
* ubi: Remove flash selection parameter (nor|nand|onenand) from "ubi part"Stefan Roese2009-04-28-48/+25
| | | | | | | | | | | | | | | | | | | | | | This patch removes the now unnecessary flash type parameter from the "ubi part" command. Currently the user has to define the type of flash he will be using UBI on. Example: => ubi part nor partition1 With this patch this type parameter is not needed anymore. The user can now select the partition directly without the flash type paramter. Example: => ubi part partition1 This breaks backward compatibility right now because of the change in the command syntax. But UBI support is still quite fresh and the advantage of this new command is syntax big enough for this change. Additionally the code is much cleaner now. Signed-off-by: Stefan Roese <sr@denx.de> CC: Kyungmin Park <kyungmin.park@samsung.com>
* Separate mtdparts command from jffs2Ladislav Michl2009-04-28-5/+5
| | | | | | | | | | | | | | | On Thu, Mar 19, 2009 at 01:30:36PM +0100, Stefan Roese wrote: > Currently the mtdparts commands are included in the jffs2 command support. > This doesn't make sense anymore since other commands (e.g. UBI) use this > infrastructure as well now. This patch separates the mtdparts commands from > the jffs2 commands making it possible to only select mtdparts when no JFFS2 > support is needed. One more leftover... Let nboot command know about partitions even if JFFS2 support is not enabled. Signed-off-by: Ladislav Michl <ladis@linux-mips.org> Acked-by: Stefan Roese <sr@denx.de>
* cmd_ide: Remove unused AmigaOneG3SE codePeter Tyser2009-04-28-44/+0
| | | | | | | The output_data_short() and input_data_short() functions for the AmigaOneG3SE are unused and result in compiler warnings. Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
* mtdpart command: align output columnsDavid Brownell2009-04-28-1/+1
| | | | | | | Make the headers in the "mtdparts" command output line up with their columns ... strike the extra TAB character. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* 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>
* cmd_nand: drop duplicate NULL ptr checkMike Frysinger2009-04-16-1/+1
| | | | | | | | The first if statement checks for NULL ptrs, so there is no need to check it again in later else cases (such as .oob). Signed-off-by: Mike Frysinger <vapier@gentoo.org> CC: Scott Wood <scottwood@freescale.com>
* One more fix for building env_embedded.oWolfgang Denk2009-04-05-0/+2
| | | | | | | | In addition to the changes for CONFIG_ENV_IS_IN_FLASH as done in commit afcbce07, we also need to do the same for CONFIG_ENV_IS_IN_EEPROM and CONFIG_ENV_IS_IN_NVRAM. Signed-off-by: Wolfgang Denk <wd@denx.de>
* common/image.c: Relocate strings in tables.Scott Wood2009-04-04-2/+6
| | | | | | | Without this, u-boot can crash or print garbage if the original link address no longer points to a valid string. Signed-off-by: Scott Wood <scottwood@freescale.com>
* UBI/cfi-mtd: Fix mtd name for multiple chipsAndreas Huber2009-04-04-5/+21
| | | | | | | | | | | | | On platforms with multiple NOR chips, currently only the first one can be selected using the "ubi part" command. This patch fixes this problem by using different names for the NOR "mtd devices". It also changes the name of the NOR MTD device from "cfi-mtd" to "norX" (X indexing the device numer) to better match the mtdparts defaults. Signed-off-by: Stefan Roese <sr@denx.de> Signed-off-by: Andreas Huber <andreas.huber@keymile.com>
* cmd_mmc: add support for device command for selecting mmc deviceMinkyu Kang2009-04-04-5/+56
| | | | | | This patch improves device command for selecting mmc device Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
* more command usage cleanupMike Frysinger2009-04-04-4/+4
| | | | | | Fix up a few dangling commands like in "Command usage cleanup" commit. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Separate mtdparts command from jffs2Ladislav Michl2009-04-04-6/+3
| | | | | | | | | | | | | | | | On Thu, Mar 19, 2009 at 01:30:36PM +0100, Stefan Roese wrote: > Currently the mtdparts commands are included in the jffs2 command support. > This doesn't make sense anymore since other commands (e.g. UBI) use this > infrastructure as well now. This patch separates the mtdparts commands from > the jffs2 commands making it possible to only select mtdparts when no JFFS2 > support is needed. ... and to make it useful for NAND chips as well, we should also remove now unrelated CONFIG_JFFS2_NAND. Note that struct part_info etc is in jffs2/load_kernel.h which is a bit misleading filename for that purpose, but that can be fixed later (tm). Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
* add dataflash mmc mux missing supportJean-Christophe PLAGNIOL-VILLARD2009-04-04-0/+66
| | | | Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>