24 May, 2019

1 commit

  • Porting the FSL android fastboot features from imx u-boot v2018.03 to
    support all SoCs: imx6/imx7/imx7ulp/imx8/imx8m.

    The UUU commands like UCmd and ACmd are also added. Users need set
    CONFIG_FASTBOOT_UUU_SUPPORT=y to enable the feature.

    Signed-off-by: Frank Li
    Signed-off-by: Ye Li
    (cherry picked from commit 65120b06a7f750b9b1a6e0db3d2082cc7088d5a8)

    Ye Li
     

17 Dec, 2018

1 commit

  • Commit a2b96ece5be146f4995d737f047e5bbb76079b8f breaks the enumeration
    of the Image Types. New image types can be appended, but they cannot be
    inserted in the list else backward compatibility is broken.

    This restores the images types as before 2018.11 and move i.MX8 related
    images at the end.

    Signed-off-by: Robert Berger
    Signed-off-by: Stefano Babic
    CC: Tom Rini

    Stefano Babic
     

03 Dec, 2018

2 commits

  • We add the support of the padding pss for rsa signature.
    This new padding is often recommended instead of pkcs-1.5.

    Signed-off-by: Philippe Reynes
    Reviewed-by: Simon Glass

    Philippe Reynes
     
  • The rsa signature use a padding algorithm. By default, we use the
    padding pkcs-1.5. In order to add some new padding algorithm, we
    add a padding framework to manage several padding algorithm.
    The choice of the padding is done in the file .its.

    Signed-off-by: Philippe Reynes
    Reviewed-by: Simon Glass

    Philippe Reynes
     

29 Nov, 2018

1 commit


22 Oct, 2018

1 commit

  • i.MX8/8X bootable image type is container type.
    The bootable image, containers a container set which supports two
    container. The 1st container is for SECO firmware, the 2nd container
    needs to include scfw, m4_0/1 image, ACore images per your requirement.

    Signed-off-by: Peng Fan

    Peng Fan
     

11 Jul, 2018

1 commit


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
     

27 May, 2018

1 commit


24 May, 2018

2 commits


11 May, 2018

2 commits

  • Xilinx changes for v2018.07

    microblaze:
    - Align defconfig

    zynq:
    - Rework fpga initialization and cpuinfo handling

    zynqmp:
    - Add ZynqMP R5 support
    - Wire and enable watchdog on zcu100-revC
    - Setup MMU map for DDR at run time
    - Show board info based on DT and cleanup IDENT_STRING

    zynqmp tools:
    - Add read partition support
    - Add initial support for Xilinx bif format for boot.bin generation

    mmc:
    - Fix get_timer usage on 64bit cpus
    - Add support for SD3.0 UHS mode

    nand-zynq:
    - Add support for 16bit buswidth
    - Use address cycles from onfi params

    scsi:
    - convert ceva sata to UCLASS_AHCI

    timer:
    - Add Cadence TTC for ZynqMP r5

    watchdog:
    - Minor cadence driver cleanup

    Tom Rini
     
  • The officially described way to generate boot.bin files for ZynqMP is to
    describe the contents of the target binary using a file of the "bif"
    format. This file then links to other files that all get packed into a
    bootable image.

    This patch adds support to read such a .bif file and generate a respective
    ZynqMP boot.bin file that can include the normal image and pmu files, but
    also supports image partitions now. This makes it a handy replacement for
    the proprietary "bootgen" utility that is currently used to generate
    boot.bin files with FSBL.

    Signed-off-by: Alexander Graf
    Signed-off-by: Michal Simek

    Alexander Graf
     

09 May, 2018

1 commit


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
     

07 Apr, 2018

1 commit

  • SPL ATF support requires to have firmware property which should be also
    listed by mkimage -l when images is created.

    The patch is also using this macro in spl_fit to match keyword.

    When image is created:
    Default Configuration: 'config'
    Configuration 0 (config)
    Description: ATF with full u-boot
    Kernel: unavailable
    Firmware: atf
    FDT: dtb

    Signed-off-by: Michal Simek
    Reviewed-by: Simon Glass
    Reviewed-by: Jun Nie
    Reviewed-by: Philipp Tomsich

    Michal Simek
     

01 Apr, 2018

1 commit


20 Mar, 2018

2 commits

  • This patch adds a new type IH_OS_TEE. This new OS type will be used for
    chain-loading to Linux via a TEE.

    With this patch in-place you can generate a bootable OPTEE image like this:

    mkimage -A arm -T kernel -O tee -C none -d tee.bin uTee.optee

    where "tee.bin" is the input binary prefixed with an OPTEE header and
    uTee.optee is the output prefixed with a u-boot wrapper header.

    This image type "-T kernel -O tee" is differentiated from the existing
    IH_TYPE_TEE "-T tee" in that the IH_TYPE is installed by u-boot (flow
    control returns to u-boot) whereas for the new IH_OS_TEE control passes to
    the OPTEE firmware and the firmware chainloads onto Linux.

    Andrew Davis gave the following ASCII diagram:

    IH_OS_TEE: (mkimage -T kernel -O tee)
    Non-Secure Secure

    BootROM
    |
    -------------
    |
    v
    SPL
    |
    v
    U-Boot ------>


    Suggested-by: Andrew F. Davis
    Cc: Harinarayan Bhatta
    Cc: Andrew F. Davis
    Cc: Tom Rini
    Cc: Kever Yang
    Cc: Philipp Tomsich
    Cc: Peng Fan
    Link: http://mrvan.github.io/optee-imx6ul

    Bryan O'Donoghue
     
  • STM32MP157 bootrom needs a specific header for first boot stage.
    This patch adds support of this header in mkimage.

    Signed-off-by: Patrick Delaunay

    Patrick Delaunay
     

19 Mar, 2018

1 commit

  • U-boot proper signature is not verified by SPL on most platforms
    even config SPL_FIT_SIGNATURE is enabled. Only fsl-layerscape
    platform support secure boot in platform specific code. So
    verified boot cannot be achieved if u-boot proper is loaded by
    SPL.

    This patch add signature verification to u-boot proper images
    when loading FIT image in SPL. It is tested on Allwinner bananapi
    zero board with H2+ SoC.

    Signed-off-by: Jun Nie

    Jun Nie
     

05 Mar, 2018

1 commit

  • Thomas reported U-Boot failed to build host tools if libfdt-devel
    package is installed because tools include libfdt headers from
    /usr/include/ instead of using internal ones.

    This commit moves the header code:
    include/libfdt.h -> include/linux/libfdt.h
    include/libfdt_env.h -> include/linux/libfdt_env.h

    and replaces include directives:
    #include -> #include
    #include -> #include

    Reported-by: Thomas Petazzoni
    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

08 Feb, 2018

2 commits

  • 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
     
  • The second area of android image was intended to put a 2nd stage
    bootloader but in practice were rarely used (in my knowledge).

    An proposal was made to the AOSP to (re)use the second area as the dtb[1],
    This patch itself doesn't depend on that proposal being accepted but it won't
    be that helpful as well if that proposal won't be accepted. But don't do
    any harm as well.

    [1] https://android-review.googlesource.com/#/c/417447/
    Signed-off-by: Bin Chen
    Reviewed-by: Tom Rini
    Reviewed-by: Kever Yang

    Bin Chen
     

16 Jan, 2018

1 commit


12 Jan, 2018

1 commit


13 Dec, 2017

1 commit

  • For external data, FIT has a optional property "data-position" which
    can set the external data to a fixed offset to FIT beginning.
    Add the support for this property in SPL FIT.

    Signed-off-by: Ye Li
    Signed-off-by: Peng Fan
    Reviewed-by: Simon Glass
    Reviewed-by: Tomas Melin
    Cc: Pantelis Antoniou
    Cc: "Andrew F. Davis"
    Cc: Igor Grinberg
    Cc: "tomas.melin@vaisala.com"
    Cc: Kever Yang
    Cc: Andre Przywara
    Cc: York Sun
    Cc: Lokesh Vutla
    Cc: "Cooper Jr., Franklin"
    Cc: George McCollister
    Cc: Tuomas Tynkkynen
    Cc: Jean-Jacques Hiblot
    Cc: Rick Altherr
    Cc: Tom Rini
    Reviewed-by: Lokesh Vutla
    Reviewed-by: York Sun

    Peng Fan
     

26 Nov, 2017

1 commit

  • To boot on ARMv8 systems with ARM Trusted Firmware, we need to
    assemble an ATF-specific parameter structure and also provide the
    address of the images started by ATF (e.g. BL3-3, which may be the
    full U-Boot).

    To allow us to identify an ARM Trusted Firmware contained in a FIT
    image, this adds the necessary definitions.

    Signed-off-by: Philipp Tomsich
    Reviewed-by: Simon Glass

    Philipp Tomsich
     

16 Oct, 2017

1 commit


06 Oct, 2017

1 commit


15 Sep, 2017

1 commit


13 Sep, 2017

1 commit


16 Aug, 2017

2 commits

  • We are now using an env_ prefix for environment functions. Rename these
    other functions as well, for consistency:

    getenv_vlan()
    getenv_bootm_size()
    getenv_bootm_low()
    getenv_bootm_mapsize()
    env_get_default()

    Suggested-by: Wolfgang Denk
    Signed-off-by: Simon Glass

    Simon Glass
     
  • We are now using an env_ prefix for environment functions. Rename these
    two functions for consistency. Also add function comments in common.h.

    Quite a few places use getenv() in a condition context, provoking a
    warning from checkpatch. These are fixed up in this patch also.

    Suggested-by: Wolfgang Denk
    Signed-off-by: Simon Glass

    Simon Glass
     

11 Jul, 2017

2 commits


10 Jun, 2017

1 commit


22 May, 2017

2 commits

  • Commit 94e3c8c4fd7b ("crypto/fsl - Add progressive hashing support
    using hardware acceleration.") created entries for CONFIG_SHA1,
    CONFIG_SHA256, CONFIG_SHA_HW_ACCEL, and CONFIG_SHA_PROG_HW_ACCEL.
    However, no defconfig has migrated to it. Complete the move by first
    adding additional logic to various Kconfig files to select this when
    required and then use the moveconfig tool. In many cases we can select
    these because they are required to implement other drivers. We also
    correct how we include the various hashing algorithms in SPL.

    This commit was generated as follows (after Kconfig additions):

    [1] tools/moveconfig.py -y SHA1 SHA256 SHA_HW_ACCEL
    [2] tools/moveconfig.py -y SHA_PROG_HW_ACCEL

    Note:
    We cannot move SHA_HW_ACCEL and SHA_PROG_HW_ACCEL simultaneously
    because there is dependency between them.

    Cc: Poonam Aggrwal
    Cc: Naveen Burmi
    Cc: Po Liu
    Cc: Shengzhou Liu
    Cc: Priyanka Jain
    Cc: Shaohui Xie
    Cc: Chunhe Lan
    Cc: Chander Kashyap
    Cc: Steve Rae
    Cc: Dirk Eibach
    Cc: Feng Li
    Cc: Alison Wang
    Cc: Sumit Garg
    Cc: Mingkai Hu
    Cc: York Sun
    Cc: Prabhakar Kushwaha
    Cc: Jaehoon Chung
    Cc: Akshay Saraswat
    Cc: Heiko Schocher
    Cc: Jagan Teki
    Signed-off-by: Tom Rini
    Reviewed-by: Simon Glass
    Signed-off-by: Tom Rini

    Tom Rini
     
  • We rename CONFIG_FIT_DISABLE_SHA256 to CONFIG_FIT_ENABLE_SHA256_SUPPORT which
    is enabled by default and now a positive option. Convert the handful of boards
    that were disabling it before to save space.

    Cc: Dirk Eibach
    Cc: Lukasz Dalek
    Signed-off-by: Tom Rini
    Reviewed-by: Simon Glass
    Reviewed-by: Simon Glass

    Tom Rini
     

09 Apr, 2017

1 commit

  • The function 'board_fit_image_post_process' is defined only when the
    config option CONFIG_FIT_IMAGE_POST_PROCESS is enabled. For secure
    systems that do not use SPL but do use FIT kernel images, only
    CONFIG_FIT_IMAGE_POST_PROCESS will be defined, which will result in an
    implicit declaration of function 'board_fit_image_post_process' warning
    while building u-boot. Fix this warning.

    Signed-off-by: Madan Srinivas
    Signed-off-by: Andrew F. Davis
    Reviewed-by: Tom Rini
    Reviewed-by: Lokesh Vutla

    Madan Srinivas
     

17 Mar, 2017

1 commit