summaryrefslogtreecommitdiff
path: root/board
Commit message (Collapse)AuthorAgeLines
* ARM: implement relocation for ARM926Heiko Schocher2010-09-19-11/+45
| | | | | | | | | | | | | | | | | | | | | Change the implementation for arm926 to relocate the code to an arbitrary address in RAM. Adapt the TX25 (i.MX25), magnesium board to test the changes. On the tx25 board TEXT_BASE is set to the final relocation address to prevent one more copying of u-boot code when relocating. More info see: doc/README.arm-relocation da850 board: Tested-by: Ben Gardiner <bengardiner@nanometrics.ca> Portions of this work were supported by funding from the CE Linux Forum. Signed-off-by: Heiko Schocher <hs@denx.de> Cc: Ben Gardiner <bengardiner@nanometrics.ca>
* ARM: implement relocation for ARM V7 (OMAP)Heiko Schocher2010-09-19-1/+1
| | | | | | | | | | | | Change the implementation for ARM V7 to relocate the code to an arbitrary address in RAM. Adapt the Beagle board (Cortex A8) to test the changes. Portions of this work were supported by funding from the CE Linux Forum. Signed-off-by: Heiko Schocher <hs@denx.de>
* ARM: implement relocation for ARM11Heiko Schocher2010-09-19-42/+49
| | | | | | | | | | | | Change the implementation for ARM11 to relocate the code to an arbitrary address in RAM. Tested on the qong board. Portions of this work were supported by funding from the CE Linux Forum. Signed-off-by: Heiko Schocher <hs@denx.de>
* New implementation for internal handling of environment variables.Wolfgang Denk2010-09-19-20/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Motivation: * Old environment code used a pessimizing implementation: - variable lookup used linear search => slow - changed/added variables were added at the end, i. e. most frequently used variables had the slowest access times => slow - each setenv() would calculate the CRC32 checksum over the whole environment block => slow * "redundant" envrionment was locked down to two copies * No easy way to implement features like "reset to factory defaults", or to select one out of several pre-defined (previously saved) sets of environment settings ("profiles") * No easy way to import or export environment settings ====================================================================== API Changes: - Variable names starting with '#' are no longer allowed I didn't find any such variable names being used; it is highly recommended to follow standard conventions and start variable names with an alphanumeric character - "printenv" will now print a backslash at the end of all but the last lines of a multi-line variable value. Multi-line variables have never been formally defined, allthough there is no reason not to use them. Now we define rules how to deal with them, allowing for import and export. - Function forceenv() and the related code in saveenv() was removed. At the moment this is causing build problems for the only user of this code (schmoogie - which has no entry in MAINTAINERS); may be fixed later by implementing the "env set -f" feature. Inconsistencies: - "printenv" will '\\'-escape the '\n' in multi-line variables, while "printenv var" will not do that. ====================================================================== Advantages: - "printenv" output much better readable (sorted) - faster! - extendable (additional variable properties can be added) - new, powerful features like "factory reset" or easy switching between several different environment settings ("profiles") Disadvantages: - Image size grows by typically 5...7 KiB (might shrink a bit again on systems with redundant environment with a following patch series) ====================================================================== Implemented: - env command with subcommands: - env print [arg ...] same as "printenv": print environment - env set [-f] name [arg ...] same as "setenv": set (and delete) environment variables ["-f" - force setting even for read-only variables - not implemented yet.] - end delete [-f] name not implemented yet ["-f" - force delete even for read-only variables] - env save same as "saveenv": save environment - env export [-t | -b | -c] addr [size] export internal representation (hash table) in formats usable for persistent storage or processing: -t: export as text format; if size is given, data will be padded with '\0' bytes; if not, one terminating '\0' will be added (which is included in the "filesize" setting so you can for exmple copy this to flash and keep the termination). -b: export as binary format (name=value pairs separated by '\0', list end marked by double "\0\0") -c: export as checksum protected environment format as used for example by "saveenv" command addr: memory address where environment gets stored size: size of output buffer With "-c" and size is NOT given, then the export command will format the data as currently used for the persistent storage, i. e. it will use CONFIG_ENV_SECT_SIZE as output block size and prepend a valid CRC32 checksum and, in case of resundant environment, a "current" redundancy flag. If size is given, this value will be used instead of CONFIG_ENV_SECT_SIZE; again, CRC32 checksum and redundancy flag will be inserted. With "-b" and "-t", always only the real data (including a terminating '\0' byte) will be written; here the optional size argument will be used to make sure not to overflow the user provided buffer; the command will abort if the size is not sufficient. Any remainign space will be '\0' padded. On successful return, the variable "filesize" will be set. Note that filesize includes the trailing/terminating '\0' byte(s). Usage szenario: create a text snapshot/backup of the current settings: => env export -t 100000 => era ${backup_addr} +${filesize} => cp.b 100000 ${backup_addr} ${filesize} Re-import this snapshot, deleting all other settings: => env import -d -t ${backup_addr} - env import [-d] [-t | -b | -c] addr [size] import external format (text or binary) into hash table, optionally deleting existing values: -d: delete existing environment before importing; otherwise overwrite / append to existion definitions -t: assume text format; either "size" must be given or the text data must be '\0' terminated -b: assume binary format ('\0' separated, "\0\0" terminated) -c: assume checksum protected environment format addr: memory address to read from size: length of input data; if missing, proper '\0' termination is mandatory - env default -f reset default environment: drop all environment settings and load default environment - env ask name [message] [size] same as "askenv": ask for environment variable - env edit name same as "editenv": edit environment variable - env run same as "run": run commands in an environment variable ====================================================================== TODO: - drop default env as implemented now; provide a text file based initialization instead (eventually using several text files to incrementally build it from common blocks) and a tool to convert it into a binary blob / object file. - It would be nice if we could add wildcard support for environment variables; this is needed for variable name auto-completion, but it would also be nice to be able to say "printenv ip*" or "printenv *addr*" - Some boards don't link any more due to the grown code size: DU405, canyonlands, sequoia, socrates. => cc: Matthias Fuchs <matthias.fuchs@esd-electronics.com>, Stefan Roese <sr@denx.de>, Heiko Schocher <hs@denx.de> - Dropping forceenv() causes build problems on schmoogie => cc: Sergey Kubushyn <ksi@koi8.net> - Build tested on PPC and ARM only; runtime tested with NOR and NAND flash only => needs testing!! Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Matthias Fuchs <matthias.fuchs@esd-electronics.com>, Cc: Stefan Roese <sr@denx.de>, Cc: Heiko Schocher <hs@denx.de> Cc: Sergey Kubushyn <ksi@koi8.net>
* 4xx: adjust TEXT_BASE to increase U-Boot image sizeWolfgang Denk2010-09-19-7/+3
| | | | | | | | | | On some boards (canyonlands, luan, sequoia) we need more room for the U-Boot image to allow for new features like the new environment code. Shift TEXT_BASE as needed. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Stefan Roese <sr@denx.de> Acked-by: Stefan Roese <sr@denx.de>
* socrates: adjust TEXT_BASE to increase U-Boot image sizeWolfgang Denk2010-09-19-1/+1
| | | | | | | We need more room for the U-Boot image. Shift TEXT_BASE as needed. Signed-off-by: Wolfgang Denk <wd@denx.de>
* x86: Remove Unmaintained BoardsGraeme Russ2010-09-13-3963/+0
| | | | | | The SC520 CDP boards originally implemented by Daniel Engström are now very broken. Attempts to contact Daniel via the email address on the copyright notice have failed. Remove these boards from mainline
* Prepare v2010.09-rc1v2010.09-rc1Wolfgang Denk2010-09-10-4/+2
| | | | | | Coding style cleanup. Signed-off-by: Wolfgang Denk <wd@denx.de>
* Merge branch 'master' of git://git.denx.de/u-boot-tiWolfgang Denk2010-09-09-80/+258
|\
| * ARMV7: Fix pad mux for Panda LEDsRicardo Salveti de Araujo2010-09-08-22/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | Correctly set PAD1_FREF_CLK4_REQ and PAD0_FREF_CLK4_OUT to enable and activate both LEDs while setting pad mux. Since this increases the line length, this patch also adjusts the white space in this section of code to allign the pad mux signal description comments. Signed-off-by: Ricardo Salveti de Araujo <ricardo.salveti@canonical.com> Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
| * ARMV7: OMAP: Overo: Autodetect presence/absence of transceiver on mmc2Steve Sakoman2010-09-08-2/+80
| | | | | | | | | | | | | | | | | | | | An upcoming version of Overo uses a Wifi/BT module with 1.8V signaling, eliminating the need for an external transceiver to handle the level shifting. This patch detects whether an external transceiver is present and adjusts the pinmux settings as appropriate. Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
| * ARMV7: OMAP3: Add support for Beagle xMSteve Sakoman2010-09-08-5/+44
| | | | | | | | | | | | | | | | This patch adds support for the Beagle xM. It uses the board ID GPIO bits to recognize this revision and perform appropriate setup. Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
| * ARMV7: OMAP: Configure Overo's second network chipSteve Sakoman2010-09-08-9/+19
| | | | | | | | | | | | | | | | | | Confiures GPMC timings for both chips and also configures pinmux for GPIO_65, which is used as the interrupt signal for the second chip Signed-off-by: Scott Ellis <scott@jumpnowtek.com> Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
| * ARMV7: OMAP: Add detection and support for Beagle C4 revisionSteve Sakoman2010-09-08-39/+58
| | | | | | | | | | | | | | | | | | This patch enhances the revision detection function and adds support for the C4 revision. The board revision is printed and approriate revision specific setup is done automatically. Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
| * ARMV7: OMAP: Add board revision detection for OveroSteve Sakoman2010-09-08-3/+35
| | | | | | | | | | | | | | | | | | | | | | The latest Overo COM modules encode their revision number on GPIOs 115, 113, and 112. All boards to date have no pullups on these pins and hence appear as revision 0. This patch reads and prints the revision information. Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
| * ARMV7: OMAP: Enable input driver on Overo's MMC1_CLK and MMC3_CLK pinmux setupSteve Sakoman2010-09-08-2/+2
| | | | | | | | | | | | | | | | This patch modifies the pinmux setup for MMC1_CLK and MMC3_CLK to enable the input driver. MMC2_CLK was already properly configured. Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
* | Merge branch 'avr32' of git://git.denx.de/u-boot-atmelWolfgang Denk2010-09-08-15/+85
|\ \
| * | avr32: Add simple paging supportHaavard Skinnemoen2010-09-03-0/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the MMU hardware to set up 1:1 mappings between physical and virtual addresses. This allows us to bypass the cache when accessing the flash without having to do any physical-to-virtual address mapping in the CFI driver. The virtual memory mappings are defined at compile time through a sorted array of virtual memory range objects. When a TLB miss exception happens, the exception handler does a binary search through the array until it finds a matching entry and loads it into the TLB. The u-boot image itself is covered by a fixed TLB entry which is never replaced. This makes the 'saveenv' command work again on ATNGW100 and other boards using the CFI driver, hopefully without breaking any rules. Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
| * | avr32: Use uncached() macro to get an address for SDRAM initHaavard Skinnemoen2010-09-03-15/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The paging system which is required to set up caching properties has not yet been initialized when the SDRAM is initialized. So when the map_physmem() function is converted to return the physical address unchanged, the SDRAM initialization will break on some boards. The avr32-specific uncached() macro will return an address which will always cause uncached accessed to be made. Since this happens in the board code, using avr32-specific features should be ok, and will allow the SDRAM initialization to keep working. Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
* | | Merge branch 'at91' of git://git.denx.de/u-boot-atmelWolfgang Denk2010-09-08-85/+84
|\ \ \
| * | | cpuat91: convert to new at91 soc architectureEric Bénard2010-08-20-31/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | convert the board to the new soc architecture update default config i2c upgrade taken from eb_cpux9k2.h & board/BuS/eb_cpux9k2/cpux9k2.c Signed-off-by: Eric Bénard <eric@eukrea.com> Signed-off-by: Reinhard Meyer <u-boot@emk-elektronik.de>
| * | | at91: Enabeling USB host on meesc boardDaniel Gorsulowski2010-08-20-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | There was an redesign, so USB is available now. Signed-off-by: Daniel Gorsulowski <Daniel.Gorsulowski@esd.eu> Signed-off-by: Reinhard Meyer <u-boot@emk-elektronik.de>
| * | | at91: Update meesc board to new SoC accessDaniel Gorsulowski2010-08-20-54/+58
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | * convert meesc board to use c stucture SoC access * change gpio access to at91_gpio syntax * moved CONFIG_SYS_HZ below board and cpu defines (purely cosmetic) Signed-off-by: Daniel Gorsulowski <Daniel.Gorsulowski@esd.eu> Signed-off-by: Reinhard Meyer <u-boot@emk-elektronik.de>
* | | Merge branch 'master' of git://git.denx.de/u-boot-samsungWolfgang Denk2010-09-08-11/+12
|\ \ \
| * | | ARMV7: S5P: rename the member of gpio structureMinkyu Kang2010-08-30-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Typically we declare the name of gpio structure to "gpio", so it was duplicated around the name. (e.g: gpio->gpio_a) This patch modified the naming that is removing "gpio_". Signed-off-by: Minkyu Kang <mk7.kang@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
| * | | S5P: Use accessor functions instead of SoC specific defines to access the ↵Minkyu Kang2010-08-17-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | base address This patch is intended to prepare the other S5P SoC. (s5pc210) If use SoC specific defines then can't share with other SoC. So, make the accessor functions for access the base address by common way. Signed-off-by: Minkyu Kang <mk7.kang@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
* | | | Merge branch 'master' of /home/wd/git/u-boot/masterWolfgang Denk2010-09-07-155/+194
|\ \ \ \ | | |_|/ | |/| |
| * | | Merge branch 'master' of git://git.denx.de/u-boot-mipsWolfgang Denk2010-09-07-6/+6
| |\ \ \
| | * | | MIPS: update the MIPS u-boot.ldsXiangfu Liu2010-09-04-6/+6
| | | |/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | From the document, if set all arguments in "OUTPUT_FORMAT" to "tradbigmips", then even add "-EL" to gcc we still get EB format. pb1x00 is only used in Little-endian, so its default endian should be set to LE. Signed-off-by: Xiangfu Liu <xiangfu@openmobilefree.net> Signed-off-by: Shinya Kuribayashi <skuribay@pobox.com>
| * | | Merge branch 'master' of git://git.denx.de/u-boot-shWolfgang Denk2010-09-07-123/+143
| |\ \ \
| | * | | sh: Update lowlevel_init.S of mpr2Nobuhiro Iwamatsu2010-08-30-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix data size. Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
| | * | | sh: Update lowlevel_init.S of ms7750seNobuhiro Iwamatsu2010-08-30-7/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix data size. Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
| | * | | sh: Update lowlevel_init.S of ms7720seNobuhiro Iwamatsu2010-08-30-14/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix data size. Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
| | * | | sh: Update lowlevel_init.S of ap325rxaNobuhiro Iwamatsu2010-08-30-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix data size. Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
| | * | | sh: Update lowlevel_init.S of r2dplusNobuhiro Iwamatsu2010-08-30-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix data size. Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
| | * | | sh: Update lowlevel_init.S of espt-gigaNobuhiro Iwamatsu2010-08-30-20/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix data size. Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
| | * | | sh: Update lowlevel_init.S of sh7763rdpNobuhiro Iwamatsu2010-08-30-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix data size. Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
| | * | | sh: Update lowlevel_init.S of MigoRNobuhiro Iwamatsu2010-08-30-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix data size. Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
| | * | | sh: Update lowlevel_init.S of sh7785lcrNobuhiro Iwamatsu2010-08-30-31/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix data size. Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
| | * | | sh: Update lowlevel_init.S of rsk7203Nobuhiro Iwamatsu2010-08-30-37/+48
| | |/ / | | | | | | | | | | | | | | | | | | | | Update data address size and fix typo of register. Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
| * | | Fix parameters to support RDIMM for P2020DSYork Sun2010-08-31-2/+2
| | | | | | | | | | | | | | | | | | | | Signed-off-by: York Sun <yorksun@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
| * | | powerpc/83xx: Fix build issue with ve8313 board due to lbus changesKumar Gala2010-08-19-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We get two build errors: fsl_elbc_nand.c: In function 'fsl_elbc_run_command': fsl_elbc_nand.c:231: error: 'fsl_lbc_t' has no member named 'lsor' make[1]: *** [/work/wd/tmp-ppc/drivers/mtd/nand/fsl_elbc_nand.o] Error 1 and ve8313.c: In function 'initdram': ve8313.c:104: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token ve8313.c:104: error: 'lbc' undeclared (first use in this function) ve8313.c:104: error: (Each undeclared identifier is reported only once ve8313.c:104: error: for each function it appears in.) ve8313.c:104: error: 'immap_t' has no member named 'lbus' make[1]: *** [ve8313.o] Error 1 make: *** [board/ve8313/libve8313.a] Error 2 Due to changes to unifiy local bus struct definitions. Reported-by: Wolfgang Denk <wd@denx.de> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
| * | | powerpc/85xx: Fix SRIO LAW setup on corenet_ds boardsLian Minghuan2010-08-19-22/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In function board_early_init_r(), serdes will not be initialize yet. Thus sRIO was always considered disabled. Move the check for sRIO into misc_init_r() which is called after fsl_serdes_init(). Also, fixed warning associated with gur variable possibly not being used. Signed-off-by: Roy Zang <tie-fei.zang@freescale.com> Signed-off-by: Lian Minghuan <B31939@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
| * | | powerpc/8xxx: Fix quad-rank DIMMs support on corenet_ds board.york2010-08-19-1/+17
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | The board specific parameters associated with quad rank dimms where missing. This fixes it so the board will function if quad rank dimms are placed in it. Signed-off-by: York Sun <yorksun@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* | | Merge branch 'master' of /home/wd/git/u-boot/masterWolfgang Denk2010-08-18-0/+29
|\ \ \ | |/ /
| * | Blackfin: shutdown video DMA when booting LinuxMichael Hennerich2010-08-11-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In case there is no frame buffer driver present in Linux to hand over the PPI LCD DMA upon boot, the DMA initiated by u-boot to display the splash screen runs unattended. Therefore always stop the video driver in u-boot before starting Linux. If people don't want this behavior, then they can simply stub out the video_stop() function in their board video driver. Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | | Merge branch 'master' of git://git.denx.de/u-boot-tiWolfgang Denk2010-08-12-39/+26
|\ \ \ | |/ /
| * | Merge branch 'master' of git://git.denx.de/u-boot-armWolfgang Denk2010-08-10-45/+668
| |\ \
| * \ \ Merge branch 'master' of git://git.denx.de/u-boot-netWolfgang Denk2010-08-10-22/+22
| |\ \ \
| | * | | miiphy: constify device nameMike Frysinger2010-08-09-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The driver name does not need to be writable, so constify it. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>