27 Feb, 2014

1 commit

  • When we tell the compiler to optimize for ARMv7 (and ARMv6 for that
    matter) it assumes a default of SCTRL.A being cleared and unaligned
    accesses being allowed and fast at the hardware level. We set this bit
    and must pass along -mno-unaligned-access so that the compiler will
    still breakdown accesses and not trigger a data abort.

    To better help understand the requirements of the project with respect
    to unaligned memory access, the
    Documentation/unaligned-memory-access.txt file has been added as
    doc/README.unaligned-memory-access.txt and is taken from the v3.14-rc1
    tag of the kernel.

    Cc: Albert ARIBAUD
    Cc: Mans Rullgard
    Signed-off-by: Tom Rini

    Tom Rini
     

20 Feb, 2014

1 commit

  • This commit changes the working directory
    where the build process occurs.

    Before this commit, build process occurred under the source
    tree for both in-tree and out-of-tree build.

    That's why we needed to add $(obj) prefix to all generated
    files in makefiles like follows:
    $(obj)u-boot.bin: $(obj)u-boot

    Here, $(obj) is empty for in-tree build, whereas it points
    to the output directory for out-of-tree build.

    And our old build system changes the current working directory
    with "make -C " syntax when descending into the
    sub-directories.

    On the other hand, Kbuild uses a different idea
    to handle out-of-tree build and directory descending.

    The build process of Kbuild always occurs under the output tree.
    When "O=dir/to/store/output/files" is given, the build system
    changes the current working directory to that directory and
    restarts the make.

    Kbuild uses "make -f $(srctree)/scripts/Makefile.build obj="
    syntax for descending into sub-directories.
    (We can write it like "make $(obj)=" with a shorthand.)
    This means the current working directory is always the top
    of the output directory.

    Signed-off-by: Masahiro Yamada
    Tested-by: Gerhard Sittig

    Masahiro Yamada
     

25 Jan, 2014

1 commit

  • Before this commit, all arch/arm/cpu/${CPU}/config.mk except ARMv8
    had the same option:
    $(call cc-option,-mshort-load-bytes,$(call cc-option,-malignment-traps,))

    This commit moves it into arch/arm/config.mk.

    If the compiler does not support the option,
    it is ignored by $(call cc-option,...).
    So this commit gives no harm to ARMv8.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

23 Sep, 2013

1 commit


24 Jul, 2013

1 commit


12 Apr, 2013

1 commit

  • Automatically build the 'u-boot.imx' (i.e. imx header + u-boot.bin) and 'SPL'
    (i.e. imx header + u-boot-spl.bin) make targets for all imx processors
    supporting this header, so for arm926ejs, arm1136 and armv7. Some combinations
    were missing.

    At the same time, fix the build of SPL targets not supporting the imx header on
    arm1136. For arm1136, the 'SPL' make target was forced to build in all cases if
    CONFIG_SPL_BUILD was defined, even for non-imx platforms or imx setups without
    an imx header.

    Signed-off-by: Benoît Thébaudeau

    Benoît Thébaudeau
     

13 Feb, 2013

1 commit

  • When calling 'make u-boot.imx' the build were failing as it were
    expecting the full path for the file; this regression has been
    included by commit 71a988a (imximage.cfg: run files through C
    preprocessor).

    The direct references for u-boot.imx were replaced by $(obj) as
    config.mk handles the proper setting of it making it set to $(OBJTREE)
    when required.

    The build has been test using:

    - ./MAKEALL -s mx5 -s mx6
    - make u-boot.imx
    - make O=/tmp/build

    Signed-off-by: Otavio Salvador

    Otavio Salvador
     

22 Jan, 2013

1 commit

  • The '#' used as comments in the files cause the preprocessor
    trouble, so change to /* */.

    The mkimage command which uses this preprocessor output
    was moved to arch/arm/imx-common/Makefile

    .gitignore was updated to ignore .cfgtmp files.

    Signed-off-by: Troy Kisky

    Troy Kisky
     

16 Oct, 2012

1 commit

  • Under option -munaligned-access, gcc can perform local char
    or 16-bit array initializations using misaligned native
    accesses which will throw a data abort exception. Fix files
    where these array initializations were unneeded, and for
    files known to contain such initializations, enforce gcc
    option -mno-unaligned-access.

    Signed-off-by: Albert ARIBAUD
    [trini: Switch to usign call cc-option for -mno-unaligned-access as
    Albert had done previously as that's really correct]
    Signed-off-by: Tom Rini

    Albert ARIBAUD
     

06 Oct, 2012

1 commit

  • This patch aims at ensuring that the 2012.10 release works
    out-of-the-box on as many targets as possible, by reinstating
    commit 5347560f5427bcdd48a563b62180481606ac8044, which adds
    option -mno-unaligned-access to armv7 builds.

    This patch will be overriden immediately after release of 2012.10.

    Albert ARIBAUD
     

01 Sep, 2012

1 commit


20 Jul, 2012

1 commit


15 May, 2012

1 commit


16 Apr, 2012

1 commit

  • Freescale SOCs require an header to u-boot.bin

    The patch adds u-boot.imx to the default targets
    if the imx file is set (IMX_CONFIG).

    Signed-off-by: Stefano Babic
    Cc: Albert ARIBAUD
    CC: Loïc Minier
    CC: Mike Frysinger
    Acked-by: Mike Frysinger
    Acked-by: Dirk Behme
    Tested-by: Dirk Behme

    Stefano Babic
     

04 Nov, 2011

1 commit

  • 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
    -> 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: Wolfgang Denk
    Cc: Andy Fleming
    Cc: Kumar Gala
    Cc: Albert Aribaud
    cc: Graeme Russ
    cc: Mike Frysinger
    Tested-by: Graeme Russ
    Tested-by: Matthias Weisser
    Tested-by: Sanjeev Premi
    Tested-by: Simon Glass
    Tested-by: Macpaul Lin
    Acked-by: Mike Frysinger

    Wolfgang Denk
     

06 Jul, 2010

1 commit

  • The purpose of this patch is to prepare for adding the OMAP4 architecture, which is Cortex A9

    Cortex A8 and A9 both belong to the armv7 architecture, hence the name change.

    The two architectures are similar enough that substantial code can be shared.

    Signed-off-by: Aneesh V
    Signed-off-by: Steve Sakoman
    Signed-off-by: Sandeep Paulraj

    Steve Sakoman