20 Mar, 2019
1 commit
-
The boota command boots an Android already written to mmc/emmc.
It calls get_boot_device() to figure out where to look for Android;
but when a board is booted over serial, get_boot_device() returns
an invalid boot mode.Explicitly setting the storage_type will enable boota on
a board booted over serial.FB: ucmd setenv storage_type emmc
FB: ucmd bootaSigned-off-by: Adrian Negreanu
22 Feb, 2019
1 commit
-
Grant user the permission to change the bootargs can be very
dangerous, so add config 'CONFIG_APPEND_BOOTARGS' to guard the
bootargs appending feature.Test: bootargs can't be appended if "CONFIG_APPEND_BOOTARGS" is
not set.Change-Id: I6d6879415ca251c806b56490290e5032aef24277
Signed-off-by: Ji Luo
19 Feb, 2019
1 commit
-
Since FSPI is assigned to M4 partition, A core only can read it from its
memory-map address. So we have to enable SPL NOR which won't access
flexspi driver.Update SPL container parser for the RAW NOR support.
Signed-off-by: Ye Li
(cherry picked from commit 7ea7a16fd892558098fb8cbea134ac275d1220d3)
18 Jan, 2019
1 commit
-
Support dual bootloader feature for imx8q which uses the
container format. Move the A/B slot select and verify to
SPL stage, the bootloader rollback index will be stored
at the last 8K bytes of eMMC rpmb storage.Test: Boot and rbindex verify pass on imx8q.
Change-Id: I0a48210f65984a083037a0cd3f9558951029ed7d
Signed-off-by: Ji Luo
16 Jan, 2019
2 commits
-
The RAW image support must be disabled, otherwise a RAW image can be used
to bypass FIT image.Signed-off-by: Ye Li
-
Add the NAND support to SPL container parser and enable it for imx8qxp arm2
nand reworked board.
The SPL NAND will read from nandfit mtdpart (128MB offset) to parsing the entire
boot image and get the 3rd container from it. This requires burning tool (uuu)
to program the entire boot image into nandfit.Signed-off-by: Ye Li
09 Jan, 2019
2 commits
-
Because SDP directly jumps to next level boot image, we'd better
clean up the USB driver before it. Implement a weak callback function,
that spl sdp can use it to clean up USB driver.Signed-off-by: Ye Li
-
Add a new configuration CONFIG_SPL_SDP_USB_DEV to specify the
usb index for spl sdp driver, so that we change use different device.
The default value is 0.Signed-off-by: Ye Li
07 Jan, 2019
1 commit
-
Remove this patch to specify wifi vendor info from uboot,
instead we directly add the bootargs in cmdline.Revert commit 9f1a11bdc3fef58bc41bebec858ccab0cd9050e4
MA-13879[wifi concurrency] Add bootargs to set a
property for wifi vendor of 8mmChange-Id: Icf7e89df2b4993f6e17a6b7cf38b891591f680d7
Signed-off-by: yang.tian
03 Jan, 2019
1 commit
-
Since evk_8mm will support both QCA9377 and BCM43455 wifi,
add bootargs to pass a property to differ which wifi is used.Change-Id: I83f7fd657dbdedc54931148cd6dd3d59563b6ec3
Signed-off-by: yang.tian
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
11 Dec, 2018
1 commit
-
Pass bt mac address from uboot cmdline to write
ro.boot.btmacaddr property for bluetooth hal to parse
BDADDR which is composed from ro.boot.serialno,
or it will fall back to persist property seted in init.rc.Change-Id: If6886596c79c699b8530d3249b1cc98f19aad51f
Signed-off-by: yang.tian
04 Dec, 2018
1 commit
-
Secure storage is ready in trusty so we should read/write the rollback
index from rpmb.
But for borads without rpmb key, read/write the rpmb will fail and will
block the following avb verify process. In this case, check if the rpmb
key has been set and always return AVB_IO_RESULT_OK for the boards without
rpmb key.Test: build and boot pass on imx8qm_mek.
Change-Id: I10c438e56d049ae97ebedfc446c8202642630d8b
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
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
21 Nov, 2018
1 commit
-
Pass "androidboot.keystore=trusty" for trusty backed keymaster
service, pass "androidboot.keystore=software" for software
keymaster service.Test: boot pass on imx8qm_mek.
Change-Id: I9fa38c15a7c10aef09ab29b0e9859b690e3e7a41
Signed-off-by: Ji Luo
14 Nov, 2018
1 commit
-
Fix coverity issue CID 18031: Resource leak (RESOURCE_LEAK)
leaked_storage: Variable fill_buf going out of scope leaks the storage it points toShould free the fill_buf before function return.
Signed-off-by: Ye Li
12 Nov, 2018
2 commits
-
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 -
for 1GB ram: cma=296M galcore.contiguousSize=8388608
for 3GB ram: cma=384M
Test: Boot successfully on AIY-1G & AIY-3GChange-Id: If082d5b751b5a5e06efe301c0b8e49ec4ac3dfb7
Signed-off-by: faqiang.zhu
Reviewed-on: http://androidsource.ap.freescale.net/project/5262
Reviewed-by: Wang Haoran
Signed-off-by: faqiang.zhu
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
18 Oct, 2018
1 commit
-
chunk_data_sz = sparse_header->blk_sz * chunk_header->chunk_sz;
All is uint32. chunk_data_sz may be bigger than 4G.Change chunk_data_sz to 64bit.
force chunk_header->chunk_sz and sparse_header->blk_sz to 64bit.Signed-off-by: Frank Li
Acked-by: Ye Li
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
08 Oct, 2018
1 commit
-
Serial init in board_init_f will cost much time, skip it here
because the serial will be initialized again in board_init_r
and it's more faster (after cache is enabled). We will miss
some logs before the serial is ready but it's ok for Android Auto.
This commit will save about 190ms on imx8qm.Test: boot ok for both imx8qm and imx8qxp.
Change-Id: If6efdc19794aecda862f22b6fec7f7aba2005766
Signed-off-by: Ji Luo
Reviewed-by: Ye Li
28 Sep, 2018
1 commit
-
VTS need commandline 'androidboot.dtbo_idx='
to verify fdt overlay. Pass the dtb index as "0" here since we
only have one dtb in dtbo partition and haven't enabled the dtb
overlay.Test: VTS case "VtsFirmwareDtboVerification#testVerifyOverlay" pass
on imx8mq and imx8qxp.Change-Id: I33b089bf5a945e0b558bbb189b183a38f145dcbe
Signed-off-by: Ji Luo
27 Sep, 2018
1 commit
-
Print the kernel command line in normal mode will consume about
122ms on imx8qm, move the log print to debug mode to save some
boot time.Change-Id: I5996555cf3f210be8ea25111d2bc84e0d06caa5c
Signed-off-by: Ji Luo
26 Sep, 2018
1 commit
-
When use Trusty OS, set the property keymaster HAL to
use the Trusty OS backed one.
This patch make the bootloader able to control the Android
Keymaster HAL.Change-Id: I0a533c12b99824ef499ce642cf87c22d72b51503
Signed-off-by: Haoran.Wang
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
13 Sep, 2018
1 commit
-
Load bootargs from the "/chosen/bootargs" dts node
and combine it with the bootargs in bootimage header.Change-Id: I68c9b0d53fff1f51c4d91aa513dfd38b5d9650d4
Signed-off-by: Luo Ji
11 Sep, 2018
1 commit
-
Read boot reason from SRC(system reset controller) and report
it to kernel by "androidboot.bootreason=<>" kernel commandline.
This is enabled on imx6/7/7ulp/8m, imx8 will report default value
"androidboot.bootreason=reboot" since it can't get such info on
A core at u-boot stage.Test: Boot reason report ok on imx6qp/imx7ulp/imx8qxp.
Change-Id: I03effaa03bc513bec6153e82c1a04e29c07e7db8
Signed-off-by: Ji Luo
04 Sep, 2018
1 commit
-
get_boot_device() for imx6 series can't judge the chips is boot from USB
or not. So, when use uuu, "bootcmd" parameter will get the same value as
boot from SD card, so if the SD card has image in it, uboot will not
enter fastboot mode when use uuu. This patch use is_boot_from_usb(void)
to judge whether boot from USB then change the "bootcmd" parameter
accordingly.Change-Id: I366aca2e32eab67193f45798abd142b2d5cb86bc
Signed-off-by: faqiang.zhu
22 Aug, 2018
1 commit
-
Some redundant codes are added after cherry-picking android
related commits from imx_v2017.03, remove them in this commit.Test: build and boot pass on imx6q_sabresd.
Signed-off-by: Ji Luo
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
2 commits
-
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 -
Fix build warnings in u-boot.
Change-Id: I1944657d2d89a03c0d2303a22a09538dfaa5fd2c
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