1. 08 6月, 2018 10 次提交
  2. 07 5月, 2018 1 次提交
    • T
      SPDX: Convert all of our single license tags to Linux Kernel style · 83d290c5
      Tom Rini 提交于
      When U-Boot started using SPDX tags we were among the early adopters and
      there weren't a lot of other examples to borrow from.  So we picked the
      area of the file that usually had a full license text and replaced it
      with an appropriate SPDX-License-Identifier: entry.  Since then, the
      Linux Kernel has adopted SPDX tags and they place it as the very first
      line in a file (except where shebangs are used, then it's second line)
      and with slightly different comment styles than us.
      
      In part due to community overlap, in part due to better tag visibility
      and in part for other minor reasons, switch over to that style.
      
      This commit changes all instances where we have a single declared
      license in the tag as both the before and after are identical in tag
      contents.  There's also a few places where I found we did not have a tag
      and have introduced one.
      Signed-off-by: NTom Rini <trini@konsulko.com>
      83d290c5
  3. 17 1月, 2018 1 次提交
  4. 16 1月, 2018 1 次提交
  5. 13 12月, 2017 9 次提交
    • S
      binman: Add documentation for the symbol feature · 39c1502c
      Simon Glass 提交于
      Add this feature to the README.
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      Reviewed-by: NLukasz Majewski <lukma@denx.de>
      39c1502c
    • S
      binman: Support accessing binman tables at run time · 19790632
      Simon Glass 提交于
      Binman construct images consisting of multiple binary files. These files
      sometimes need to know (at run timme) where their peers are located. For
      example, SPL may want to know where U-Boot is located in the image, so
      that it can jump to U-Boot correctly on boot.
      
      In general the positions where the binaries end up after binman has
      finished packing them cannot be known at compile time. One reason for
      this is that binman does not know the size of the binaries until
      everything is compiled, linked and converted to binaries with objcopy.
      
      To make this work, we add a feature to binman which checks each binary
      for symbol names starting with '_binman'. These are then decoded to figure
      out which entry and property they refer to. Then binman writes the value
      of this symbol into the appropriate binary. With this, the symbol will
      have the correct value at run time.
      
      Macros are used to make this easier to use. As an example, this declares
      a symbol that will access the 'u-boot-spl' entry to find the 'pos' value
      (i.e. the position of SPL in the image):
      
         binman_sym_declare(unsigned long, u_boot_spl, pos);
      
      This converts to a symbol called '_binman_u_boot_spl_prop_pos' in any
      binary that includes it. Binman then updates the value in that binary,
      ensuring that it can be accessed at runtime with:
      
         ulong u_boot_pos = binman_sym(ulong, u_boot_spl, pos);
      
      This assigns the variable u_boot_pos to the position of SPL in the image.
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      19790632
    • S
      binman: Support enabling debug in tests · 7fe9173b
      Simon Glass 提交于
      The elf module can provide some debugging information to assist with
      figuring out what is going wrong. This is also useful in tests. Update the
      -D option so that it is passed through to tests as well.
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      7fe9173b
    • S
      binman: Adjust size of test SPL binary · f689890d
      Simon Glass 提交于
      This is only 3 bytes long which is not enough to hold two symbol values,
      needed to test the binman symbols feature. Increase it to 15 bytes.
      
      Using very small regions is useful since we can easily compare them in
      tests and errors are fairly easy to diagnose.
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      f689890d
    • S
      binman: Add tests binaries with binman symbols · 5cfcf7e0
      Simon Glass 提交于
      For testing we need to build some ELF files containing binman symbols. Add
      these to the Makefile and check in the binaries:
      
         u_boot_binman_syms - normal, valid ELF file
         u_boot_binman_syms_bad - missing the __image_copy_start symbol
         u_boot_binman_syms_size - has a binman symbol with an invalid size
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      5cfcf7e0
    • S
      binman: Drop a stale comment about the 'board' feature · 00ae40b3
      Simon Glass 提交于
      This feature is now supported. Drop the incorrect comment.
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      00ae40b3
    • S
      binman: Add support for including spl/u-boot-spl-nodtb.bin · 4e6fdbef
      Simon Glass 提交于
      This file contains SPL image without a device tree. Add support for
      including this in images.
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      4e6fdbef
    • S
      binman: Add support for including spl/u-boot-spl.dtb · 47419eae
      Simon Glass 提交于
      This file contains the SPL device tree. Add support for including this by
      itself in images.
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      47419eae
    • S
      binman: Add a function to read ELF symbols · b50e5611
      Simon Glass 提交于
      In some cases we need to read symbols from U-Boot. At present we have a
      a few cases which does this via 'nm' and 'grep'.
      
      It is better to use objdump since that tells us the size of the symbols
      and also whether it is weak or not.
      
      Add a new module which reads ELF information from files. Update existing
      uses of 'nm' to use this module.
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      b50e5611
  6. 23 11月, 2017 15 次提交
  7. 17 11月, 2017 1 次提交
    • M
      pylibfdt: move pylibfdt to scripts/dtc/pylibfdt and refactor makefile · 15b97f5c
      Masahiro Yamada 提交于
      The pylibfdt is used by dtoc (and, indirectly by binman), but there
      is no reason why it must be generated in the tools/ directory.
      
      Recently, U-Boot switched over to the bundled DTC, and the directory
      structure under scripts/dtc/ now mirrors the upstream DTC project.
      So, scripts/dtc/pylibfdt is the best location.
      
      I also rewrote the Makefile in a cleaner Kbuild style.
      
      The scripts from the upstream have been moved as follows:
      
        lib/libfdt/pylibfdt/setup.py -> scripts/dtc/pylibfdt/setup.py
        lib/libfdt/pylibfdt/libfdt.i -> scripts/dtc/pylibfdt/libfdt.i_shipped
      
      The .i_shipped is coped to .i during building because the .i must be
      located in the objtree when we build it out of tree.
      Signed-off-by: NMasahiro Yamada <yamada.masahiro@socionext.com>
      15b97f5c
  8. 16 9月, 2017 1 次提交
  9. 12 7月, 2017 1 次提交