summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeLines
* x86: Implement fully relocatable imageGraeme Russ2010-10-07-24/+35
| | | | | | | | u-boot.bin can be loaded at any 4-byte aligned memory location and directly 'jumped' to using the 'go' command using the load address as the start address. Doing so performs a 'warm boot' which skips memory initialisation and other low-level initialisations, relocates U-Boot to upper memory and starts U-Boot in RAM as per normal 'cold boot'
* x86: Use loops instead of memcpy/memset in board_init_fGraeme Russ2010-10-07-17/+33
| | | | | | | Provides a small speed increase and prepares for fully relocatable image. Downside is the TEXT_BASE, bss, load address etc must ALL be aligned on a a 4-byte boundary which is not such a terrible restriction as everything is already 4-byte aligned anyway
* x86: Rearrange linker scriptGraeme Russ2010-10-07-23/+21
| | | | Tidy up the linker script and discard some sections to save space
* x86: Rename linker script symbolsGraeme Russ2010-10-07-36/+33
| | | | Create more generic names for the symbols exported from the linker script
* x86: Set cold/warm boot flagGraeme Russ2010-10-07-16/+13
|
* x86: Place global data below stack before entering CGraeme Russ2010-10-07-37/+37
| | | | | | | By reserving space for the Global Data immediately below the stack during assembly level initialisation, the C declaration of the static global data can be removed, along with the 'RAM Bootstrap' function. This results in cleaner code, and the ability to pass boot-up flags from assembler into C
* x86: Dont clobber %eax after getting memory sizeGraeme Russ2010-10-07-3/+2
| | | | By using another register, reduce code size by one instruction
* x86: Don't clobber %ebxGraeme Russ2010-10-07-7/+12
| | | | %ebx will hold low-level boot flags and must be preserved
* x86: Remove usage of %ebp as a return pointerGraeme Russ2010-10-07-13/+12
| | | | Using %ebp as a return pointer prevents creating 'load anywhere' images
* x86: Move ECC initialisation outside RAM initialisationGraeme Russ2010-10-07-14/+14
| | | | | To allow for 'load anywhere' images, the %ebp return pointer 'hack' must be removed, so we cannot have two 'calls' to get_mem_size
* x86: Remove progress indication in low-level initGraeme Russ2010-10-07-54/+2
| | | | | Progress indication is not relocation friendly so remove it in preperation for full relocatability support
* x86: Fix %ss and %esp in register structure for interruptsGraeme Russ2010-10-07-4/+45
|
* x86: Change compiler optionsGraeme Russ2010-10-07-17/+12
| | | | | | | | | | | Change to: - reparam=3 - no-from-pointer - no-stack-protector - preferred-stack-boundary=2 - no-top-level-reorder These options make the code a little smaller and faster
* x86: Coding Style CleanupGraeme Russ2010-10-07-373/+362
| | | | Perform some basic code cleanups of the x86 files
* x86: Move loading of GTD to C codeGraeme Russ2010-10-07-96/+57
| | | | | Linux has C macros and code to load the GTD after switching to Protected Mode. Using these greatly simplifies the assembler code
* x86: use gc sections to reduce image sizeGraeme Russ2010-10-07-5/+8
| | | | | Follow the discussion of Charles Manning and Mike Frysinger. Using gc_sections helps reduce image size.
* x86: zboot updateGraeme Russ2010-10-07-5/+13
| | | | | | The header of recent Linux Kernels includes the size of the image, and therefore is not needed to be passed to zboot. Still process the third parameter (size of image) in the event that an older kernel is being loaded
* x86: Use TEXT_BASE in linker scriptsGraeme Russ2010-10-07-4/+4
| | | | | | Use TEXT_BASE rather than a hard-coded base address on x86 linker scripts. This will allow any board to define its base link address without having to modify the linker script
* x86: Make CONFIG_RELOC_FIXUP_WORKS generic for all x86 boardsGraeme Russ2010-10-07-2/+2
| | | | | Relocation is not board-specific for the x86 architectrure, so CONFIG_RELOC_FIXUP_WORKS can be defined globally in the config.h
* x86: Remove bi_env from do_bdinfoGraeme Russ2010-10-07-1/+0
| | | | | Commit 55e97429d1e6cf0976711e4e0f29ea924b7e5917 removed the definition from /arch/i386/include/asm/u-boot.h but not its usage in do_bdinfo()
* Merge branch 'master' of git://git.denx.de/u-boot-blackfinWolfgang Denk2010-10-05-23567/+11281
|\
| * Blackfin: otp: fix build after constification of args[]Mike Frysinger2010-10-02-6/+7
| | | | | | | | | | | | | | | | The OTP code does a little shuffling of arguments that aren't really necessary, so use a local variable instead to fix build errors now that the args[] parameter is const. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bf537-pnav: increase monitor lenMike Frysinger2010-10-02-1/+1
| | | | | | | | | | | | | | Building this board for parallel flash fills up the bss section and thus fails to link, so bump up the monitor size a bit. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bf527-ad7160-eval: fix GPIO CS defineMike Frysinger2010-10-02-1/+1
| | | | | | | | | | | | Rather than use a hardcoded "7", use the new Blackfin global define. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bf548-ezkit: bump SPI flash size upMike Frysinger2010-10-02-1/+5
| | | | | | | | | | | | | | | | The current size used (256KiB) is smaller than the LDR created for the bf548-ezkit, so 'run update' doesn't work correctly. So bump up the size a bit by making this flexible per-board config. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: fix MMC init output alignmentMike Frysinger2010-10-02-1/+1
| | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: blackvme: new board portWojtek Skulski2010-10-02-1/+368
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The board includes: * ADSP-BF561 rev. 0.5 * 32-bit SDRAM (2 * MT48LC16M16A2TG or MT48LC32M16A2TG) * Gigabit Ether AX88180 (ASIX) + 88E1111 rev. B2 (Marvell) * SPI boot flash on PF2 (M25P64 8MB, or M25P128 16 MB) * FPGA boot flash on PF3 (M25P64 8MB, or M25P128 16 MB) * Spartan6-LX150 (memory-mapped; both PPIs also connected) * See http://www.skutek.com/ Signed-off-by: Wojtek Skulski <skulski@pas.rochester.edu> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: propagate target cpu defines when building embedded envMike Frysinger2010-10-02-0/+3
| | | | | | | | | | | | | | | | | | | | | | Since we're no longer extracting the env from the target ELF file (since upstream wouldn't take that change), we're back to the problem of cpu defines not properly propagating to the env setup stage. So the embedded env built by the host compiler doesn't match the one that is linked into the u-boot env. Reported-by: Vivi Li <vivi.li@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: cmd_gpio: accept upper case pin namesMike Frysinger2010-10-02-2/+3
| | | | | | | | | | | | | | The intention all along was to accept pin names irrelevant of their case. But I guess I forgot to test/implement support for that. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bf526-ezbrd: enable BootROM-OOB layout when booting from NANDMike Frysinger2010-10-02-2/+3
| | | | | | | | | | | | | | | | | | | | We need to use the Blackfin BootROM-specific OOB layout when we boot out of NAND as that is what the on-chip ROM expects. Also need to increase the monitor size a little to accommodate the extra NAND code overhead. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: adi config: enable nand lock/unlock supportMike Frysinger2010-10-02-0/+1
| | | | | | | | | | | | | | | | We use the lock/unlock options in our default nand code, so enabl support for the options. Reported-by: Vivi Li <vivi.li@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bct-brettl2: new board portPeter Meerwald2010-10-02-0/+590
| | | | | | | | | | Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: adi config: allow boards to tweak a little moreMike Frysinger2010-10-02-8/+14
| | | | | | | | | | | | Let people easily override bootdelay and network settings. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: cmd_gpio: return gpio value to callerMike Frysinger2010-10-02-1/+1
| | | | | | | | | | | | | | Make the GPIO command usable in a scripting environment by returning the GPIO value rather than always 0. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bf527-sdp: new board portMike Frysinger2010-10-02-0/+245
| | | | | | | | | | | | Support for the Blackfin System Development Platform (SDP) base module. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: adi config: add a hook for boards to append the envMike Frysinger2010-10-02-1/+5
| | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: adi config: add an "all spi flashes" option to unify board listsMike Frysinger2010-10-02-12/+15
| | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: support a 3rd gpio cfi pinPeter Meerwald2010-10-02-1/+14
| | | | | | | | | | Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: cmd_gpio: document/extend input sub-optionMike Frysinger2010-10-02-14/+13
| | | | | | | | | | | | | | | | The input sub command was missing from the help text, and it didn't show the actual value currently read on the GPIO. This allows people to read the value of input pins. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: move CONFIG_BFIN_CPU to board config.mkMike Frysinger2010-10-02-34/+52
| | | | | | | | | | | | | | | | | | The CONFIG_BFIN_CPU option is largely used in the build system, so move it out of the board config.h and into the board config.mk. It'd be nice to keep everything in the config.h, but the patch to extract that value early was rejected. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bf561: merge headersMike Frysinger2010-10-02-1930/+1906
| | | | | | | | | | | | | | Only the BF561 port was using the common dual core headers, so merge them into the BF561 specific headers. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bf533: merge headersMike Frysinger2010-10-02-1342/+1293
| | | | | | | | | | | | | | Only the BF533 port was using the common extended headers, so merge them into the BF533 specific headers. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: unify core MMRsMike Frysinger2010-10-02-3456/+350
| | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bf52x: unify arch header duplicationMike Frysinger2010-10-02-2316/+6
| | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bf537: unify arch header duplicationMike Frysinger2010-10-02-295/+6
| | | | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: punt old *p style volatile MMR definesMike Frysinger2010-10-02-13223/+0
| | | | | | | | | | | | These are unused now, so punt them to clean things up. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bf527-ad7160-eval: convert from old style MMR macrosMike Frysinger2010-10-02-1/+1
| | | | | | | | | | | | | | The old MMR defines are being scrubbed, so convert the driver to use the new standard helper macros. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: cm-bf548: video: convert from old style MMR macrosMike Frysinger2010-10-02-11/+12
| | | | | | | | | | | | | | The old MMR defines are being scrubbed, so convert the driver to use the new standard helper macros. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bf548-ezkit: video: convert from old style MMR macrosMike Frysinger2010-10-02-10/+11
| | | | | | | | | | | | | | The old MMR defines are being scrubbed, so convert the driver to use the new standard helper macros. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| * Blackfin: bf527-ezkit: video: convert from old style MMR macrosMike Frysinger2010-10-02-36/+40
| | | | | | | | | | | | | | The old MMR defines are being scrubbed, so convert the driver to use the new standard helper macros. Signed-off-by: Mike Frysinger <vapier@gentoo.org>