04 Jul, 2017

1 commit

  • There was for long time no activity in the 4xx area.
    We need to go further and convert to Kconfig, but it
    turned out, nobody is interested anymore in 4xx,
    so remove it.

    Signed-off-by: Heiko Schocher

    Heiko Schocher
     

23 Mar, 2016

1 commit


04 Mar, 2014

1 commit


20 Feb, 2014

3 commits

  • Now we are ready to switch over to real Kbuild.

    This commit disables temporary scripts:
    scripts/{Makefile.build.tmp, Makefile.host.tmp}
    and enables real Kbuild scripts:
    scripts/{Makefile.build,Makefile.host,Makefile.lib}.

    This switch is triggered by the line in scripts/Kbuild.include
    -build := -f $(if $(KBUILD_SRC),$(srctree)/)scripts/Makefile.build.tmp obj
    +build := -f $(if $(KBUILD_SRC),$(srctree)/)scripts/Makefile.build obj

    We need to adjust some build scripts for U-Boot.
    But smaller amount of modification is preferable.

    Additionally, we need to fix compiler flags which are
    locally added or removed.

    In Kbuild, it is not allowed to change CFLAGS locally.
    Instead, ccflags-y, asflags-y, cppflags-y,
    CFLAGS_$(basetarget).o, CFLAGS_REMOVE_$(basetarget).o
    are prepared for that purpose.

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

    Masahiro Yamada
     
  • 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
     
  • This commit moves suffix rules from config.mk
    to scripts/Makefile.build, which will allow us
    to switch smoothly to real Kbuild.

    Note1:
    post/lib_powerpc/fpu/Makefile has
    its own rule to compile C sources.
    We need to tweak it to keep the same behavior.

    Note2:
    There are two file2 with the same name:
    arch/arm/lib/crt0.S and eamples/api/crt0.S.
    To keep the same build behavior,
    examples/api/Makefile also has to be treaked.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

13 Dec, 2013

1 commit


25 Nov, 2013

1 commit


01 Nov, 2013

1 commit


15 Oct, 2013

1 commit


24 Jul, 2013

1 commit


24 Dec, 2011

4 commits

  • The code and comment disagreed: the comment claimed that r6...r31
    were copied, and consequently the arrays for "src" and "dst" were
    declared with 26 entries, but the actual code ("lmw r5,0(r3)" and
    "stmw r5,0(r4)") copied _27_ words (r5 through r31), which resulted
    in false "POST cpu Error at multi test" messages.

    Fix the comment and the array sizes.

    Signed-off-by: Wolfgang Denk
    Cc: Anatolij Gustschin
    Cc: Stefan Roese
    Cc: Kumar Gala
    Cc: Kim Phillips
    Cc: Andy Fleming
    Acked-by: Anatolij Gustschin
    Tested-by: Anatolij Gustschin

    Wolfgang Denk
     
  • Clean up and document the code:

    - get rid of unneeded code block
    - add comment which code is generated

    Signed-off-by: Wolfgang Denk
    Cc: Anatolij Gustschin
    Cc: Stefan Roese
    Cc: Kumar Gala
    Cc: Kim Phillips
    Cc: Andy Fleming
    Acked-by: Anatolij Gustschin

    Wolfgang Denk
     
  • Signed-off-by: Wolfgang Denk
    Cc: Anatolij Gustschin
    Cc: Stefan Roese
    Cc: Kumar Gala
    Cc: Kim Phillips
    Cc: Andy Fleming
    Acked-by: Anatolij Gustschin

    Wolfgang Denk
     
  • It appears that with recent versions of GCC the explicit
    "-mhard-float" command line option takes precedence over the
    ``asm(".gnu_attribute 4, 2");'' in the source file, so this no longer
    helps to avoid the warnings we get when linking code that uses FP
    instructions with other code that was built using soft-float.

    We can remove the ".gnu_attribute" (which appears to carry no other
    information, at least so far) from the object files, but we also have
    to make sure we don't pull in the __gcc_qsub() and __gcc_qmul()
    functions from the standard libgcc, as these would again "infect" our
    linking. We copy this code from:
    gcc-4.2.2/gcc/config/rs6000/darwin-ldouble.c
    This old version was chosen because it was still available under a
    compatible license (GCC v2+). The file was stripped down to the
    needed parts, and reformatted so it passes checkpatch with only one
    warning (do not add new typedefs).

    Signed-off-by: Wolfgang Denk
    Cc: Kumar Gala
    Cc: Stefan Roese
    Cc: Andy Fleming
    Cc: Kim Phillips
    Tested-by: Stefan Roese
    Tested-by: Anatolij Gustschin

    Wolfgang Denk
     

17 Nov, 2011

1 commit


26 Jul, 2011

1 commit


26 Jan, 2011

1 commit

  • If we built POST on PPC's that didn't enable CONFIG_SYS_POST_FPU we'd
    get the following warning with newer toolchains:

    powerpc-linux-gnu-ld: Warning: lib_powerpc/fpu/libpostpowerpcfpu.o
    uses hard float, libpost.o uses soft float

    We actually worked around this sometime ago with the following commit:

    commit ce82ff05388b5ddafdf6082ef0776cce72c40b1c
    Author: Yuri Tikhonov
    Date: Sat Dec 20 14:54:21 2008 +0300

    FPU POST: fix warnings when building with 2.18 binutils

    However, this only took into effect if CONFIG_SYS_POST_FPU was enabled.
    We can simply move the GNU_FPOST_ATTR out of the CONFIG_SYS_POST_FPU
    ifdef block to address the issue.

    Signed-off-by: Kumar Gala

    Kumar Gala
     

18 Nov, 2010

1 commit

  • 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
     

22 Apr, 2010

1 commit

  • As discussed on the list, move "arch/ppc" to "arch/powerpc" to
    better match the Linux directory structure.

    Please note that this patch also changes the "ppc" target in
    MAKEALL to "powerpc" to match this new infrastructure. But "ppc"
    is kept as an alias for now, to not break compatibility with
    scripts using this name.

    Signed-off-by: Stefan Roese
    Acked-by: Wolfgang Denk
    Acked-by: Detlev Zundel
    Acked-by: Kim Phillips
    Cc: Peter Tyser
    Cc: Anatolij Gustschin

    Stefan Roese