1. 23 Apr, 2014 1 commit
    • Masahiro Yamada's avatar
      Revert "build: Use filechk rules to create and update u-boot.lds" · 794d5f55
      Masahiro Yamada authored
      This reverts commit a8b993eb.
      
      Commit a8b993eb claims it fixes u-boot.lds rule by replacing
      $(call if_changed) with $(call filechk).
      
      But the problem had already been fixed by commit 395e60cd
      a few days before commit a8b993eb was posted.
      
      There is no reason to apply commit a8b993eb. What is worse is
      $(call filechk) is too strong to fix the problem and looks weird.
      
      Date of the two patches:
      
      [1] commit 395e60cd
          Author:     Masahiro Yamada <yamada.m@jp.panasonic.com>
          AuthorDate: Wed Apr 9 20:10:43 2014 +0900
          Commit:     Tom Rini <trini@ti.com>
          CommitDate: Fri Apr 11 10:08:42 2014 -0400
      replaces $(call if_changed) -> $(call if_changed_dep)
      
      [2] commit a8b993eb
          Author:     Jon Loeliger <jon.loeliger@oracle.com>
          AuthorDate: Tue Apr 15 16:09:37 2014 -0500
          Commit:     Tom Rini <trini@ti.com>
          CommitDate: Fri Apr 18 16:14:16 2014 -0400
      replaces $(call if_changed) -> $(call filechk)
      
      A conflict must have happened when applying [2], but somehow it was
      applied, sadly.
      Signed-off-by: default avatarMasahiro Yamada <yamada.m@jp.panasonic.com>
      Cc: Jon Loeliger <jon.loeliger@oracle.com>
      Cc: Andreas Bießmann <andreas.devel@googlemail.com>
      Cc: Tom Rini <trini@ti.com>
      794d5f55
  2. 18 Apr, 2014 3 commits
    • Jon Loeliger's avatar
      build: Use filechk rules to create and update u-boot.lds · a8b993eb
      Jon Loeliger authored
      Prior to this patch, the top-level linker script u-boot.lds
      used a simple $(call if_changed) check when generated.
      That mechanism misses cases where a possible include file
      change induces a change in the u-boot.lds too.
      
      This patch converts it to a stronger check using ($call filechk)
      that will also notice differences in file contents and
      will catch changes due to pre-processing as well.
      Signed-off-by: default avatarJon Loeliger <jon.loeliger@oracle.com>
      a8b993eb
    • Masahiro Yamada's avatar
      kbuild: add user-supplied CPPFLAGS, AFLAGS and CFLAGS · 0e6256d0
      Masahiro Yamada authored
      Like Linux Kernel, this commit provides environment variables
      KCPPFLAGS, KAFLAGS and KCFLAGS, which are useful to pass
      additional options.
      Signed-off-by: default avatarMasahiro Yamada <yamada.m@jp.panasonic.com>
      0e6256d0
    • Masahiro Yamada's avatar
      kbuild: sync with Linux Kernel v3.15-rc1 · 598e2d33
      Masahiro Yamada authored
      This commit imports Kbuild-related updates
      from v3.14 to v3.15-rc1.
      
       - commit 3d3d6b8474204b6819688c9800774d52d370a538
          kbuild: LLVMLinux: Adapt warnings for compilation with clang
       - commit 61163efae02040f66a95c8ed17f4407951ba58fa
          kbuild: LLVMLinux: Add Kbuild support for building kernel with Clang
       - commit 79192ca8ebd9a25c583aa46024a250fef1e7766f
          scripts: objdiff: detect object code changes between two commits
       - commit 1c9e70a55b088d97a59241744fe459409d0c3582
          kbuild: create a build directory automatically for out-of-tree build
       - commit a03fcb50e816a69acffb13b5e56db75063aeba8a
          kbuild: remove redundant '.*.cmd' pattern from make distclean
       - commit 13338935f1574a2dcd1c891461b0dcc42f8cff42
          kbuild: move "quote" to Kbuild.include to be consistent
       - commit bfdfaeae500a3b194b73b01e92a8034791a58b7f
          kbuild: specify build_docproc as a phony target
       - commit f4d4ffc03efc864645b990e1d579bbe1b8e358a4
          kbuild: dtbs_install: new make target
       - commit 1e64ff42ea3d8d2fc8aa71f9717b3c1cb6c2f893
          Kbuild, lto: Disable LTO for asm-offsets.c
       - commit ccbef1674a1579842c7dbdf554efca85d2cd245a
          Kbuild, lto: add ld-version and ld-ifversion macros
       - commit ae63b2d7bdd9bd66b88843be0daf8e37d8f0b574
          scripts/tags.sh: Ignore *.mod.c
       - commit e36aaea28972c57a32a3ba5365e61633739719b9
          kbuild: Fix silent builds with make-4
      Signed-off-by: default avatarMasahiro Yamada <yamada.m@jp.panasonic.com>
      598e2d33
  3. 14 Apr, 2014 1 commit
  4. 11 Apr, 2014 1 commit
  5. 04 Apr, 2014 2 commits
    • Marek Vasut's avatar
      arm: mxs: Add support for generating signed BootStream · 1a9df13d
      Marek Vasut authored
      This patch adds the groundwork for generating signed BootStream, which
      can be used by the HAB library in i.MX28. We are adding a new target,
      u-boot-signed.sb , since the process for generating regular non-signed
      BootStream is much easier. Moreover, the signed bootstream depends on
      external _proprietary_ _binary-only_ tool from Freescale called 'cst',
      which is available only under NDA.
      
      To make things even uglier, the CST or HAB mandates a kind-of circular
      dependency. The problem is, unlike the regular IVT, which is generated
      by mxsimage, the IVT for signed boot must be generated by hand here due
      to special demands of the CST. The U-Boot binary (or SPL binary) and IVT
      are then signed by the CST as a one block. But here is the problem. The
      size of the entire image (U-Boot, IVT, CST blocks) must be appended at
      the end of IVT. But the size of the entire image is not known until the
      CST has finished signing the U-Boot and IVT. We solve this by expecting
      the CST block to be always 3904B (which it is in case two files, U-Boot
      and the hand-made IVT, are signed in the CST block).
      Signed-off-by: default avatarMarek Vasut <marex@denx.de>
      Cc: Stefano Babic <sbabic@denx.de>
      1a9df13d
    • Stefano Babic's avatar
      Revert "arm: mxs: Add support for generating signed BootStream" · 5dd73bc0
      Stefano Babic authored
      This reverts commit 53e6b14e.
      
      Patch does not merge anymore with u-boot-arm and must be rebased.
      Signed-off-by: default avatarStefano Babic <sbabic@denx.de>
      5dd73bc0
  6. 02 Apr, 2014 1 commit
  7. 31 Mar, 2014 3 commits
    • Tom Rini's avatar
      Prepare v2014.04-rc3 · c494eaf4
      Tom Rini authored
      Signed-off-by: default avatarTom Rini <trini@ti.com>
      c494eaf4
    • Marek Vasut's avatar
      arm: mxs: Add support for generating signed BootStream · 53e6b14e
      Marek Vasut authored
      This patch adds the groundwork for generating signed BootStream, which
      can be used by the HAB library in i.MX28. We are adding a new target,
      u-boot-signed.sb , since the process for generating regular non-signed
      BootStream is much easier. Moreover, the signed bootstream depends on
      external _proprietary_ _binary-only_ tool from Freescale called 'cst',
      which is available only under NDA.
      
      To make things even uglier, the CST or HAB mandates a kind-of circular
      dependency. The problem is, unlike the regular IVT, which is generated
      by mxsimage, the IVT for signed boot must be generated by hand here due
      to special demands of the CST. The U-Boot binary (or SPL binary) and IVT
      are then signed by the CST as a one block. But here is the problem. The
      size of the entire image (U-Boot, IVT, CST blocks) must be appended at
      the end of IVT. But the size of the entire image is not known until the
      CST has finished signing the U-Boot and IVT. We solve this by expecting
      the CST block to be always 3904B (which it is in case two files, U-Boot
      and the hand-made IVT, are signed in the CST block).
      Signed-off-by: default avatarMarek Vasut <marex@denx.de>
      Cc: Stefano Babic <sbabic@denx.de>
      53e6b14e
    • Masahiro Yamada's avatar
      Kbuild: allow building tools without board configuration · 4642e002
      Masahiro Yamada authored
      Prior to Kbuild, U-Boot could build under tools/ directory
      withour configuring for a specific board.
      
      That feature was lost when switching to Kbuild.
      
      This patch revives it again by adding a make target "tools-only".
      
      Usage:
        $ make tools-only
      
      Neither board configuration nor cross compiler are required to
      build host tools.
      Signed-off-by: default avatarMasahiro Yamada <yamada.m@jp.panasonic.com>
      Suggested-by: default avatarAlexey Brodkin <Alexey.Brodkin@synopsys.com>
      Cc: Simon Glass <sjg@chromium.org>
      Cc: Tom Rini <trini@ti.com>
      Acked-by: default avatarAlexey Brodkin <abrodkin@synopsys.com>
      4642e002
  8. 28 Mar, 2014 3 commits
  9. 12 Mar, 2014 9 commits
  10. 10 Mar, 2014 2 commits
  11. 07 Mar, 2014 5 commits
    • Masahiro Yamada's avatar
      kbuild: move "checkgcc4" to PowerPC archprepare · d57d60cf
      Masahiro Yamada authored
      "checkgcc4" is used only for PowerPC.
      Move it to arch/powerpc/config.mk.
      
      To make sure gcc is new enough before beginning build,
      run "checkgcc4" during "archprepare".
      Signed-off-by: default avatarMasahiro Yamada <yamada.m@jp.panasonic.com>
      d57d60cf
    • Masahiro Yamada's avatar
      kbuild: move "checkthumb" to ARM archprepare · 388b2e52
      Masahiro Yamada authored
      "checkthumb" makes sense only for ARM architecture.
      Move it to arch/arm/config.mk.
      
      To make sure gcc supports THUMB mode before beginning build,
      run "checkthumb" during "archprepare".
      Signed-off-by: default avatarMasahiro Yamada <yamada.m@jp.panasonic.com>
      388b2e52
    • Masahiro Yamada's avatar
      kbuild: improve Kbuild speed · 026f9cf2
      Masahiro Yamada authored
      Kbuild brought about many advantages for us but a significant
      performance regression was reported by Simon Glass.
      
      After some discussions and analysis, it turned out
      its main cause is in $(call cc-option,...).
      
      Historically, U-Boot parses all config.mk
      (arch/*/config.mk and board/*/config.mk)
      every time descending into subdirectories.
      That means cc-options are evaluated over and over again.
      
      $(call cc-option,...) is useful but costly.
      So we want to evaluate them only in ./Makefile
      and spl/Makefile and export compiler flags.
      
      This commit changes the build system as follows:
      
        - Modify scripts/Makefile.build to not include config.mk
          Instead, add $(PLATFORM_CPPFLAGS) to asflags-y, ccflags-y,
          cppflags-y.
      
        - Export many variables
          Going forward, Kbuild will not parse config.mk files
          when it descends into subdirectories.
          If we want to set variables in config.mk and use them
          in subdirectories, they must be exported.
      
          This is the list of variables to get exported:
            PLATFORM_CPPFLAGS
            CPUDIR
            BOARDDIR
            OBJCOPYFLAGS
            LDFLAGS
            LDFLAGS_FINAL
              (used in nand_spl/board/*/*/Makefile)
            CONFIG_STANDALONE_LOAD_ADDR
              (used in examples/standalone/Makefile)
            SYM_PREFIX
              (used in examples/standalone/Makefile)
            RELFLAGS
              (used in examples/standalone/Makefile)
      
        - Delete CPPFLAGS
          This variable has been replaced with PLATFORM_CPPFLAGS
      
        - Copy gcclibdir from example/standalone/Makefile
          to arch/sparc/config.mk
          The reference in CONFIG_STANDALONE_LOAD_ADDR must be
          resolved before it is exported.
      Signed-off-by: default avatarMasahiro Yamada <yamada.m@jp.panasonic.com>
      Reported-by: default avatarSimon Glass <sjg@chromium.org>
      Acked-by: default avatarSimon Glass <sjg@chromium.org>
      Tested-by: Simon Glass <sjg@chromium.org> [on Sandbox]
      Tested-by: Stephen Warren <swarren@nvidia.com> [on Tegra]
      026f9cf2
    • Masahiro Yamada's avatar
      kbuild: add CONFIG_ prefix to USE_PRIVATE_LIBGCC · cd2e46cb
      Masahiro Yamada authored
      Before this commit, USE_PRIVATE_LIBGCC was defined in
      arch-specific config.mk and referenced in
      arch/$(ARCH)/lib/Makefile.
      
      We are not happy about parsing config.mk again and again.
      We have to keep the same behavior with a different way.
      
      By adding "CONFIG_" prefix, this macro appears
      in include/autoconf.mk, include/spl-autoconf.mk.
      (And treating USE_PRIVATE_LIBGCC as CONFIG macro
      is reasonable enough.)
      
      Tegra SoC family defined USE_PRIVATE_LIBGCC as "yes"
      in arch/arm/cpu/arm720t/tegra*/config.mk,
      whereas did not define it in arch/arm/cpu/armv7/tegra*/config.mk.
      
      It means Tegra enables PRIVATE_LIBGCC only for SPL.
      We can describe the same behavior by adding
      
        #ifdef CONFIG_SPL_BUILD
        # define CONFIG_USE_PRIVATE_LIBGCC
        #endif
      
      to include/configs/tegra-common.h.
      Signed-off-by: default avatarMasahiro Yamada <yamada.m@jp.panasonic.com>
      Cc: Tom Warren <twarren@nvidia.com>
      Cc: Simon Glass <sjg@chromium.org>
      Acked-by: default avatarStephen Warren <swarren@nvidia.com>
      cd2e46cb
    • Masahiro Yamada's avatar
      xilinx: delete meaningless .gitignore files · cbac2a6e
      Masahiro Yamada authored
      config.tmp is never generated
      Signed-off-by: default avatarMasahiro Yamada <yamada.m@jp.panasonic.com>
      Cc: Michal Simek <michal.simek@xilinx.com>
      Acked-by: default avatarMichal Simek <michal.simek@xilinx.com>
      cbac2a6e
  12. 04 Mar, 2014 9 commits