Skip to content
Snippets Groups Projects
  1. Oct 09, 2020
    • Simon Glass's avatar
      Kconfig: Create a new tools menu · 1fa057be
      Simon Glass authored and Tom Rini's avatar Tom Rini committed
      
      At present MKIMAGE_DTC_PATH is in the devicetree menu but not within
      'devicetree control' since it does not relate to that. As a result it
      shows up in the top menu.
      
      It actually relates to the mkimage tool, so create a new tools menu for it
      and move it there.
      
      Signed-off-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
      1fa057be
  2. Jan 28, 2020
  3. Jan 16, 2020
  4. Jan 07, 2020
  5. Oct 31, 2019
  6. Oct 30, 2019
  7. Apr 12, 2019
  8. Apr 09, 2019
  9. Mar 22, 2019
    • Masahiro Yamada's avatar
      Revert "Ensure device tree DTS is compiled" · a3444bd0
      Masahiro Yamada authored and Tom Rini's avatar Tom Rini committed
      
      This reverts commit 27cb7300.
      
      I am not sure if I correctly understood the log of commit 27cb7300
      ("Ensure device tree DTS is compiled"), but the code-diff looks like
      it was trying to solve the missed re-compilation when .dts was modified.
      
      Recently, commit 2737dfe0 ("kbuild: make arch-dtbs target PHONY")
      fixed the issue in a more correct and more complete way.
      
      Anyway, since the former commit, we see a clumsy log like this:
      
        make[2]: 'arch/sandbox/dts/sandbox.dtb' is up to date
      
      Another problem is, it created multiple paths to descend into
      arch/*/dts/, causing a race in parallel building.
      
      So, let's revert it.
      
      Signed-off-by: Masahiro Yamada's avatarMasahiro Yamada <yamada.masahiro@socionext.com>
      a3444bd0
  10. Feb 28, 2019
  11. Feb 09, 2019
  12. Jan 15, 2019
    • Masahiro Yamada's avatar
      kbuild: add .SECONDARY special target to scripts/Kbuild.include · c16b137e
      Masahiro Yamada authored and Tom Rini's avatar Tom Rini committed
      
      Based on the following Linux commits:
      
       - 54a702f70589 ("kbuild: mark $(targets) as .SECONDARY and remove
         .PRECIOUS markers")
      
       - 8e9b61b293d9 ("kbuild: move .SECONDARY special target to
         Kbuild.include")
      
      GNU Make automatically deletes intermediate files that are updated
      in a chain of pattern rules.
      
      Example 1) %.dtb.o <- %.dtb.S <- %.dtb <- %.dts
      Example 2) %.o <- %.c <- %.c_shipped
      
      A couple of makefiles mark such targets as .PRECIOUS to prevent Make
      from deleting them, but the correct way is to use .SECONDARY.
      
        .SECONDARY
          Prerequisites of this special target are treated as intermediate
          files but are never automatically deleted.
      
        .PRECIOUS
          When make is interrupted during execution, it may delete the target
          file it is updating if the file was modified since make started.
          If you mark the file as precious, make will never delete the file
          if interrupted.
      
      Both can avoid deletion of intermediate files, but the difference is
      the behavior when Make is interrupted; .SECONDARY deletes the target,
      but .PRECIOUS does not.
      
      The use of .PRECIOUS is relatively rare since we do not want to keep
      partially constructed (possibly corrupted) targets.
      
      .SECONDARY with no prerequisites causes all targets to be treated as
      secondary. This agrees the policy of Kbuild.
      
      scripts/Kbuild.include seems a suitable place to add it because it is
      included from almost all sub-makes.
      
      Signed-off-by: Masahiro Yamada's avatarMasahiro Yamada <yamada.masahiro@socionext.com>
      c16b137e
  13. Nov 26, 2018
  14. Sep 27, 2018
  15. Aug 17, 2018
  16. Jul 30, 2018
  17. Jul 10, 2018
  18. Jun 18, 2018
  19. May 07, 2018
    • Tom Rini's avatar
      SPDX: Convert all of our single license tags to Linux Kernel style · 83d290c5
      Tom Rini authored
      
      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: default avatarTom Rini <trini@konsulko.com>
      83d290c5
  20. Feb 14, 2018
  21. Nov 30, 2017
  22. Nov 17, 2017
    • Masahiro Yamada's avatar
      pylibfdt: compile pylibfdt only when dtoc/binman is necessary · d6a0c78a
      Masahiro Yamada authored and Tom Rini's avatar Tom Rini committed
      
      Currently, pylibfdt is always compiled if swig is installed on your
      machine.  It is really annoying because most of targets (excepts
      x86, sunxi, rockchip) do not use dtoc or binman.
      
      "checkbinman" and "checkdtoc" are wrong.  It is odd that the final
      build stage checks if we have built necessary tools.  If your platform
      depends on dtoc/binman, you must be able to build pylibfdt.  If swig
      is not installed, it should fail immediately.
      
      I added PYLIBFDT, DTOC, BINMAN entries to Kconfig.  They should be
      property select:ed by platforms that need them.  Kbuild will descend
      into scripts/dtc/pylibfdt/ only when CONFIG_PYLIBFDT is enabled.
      
      Signed-off-by: Masahiro Yamada's avatarMasahiro Yamada <yamada.masahiro@socionext.com>
      Reviewed-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
      d6a0c78a
  23. Oct 06, 2017
  24. Sep 24, 2017
  25. Aug 13, 2017
  26. Jul 10, 2017
  27. Jun 01, 2017
  28. May 10, 2017
    • Alex Deymo's avatar
      Allow boards to initialize the DT at runtime. · 82f766d1
      Alex Deymo authored and Tom Rini's avatar Tom Rini committed
      
      In some boards like the Raspberry Pi the initial bootloader will pass
      a DT to the kernel. When using U-Boot as such kernel, the board code in
      U-Boot should be able to provide U-Boot with this, already assembled
      device tree blob.
      
      This patch introduces a new config option CONFIG_OF_BOARD to use instead
      of CONFIG_OF_EMBED or CONFIG_OF_SEPARATE which will initialize the DT
      from a board-specific funtion instead of bundling one with U-Boot or as
      a separated file. This allows boards like the Raspberry Pi to reuse the
      device tree passed from the bootcode.bin and start.elf firmware
      files, including the run-time selected device tree overlays.
      
      Signed-off-by: default avatarAlex Deymo <deymo@google.com>
      Reviewed-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
      82f766d1
  29. Apr 05, 2017
  30. Mar 29, 2017
    • Mario Six's avatar
      dm: Add callback to modify the device tree · 0db4cd25
      Mario Six authored and Stefan Roese's avatar Stefan Roese committed
      
      Certain boards come in different variations by way of utilizing daughter
      boards, for example. These boards might contain additional chips, which
      are added to the main board's busses, e.g. I2C.
      
      The device tree support for such boards would either, quite naturally,
      employ the overlay mechanism to add such chips to the tree, or would use
      one large default device tree, and delete the devices that are actually
      not present.
      
      Regardless of approach, even on the U-Boot level, a modification of the
      device tree is a prerequisite to have such modular families of boards
      supported properly.
      
      Therefore, we add an option to make the U-Boot device tree (the actual
      copy later used by the driver model) writeable, and add a callback
      method that allows boards to modify the device tree at an early stage,
      at which, hopefully, also the application of device tree overlays will
      be possible.
      
      Signed-off-by: Mario Six's avatarMario Six <mario.six@gdsys.cc>
      Reviewed-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
      Signed-off-by: default avatarStefan Roese <sr@denx.de>
      0db4cd25
  31. Mar 26, 2017
  32. Mar 23, 2017
    • Mario Six's avatar
      dm: Add callback to modify the device tree · 2a792753
      Mario Six authored and Stefan Roese's avatar Stefan Roese committed
      
      Certain boards come in different variations by way of utilizing daughter
      boards, for example. These boards might contain additional chips, which
      are added to the main board's busses, e.g. I2C.
      
      The device tree support for such boards would either, quite naturally,
      employ the overlay mechanism to add such chips to the tree, or would use
      one large default device tree, and delete the devices that are actually
      not present.
      
      Regardless of approach, even on the U-Boot level, a modification of the
      device tree is a prerequisite to have such modular families of boards
      supported properly.
      
      Therefore, we add an option to make the U-Boot device tree (the actual
      copy later used by the driver model) writeable, and add a callback
      method that allows boards to modify the device tree at an early stage,
      at which, hopefully, also the application of device tree overlays will
      be possible.
      
      Signed-off-by: Mario Six's avatarMario Six <mario.six@gdsys.cc>
      Reviewed-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
      Signed-off-by: default avatarStefan Roese <sr@denx.de>
      2a792753
  33. Jul 15, 2016
  34. May 23, 2016
    • Michal Simek's avatar
      spl: Setup default value for OF_LIST · c409bd01
      Michal Simek authored and Tom Rini's avatar Tom Rini committed
      
      OF_LIST can't remain empty that's why setup it up to default DTB.
      
      If it is empty u-boot.img is created without FDT partition:
      For example:
        ./tools/mkimage -f auto -A arm -T firmware -C none -O u-boot -a
      0x8000000 -e 0 -n "U-Boot 2016.05-rc3 ..." -E -b  -d u-boot-nodtb.bin u-boot.img
      Can't set 'timestamp' property for '' node (FDT_ERR_NOSPACE)
      FIT description: Firmware image with one or more FDT blobs
      Created:         Wed May  4 15:02:52 2016
       Image 0 (firmware@1)
        Description:  U-Boot 2016.05-rc3-00080-gff2e12ae22a8-dirty for zynqmp
      board
        Created:      Wed May  4 15:02:52 2016
        Type:         Firmware
        Compression:  uncompressed
        Data Size:    unavailable
        Architecture: ARM
        Load Address: 0x08000000
       Default Configuration: 'conf@1'
       Configuration 0 (conf@1)
        Description:  unavailable
        Kernel:       unavailable
      
      And then image like this doesn't contain description and link to FDT and
      can't boot.
      
      Signed-off-by: default avatarMichal Simek <michal.simek@xilinx.com>
      Reviewed-by: default avatarTom Rini <trini@konsulko.com>
      c409bd01
  35. Mar 14, 2016
  36. Feb 25, 2016
  37. Jan 25, 2016
    • Masahiro Yamada's avatar
      Revert "devicetree: use wildcard to clean arch subdir" · be6b2b31
      Masahiro Yamada authored and Tom Rini's avatar Tom Rini committed
      
      This reverts commit 67871a59.
      
      Since that commit, out-of-tree cleaning emits lots of warnings.
      
      $ make O=foo clean
      make[1]: Entering directory `/home/masahiro/workspace/u-boot/foo'
      ../dts/../arch/arm/dts/Makefile:209: warning: overriding commands for target `dtbs'
      ../dts/../arch/arc/dts/Makefile:15: warning: ignoring old commands for target `dtbs'
      ../dts/../arch/microblaze/dts/Makefile:13: warning: overriding commands for target `dtbs'
      ../dts/../arch/arm/dts/Makefile:209: warning: ignoring old commands for target `dtbs'
      ../dts/../arch/mips/dts/Makefile:14: warning: overriding commands for target `dtbs'
      ../dts/../arch/microblaze/dts/Makefile:13: warning: ignoring old commands for target `dtbs'
      ../dts/../arch/nios2/dts/Makefile:13: warning: overriding commands for target `dtbs'
      ../dts/../arch/mips/dts/Makefile:14: warning: ignoring old commands for target `dtbs'
      ../dts/../arch/powerpc/dts/Makefile:13: warning: overriding commands for target `dtbs'
      ../dts/../arch/nios2/dts/Makefile:13: warning: ignoring old commands for target `dtbs'
      ../dts/../arch/sandbox/dts/Makefile:14: warning: overriding commands for target `dtbs'
      ../dts/../arch/powerpc/dts/Makefile:13: warning: ignoring old commands for target `dtbs'
      ../dts/../arch/x86/dts/Makefile:22: warning: overriding commands for target `dtbs'
      ../dts/../arch/sandbox/dts/Makefile:14: warning: ignoring old commands for target `dtbs'
      make[1]: Leaving directory `/home/masahiro/workspace/u-boot/foo'
      
      Signed-off-by: Masahiro Yamada's avatarMasahiro Yamada <yamada.masahiro@socionext.com>
      be6b2b31
Loading