1. 07 12月, 2013 1 次提交
  2. 15 10月, 2013 1 次提交
  3. 24 9月, 2013 1 次提交
    • J
      ARM: use r9 for gd · fe1378a9
      Jeroen Hofstee 提交于
      To be more EABI compliant and as a preparation for building
      with clang, use the platform-specific r9 register for gd
      instead of r8.
      
      note: The FIQ is not updated since it is not used in u-boot,
      and under discussion for the time being.
      
      The following checkpatch warning is ignored:
      WARNING: Use of volatile is usually wrong: see
      Documentation/volatile-considered-harmful.txt
      Signed-off-by: NJeroen Hofstee <jeroen@myspectrum.nl>
      cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
      fe1378a9
  4. 23 9月, 2013 2 次提交
  5. 15 8月, 2013 1 次提交
  6. 24 7月, 2013 1 次提交
  7. 22 6月, 2013 1 次提交
  8. 23 5月, 2013 1 次提交
  9. 12 4月, 2013 1 次提交
  10. 25 3月, 2013 1 次提交
  11. 16 3月, 2013 1 次提交
  12. 04 10月, 2012 1 次提交
  13. 15 5月, 2012 2 次提交
  14. 30 3月, 2012 1 次提交
  15. 04 11月, 2011 1 次提交
    • W
      Reduce build times · cca4e4ae
      Wolfgang Denk 提交于
      U-Boot Makefiles contain a number of tests for compiler features etc.
      which so far are executed again and again.  On some architectures
      (especially ARM) this results in a large number of calls to gcc.
      
      This patch makes sure to run such tests only once, thus largely
      reducing the number of "execve" system calls.
      
      Example: number of "execve" system calls for building the "P2020DS"
      (Power Architecture) and "qong" (ARM) boards, measured as:
      	-> strace -f -e trace=execve -o /tmp/foo ./MAKEALL <board>
      	-> grep execve /tmp/foo | wc -l
      
      	Before: After:	Reduction:
      ==================================
      P2020DS 20555	15205	-26%
      qong	31692	14490	-54%
      
      As a result, built times are significantly reduced, typically by
      30...50%.
      Signed-off-by: NWolfgang Denk <wd@denx.de>
      Cc: Andy Fleming <afleming@gmail.com>
      Cc: Kumar Gala <galak@kernel.crashing.org>
      Cc: Albert Aribaud <albert.aribaud@free.fr>
      cc: Graeme Russ <graeme.russ@gmail.com>
      cc: Mike Frysinger <vapier@gentoo.org>
      Tested-by: NGraeme Russ <graeme.russ@gmail.com>
      Tested-by: NMatthias Weisser <weisserm@arcor.de>
      Tested-by: NSanjeev Premi <premi@ti.com>
      Tested-by: NSimon Glass <sjg@chromium.org>
      Tested-by: NMacpaul Lin <macpaul@gmail.com>
      Acked-by: NMike Frysinger <vapier@gentoo.org>
      cca4e4ae
  16. 26 7月, 2011 1 次提交
  17. 23 6月, 2011 1 次提交
  18. 30 4月, 2011 1 次提交
    • S
      Handle most LDSCRIPT setting centrally · 83b7e2a7
      Scott Wood 提交于
      Currently, some linker scripts are found by common code in config.mk.
      Some are found using CONFIG_SYS_LDSCRIPT, but the code for that is
      sometimes in arch config.mk and sometimes in board config.mk.  Some
      are found using an arch-specific rule for looking in CPUDIR, etc.
      
      Further, the powerpc config.mk rule relied on CONFIG_NAND_SPL
      when it really wanted CONFIG_NAND_U_BOOT -- which covered up the fact
      that not all NAND_U_BOOT builds actually wanted CPUDIR/u-boot-nand.lds.
      
      Replace all of this -- except for a handful of boards that are actually
      selecting a linker script in a unique way -- with centralized ldscript
      finding.
      
      If board code specifies LDSCRIPT, that will be used.
      Otherwise, if CONFIG_SYS_LDSCRIPT is specified, that will be used.
      
      If neither of these are specified, then the central config.mk will
      check for the existence of the following, in order:
      
      $(TOPDIR)/board/$(BOARDDIR)/u-boot-nand.lds (only if CONFIG_NAND_U_BOOT)
      $(TOPDIR)/$(CPUDIR)/u-boot-nand.lds (only if CONFIG_NAND_U_BOOT)
      $(TOPDIR)/board/$(BOARDDIR)/u-boot.lds
      $(TOPDIR)/$(CPUDIR)/u-boot.lds
      
      Some boards (sc3, cm5200, munices) provided their own u-boot.lds that
      were dead code, because they were overridden by a CPUDIR u-boot.lds under
      the old powerpc rules.  These boards' own u-boot.lds have bitrotted and
      no longer work -- these lds files have been removed.
      Signed-off-by: NScott Wood <scottwood@freescale.com>
      Tested-by: NGraeme Russ <graeme.russ@gmail.com>
      83b7e2a7
  19. 13 4月, 2011 1 次提交
    • W
      Make STANDALONE_LOAD_ADDR configurable per board · 8ae86b76
      Wolfgang Denk 提交于
      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: NWolfgang 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>
      8ae86b76
  20. 02 2月, 2011 1 次提交
  21. 30 10月, 2010 1 次提交
    • W
      Drop support for CONFIG_SYS_ARM_WITHOUT_RELOC · a9aa3926
      Wolfgang Denk 提交于
      When this define was introduced, the idea was to provide a soft
      migration path for ARM boards to get adapted to the new relocation
      support.  However, other recent changes led to a different
      implementation (ELF relocation), where this no longer works.  By now
      CONFIG_SYS_ARM_WITHOUT_RELOC does not only not help any more, but it
      actually hurts because it obfuscates the actual code by sprinkling it
      with lots of dead and non-working debris.
      
      So let's make a clean cut and drop CONFIG_SYS_ARM_WITHOUT_RELOC.
      Signed-off-by: NWolfgang Denk <wd@denx.de>
      Tested-by: NHeiko Schocher <hs@denx.de>
      Tested-by: NReinhard Meyer <u-boot@emk-elektronik.de>
      a9aa3926
  22. 13 10月, 2010 2 次提交
  23. 20 9月, 2010 1 次提交
    • H
      ARM: add relocation support · f1d2b313
      Heiko Schocher 提交于
      !! This breaks support for all arm boards !!
      
      To compile in old style, you must define
      CONFIG_SYS_ARM_WITHOUT_RELOC or you can compile
      with "CONFIG_SYS_ARM_WITHOUT_RELOC=1 ./MAKEALL board"
      
      !! This define will be removed soon, so convert your
      board to use relocation support
      
      Portions of this work were supported by funding from
      the CE Linux Forum.
      Signed-off-by: NHeiko Schocher <hs@denx.de>
      
      Fix boot from NAND for non-ARM systems
      Signed-off-by: NWolfgang Denk <wd@denx.de>
      f1d2b313
  24. 13 4月, 2010 2 次提交
    • P
      Move lib_$ARCH directories to arch/$ARCH/lib · ea0364f1
      Peter Tyser 提交于
      Also move lib_$ARCH/config.mk to arch/$ARCH/config.mk
      
      This change is intended to clean up the top-level directory structure
      and more closely mimic Linux's directory organization.
      Signed-off-by: NPeter Tyser <ptyser@xes-inc.com>
      ea0364f1
    • P
      Create CPUDIR variable · 03b7004d
      Peter Tyser 提交于
      The CPUDIR variable points to the location of a target's CPU directory.
      Currently, it is set to cpu/$CPU.  However, using $CPUDIR will allow for
      more flexibility in the future.  It lays the groundwork for reorganizing
      U-Boot's directory structure to support a layout such as:
      
        arch/$ARCH/cpu/$CPU/* (architecture with multiple CPU types)
        arch/$ARCH/cpu/*      (architecture with one CPU type)
      Signed-off-by: NPeter Tyser <ptyser@xes-inc.com>
      03b7004d
  25. 03 10月, 2009 1 次提交
    • M
      push LOAD_ADDR out to arch mk files · 8eb7e280
      Mike Frysinger 提交于
      Rather than maintain/extend the current ifeq($(ARCH)) mess that exists in
      the standalone Makefile, push the setting up of LOAD_ADDR out to the arch
      config.mk (and rename to STANDALONE_LOAD_ADDR in the process).  This keeps
      the common code clean and lets the arch do whatever crazy crap it wants in
      its own area.
      Signed-off-by: NMike Frysinger <vapier@gentoo.org>
      8eb7e280
  26. 05 9月, 2009 1 次提交
    • M
      push LOAD_ADDR out to arch mk files · 262ae0a6
      Mike Frysinger 提交于
      Rather than maintain/extend the current ifeq($(ARCH)) mess that exists in
      the standalone Makefile, push the setting up of LOAD_ADDR out to the arch
      config.mk (and rename to STANDALONE_LOAD_ADDR in the process).  This keeps
      the common code clean and lets the arch do whatever crazy crap it wants in
      its own area.
      Signed-off-by: NMike Frysinger <vapier@gentoo.org>
      262ae0a6
  27. 22 8月, 2009 1 次提交
    • W
      ARM: compiler options cleanup - improve tool chain support · f772acf8
      Wolfgang Denk 提交于
      For some time there have been repeated reports about build problems
      with some ARM (cross) tool chains.  Especially issues about
      (in)compatibility with the tool chain provided runtime support
      library libgcc.a caused to add and support a private implementation
      of such runtime support code in U-Boot.  A closer look at the code
      indicated that some of these issues are actually home-made.  This
      patch attempts to clean up some of the most obvious problems and make
      building of U-Boot with different tool chains easier:
      
      - Even though all ARM systems basicy used the same compiler options
        to select a specific ABI from the tool chain, the code for this was
        distributed over all cpu/*/config.mk files.  We move this one level
        up into lib_arm/config.mk instead.
      
      - So far, we only checked if "-mapcs-32" was supported by the tool
        chain; if yes, this was used, if not, "-mabi=apcs-gnu" was
        selected, no matter if the tool chain actually understood this
        option.  There was no support for EABI conformant tool chains.
        This patch implements the following logic:
      
        1) If the tool chain supports
      	"-mabi=aapcs-linux -mno-thumb-interwork"
           we use these options (EABI conformant tool chain).
        2) Otherwise, we check first if
      	"-mapcs-32"
           is supported, and then check for
      	"-mabi=apcs-gnu"
           If one test succeeds, we use the first found option.
        3) In case 2), we also test if "-mno-thumb-interwork", and use
           this if the test succeeds. [For "-mabi=aapcs-linux" we set
           "-mno-thumb-interwork" mandatorily.]
      
        This way we use a similar logic for the compile options as the
        Linux kernel does.
      
      - Some EABI conformant tool chains cause external references to
        utility functions like raise(); such functions are provided in the
        new file lib_arm/eabi_compat.c
      
        Note that lib_arm/config.mk gets parsed several times, so we must
        make sure to add eabi_compat.o only once to the linker list.
      Signed-off-by: NWolfgang Denk <wd@denx.de>
      Cc: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
      Cc: Dirk Behme <dirk.behme@googlemail.com>
      Cc: Magnus Lilja <lilja.magnus@gmail.com>
      Cc: Tom Rix <Tom.Rix@windriver.com>
      Cc: Prafulla Wadaskar <prafulla@marvell.com>
      Acked-by: NSergey Kubushyn <ksi@koi8.net>
      Tested-by: NMagnus Lilja <lilja.magnus@gmail.com>
      Tested-by: NAndrzej Wolski <awolski@poczta.fm>
      Tested-by: NGaye Abdoulaye Walsimou <walsimou@walsimou.com>
      Tested-by: NTom Rix <Tom.Rix@windriver.com>
      Tested-by: NJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
      f772acf8
  28. 21 7月, 2009 1 次提交
  29. 20 7月, 2009 1 次提交
    • M
      push CROSS_COMPILE out to $(ARCH)_config.mk · 1ea6bcd8
      Mike Frysinger 提交于
      Each arch should handle setting a proper default CROSS_COMPILE value in
      their own config.mk file rather than having to maintain a large ugly list
      in the Makefile.  By using conditional assignment, we don't have to worry
      about the variable already being set (env/cmdline/etc...).
      
      The common config.mk file takes care of exporting CROSS_COMPILE already,
      and while a few variables (toolchain ones) utilize CROSS_COMPILE before
      including the arch config.mk, they do so with deferred assignment.
      Signed-off-by: NMike Frysinger <vapier@gentoo.org>
      1ea6bcd8
  30. 13 6月, 2009 1 次提交
  31. 15 8月, 2002 1 次提交
  32. 30 5月, 2001 1 次提交
  33. 28 2月, 2001 1 次提交
  34. 10 7月, 2000 1 次提交