16 Jun, 2020

1 commit

  • Android use AVB to verify the kernel, hab authentication is
    not necessary for boot image.

    For imx8m, don't authenticate the kernel image when AVB
    (CONFIG_AVB_SUPPORT) is enabled. For imx8q, as android uses
    different 'CONFIG_EXTRA_ENV_SETTINGS' and 'CONFIG_BOOTCOMMAND'
    with linux bsp, so it won't try to do kernel hab authentication.
    by default.

    Test: boot imx8mp with "CONFIG_IMX_HAB" and imx8qxp with
    'CONFIG_AHAB_BOOT'.

    Change-Id: I1b2087ce7d8f9795422a053b6b68a694c86f0b3d
    Signed-off-by: Ji Luo
    (cherry picked from commit f907e4ac090e960ba5110b8039cccc4296841595)

    Ji Luo
     

06 May, 2020

1 commit

  • When secure boot is enabled, add authenticate_image in booti to authenticate
    kernel image.

    Signed-off-by: Ye Li
    (cherry picked from commit f29a143cdb8c74566113737e9be7e1bcd8c625f4)
    (cherry picked from commit 1e33f493a55dad7e016f948b932000ec295c6df4)
    (cherry picked from commit 677c332120eff7161532288685c58f246d1f00ff)

    Ye Li
     

18 Jan, 2020

1 commit


03 Dec, 2019

1 commit


26 Oct, 2019

1 commit


09 May, 2019

1 commit

  • This patch adds booti support for RISC-V Linux kernel. The existing
    bootm method will also continue to work as it is.

    It depends on the following kernel patch which adds the header to the
    flat Image. Gzip compressed Image (Image.gz) support is not enabled with
    this patch.

    https://patchwork.kernel.org/patch/10925543/

    Tested on HiFive Unleashed and QEMU.

    Signed-off-by: Atish Patra
    Reviewed-by: Tom Rini
    Tested-by: Karsten Merker
    Reviewed-by: Marek Vasut

    Atish Patra
     

19 Jun, 2018

1 commit

  • 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: Marek Vasut
    Cc: Bin Chen
    Cc: Masahiro Yamada
    Cc: Tom Rini
    Reviewed-By: Bin Chen

    Marek Vasut
     

07 May, 2018

1 commit

  • 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

    Tom Rini
     

28 Apr, 2018

1 commit


14 Feb, 2018

1 commit


08 Feb, 2018

1 commit

  • 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: Bin Chen
    Reviewed-by: Tom Rini

    Bin Chen
     

15 Mar, 2017

1 commit

  • 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 a2c1d73b94ed (i.e. v3.16).
    We can detect this based on the image_size field. If the field is
    zero, just use a fixed offset 0x80000.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

29 Jan, 2017

1 commit

  • Commit ec6617c39741adc6c549 ("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 e2c18e40b111470f ("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: ec6617c39741adc6c549 ("armv8: Support loading 32-bit OS in AArch32 execution state")
    Fixes: e2c18e40b111 ("armv8: fsl-layerscape: SMP support for loading 32-bit OS")
    Cc: Alison Wang
    Cc: Chenhui Zhao
    Cc: York Sun
    Cc: Stuart Yoder
    Signed-off-by: Scott Wood
    Reviewed-by: Tom Rini

    Scott Wood
     

24 Jan, 2017

1 commit


20 Aug, 2016

1 commit

  • 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
    Signed-off-by: Tom Rini

    Tom Rini