summaryrefslogtreecommitdiff
path: root/common
Commit message (Collapse)AuthorAgeLines
* Remove code duplication for setting the default environmentHarald Welte2008-07-10-29/+19
| | | | | | | | | | | common/env_common.c (default_env): new function that resets the environment to the default value common/env_common.c (env_relocate): use default_env instead of own copy common/env_nand.c (env_relocate_spec): use default_env instead of own copy include/environment.h: added default_env prototype Signed-off-by: Werner Almesberger <werner@openmoko.org> Signed-off-by: Harald Welte <laforge@openmoko.org>
* Change env_get_char from a global function ptr to a functionJoakim Tjernlund2008-07-09-6/+13
| | | | | | This avoids an early global data reference. Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
* Fix printf errors.Andrew Klossner2008-07-09-5/+5
| | | | | | | | | | | | The compiler will help find mismatches between printf formats and arguments if you let it. This patch adds the necessary attributes to declarations in include/common.h, then begins to correct the resulting compiler warnings. Some of these were bugs, e.g., "$d" instead of "%d" and incorrect arguments. Others were just annoying, like int-long mismatches on a system where both are 32 bits. It's worth fixing the annoying errors to catch the real ones. Signed-off-by: Andrew Klossner <andrew@cesa.opbu.xerox.com>
* ppc4xx: Rename CONFIG_XILINX_ML300 to CONFIG_XILINX_405Michal Simek2008-07-06-4/+4
| | | | | | | | This change helps with better handling with others Xilinx based platform. Signed-off-by: Michal Simek <monstr@monstr.eu> Acked-by: Stefan Roese <sr@denx.de>
* fdt: Fix typo in variable name.Detlev Zundel2008-07-02-2/+2
| | | | Signed-off-by: Detlev Zundel <dzu@denx.de>
* cmd_nvedit.c: clean up syntax highlightingSteven A. Falco2008-07-01-2/+3
| | | | | | | | | | My text-editor (vim) has a bit of trouble syntax-highlighting the cmd_nvedit.c file, because it apparently does not parse C ifdef/else/endif. The following patch does not change the behavior of the code at all, but does allow the editor to properly syntax-highlight the file. Signed-off-by: Steve Falco <sfalco@harris.com>
* Make setenv() return statusSteven A. Falco2008-07-01-3/+3
| | | | | | | Currently, the setenv function does not return an error code. This patch allows to test for errors. Signed-off-by: Steve Falco <sfalco@harris.com>
* Delay FIT format check on sector based devicesMarian Balakowicz2008-06-30-57/+64
| | | | | | | | | | 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>
* Coding Style CleanupWolfgang Denk2008-06-28-1/+1
| | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* NAND: Add missing declaration to non-redundant saveenv().Philip Balister2008-06-16-1/+2
| | | | Signed-off-by: Scott Wood <scottwood@freescale.com>
* Change lmb to use phys_size_t/phys_addr_tBecky Bruce2008-06-12-8/+14
| | | | | | | | | | | This updates the lmb code to use phys_size_t and phys_addr_t instead of unsigned long. Other code which interacts with this code, like getenv_bootm_size() is also updated. Booted on MPC8641HPCN, build-tested ppc, arm, mips. Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
* Change bd/gd memsize/ram_size to be phys_size_t.Becky Bruce2008-06-12-8/+16
| | | | | | | | | | Currently, both are defined as an unsigned long, but should be phys_size_t. This should result in no real change, since phys_size_t is currently an unsigned long for all the default configs. Also add print_lnum to cmd_bdinfo to deal with the potentially wider memsize. Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
* Merge branch 'master' of git://www.denx.de/git/u-boot-fdtWolfgang Denk2008-06-11-538/+73
|\
| * libfdt: Move the working_fdt pointer to cmd_fdt.cGerald Van Baren2008-06-10-5/+5
| | | | | | | | | | | | | | | | The working_fdt pointer was declared in common/fdt_support.c but was not used there. Move it to common/cmd_fdt.c where it is used (it is also used in lib_ppc/bootm.c). Signed-off-by: Gerald Van Baren <vanbaren@cideas.com>
| * fdt: unshadow global working fdt variableKim Phillips2008-06-10-54/+62
| | | | | | | | | | | | | | differentiate with local variables of the same name by renaming the global 'fdt' variable 'working_fdt'. Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
| * Use strncmp() for the fdt commandGerald Van Baren2008-06-09-9/+7
| | | | | | | | | | | | Cleaner than doing multiple conditionals on characters. Signed-off-by: Gerald Van Baren <vanbaren@cideas.com>
| * The fdt boardsetup command criteria was not uniqueGerald Van Baren2008-06-09-1/+2
| | | | | | | | | | | | | | It was checking just for "b", which is not unique with respect to the "boot" command. Change to check for "boa"[rdsetup]. Signed-off-by: Gerald Van Baren <vanbaren@cideas.com>
| * Remove the deprecated CONFIG_OF_FLAT_TREEGerald Van Baren2008-06-09-472/+0
| | | | | | | | | | | | | | Use CONFIG_OF_LIBFDT instead to support flattened device trees. It is cleaner, has better functionality, and is better supported. Signed-off-by: Gerald Van Baren <vanbaren@cideas.com>
* | env_nand.c: Added bad block management for environment variablesStuart Wood2008-06-06-20/+99
|/ | | | | | | | | | Modified to check for bad blocks and to skipping over them when CFG_ENV_RANGE has been defined. CFG_ENV_RANGE must be larger than CFG_ENV_SIZE and aligned to the NAND flash block size. Signed-off-by: Stuart Wood <stuart.wood@labxtechnologies.com> Signed-off-by: Scott Wood <scottwood@freescale.com>
* Additional fix to readline_into_buffer() with CONFIG_CMDLINE_EDITING before ↵Peter Tyser2008-06-03-6/+0
| | | | | | | | | | | relocating Removed unneeded command line history initialization. Also, the original code would access the 'initted' variable before relocation to SDRAM which resulted in erratic behavior since the bss is not initialized when executing from flash. Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
* Add support for environment in SPI flashHaavard Skinnemoen2008-06-03-2/+136
| | | | | | | | | This is pretty incomplete...it doesn't handle reading the environment before relocation, it doesn't support redundant environment, and it doesn't support embedded environment. But apart from that, it does seem to work. Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
* SPI Flash: Add "sf" commandHaavard Skinnemoen2008-06-03-0/+192
| | | | | | | | This adds a new command, "sf" which can be used to manipulate SPI flash. Currently, initialization, reading, writing and erasing is supported. Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
* SPI API improvementsHaavard Skinnemoen2008-06-03-48/+155
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch gets rid of the spi_chipsel table and adds a handful of new functions that makes the SPI layer cleaner and more flexible. Instead of the spi_chipsel table, each board that wants to use SPI gets to implement three hooks: * spi_cs_activate(): Activates the chipselect for a given slave * spi_cs_deactivate(): Deactivates the chipselect for a given slave * spi_cs_is_valid(): Determines if the given bus/chipselect combination can be activated. Not all drivers may need those extra functions however. If that's the case, the board code may just leave them out (assuming they know what the driver needs) or rely on the linker to strip them out (assuming --gc-sections is being used.) To set up communication parameters for a given slave, the driver needs to call spi_setup_slave(). This returns a pointer to an opaque spi_slave struct which must be passed as a parameter to subsequent SPI calls. This struct can be freed by calling spi_free_slave(), but most driver probably don't want to do this. Before starting one or more SPI transfers, the driver must call spi_claim_bus() to gain exclusive access to the SPI bus and initialize the hardware. When all transfers are done, the driver must call spi_release_bus() to make the bus available to others, and possibly shut down the SPI controller hardware. spi_xfer() behaves mostly the same as before, but it now takes a spi_slave parameter instead of a spi_chipsel function pointer. It also got a new parameter, flags, which is used to specify chip select behaviour. This may be extended with other flags in the future. This patch has been build-tested on all powerpc and arm boards involved. I have not tested NIOS since I don't have a toolchain for it installed, so I expect some breakage there even though I've tried fixing up everything I could find by visual inspection. I have run-time tested this on AVR32 ATNGW100 using the atmel_spi and DataFlash drivers posted as a follow-up. I'd like some help testing other boards that use the existing SPI API. But most of all, I'd like some comments on the new API. Is this stuff usable for everyone? If not, why? Changed in v4: - Build fixes for various boards, drivers and commands - Provide common struct spi_slave definition that can be extended by drivers - Pass a struct spi_slave * to spi_cs_activate and spi_cs_deactivate - Make default bus and mode build-time configurable - Override default SPI bus ID and mode on mx32ads and imx31_litekit. Changed in v3: - Add opaque struct spi_slave for controller-specific data associated with a slave. - Add spi_claim_bus() and spi_release_bus() - Add spi_free_slave() - spi_setup() is now called spi_setup_slave() and returns a struct spi_slave - soft_spi now supports four SPI modes (CPOL|CPHA) - Add bus parameter to spi_setup_slave() - Convert the new i.MX32 SPI driver - Convert the new MC13783 RTC driver Changed in v2: - Convert the mpc8xxx_spi driver and the mpc8349emds board to the new API. Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com> Tested-by: Guennadi Liakhovetski <lg@denx.de>
* soft_i2c: Pull SDA high before readingHaavard Skinnemoen2008-06-03-0/+1
| | | | | | | | | | | | | Spotted by Dean Capindale. Systems that support open-drain GPIO properly are allowed provide an empty I2C_TRISTATE define. However, this means that we need to be careful not to drive SDA low when the slave is expected to respond. This patch adds a missing I2C_SDA(1) to read_byte() required to tristate the SDA line on systems that support open-drain GPIO. Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
* Make sure common.h is the first include.Kumar Gala2008-06-03-1/+2
| | | | | | | | | If common.h isn't first we can get CONFIG_ options defined in the board config file ignored. This can cause an issue if any of those config options impact the size of types of data structures (eg CONFIG_PHYS_64BIT). Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* Avoid initrd and logbuffer area overlapsMarian Balakowicz2008-06-03-1/+17
| | | | | | | | | Add logbuffer to reserved LMB areas to prevent initrd allocation from overlaping with it. Make sure to use correct logbuffer base address. Signed-off-by: Marian Balakowicz <m8@semihalf.com>
* Merge remote branch 'u-boot-at91/for-1.3.4'Wolfgang Denk2008-06-03-1/+77
|\
| * Merging Stelian Pop AT91 patchesJean-Christophe PLAGNIOL-VILLARD2008-05-24-6/+77
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge branch 'testing-V2' Conflicts: board/atmel/at91cap9adk/Makefile Fixing copyright board/atmel/at91sam9260ek/Makefile Fixing copyright board/atmel/at91sam9260ek/u-boot.lds Delete no more needed ld script Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
| | * Cleanup nand_info[] declaration.Stelian Pop2008-05-13-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | The nand_info array is declared as extern in several .c files. Those days, nand.h contains a reference to the array, so there is no need to declare it elsewhere. Signed-off-by: Stelian Pop <stelian@popies.net> Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
| | * Add ATMEL LCD driverStelian Pop2008-05-10-1/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for the ATMEL LCDC driver which is used on some AT91 and AVR platforms. Is has been tested with the AT91CAP9ADK, AT91SAM9261EK, AT91SAM9263EK and AT91SAM9RLEK boards. Adaptation for AVR32 should probably be easy. Signed-off-by: Stelian Pop <stelian@popies.net> Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
* | | Cleanup nand_info[] declaration.Stelian Pop2008-05-28-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | The nand_info array is declared as extern in several .c files. Those days, nand.h contains a reference to the array, so there is no need to declare it elsewhere. Signed-off-by: Stelian Pop <stelian@popies.net> Signed-off-by: Scott Wood <scottwood@freescale.com>
* | | USB: replace old swap_ with proper endianess conversion macrosChristian Eggers2008-05-22-45/+38
|/ / | | | | | | | | Signed-off-by: Christian Eggers <ceggers@gmx.de> Signed-off-by: Markus Klotzbuecher <mk@denx.de>
* | Merge branch 'lwmon5' of /home/wd/git/u-boot/projectsWolfgang Denk2008-05-21-2/+2
|\ \
| * | POST: replace the LOGBUFF_INITIALIZED flag in gd->post_log_word (1 << 31) ↵Yuri Tikhonov2008-05-20-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | with the GD_FLG_LOGINIT flag in gd->flags. This way we become able to utilize the full post_log_word for POST activities (overwise, POST ECC, which has 0x8000 ID, could be erroneously treated as started in post_output_backlog() even if there was actually no POST ECC run (because of OCM POST failure, for example). Signed-off-by: Yuri Tikhonov <yur@emcraft.com>
* | | Big white-space cleanup.Wolfgang Denk2008-05-21-207/+202
|/ / | | | | | | | | | | | | | | | | | | | | 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>
* | common/usb.c: fix incorrect escape sequenceHebbar2008-05-20-1/+1
| | | | | | | | Signed off by: Gururaja Hebbar <gururajakr@sanyo.co.in>
* | environment: cleanup prototype declarations of env functions.Wolfgang Denk2008-05-14-23/+0
| | | | | | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* | Revert "Avoid initrd and logbuffer area overlaps"Wolfgang Denk2008-05-12-14/+1
| | | | | | | | | | This reverts commit 1b5605ca57fbb364f4d78eeee28b974ed875e888 which breaks building on all PPC boards that don't use a log buffer.
* | Fix offset calculation for multi-type legacy images.Nick Spence2008-05-12-9/+4
| | | | | | | | | | | | | | | | Calculation of tail was incorrect when size % 4 == 0. New code removes the conditional and does the same thing but with arithmetic Signed-off-by: Nick Spence <nick.spence@freescale.com>
* | Revert "Change env_get_char from a global function ptr to a function."Wolfgang Denk2008-05-12-13/+13
| | | | | | | | | | This reverts commit c0559be371b2a64b1a817088c3308688e2182f93 which is known to break booting from dataflash and NAND.
* | Avoid initrd and logbuffer area overlapsMarian Balakowicz2008-05-10-1/+14
| | | | | | | | | | | | | | | | | | Add logbuffer to reserved LMB areas to prevent initrd allocation from overlaping with it. Make sure to use correct logbuffer base address. Signed-off-by: Marian Balakowicz <m8@semihalf.com>
* | Fix build errors when CONFIG_LOGBUFFER and CONFIG_FIT are enabledMarian Balakowicz2008-05-10-15/+0
| | | | | | | | | | | | | | | | | | | | | | Recent modifcations to LOGBUFFER handling code were incorrecly introduced to fit_check_kernel() routine during "Merge branch 'new-image' of git://www.denx.de/git/u-boot-testing", commit 27f33e9f45ef7f9685cbdc65066a1828e85dde4f. This patch cleans up this merge issue. Signed-off-by: Marian Balakowicz <m8@semihalf.com>
* | Fix readline_into_buffer() with CONFIG_CMDLINE_EDITING before relocatingJames Yang2008-05-09-10/+23
| | | | | | | | | | | | | | | | | | | | | | When CONFIG_CMDLINE_EDITING is enabled, readline_into_buffer() doesn't work before relocating to RAM because command history is written into a global array that is not writable before relocation. This patch defers to the no-editing and no-history code in readline_into_buffer() if it is called before relocation. Signed-off-by: James Yang <James.Yang@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* | ide: Remove spurious second include of io.hMarcel Ziswiler2008-05-09-4/+0
| | | | | | | | | | | | Removed the second include, with all the #ifdef around as suggested by Wolfgang. Signed-off-by: Marcel Ziswiler <marcel@ziswiler.com>
* | Recognize 'powerpc' As an Alias for IH_ARCH_PPCGrant Erickson2008-05-09-0/+1
|/ | | | | | | | Add support for the recognition of 'powerpc' as an alias for the PowerPC architecture type since Linux is already trending in that direction, preferring 'powerpc' to 'ppc'. Signed-off-by: Grant Erickson <gerickson@nuovations.com>
* fix building when saveenv is disabled in some setupsMike Frysinger2008-05-04-0/+2
| | | | | | | | | | | If you enable environment in the flash, but disable the embedded option, and you disable the saveenv command, then the #if nested logic will trigger a compile failure: env_flash.c: In function 'env_relocate_spec': env_flash.c:399: error: 'flash_addr' undeclared (first use in this function) The fix is to add CMD_SAVEENV ifdef protection like everywhere else. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* cmd_nand: fix warning: str2long ncompatible pointer typeJean-Christophe PLAGNIOL-VILLARD2008-04-30-1/+1
| | | | Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
* Fix warning in env_nand.c if compiled for DaVinci Schmoogiedirk.behme@googlemail.com2008-04-30-3/+3
| | | | | | | | | | | | | | Fix warnings nv_nand.c: In function 'saveenv': env_nand.c:200: warning: passing argument 3 of 'nand_write' from incompatible pointer type env_nand.c: In function 'env_relocate_spec': env_nand.c:275: warning: passing argument 3 of 'nand_read' from incompatible pointer type if compiled for davinci_schmoogie_config. Signed-off-by: Dirk Behme <dirk.behme@gmail.com> Ack by: Sergey Kubushyn <ksi@koi8.net>
* common/env_nand.c: fix one more incompatible pointer type issueWolfgang Denk2008-04-29-1/+1
| | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* IDE: fix compiler warningsGuennadi Liakhovetski2008-04-28-2/+12
| | | | | | | The IDE driver can use 32-bit addresses in LBA mode, in which case it spits multiple warnings during compilation. Fix them. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>