1. 02 Aug, 2021 1 commit
  2. 02 Feb, 2021 1 commit
    • Simon Glass's avatar
      common: Drop asm/global_data.h from common header · 401d1c4f
      Simon Glass authored and Tom Rini's avatar Tom Rini committed
      
      
      Move this out of the common header and include it only where needed.  In
      a number of cases this requires adding "struct udevice;" to avoid adding
      another large header or in other cases replacing / adding missing header
      files that had been pulled in, very indirectly.   Finally, we have a few
      cases where we did not need to include <asm/global_data.h> at all, so
      remove that include.
      Signed-off-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
      Signed-off-by: Tom Rini's avatarTom Rini <trini@konsulko.com>
      401d1c4f
  3. 17 Jul, 2020 2 commits
  4. 23 Jun, 2020 1 commit
  5. 19 May, 2020 1 commit
  6. 18 May, 2020 1 commit
    • Simon Glass's avatar
      command: Remove the cmd_tbl_t typedef · 09140113
      Simon Glass authored and Tom Rini's avatar Tom Rini committed
      
      
      We should not use typedefs in U-Boot. They cannot be used as forward
      declarations which means that header files must include the full header to
      access them.
      
      Drop the typedef and rename the struct to remove the _s suffix which is
      now not useful.
      
      This requires quite a few header-file additions.
      Signed-off-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
      09140113
  7. 17 Apr, 2020 1 commit
    • Atish Patra's avatar
      image: Add compressed Image parsing support in booti. · 414c34ed
      Atish Patra authored and Tom Rini's avatar Tom Rini committed
      
      
      Add compressed Image parsing support so that booti can parse both
      flat and compressed Image to boot Linux. Currently, it is difficult
      to calculate a safe address for every board where the compressed
      image can be decompressed. It is also not possible to figure out the
      size of the compressed file as well. Thus, user need to set two
      additional environment variables kernel_comp_addr_r and filesize to
      make this work.
      
      Following compression methods are supported for now.
      lzma, lzo, bzip2, gzip.
      
      lz4 support is not added as ARM64 kernel generates a lz4 compressed
      image with legacy header which U-Boot doesn't know how to parse and
      decompress.
      
      Tested on HiFive Unleashed and Qemu for RISC-V.
      Tested on Qemu for ARM64.
      Signed-off-by: default avatarAtish Patra <atish.patra@wdc.com>
      Reviewed-by: Tom Rini's avatarTom Rini <trini@konsulko.com>
      [trini: Fix minor rST formatting problems]
      Signed-off-by: Tom Rini's avatarTom Rini <trini@konsulko.com>
      414c34ed
  8. 24 Jan, 2020 1 commit
  9. 17 Jan, 2020 1 commit
  10. 02 Dec, 2019 1 commit
  11. 25 Oct, 2019 1 commit
  12. 09 May, 2019 1 commit
  13. 19 Jun, 2018 1 commit
    • Marek Vasut's avatar
      ARM: image: Add option for ignoring ep bit 3 · 7f13b374
      Marek Vasut authored and Tom Rini's avatar Tom Rini committed
      
      
      Add option to the booti_setup() which indicates to it that the caller
      requires the image to be relocated to the beginning of the RAM and
      that the information whether the image can be located anywhere in RAM
      at 2 MiB aligned boundary or not is to be ignored. This is useful ie.
      in case the Image is wrapped in another envelope, ie. fitImage and not
      relocating it but moving it would corrupt the envelope.
      Signed-off-by: default avatarMarek Vasut <marek.vasut+renesas@gmail.com>
      Cc: Bin Chen <bin.chen@linaro.org>
      Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
      Cc: Tom Rini <trini@konsulko.com>
      Reviewed-By: default avatarBin Chen <bin.chen@linaro.org>
      7f13b374
  14. 07 May, 2018 1 commit
    • 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: Tom Rini's avatarTom Rini <trini@konsulko.com>
      83d290c5
  15. 27 Apr, 2018 1 commit
  16. 14 Feb, 2018 1 commit
  17. 08 Feb, 2018 1 commit
    • Bin Chen's avatar
      move booti_setup to arch/arm/lig/image.c · 6808ef9a
      Bin Chen authored and Tom Rini's avatar Tom Rini committed
      
      
      Follow bootz's pattern by moving the booti_setup to arch/arm/lib.
      This allows to use booti_setup in other paths, e.g booting
      an Android image containing Image format.
      
      Note that kernel relocation is move out of booti_setup and it is the
      caller's responsibility to do it and allows them do it differently. say,
      cmd/booti.c just do a manually, while in the bootm path, we can use
      bootm_load_os(with some changes).
      Signed-off-by: default avatarBin Chen <bin.chen@linaro.org>
      Reviewed-by: Tom Rini's avatarTom Rini <trini@konsulko.com>
      6808ef9a
  18. 15 Mar, 2017 1 commit
    • Masahiro Yamada's avatar
      arm64: booti: allow to place kernel image anywhere in physical memory · 28085764
      Masahiro Yamada authored and Tom Rini's avatar Tom Rini committed
      At first, the ARM64 Linux booting requirement recommended that the
      kernel image be placed text_offset bytes from 2MB aligned base near
      the start of usable system RAM because memory below that base address
      was unusable at that time.
      
      This requirement was relaxed by Linux commit a7f8de168ace ("arm64:
      allow kernel Image to be loaded anywhere in physical memory").
      Since then, the bit 3 of the flags field indicates the tolerance
      of the kernel physical placement.  If this bit is set, the 2MB
      aligned base may be anywhere in physical memory.  For details, see
      Documentation/arm64/booting.txt of Linux.
      
      The booti command should be also relaxed.  If the bit 3 is set,
      images->ep is respected, and the image is placed at the nearest
      bootable location.  Otherwise, it is relocated to the start of the
      system RAM to keep the original behavior.
      
      Another wrinkle we need to take care of is the unknown endianness of
      text_offset for a kernel older than commit...
      28085764
  19. 28 Jan, 2017 1 commit
    • Scott Wood's avatar
      booti: Set images.os.arch · 0fff19a6
      Scott Wood authored and Tom Rini's avatar Tom Rini committed
      Commit ec6617c3 ("armv8: Support loading 32-bit OS in AArch32
      execution state") broke SMP boot by assuming that an image is 32-bit if
      the arch field in the spin table != IH_ARCH_DEFAULT (i.e.
      IH_ARCH_ARM64), even if the arch field also does not match IH_ARCH_ARM,
      even though nothing actually set the arch field in the spin table.
      
      Commit e2c18e40 ("armv8: fsl-layerscape: SMP support for loading
      32-bit OS") fixed this for bootm by setting the arch field of the spin
      table based on images.os.arch, but booti remaineed broken because it did
      not set images.os.arch.
      
      Fixes: ec6617c3 ("armv8: Support loading 32-bit OS in AArch32 execution state")
      Fixes: e2c18e40
      
       ("armv8: fsl-layerscape: SMP support for loading 32-bit OS")
      Cc: Alison Wang <alison.wang@nxp.com>
      Cc: Chenhui Zhao <chenhui.zhao@nxp.com>
      Cc: York Sun <york.sun@nxp.com>
      Cc: Stuart Yoder <stuart.yoder@nxp.com>
      Signed-off-by: default avatarScott Wood <oss@buserror.net>
      Reviewed-by: Tom Rini's avatarTom Rini <trini@konsulko.com>
      0fff19a6
  20. 24 Jan, 2017 1 commit
  21. 20 Aug, 2016 1 commit
    • Tom Rini's avatar
      cmd: Split 'bootz' and 'booti' out from 'bootm' · 5db28905
      Tom Rini authored
      
      
      The bootz and booti commands rely on common functionality that is found
      in common/bootm.c and common/bootm_os.c.  They do not however rely on
      the rest of cmd/bootm.c to be implemented so split them into their own
      files.  Have various Makefiles include the required infrastructure for
      CONFIG_CMD_BOOT[IZ] as well as CONFIG_CMD_BOOTM.  Move the declaration
      of 'images' over to common/bootm.c.
      
      Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
      Signed-off-by: Tom Rini's avatarTom Rini <trini@konsulko.com>
      5db28905