summaryrefslogtreecommitdiff
path: root/arch/i386
Commit message (Collapse)AuthorAgeLines
* x86: Rename i386 to x86Graeme Russ2011-04-13-8631/+0
| | | | Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
* x86: Code cleanupGraeme Russ2011-04-13-176/+166
| | | | | | | | | Make the copyright notices in the x86 files consistent and update them with proper attributions for recent updates Also fix a few comment style/accuracy and whitespace/blank line issues Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
* eNET: Remove config.mkGraeme Russ2011-04-13-2/+3
| | | | | | | | | | | By including <config.h> in the ld script, CONFIG_SYS_MONITOR_LEN (defined in the boards config file) can be used in lieu of FLASH_SIZE (defined in the board specific config.mk) As this is the last remaining entry in the board specific config.mk, this file can now be removed Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
* Make STANDALONE_LOAD_ADDR configurable per boardWolfgang Denk2011-04-12-1/+1
| | | | | | | | | | | | | Rename STANDALONE_LOAD_ADDR into CONFIG_STANDALONE_LOAD_ADDR and allow that the architecture-specific default value gets overwritten by defining the value in the board header file. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Mike Frysinger <vapier@gentoo.org> Cc: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp> Cc: Daniel Hellstrom <daniel@gaisler.com> Cc: Tsi Chung Liew <tsi-chung.liew@freescale.com> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
* Coding Style cleanup: remove trailing empty linesWolfgang Denk2011-03-27-1/+0
| | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* Introduce a new linker flag LDFLAGS_FINALHaiying Wang2011-03-22-1/+1
| | | | | | | | | | | | | | | commit 8aba9dceebb14144e07d19593111ee3a999c37fc Divides variable of linker flags to LDFLAGS-u-boot and LDFLAGS breaks the usage of --gc-section to build nand_spl. We still need linker option --gc-section for every uboot image, not only the main one. LDFLAGS_FINAL passes the --gc-sections to each uboot image. To get the proper linker flags, we use LDFLAGS and LDFLAGS_FINAL to replace PLATFORM_LDFLAGS in the Makefile of each nand_spl board. Signed-off-by: Scott Wood <scottwood@freescale.com> Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com>
* sc520: Release CAR and enable cachingGraeme Russ2011-02-12-5/+11
|
* x86: Convert board_init_f to use an init_sequenceGraeme Russ2011-02-12-41/+29
|
* x86: Rearrange function calls in board_init_fGraeme Russ2011-02-12-8/+8
|
* x86: Split board_init_f() into init_fnc_t compatible functionsGraeme Russ2011-02-12-49/+74
|
* x86: Fix incorrect usage of relocation offsetGraeme Russ2011-02-12-6/+6
| | | | | x86 has always used relocation offset in the opposite sense to the ELF standard - Fix this
* x86: Move console initialisation into board_init_fGraeme Russ2011-02-12-3/+12
|
* x86: Move test for cold boot into init functionsGraeme Russ2011-02-12-13/+11
|
* x86: Move call to dram_init_f into board_init_fGraeme Russ2011-02-12-3/+4
|
* x86: Defer setup of final stackGraeme Russ2011-02-12-17/+33
|
* sc520: Move RAM sizing code from asm to CGraeme Russ2011-02-12-755/+610
|
* x86: Use Cache-As-RAM for initial stackGraeme Russ2011-02-12-21/+115
|
* x86: Move initial gd to fixed locationGraeme Russ2011-02-12-19/+36
|
* sc520: Remove printf calls from cpu_init_fGraeme Russ2011-02-12-2/+0
| | | | | In later patches, cpu_init_f will be called before console has been initialised and printf will not be legitimately available
* sc520: Move board specific settings to board init functionGraeme Russ2011-02-12-19/+0
|
* sc520: Define MMCR address in include fileGraeme Russ2011-02-12-36/+51
|
* x86: Make cpu init functions weakGraeme Russ2011-02-12-10/+17
|
* x86: Call early_board_init when warm bootingGraeme Russ2011-02-12-5/+5
| | | | | | | | | | early_board_init has been skipped to avoid SDRAM corruption in the case that a fully relocatable image has been loaded into SDRAM and is being executed from SDRAM. x86 is being aligned with other architectures (ARM and PPC in particlar) and will be using Cache-As-RAM to run a C environment from Flash (or SRAM if you have some). early_board_init may be needed to assist in the setup of Cache-As-RAM and the early C environment
* x86: Add processor flags header from linuxGraeme Russ2011-02-12-10/+121
|
* x86: Move Global Descriptor Table defines to processor.hGraeme Russ2011-02-12-10/+7
|
* x86: Add stack dump to register dumpGraeme Russ2011-02-12-0/+16
|
* x86: Fix mangled umlautsGraeme Russ2011-02-12-2/+2
| | | | | git mergetool has a nasty habit of mangling umlats - fix ones that have been missed in previous submissions
* sc520: Sort MakefileGraeme Russ2011-02-12-1/+1
|
* x86: Parametize values used in linker scriptGraeme Russ2011-02-12-20/+19
|
* x86: Align config.mk and linker scripts with other archesGraeme Russ2011-02-12-8/+114
|
* x86: Fix definition of global_data struct for asm-offsets.cGraeme Russ2011-02-12-1/+1
|
* Divides variable of linker flags to LDFLAGS-u-boot and LDFLAGSNobuhiro Iwamatsu2011-01-25-1/+2
| | | | | | | | | | Linker needs to use the proper endian/bfd flags even when doing partial linking. LDFLAGS_u-boot sets linker option which is called it when U-boot is built (u-boot final). LDFLAGS sets necessary option by partial linking (use in cmd_link_o_target). CC: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
* Switch from archive libraries to partial linkingSebastien Carlier2010-11-17-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | Before this commit, weak symbols were not overridden by non-weak symbols found in archive libraries when linking with recent versions of binutils. As stated in the System V ABI, "the link editor does not extract archive members to resolve undefined weak symbols". This commit changes all Makefiles to use partial linking (ld -r) instead of creating library archives, which forces all symbols to participate in linking, allowing non-weak symbols to override weak symbols as intended. This approach is also used by Linux, from which the gmake function cmd_link_o_target (defined in config.mk and used in all Makefiles) is inspired. The name of each former library archive is preserved except for extensions which change from ".a" to ".o". This commit updates references accordingly where needed, in particular in some linker scripts. This commit reveals board configurations that exclude some features but include source files that depend these disabled features in the build, resulting in undefined symbols. Known such cases include: - disabling CMD_NET but not CMD_NFS; - enabling CONFIG_OF_LIBFDT but not CONFIG_QE. Signed-off-by: Sebastien Carlier <sebastien.carlier@gmail.com>
* Replace CONFIG_RELOC_FIXUP_WORKS by CONFIG_NEEDS_MANUAL_RELOCWolfgang Denk2010-10-29-2/+0
| | | | | | | | | | | By now, the majority of architectures have working relocation support, so the few remaining architectures have become exceptions. To make this more obvious, we make working relocation now the default case, and flag the remaining cases with CONFIG_NEEDS_MANUAL_RELOC. Signed-off-by: Wolfgang Denk <wd@denx.de> Tested-by: Heiko Schocher <hs@denx.de> Tested-by: Reinhard Meyer <u-boot@emk-elektronik.de>
* Replace CONFIG_SYS_GBL_DATA_SIZE by auto-generated valueWolfgang Denk2010-10-26-1/+1
| | | | | | | | | | | | | | | | | | CONFIG_SYS_GBL_DATA_SIZE has always been just a bad workarond for not being able to use "sizeof(struct global_data)" in assembler files. Recent experience has shown that manual synchronization is not reliable enough. This patch renames CONFIG_SYS_GBL_DATA_SIZE into GENERATED_GBL_DATA_SIZE which gets automatically generated by the asm-offsets tool. In the result, all definitions of this value can be deleted from the board config files. We have to make sure that all files that reference such data include the new <asm-offsets.h> file. No other changes have been done yet, but it is obvious that similar changes / simplifications can be done for other, related macro definitions as well. Signed-off-by: Wolfgang Denk <wd@denx.de> Acked-by: Kumar Gala <galak@kernel.crashing.org>
* Rename TEXT_BASE into CONFIG_SYS_TEXT_BASEWolfgang Denk2010-10-18-2/+2
| | | | | | | | | | | | The change is currently needed to be able to remove the board configuration scripting from the top level Makefile and replace it by a simple, table driven script. Moving this configuration setting into the "CONFIG_*" name space is also desirable because it is needed if we ever should move forward to a Kconfig driven configuration system. Signed-off-by: Wolfgang Denk <wd@denx.de>
* 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-16/+31
| | | | | | | 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-2/+3
| | | | Tidy up the linker script and discard some sections to save space
* x86: Rename linker script symbolsGraeme Russ2010-10-07-24/+24
| | | | 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-10/+10
| | | | 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-42/+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