summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeLines
* fs/fat: Improve error handlingKyle Moffett2012-01-05-4/+14
| | | | | | | | | | | | | | | | | | | | The FAT filesystem fails silently in inexplicable ways when given a filesystem with a block-size that does not match the device sector size. In theory this is not an unsupportable combination but requires a major rewrite of a lot of the filesystem. Until that occurs, the filesystem should detect that scenario and display a helpful error message. This scenario in particular occurred on a 512-byte blocksize FAT fs stored in an El-Torito boot volume on a CD-ROM (2048-byte sector size). Additionally, in many circumstances the ->block_read method will not return a negative number to indicate an error but instead return 0 to indicate the number of blocks successfully read (IE: None). The FAT filesystem should defensively check to ensure that it got all of the sectors that it asked for when reading. Signed-off-by: Kyle Moffett <Kyle.D.Moffett@boeing.com>
* fs/fat: Fix FAT detection to support non-DOS partition tablesKyle Moffett2012-01-05-63/+52
| | | | | | | | | | | | | | | | | | | The FAT filesystem code currently ends up requiring that the partition table be a DOS MBR, as it checks for the DOS 0x55 0xAA signature on the partition table (which may be Mac, EFI, ISO9660, etc) before actually computing the partition offset. This fixes support for accessing a FAT filesystem in an ISO9660 boot volume (El-Torito format) by reordering the filesystem checks and reading the 0x55 0xAA "DOS boot signature" and FAT/FAT32 magic number from the first sector of the partition instead of from sector 0. Signed-off-by: Kyle Moffett <Kyle.D.Moffett@boeing.com> Fix build warning: fat.c: In function 'fat_register_device': fat.c:66:15: warning: variable 'found_partition' set but not used [-Wunused-but-set-variable] Signed-off-by: Wolfgang Denk <wd@denx.de>
* ext2: Cache line align indirection buffersSimon Glass2012-01-05-6/+12
| | | | | | | | Make ext2 use cache line aligned buffers for reading from the filesystem. This is needed when caches are enabled because unaligned cache invalidates are not safe. Signed-off-by: Simon Glass <sjg@chromium.org>
* tools/env: allow overwrite of ethaddr on defaultGrant Erickson2012-01-05-2/+11
| | | | | | | | | | | | | This patch allows the U-Boot user space companion utility, fw_setenv, to overwrite the 'ethaddr' key/value pair if the current value is set to a per-board-configured default. This change allows 'fw_setenv' to match the behavior of 'setenv' / 'env set' on the U-Boot command line. Signed-off-by: Grant Erickson <marathon96@gmail.com> Fixed excessive white space. Signed-off-by: Wolfgang Denk <wd@denx.de>
* Merge branch 'master' of git://git.denx.de/u-boot-armWolfgang Denk2012-01-05-134/+2687
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'master' of git://git.denx.de/u-boot-arm: tegra2: Optimize out-of-tree build for Ventana. tegra: Move boards over to use arch-level board UART function tegra: Add support for UART init in cpu board.c tegra: Add a function mux feature tegra: add clock_ll_start_uart() to enable UART prior to reloc tegra: Move clock_early_init() to arch_cpu_init() tegra: Move cpu_init_cp15() to arch_cpu_init() arm: Tegra: Fix Harmony and Ventana builds in u-boot-tegra/master tegra: Fix build error in plutux, medcom tegra2: Add Avionic Design Medcom support. tegra2: Add Avionic Design Plutux support. tegra2: Add common Avionic Design Tamonten support. tegra2: Move tegra2_mmc_init() prototype to public header. tegra2: Change CONFIG_SYS_TEXT_BASE to 0x00108000. tegra2: Always build with USE_PRIVATE_LIBGCC=yes. tegra2: Plumb in SPI/UART switch code tegra2: spi: Support SPI / UART switch tegra2: Implement SPI / UART GPIO switch tegra2: Enable SPI environment on Seaboard tegra2: config: Enable SPI flash on Seaboard tegra2: spi: Add SPI driver for Tegra2 SOC tegra2: Add UARTB support tegra2: Tidy UART selection arm, davinci: Fix build warnings for cam_enc_4xx Devkit8000: Switch over to enable_gpmc_cs_config arm, davinci: Add support for generating AIS images to the Makefile mkimage: Fix variable length header support arm, da850evm: Add an SPL for SPI boot arm, davinci: Add SPL support for DA850 SoCs sf: Add spi_boot() to allow booting from SPI flash in an SPL spl: display_options.o is required for SPI flash support in SPL ARM: omap3: add support to Technexion twister board ARM: omap3: added common configuration for Technexion TAM3517 vision2: Fix checkpatch warning
| * tegra2: Optimize out-of-tree build for Ventana.Thierry Reding2011-12-24-2/+1
| | | | | | | | | | | | | | | | | | As proposed by Mike Frysinger, mkdir can take more than one argument. Instead of spawning two processes, create both the common and seaboard directories in one go. Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra: Move boards over to use arch-level board UART functionSimon Glass2011-12-24-121/+5
| | | | | | | | | | | | | | | | | | Now that we can set up the UART in common tegra code, make the boards use it. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra: Add support for UART init in cpu board.cSimon Glass2011-12-24-0/+81
| | | | | | | | | | | | | | | | | | | | We add a way of initialising the selected of UARTs prior to relocation. Boards can use the board_init_uart_f() instead of repeating this code themselves. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra: Add a function mux featureSimon Glass2011-12-24-1/+100
| | | | | | | | | | | | | | | | | | | | | | | | funcmux permits selection of config options for particular peripherals, such as the pins that are used for that peripheral, if there are several options. Add UART selection to start with. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra: add clock_ll_start_uart() to enable UART prior to relocSimon Glass2011-12-24-0/+25
| | | | | | | | | | | | | | | | | | | | Most boards will want to enable a UART early. This function provides that feature in Tegra architecture code so the code does not need to be copied on every board. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra: Move clock_early_init() to arch_cpu_init()Simon Glass2011-12-24-3/+3
| | | | | | | | | | | | | | | | | | The clock init is not board specific, so move it into the cpu code. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra: Move cpu_init_cp15() to arch_cpu_init()Simon Glass2011-12-24-3/+4
| | | | | | | | | | | | | | | | | | This call is more of an architecture requirement than a board one, so move it there. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * arm: Tegra: Fix Harmony and Ventana builds in u-boot-tegra/masterTom Warren2011-12-24-3/+4
| | | | | | | | | | | | | | Seaboard changes have removed the need for common/board.o in the Makefile. Propagate this change to the other Tegra2 builds. Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra: Fix build error in plutux, medcomSimon Glass2011-12-24-0/+4
| | | | | | | | | | | | | | | | | | | | We need to define CONFIG_ENV_IS_NOWHERE to avoid this error: cmd_nvedit.c:69:3: error: #error Define one of CONFIG_ENV_IS_IN_... Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra2: Add Avionic Design Medcom support.Thierry Reding2011-12-24-0/+159
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Medcom is a 16:9 15" terminal that is used for patient infotainment in hospitals. Changes in v3: * Remove unused implementation of gpio_config_uart(). * Implement MMC/SD card detection. * Drop board_mmc_getcd() which is now implemented by common Tegra2 code. * Add MAINTAINERS entry. Changes in v2: * No longer override the default CONFIG_SYS_TEXT_BASE setting. Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de> Acked-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra2: Add Avionic Design Plutux support.Thierry Reding2011-12-24-0/+162
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Plutux is a set-top box device based on the Tamonten processor module. It can be connected to a display via an HDMI output. Changes in v3: * Remove unused implementation of gpio_config_uart(). * Implement MMC/SD card detection. * Drop board_mmc_getcd() which is now implemented by common Tegra2 code. * Add MAINTAINERS entry. Changes in v2: * No longer override the default CONFIG_SYS_TEXT_BASE setting. Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de> Acked-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra2: Add common Avionic Design Tamonten support.Thierry Reding2011-12-24-0/+192
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Tamonten is an NVIDIA Tegra2-based SO-DIMM processor module that is derived from the Harmony reference design. Changes in v3: * Remove unused gpio_config_uart(). * Remove call to tegra2_start(). * Use new tegra2_mmc_init(). Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de> Acked-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra2: Move tegra2_mmc_init() prototype to public header.Thierry Reding2011-12-24-5/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | tegra2_mmc_init() is implemented by the Tegra2 MMC driver. Since most of the Tegra2-based boards will need to call it, this commit exports it in the new public asm/arch/mmc.h header file to prevent each board from providing its own prototype. Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de> Acked-by: Stephen Warren <swarren@nvidia.com> Tested-by: Stephen Warren <swarren@nvidia.com> Acked-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra2: Change CONFIG_SYS_TEXT_BASE to 0x00108000.Thierry Reding2011-12-24-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | NVIDIA's flashing tools assume that the bootloader is loaded at address 0x00108000. Instead of requiring non-standard builds of those tools which allow a load address of 0x00E08000, this commit just switches all Tegra2 boards to use the standard load address. Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de> Tested-by: Simon Glass <sjg@chromium.org> Acked-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra2: Always build with USE_PRIVATE_LIBGCC=yes.Thierry Reding2011-12-24-0/+2
| | | | | | | | | | | | | | | | | | | | The AVP on Tegra2 doesn't boot properly when U-Boot is linked against the GCC provided libgcc. To work around this, always build and link against a private libgcc for Tegra2-based boards. Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de> Tested-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra2: Plumb in SPI/UART switch codeSimon Glass2011-12-24-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Seaboard the UART and SPI interfere with each other. This causes the UART to receive spurious zero bytes after SPI transactions and also means that SPI can corrupt a few output characters when it starts up if they are still in the UART buffer. This updates the board to use the SPI/UART switch to avoid the problem. For now this feature is turned off since it needs changes to the NS16550 UART to operate. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra2: spi: Support SPI / UART switchSimon Glass2011-12-24-0/+14
| | | | | | | | | | | | | | | | | | | | Add the SPI / UART switch logic into the Tegra2 SPI driver so that it can co-exist with the NS16550 UART. We need the ns16550.h header for NS16550_t for now. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra2: Implement SPI / UART GPIO switchSimon Glass2011-12-24-1/+231
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Tegra2 Seaboard has the unfortunate feature that SPI and the console UART are multiplexed on the same pins. We need to switch between one and the other during SPI and console activity. This new file implements a switch and keeps track of which peripheral owns the pins. It also flips over the controlling GPIO as needed Since we are adding a second file to board/nvidia/common, we create a proper Makefile there and remove the direct board.o include from board/nvidia/seaboard/Makefile Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra2: Enable SPI environment on SeaboardSimon Glass2011-12-24-2/+13
| | | | | | | | | | | | | | This uses the SPI flash on Seaboard to store an 8KB environment. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra2: config: Enable SPI flash on SeaboardSimon Glass2011-12-24-0/+11
| | | | | | | | | | | | | | The Seaboard includes a Winbond 4MB flash part. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra2: spi: Add SPI driver for Tegra2 SOCTom Warren2011-12-24-0/+347
| | | | | | | | | | | | | | This driver supports SPI on Tegra2, running at 48MHz. Signed-off-by: Tom Warren <twarren@nvidia.com> Acked-by: Mike Frysinger <vapier@gentoo.org>
| * tegra2: Add UARTB supportSimon Glass2011-12-24-0/+10
| | | | | | | | | | | | | | UARTB is used on some boards, so support it here. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * tegra2: Tidy UART selectionSimon Glass2011-12-24-23/+34
| | | | | | | | | | | | | | | | UART selection is done with a lot of #ifdefs. This cleans things up a little. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * arm, davinci: Fix build warnings for cam_enc_4xxChristian Riesch2011-12-24-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | This patch fixes a build warning for the cam_enc_4xx board introduced by commit d6ec0c0dfc70447cf615ae80a952da81f73f16b4: spl.c:35:13: warning: 'gdata' defined but not used spl.c:36:13: warning: 'bdata' defined but not used Signed-off-by: Christian Riesch <christian.riesch@omicron.at> Cc: Tom Rini <trini@ti.com> Cc: Heiko Schocher <hs@denx.de>
| * Devkit8000: Switch over to enable_gpmc_cs_configThomas Weber2011-12-24-7/+12
| | | | | | | | | | | | | | Use enable_gpmc_cs_config instead of local writing timing configuration for GPMC. Signed-off-by: Thomas Weber <weber@corscience.de>
| * arm, davinci: Add support for generating AIS images to the MakefileChristian Riesch2011-12-24-0/+14
| | | | | | | | | | | | | | Signed-off-by: Christian Riesch <christian.riesch@omicron.at> Cc: Stefano Babic <sbabic@denx.de> Cc: Heiko Schocher <hs@denx.de> Cc: Mike Frysinger <vapier@gentoo.org>
| * mkimage: Fix variable length header supportChristian Riesch2011-12-24-48/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Support for variable length images like AIS image was introduced in commit f0662105b674a3874227316abf8536bebc9b5995. A parameter "-s" was also introduced to prohibit copying of the image file automatically in the main program. However, this parameter was implemented incorrectly and the image file was copied nevertheless. Signed-off-by: Christian Riesch <christian.riesch@omicron.at> Cc: Stefano Babic <sbabic@denx.de> Cc: Heiko Schocher <hs@denx.de> Acked-by: Stefano Babic <sbabic@denx.de>
| * arm, da850evm: Add an SPL for SPI bootChristian Riesch2011-12-24-1/+172
| | | | | | | | | | | | | | | | Signed-off-by: Christian Riesch <christian.riesch@omicron.at> Cc: Heiko Schocher <hs@denx.de> Cc: Sandeep Paulraj <s-paulraj@ti.com> Cc: Tom Rini <trini@ti.com> Cc: Sudhakar Rajashekhara <sudhakar.raj@ti.com>
| * arm, davinci: Add SPL support for DA850 SoCsChristian Riesch2011-12-24-2/+35
| | | | | | | | | | | | | | | | | | | | This code adds an SPL for booting from SPI flash on DA850 SoCs. Signed-off-by: Christian Riesch <christian.riesch@omicron.at> Cc: Heiko Schocher <hs@denx.de> Cc: Sandeep Paulraj <s-paulraj@ti.com> Cc: Tom Rini <trini@ti.com> Acked-by: Tom Rini <trini@ti.com>
| * sf: Add spi_boot() to allow booting from SPI flash in an SPLChristian Riesch2011-12-24-0/+66
| | | | | | | | | | | | | | | | Signed-off-by: Christian Riesch <christian.riesch@omicron.at> Cc: Heiko Schocher <hs@denx.de> Cc: Mike Frysinger <vapier@gentoo.org> Cc: Scott Wood <scottwood@freescale.com> Acked-by: Mike Frysinger <vapier@gentoo.org>
| * spl: display_options.o is required for SPI flash support in SPLChristian Riesch2011-12-24-0/+2
| | | | | | | | | | | | Signed-off-by: Christian Riesch <christian.riesch@omicron.at> Cc: Heiko Schocher <hs@denx.de> Cc: Mike Frysinger <vapier@gentoo.org>
| * ARM: omap3: add support to Technexion twister boardStefano Babic2011-12-24-0/+621
| | | | | | | | | | | | | | | | | | | | | | | | | | The twister board is a development board using the TAM3517 SOM. Support for NAND, 2 Ethernet (EMAC and SMC911), USB (EHCI_OMAP). Signed-off-by: Stefano Babic <sbabic@denx.de> CC: Tapani Utrianen <tapani@technexion.com> CC: Tom Rini <tom.rini@gmail.com> CC: Sandeep Paulraj <s-paulraj@ti.com>
| * ARM: omap3: added common configuration for Technexion TAM3517Stefano Babic2011-12-24-0/+361
| | | | | | | | | | | | | | | | | | | | | | The TAM3517 is a SOM module that can be used on custom boards. The patch add a common configuration file that is included by the boards using this module. Signed-off-by: Stefano Babic <sbabic@denx.de> CC: Tapani Utrianen <tapani@technexion.com> CC: Tom Rini <tom.rini@gmail.com> CC: Sandeep Paulraj <s-paulraj@ti.com>
| * vision2: Fix checkpatch warningFabio Estevam2011-12-24-2/+1
| | | | | | | | | | | | | | | | Fix the following checkpatch warning: WARNING: braces {} are not necessary for single statement blocks Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
* | tools/mkenvimage.c: Fix a merge issueHorst Kronstorfer2012-01-05-2/+2
| | | | | | | | | | | | With bfcc40bb09b05c90cc3b1496abb270eb8aa72134 'optopt' was reverted. Signed-off-by: Horst Kronstorfer <hkronsto@frequentis.com>
* | env: remove value from boolean definesIgor Grinberg2012-01-05-7/+7
| | | | | | | | | | | | | | | | | | Several boolean defines have a value assigned. Remove the value as defining the symbol is enough. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> Acked-by: Marek Vasut <marek.vasut@gmail.com> Acked-by: Mike Frysinger <vapier@gentoo.org>
* | common.h: remove value from bool definesIgor Grinberg2012-01-05-8/+8
| | | | | | | | | | | | | | | | Several boolean defines have a value assigned. Remove the value as defining the symbol is enough. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> Acked-by: Mike Frysinger <vapier@gentoo.org>
* | env: factor out the env_get_char_spec() functionIgor Grinberg2012-01-05-39/+9
| | | | | | | | | | | | | | | | | | env_get_char_spec() function is duplicated across multiple environment files. Remove the duplication by providing a default implementation. Add "weak" declaration, so the default implementation can be overridden. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
* | fpga: Spartan-3: let print the progress if configuredStefano Babic2012-01-05-1/+0
| | | | | | | | | | | | | | | | CONFIG_SYS_FPGA_PROG_FEEDBACK was already introduced to print the current status of FPGA loading - an undef in the code made this CONFIG_ useless. Signed-off-by: Stefano Babic <sbabic@denx.de>
* | FPGA: use debug() instead of module debug printfStefano Babic2012-01-05-31/+28
| | | | | | | | | | | | Replace also __FUNCTION__ with standard __func__ Signed-off-by: Stefano Babic <sbabic@denx.de>
* | fpga: add definition for Xilinx Spartan-6 XC6SLX4Stefano Babic2012-01-05-0/+9
| | | | | | | | Signed-off-by: Stefano Babic <sbabic@denx.de>
* | phy: add phy_smsc_init() declarationVladimir Zapolskiy2012-01-05-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | This trivial change removes a compilation warning: ----8<---- phy.c: In function 'phy_init': phy.c:448:2: warning: implicit declaration of function 'phy_smsc_init' ----8<---- Signed-off-by: Vladimir Zapolskiy <vz@mleia.com> Cc: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> Acked-by: Marek Vasut <marek.vasut@gmail.com>
* | fw_env.h: added a few missing definesFrans Meulenbroeks2012-01-05-0/+4
| | | | | | | | | | | | | | | | | | | | The README file lists 4 defined that were not actually present in the .h file but that were needed to get things working with settings compiled in. They are Added these to the .h file (the values above are the ones from the README file) Signed-off-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
* | fat: reset VFAT short alias checksum on first matchSergei Shtylyov2012-01-05-0/+2
| | | | | | | | | | | | | | | | | | | | The VFAT short alias checksum read from a long file name is only overwritten when another long file name appears in a directory list. Until then it renders short file names invisible that have the same checksum. Reset the checksum on first match. Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Martin Mueller <martin.mueller5@de.bosch.com>
* | git-mailrc: Add self to davinci/omap, add tiTom Rini2012-01-05-2/+3
|/ | | | | | | | Adding a 'ti' alias since not all parts are "omap" or "davinci" and adding myself to that alias as co-custodian of u-boot-ti Signed-off-by: Tom Rini <trini@ti.com> Acked-by: Mike Frysinger <vapier@gentoo.org>