12 Dec, 2018
1 commit
-
Open configs to enable trusty for imx8mm_evk and also
add new config imx8mm_evk_android_trusty_defconfig based
on imx8mm_evk_android_defconfig.Test: Trusty starts ok.
Change-Id: Iaea90de21f886ed23082a5e8e8d2fa7fb139a9cb
Signed-off-by: Ji Luo
28 Nov, 2018
1 commit
-
compile waring info is as below:
arch/arm/mach-imx/imx8/parser.c: In function ‘mmc_load_image_parse_container’:
arch/arm/mach-imx/imx8/parser.c:244:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^previouse patch change ID:
I40a791d5b5b1eba6a0170d6853626fb546be4b2cChange-Id: Ia605df11beab42e720fff6442a11b1e4b25ac209
Signed-off-by: faqiang.zhu
27 Nov, 2018
1 commit
-
The SPL loads the FIT image FDT part to an address related with the device
block length. This length is 512 for SD/MMC and is 1 for other devices
like SDP, NOR, NAND, SPI, etc.
When signing FIT image, we use fixed address caculated by SD/MMC block length
to sign FDT part. Thus, when booting through uuu, this causes mismatch and
gets authentication failed.Fix the issue by providing a override function for this FIT buffer address.
When secure boot is enabled, adjust the addresses of other devices to be same
with SD/MMC.Signed-off-by: Ye Li
Reviewed-by: Peng Fan
(cherry picked from commit 710efd3ccb99e144bd30af8e1ee46459b4a54dd6)
23 Nov, 2018
1 commit
-
When booting SPL from SD/MMC, the codes load and parse container image
first, if its authentication is failed, the flow continues to load and parse
for FIT image and cause crash in SPL.The correct way should stop the booting if authentication is failed, avoid
trying the FIT image since FIT does not support AHAB on 8QM/QXP.Signed-off-by: Ye Li
Reviewed-by: Peng Fan
(cherry picked from commit 7843ab1b619d53c24a11f7db10b277287dcd1b11)
12 Nov, 2018
1 commit
-
Trusty image should be loaded to different address for AIY 1G/3G ddr
board which have different ddr size. Use board id to distinguish
different baseboard, load trusty image to 0x7e00_0000 for AIY 1G ddr
board and 0xfe00_0000 for AIY 3G ddr board.Test: build and boot Trusty ok for AIY 1G/3G ddr board.
Change-Id: I62d8a19b13fe19f38075512a6faa4bbb36f74791
Signed-off-by: Ji Luo
09 Nov, 2018
1 commit
-
Before parsing the image header, try to check if there is a container and
validate it first. If no (valid) container then as a fall-through parse
the image as before.Signed-off-by: Abel Vesa
Reviewed-by: Ye Li
07 Nov, 2018
1 commit
-
This intends to replace the FIT image support since that cannot be
authenticated. Instead, we append another container at the end of
flash.bin, this new one containing a new container with two
images representing the ATF and uboot proper.Signed-off-by: Abel Vesa
Reviewed-by: Ye Li
03 Nov, 2018
2 commits
-
Generate the key blob and store it to the last block of boot1 partition
after setting the rpmb key. The key blob should be checked in spl and be
passed to Trusty OS if it's valid. If the key blob are damaged, RPMB
storage proxy service will return fail and should make the device hang.Test: Build and boot ok on imx8qm/qxp.
Change-Id: Ia274cd72109ab6ae15920e91b2a2008e1f1e667c
Signed-off-by: Ji Luo -
Add implementation necessary for supporting SPL on QXP
ARM2 board with dynamic offset detection from container header.Signed-off-by: Teo Hall
16 Oct, 2018
1 commit
-
If SPL is built with CONFIG_SPL_LOAD_FIT make the checking for
FIT image. If there is no FIT image go with the raw default mode.Signed-off-by: Abel Vesa
18 Sep, 2018
1 commit
-
This transforms almost all related functions from mmc specific to device
independent. This allows the container size to be computed from QSPI and other
future devices that will be supported for boot.Signed-off-by: Abel Vesa
Reviewed-by: Ye Li
21 Aug, 2018
2 commits
-
If we don't define CONFIG_SPL_FIT_IMAGE_TINY, when loading images from FIT,
the SPL will record all loadables' info to u-boot's FDT. This causes
problem when HAB is enabled, because FDT's content is modified before
we authenticate it.Signed-off-by: Ye Li
-
Bootloader image take fit format and the rollback index for bootloader
is stored at the "rbindex" node, SPL will read the rollback index for
bootloader and compare it with the one stored in RPMB. The stored
rollback index will be updated only when current slot pass the verify
and has been marked as successful.Bug:109947126
Test: Rollback index protection feature works fine for imx8m.Change-Id: Ic12db4571287fbcb99e5eba0127e0b09378fa5d6
Signed-off-by: Luo Ji
20 Aug, 2018
1 commit
-
Move the A/B slot check to SPL, the A/B slot switch
workflow is just like what we have in libavb_ab.Test: A/B select works fine on imx8m.
Change-Id: Ie3d827a9be0298b491bf2bc8d48833597fd70e90
Signed-off-by: Luo Ji
15 Aug, 2018
1 commit
-
Add a weak function spl_mmc_get_uboot_raw_sector to get u-boot raw sector.
At default it returns CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR. Users
can overwrite it to return customized offset.Signed-off-by: Ye Li
11 Aug, 2018
1 commit
-
Need initialize UDC before run sdp download
Signed-off-by: Frank Li
10 Aug, 2018
1 commit
-
Since the default way to boot ATF from SPL is by using a FIT blob, this hack
allows us to boot raw ATF image, without checking anything in the header of the
image since is non-existent.Signed-off-by: Abel Vesa
23 May, 2018
1 commit
-
Extend spl_nor to support FIT image loading.
CONFIG_SYS_UBOOT_BASE is the Uboot location in NOR memmap address.Signed-off-by: Peng Fan
(cherry picked from commit 60e943cd1a7c248eccc8892073efdada588a208d)
27 Apr, 2018
1 commit
-
Introduce two board level callback functions to FIT image loading process, and
a SPL_FIT_FOUND flag to differentiate FIT image or RAW image.Implement functions in imx common SPL codes to call HAB funtion
to authenticate the FIT image. Generally, we have to sign multiple regions
in FIT image:
1. Sign FIT FDT data (configuration)
2. Sign FIT external data (Sub-images)Because the CSF supports to sign multiple memory blocks, so that we can use one
signature to cover all regions in FIT image and only authenticate once.
The authentication should be done after the entire FIT image is loaded into
memory including all sub-images.
We use "-p" option to generate FIT image to reserve a space for FIT IVT
and FIT CSF, also this help to fix the offset of the external data (u-boot-nodtb.bin,
ATF, u-boot DTB).The signed FIT image layout is as below:
--------------------------------------------------
| | | | | | | |
| FIT | FIT | FIT | | U-BOOT | ATF | U-BOOT |
| FDT | IVT | CSF | | nodtb.bin | | DTB |
| | | | | | | |
--------------------------------------------------Signed-off-by: Ye Li
Reviewed-by: Peng Fan
(cherry picked from commit 078dd4eed6a04c3db7ec49a1bd1fbc63ebb82e1b)
05 Mar, 2018
2 commits
-
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.hand replaces include directives:
#include -> #include
#include -> #includeReported-by: Thomas Petazzoni
Signed-off-by: Masahiro Yamada -
Rename CONFIG_SPL_USBETH_SUPPORT to CONFIG_SPL_USB_ETHER.
This enables users to block text using CONFIG_IS_ENABLED() instead
of resorting to #if ladders with SPL and non-SPL cases.Signed-off-by: Faiz Abbas
22 Feb, 2018
1 commit
-
Cosmetic change.
Signed-off-by: Andre Heider
Reviewed-by: Lukasz Majewski
Acked-by: Stefan Agner
15 Feb, 2018
1 commit
-
Migrate the option CONFIG_SPL_FRAMEWORK and make this gate most of the
current set of options we have in Kconfig. We will need to have some
options available for SPL and !SPL_FRAMEWORK so this is important. In a
few cases we re-order existing options so that we have less escapes from
the SPL_FRAMEWORK guard.Signed-off-by: Tom Rini
08 Feb, 2018
1 commit
-
The goal of this patch is to clean up the code related to choosing SPL
MMC boot mode.The spl_boot_mode() now is called only in spl_mmc_load_image() function,
which is only compiled in if CONFIG_SPL_MMC_SUPPORT is enabled.To achieve the goal, all per mach/arch implementations eligible for
unification has been replaced with one __weak implementation.Signed-off-by: Lukasz Majewski
Reviewed-by: Marek Vasut
Reviewed-by: Stefano Babic
Acked-by: Michal Simek (For ZynqMP)
Reviewed-by: Fabio Estevam
30 Jan, 2018
1 commit
-
Include the timezone in the SPL banner so the timestamp matches with
that from u-boot proper.Signed-off-by: Klaus Goger
Reviewed-by: Philipp Tomsich
29 Jan, 2018
4 commits
-
Selecting this option will reduce SPL boot time by approx. 6 ms
(e. g. with 70 bytes long banner string at 115200 baud).Signed-off-by: Anatolij Gustschin
Tested-by: Lukasz Majewski
Reviewed-by: Philipp Tomsich -
SPL and TPL may not always need spl_board_init() at the same time.
Signed-off-by: Kever Yang
Reviewed-by: Philipp Tomsich -
ATF use bl32_ep_info->pc to decide if thre is an available bl32,
let's mark it as NULL first.Signed-off-by: Kever Yang
Acked-by: Philipp Tomsich
Reviewed-by: Philipp Tomsich
12 Jan, 2018
1 commit
-
This allows using CONFIG_IS_ENABLED(MMC_WRITE) to compile out code
needed only if write support is required.
The option is added for u-boot and for SPLSigned-off-by: Jean-Jacques Hiblot
03 Jan, 2018
1 commit
-
While we expect to call a pointer to a valid FDT (or NULL) as the
platform parameter to an ATF, some ATF versions are not U-Boot aware
and have an insufficiently robust (or an overzealour) parameter
validation: either way, this may cause a hard-stop with uncooperative
ATF versions.This change adds the option to suppress passing a platform parameter
and will always pass NULL.Debug output from ATF w/ this option disabled (i.e. default):
INFO: plat_param_from_bl2: 0x291450
Debug output from ATF w/ this option enabled:
INFO: plat_param_from_bl2: 0Signed-off-by: Philipp Tomsich
Tested-by: Philipp Tomsich
Reviewed-by: Kever Yang
15 Dec, 2017
1 commit
13 Dec, 2017
3 commits
-
SPL supports reading U-Boot from a RAM location. At present this is
hard-coded to the U-Boot text base address. Use binman to allow this to
come from the image file, if binman is used.Signed-off-by: Simon Glass
-
Allow SPL to access binman symbols and use this to get the address of
U-Boot. This falls back to CONFIG_SYS_TEXT_BASE if the binman symbol
is not available.Signed-off-by: Simon Glass
-
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
28 Nov, 2017
1 commit
-
This option prevents booting on am335x_evm at least along with most
likely other platforms.Fixes: 337bbb629777 ("spl: fit: add SPL_FIT_IMAGE_TINY config to reduce code-size")
Signed-off-by: Tom Rini
26 Nov, 2017
4 commits
-
A minor code-size increase from the changes for tracking the os-type
of FIT images and from infrastructure for recording the loadables into
the the loaded FDT, broke the builds for sun50i and some OMAP2+ devices.This change adds a new config option (enabled by default for
MACH_SUN50I, MACH_SUN50I_H5 and ARCH_OMAP2PLUS) that does skips these
processing steps (bringing code size down to below the limit
again). The os-type is not evaluated, but assumed to be IH_OS_UBOOT
(i.e. taking the code-paths intended for backward-compatibility).Note that enabling this config option precludes any useful downstream
processing, such as utilising a special calling convention for ATF or
OPTEE, based on the os-type of the loadables.Signed-off-by: Philipp Tomsich
-
The SPL_ATF_TEXT_BASE configuration item has become obsolete.
Remove it from Kconfig.Signed-off-by: Philipp Tomsich
Reviewed-by: Simon Glass -
Having CONFIG_SPL_ATF seems more natural.
Rename it, while it it is easy and there's few boards that use it
(only RK3399 and RK3368 boards).Signed-off-by: Philipp Tomsich
Reviewed-by: Simon Glass -
This adds a new interface spl_invoke_atf() that takes a spl_image_info
argument and then derives the necessary parameters for the ATF entry.
Based on the additional information recorded (into /fit-images) from
the FIT loadables, we can now easily locate the next boot stage.We now pass a pointer to a FDT as the platform-specific parameter
pointer to ATF (so we don't run into the future headache of every
board/platform defining their own proprietary tag-structure), as
FDT access is already available in ATF.With the necessary infrastructure in place, we can now update the
support for the ARM Trusted Firmware to dispatch into the
spl_invoke_atf function only if a IH_OS_ARM_TRUSTED_FIRMWARE image is
loaded.Signed-off-by: Philipp Tomsich
Reviewed-by: Simon Glass