08 Jan, 2021
1 commit
-
pass imx8 soc revision info to kernel so it can be used to judge
bootloader0 partition offset in postinstall command and update
the partition.Change-Id: Ifc4d3d2abe8a694d7ec6f368c3e56f3d175982e5
Signed-off-by: faqiang.zhu
(cherry picked from commit cc51505010505ad39a12c07e7405bb992407d927)
09 Nov, 2020
1 commit
-
imx8mp has serial number as all zeros, hard code the BT mac
address for such case instead of setting it by property.Test: BT on imx8mp.
Change-Id: I99f5b49164e1fa40c7fc6ecb639c71fa89158852
Signed-off-by: Ji Luo
(cherry picked from commit 501690cb93c4df30700c1bf40f0f2eaed2444503)
19 Oct, 2020
1 commit
-
Disable unused dts and configs for imx8q to reduce the boot time.
The 'part_get_info_by_name' can be very time consuming as it will
loop through all the GPT entries to find the matched partition,
specify the number of 'misc' partition and use 'part_get_info' to
load the partition info directly will save much time.With this patch, about 300ms can be save for imx8qm, about 350ms
can be saved for imx8qxp.Test: boot tests.
Signed-off-by: Ji Luo
Change-Id: I66bc7e002caea62754b670d0a30860a23a17ff61
(cherry picked from commit d25c0c7b9de22abd6c326975199c86c943e742cf)
20 Jul, 2020
1 commit
-
Conflicts:
arch/arm/config.mkMerge with s32_uboot for secondary merge window of lf_uboot
Signed-off-by: Ye Li
16 Jul, 2020
2 commits
-
This commit eliminate the annoying build warning logs.
Test: builds with buildman.
Signed-off-by: Ji Luo
Change-Id: Ia335dafe3f4c0eab08e011215b9de5d2974b8d0c
(cherry picked from commit 85e0d429d19b8f9a62369a5f20e088644c488b1e) -
Add a weak function after the image load in case we have extra
steps to complete, like check the rpmb keyblob for trusty enabled
platform.Test: Boots with trusty.
Signed-off-by: Ji Luo
Change-Id: Ie8181fcb32d1640e39fdcc3cebb2dbf50cbfdbab
(cherry picked from commit b16fc52cf9a9ea4d63bced50b949d0bc2328ddea)
14 Jul, 2020
1 commit
-
Create a dedicated s32v234image.
Signed-off-by: Dan Nica
16 Jun, 2020
12 commits
-
Dual bootloader is also enabled on imx8m, return 'part' as
0 in the default spl_mmc_emmc_boot_partition() implementation.Test: boots dual bootloader on imx8mm_evk.
Signed-off-by: Ji Luo
Change-Id: Id7753f72b5eedc0a5e8011c8950aaced3fece9a9
(cherry picked from commit 5648323ae3680cd9990c9243162aa2941a1e8d66) -
Move the default eMMC boot partition index used for SPL load to a weak
function. So we can override it in iMX8 specified codes.
Because on iMX8 when the emmc regular boot is from boot part0/1, ROM
will switch to the other boot part for secondary boot. So we can't
directly use the boot part index in PARTITION_CONFIG register. But have
to check the secondary boot for using the other part.Signed-off-by: Ye Li
Reviewed-by: Peng Fan -
GKI(Generic Kernel Image) would require the boot header v3 and vendor
boot support, all device specific info are moved to vendor_boot partition
,the boot header v3 will not be compatible with earlier version(0/1/2).This commit adds support for boot header v3 and vendor boot, it would
concatenate the generic ramdisk and vendor ramdisk to generate the
final ramdisk passed to kernel.Test: boots with or without boot header v3 and vendor boot support.
Signed-off-by: Ji Luo
Change-Id: Ib3298ae46bfc728aa4a34909d372eff6cc86ca70 -
Include correct header files to avoid build warning:
common/image-android.c:151:68: warning: implicit declaration
of function ‘mmc_get_env_dev’ [-Wimplicit-function-declaration]
" androidboot.boot_device_root=mmcblk%d", mmc_map_to_kernel_blk(mmc_get_env_dev()));Change-Id: I932a178500e7397f72d717efae0dd2d954a909d8
Signed-off-by: Ji Luo -
androidboot.storage_type has been replaced by androidboot.boot_device_root.
Change-Id: Ibec80808e6ae720be128c0a2d9e2f4d325c56716
Signed-off-by: Jindong
(cherry picked from commit 6a5534d13b9e7fe14a457c5f4664b054382d35e3) -
The A/B slot selection is moved to spl, it may lead to hang
if no bootable slots found. The only way to recover the board
is re-flash images with uuu tool, which is quite inconvenient
for some customers who can't enter serial download mode.This patch will set "spl recovery mode" which will give us a
chance to re-flash images with fastboot commands.Test: Enter spl recovery mode and flash images when no bootable
slots found.Change-Id: I31278f5212bde7609fe2f49e77b3849e92c0c516
Signed-off-by: Ji Luo
(cherry picked from commit 46cc755cf3f42422ee1d7783394e14e8125df2b6) -
Do not pass BDADDR from uboot cmdline when
serial is all zero, and instead btmacaddr
will be set from persist.service.bdroid.bdaddr
which is set in device's init.freescale.rcChange-Id: I429c6f369d0b7aaca643443fe505d943a3901215
Signed-off-by: yang.tian
(cherry picked from c23398fb379131ad3c5c17c3d762c582796698fb) -
storage_type is emmc or sd, which is not friendly
for user space, for example android health HAL need access
/sys/block/mmcblkX/stat.Replace it with mmcblkX named as boot_device_root.
(Keep storage_type for compatibility now)Change-Id: I7486d522696e9fe3dde8bdc8834ac11d25df7d79
Signed-off-by: Jindong
(cherry picked from commit db441a89a090c46149457ee29492bc315c2bdfa9) -
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
(cherry picked from commit 690a14ed2fc64328b417a9de448f4a18cc653698) -
This commit enables dual bootloader feature for imx8m/imx8q, but
as commit 'a2018ab' already brings in some dual bootloader codes
when enabling fastboot support, so this commit won't be a complete
and standalone patch to introduce the dual bootloader feature.This commit will do the following:
1. clean up dual bootloader flow and add missing implementation.
2. Merge the dual bootloader entry for fit and container to one
function 'mmc_load_image_raw_sector_dual_uboot'.Change-Id: Ic9410a48092cc05de599dd897fc912177e2a1fe1
Signed-off-by: Ji Luo -
Meet below warning on ARM64 platform, because the bmp_load_addr
is defined to u32.common/splash.c: In function ‘splash_video_logo_load’:
common/splash.c:74:9: warning: cast to pointer from integer
of different size [-Wint-to-pointer-cast]
74 | memcpy((void *)bmp_load_addr, bmp_logo_bitmap,Signed-off-by: Ye Li
(cherry picked from commit 037db06f9441b0e889c730f78874d3b120942ea9) -
The video link framework bases a port-endpoint gragh in DTB to
connect the video components in uclass like: video, display, bridge,
and panel.Using the port-endpoint gragh, we manage multiple video link and
user can select one of them for splash screen.Signed-off-by: Ye Li
(cherry picked from commit d6e6b1293f89b8a26033ac2f82151985f70e4036)
08 May, 2020
1 commit
-
Conflicts:
drivers/spi/fsl_qspi.c
include/configs/mx6sxsabresd.h
include/configs/mx6ul_14x14_evk.h
include/configs/mx6ullevk.hAccording to the feedback from Priyanka and Ashish, the qspi framework has
big changes to port the existing Linux driver to replace the old qspi driver.
The patches has been accepted in the u-boot upstream and will be in 2020.07So, the suggestion is to override the imx_uboot conflicts, which means some
platform support is droppped such as the imx7ulp(not on the Linux upstream)
and some imx local patches need be reworked based on community new qspi driverThis need Li Ye and Han Xu to rework on the imx port
Signed-off-by: Jason Liu
06 May, 2020
15 commits
-
On imx8 platform, the usb2 and usb3 ports are both supported. Which
means we can use usb2(ci_udc_otg) and usb3(cdns3_generic_peripheral)
gadget driver to run sdp/fastboot/ums at the same time.For sdp and the fastboot that runs automatically when uboot starts,
board_usb_gadget_port_auto() is added to autodetect usb port, this
means that we don't have to specify which USB port should be used to
download in code, now we can just connect either usb port then it
will download automatically.Signed-off-by: Sherry Sun
(cherry picked from commit 2b6fd3da6fffae0732e8e91ef5c1f870ea393ca9) -
When download image through ROM API for stream mode (USB, eMMC fastboot).
We uses tricky way to get the total image size:
The spl_load_simple_fit is called but the data reading is invalid, so the image
data is not really downloaded.
We should not call HAB authenticate in this tricky way. Otherwise it
will alway fail.
This patch add a new flag SPL_FIT_BYPASS_POST_LOAD to skip the authentication
only for this tricky using.Signed-off-by: Ye Li
Reviewed-by: Peng Fan
(cherry picked from commit 47b0cf6de06ff9b3e2b2755d5c8203210378b26a)
(cherry picked from commit 3e50573a7007771586e737b343bdde4d98c21c23) -
When enable CONFG_SPL_DM_USB_GADGET, sdp should use
usb_gadget_initialize() and usb_gadget_release() to
support DM gadget driver.Signed-off-by: Sherry Sun
(cherry picked from commit 22b59b69af0bfc0a2aeff9a995252d58c77c3955) -
Previous patch "MLK-21885 lmb: Handle the overlap case for lmb reserve" adds
the overlap support to lmb reserve. However, u-boot has some places to use the
lmb_reserve when allocating memory in loading images. If we allowed overlap
in this function, it means images loading address can overlap each other and
cause the address check mechanism not work.So add another function to allow overlap and only use it for fdt reserved-memory
nodes. The FDT reserved-memory is ok to merge with other reserved memory, since
this won't break image loading address check.Signed-off-by: Ye Li
(cherry picked from commit 2109dc2a4da592003ec62820f5bdfb6bd0899805) -
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)
(cherry picked from commit f48835f0b6b801cb267b4c27a50136c93dfd3bcf) -
When booting from USB device, change u-boot autoboot to default
run UUU bootcmd or enter fastboot directly for android.Signed-off-by: Ye Li
(cherry picked from commit eba8710106348a283940b851080b049bc7fbe466) -
Use trusty_os_init to load Trusty OS from CONFIG_TRUSTY_OS_ENTRY
before u-boot ready.Add Trusty OS SOC level codes and u-boot/SPL common codes.
Signed-off-by: Ye Li
Signed-off-by: Haoran.Wang
(cherry picked from commit 1ae9ecc73f5001b8bd743011c06a7d07861be64e)
(cherry picked from commit 6fa4f4a42fd90631f8dc8303b17f600c085d8595) -
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)
(cherry picked from commit 9b149c2a28829fe7017f83981d634157bc31cc94) -
Porting the android AVB lib from imx u-boot v2018.03. Since 2019 u-boot
has added latest AVB library, try to reuse it.Signed-off-by: Ye Li
(cherry picked from commit 2105662ada738a271e12a81d775134a5821dc38f)
(cherry picked from commit f7291d86c4183ce2e299ad271aa5618c71507ffc)
(cherry picked from commit b871714c519e1bda3de6afbd354bee2cb246e4b7) -
Support EPDC.
E-Ink feature is supported by i.MX6DL/SL/SLL/ULL and i.MX7D.This driver supports user defined logo file, if there is no logo file, it will
draw a black border around a white screen.If need to enable EPDC, a waveform file is required to let all
work.Since we need LCD_MONOCHROME mode for EPDC, we introduce LCD_MONOCHROME
support.Please refer to Linux Reference Manual for how to flash WAVEFORM file.
Signed-off-by: Peng Fan
Signed-off-by: Robby Cai
Signed-off-by: Nitin Garg
Signed-off-by: Ye.Li
(cherry picked from commit a7244f279cc3c3994bcd103f5e9a183b1075ae71)
(cherry picked from commit 21bf1c38b7d75c31875fb02a972c458f25d9c33a)
(cherry picked from commit 237742f73998b35dd896592e19f1e119e72baa71) -
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
(cherry picked from commit 1f6b3efc62cb277fd4316d8ed5115f47b09369a0)
(cherry picked from commit a3ed6467a4efb7acaa15281ec2c37e7f051b00db) -
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
(cherry picked from commit dba0d7c7dc3b9b60043726931b1f635b725e9756)
(cherry picked from commit c2da455b3d690d1d0bafece240360a288dad661a) -
Need initialize UDC before run sdp download
Signed-off-by: Frank Li
(cherry picked from commit ab6696c4f7ff3f13153e27b696fcbf38188b009a)
(cherry picked from commit 9f0962216f852a7f5ade66bbf66f57a36654a5bd) -
The RAW image support must be disabled, otherwise a RAW image can be used
to bypass FIT image.Signed-off-by: Ye Li
(cherry picked from commit ca7ebfcf0737699d5f62f97be4b0015c88108ae7)
(cherry picked from commit 9e9524c86a08d5b16bb94c1a30eda378536c4860) -
Current print_cpuinfo gets the first udevice in CPU class to return
the cpu info. This has problem if the boot CPU is not fixed.Change to use new API cpu_get_current_dev to resolve the issue.
Signed-off-by: Ye Li
(cherry picked from commit 30b9f6f88e4e310a03458eecee5f594ebd218564)
05 May, 2020
1 commit
-
CONFIG_MTD_NOR_FLASH flag needs to be enable for all
boot sources,as all flash drivers need to compile in
TFA Boot.Probe ifc nor flash only when there is nor
flash available on board.So needs to detect ifc-nor
flash at run-time for probing.Signed-off-by: Pankit Garg
10 Apr, 2020
1 commit
-
Rather than keeping the asynchronous schedule running always, keep it
running only across USB mass storage transfers for now, as it seems
that keeping it running all the time interferes with certain control
transfers during device enumeration.Note that running the async schedule all the time should not be an
issue, especially on EHCI HCD, as that one implements most of the
transfers using async schedule.Note that we have usb_disable_asynch(), which however is utterly broken.
The usb_disable_asynch() blocks the USB core from doing async transfers
by setting a global flag. The async schedule should however be disabled
per USB controller. Moreover, setting a global flag does not prevent the
controller from using the async schedule, which e.g. the EHCI HCD does.This patch implements additional callback to the controller, which
permits it to lock the async schedule and keep it running across
multiple transfers. Once the schedule is unlocked, it must also be
disabled. This thus prevents the async schedule from running outside
of the USB mass storage transfers.Signed-off-by: Marek Vasut
Cc: Lukasz Majewski
Cc: Tom Rini
Tested-by: Tom Rini [omap3_beagle, previously failing]
03 Apr, 2020
1 commit
-
Commit cf8dcc5d02c3 ("common: spl_fit: Default to IH_OS_U_BOOT if
FIT_IMAGE_TINY enabled") is not correct, it will append fdt to each loadable
image. Actually when using TINY FIT, the first loadable image is thought as
u-boot and already have fdt appended.Signed-off-by: Ye Li
Tested-by: Fabio Estevam
02 Apr, 2020
1 commit
-
Enable pre console buffer for rk3399 platform.
This would help to capture the console messages prior to
the console being initialised. Enabling this would help
to capture all the console messages on video output source
like HDMI. So we can find the full console messages of
U-Boot proper on HDMI display when enabled it for RK3399
platform boards.Buffer address used for pre console is 0x0f200000 which is
ram base plus 240MiB. right now the Allwinner SoC is using
similar computation.Signed-off-by: Jagan Teki
Reviewed-by: Kever Yang
Tested-by: Peter Robinson
01 Apr, 2020
1 commit
-
These are used in multiple places so update them to use a shared #define.
Signed-off-by: Simon Glass
Reviewed-by: Philippe Reynes