04 Oct, 2016

25 commits


03 Oct, 2016

2 commits


02 Oct, 2016

13 commits

  • Authentication of images in Falcon Mode is not supported. Do not enable
    SPL_OS_BOOT when TI_SECURE_DEVICE is enabled. This prevents attempting
    to directly load kernel images which will fail, for security reasons,
    on HS devices, the board is locked if a non-authenticatable image load
    is attempted, so we disable attempting Falcon Mode.

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

    Andrew F. Davis
     
  • This config option seems to be unused and is probably vestigial.
    Remove it.

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

    Andrew F. Davis
     
  • Like OMAP54xx and AM43xx family SoCs, AM33xx based SoCs have high
    security enabled models. Allow AM33xx devices to be built with
    HS Device Type Support.

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

    Andrew F. Davis
     
  • When CONFIG_FIT_IMAGE_POST_PROCESS or CONFIG_SPL_FIT_IMAGE_POST_PROCESS
    is enabled board_fit_image_post_process will be called, add this
    function to am33xx boards when CONFIG_TI_SECURE_DEVICE is set to
    verify the loaded image.

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

    Andrew F. Davis
     
  • The option SPL_SPI_SUPPORT is used to enable support in SPL for loading
    images from SPI flash, it should not be used to determine the build type
    of the SPL image itself. The ability to read images from SPI flash does
    not imply the SPL will be booted from SPI flash.

    Unconditionally build SPI flash compatible SPL images.

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

    Andrew F. Davis
     
  • Add a section describing the additional boot types used on AM33xx
    secure devices.

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

    Andrew F. Davis
     
  • Depending on the boot media, different images are needed
    for secure devices. The build generates u-boot*_HS_* files
    as appropriate for the different boot modes.

    For AM33xx devices additional image types are needed for
    various SPL boot modes as the ROM checks for the name of
    the boot mode in the file it loads.

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

    Andrew F. Davis
     
  • The config option AM33XX is used in several boards and should be
    defined as a stand-alone option for this SOC. We break this out
    from target boards that use this SoC and common headers then enable
    AM33XX on in all the boards that used these targets to eliminate any
    functional change with this patch.

    This is similar to what has already been done in
    9de852642cae ("arm: Kconfig: Add support for AM43xx SoC specific Kconfig")
    and is done for the same reasons.

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

    Andrew F. Davis
     
  • Adds a secure dram reservation fixup for secure
    devices, when a region in the emif has been set aside
    for secure world use. The size is defined by the
    CONFIG_TI_SECURE_EMIF_TOTAL_REGION_SIZE config option.

    Signed-off-by: Daniel Allred
    Reviewed-by: Tom Rini

    Daniel Allred
     
  • If the ending portion of the DRAM is reserved for secure
    world use, then u-boot cannot use this memory for its relocation
    purposes. To prevent issues, we mark this memory as PRAM and this
    prevents it from being used by u-boot at all.

    Signed-off-by: Daniel Allred

    Daniel Allred
     
  • After EMIF DRAM is configured, but before it is used,
    calls are made on secure devices to reserve any configured
    memory region needed by the secure world and then to lock the
    EMIF firewall configuration. If any other firewall
    configuration needs to be applied, it must happen before the
    lock call.

    Signed-off-by: Daniel Allred

    Daniel Allred
     
  • Create a few public APIs which rely on secure world ROM/HAL
    APIs for their implementation. These are intended to be used
    to reserve a portion of the EMIF memory and configure hardware
    firewalls around that region to prevent public code from
    manipulating or interfering with that memory.

    Signed-off-by: Daniel Allred
    Reviewed-by: Tom Rini

    Daniel Allred
     
  • Adds start address and size config options for setting aside
    a portion of the EMIF memory space for usage by security software
    (like a secure OS/TEE). There are two sizes, a total size and a
    protected size. The region is divided into protected (secure) and
    unprotected (public) regions, that are contiguous and start at the
    start address given. If the start address is zero, the intention
    is that the region will be automatically placed at the end of the
    available external DRAM space.

    Signed-off-by: Daniel Allred

    Daniel Allred