Age | Commit message (Collapse) | Author |
|
The HABv4 is supported in i.MX 50, i.MX 53, i.MX 6, i.MX 7,
series and i.MX 8M, i.MX8MM devices.
Add an introductory document containing the following topics:
- HABv4 Introduction
- HABv4 Secure Boot
- HABv4 Encrypted Boot
- HAB PKI tree generation
- HAB Fast Authentication PKI tree generation
- SRK Table and SRK Hash generation
Reviewed-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Utkarsh Gupta <utkarsh.gupta@nxp.com>
Signed-off-by: Breno Lima <breno.lima@nxp.com>
|
|
SCFGR register to 0x3
It is highly recommended to set the PRIBLOB bitfield to 0x3 once your
encrypted boot image has booted up, this prevents the generation of new
blobs that can be used to decrypt an encrypted boot image. The PRIBLOB is
a sticky type bit and cannot be changed until the next power on reset.
Add the set_priblob_bitfield U-Boot command to prevent the generation of
new blobs.
Signed-off-by: Clement Le Marquis <clement.lemarquis@nxp.com>
Acked-by: Ye Li <Ye.Li@nxp.com>
|
|
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 <Frank.Li@nxp.com>
Acked-by: Ye Li <Ye.Li@nxp.com>
|
|
According to iMX8MM datasheet (IMX8MMIEC_Rev_D and IMX8MMCEC_Rev_D),
the speed grading for imx8mm is 800Mhz, 1.2Ghz, 1.6Ghz and 1.8Ghz.
Update them to get_cpu_speed_grade_hz function.
Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
|
|
Power down the A53 cores for dual core and single core iMX8MM parts
to save power.
Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
|
|
According the part type, delete A53 cores' nodes and disable VPU
decoder/encoder nodes from kernel DTB.
Signed-off-by: Ye Li <ye.li@nxp.com>
|
|
iMX8MM family has several variant parts below.
Add CPU type and relevant updates
i.MX 8M Mini Quad Full featured, 4x A53
i.MX 8M Mini QuadLite No VPU, 4x A53
i.MX 8M Mini Dual Full featured, 2x A53
i.MX 8M Mini DualLite No VPU, 2x A53
i.MX 8M Mini Solo Full featured, 1x A53
i.MX 8M Mini SoloLite No VPU, 1x A53
Signed-off-by: Ye Li <ye.li@nxp.com>
|
|
Add support for FIT image loading of ATF and uboot proper for iMX8QXP mek.
Signed-off-by: Abel Vesa <abel.vesa@nxp.com>
|
|
Add support for FIT image loading of ATF and uboot proper for iMX8QM mek.
Signed-off-by: Abel Vesa <abel.vesa@nxp.com>
|
|
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 <abel.vesa@nxp.com>
|
|
Since commit 8891410c729b ("MLK-19848 mx6dq: Fix chip version issue for
rev1.3") it's not possible to call the HAB API functions on i.MX6DQ
SoC Rev 1.3:
Authenticate image from DDR location 0x12000000...
undefined instruction
pc : [<412c00dc>] lr : [<8ff560bc>]
reloc pc : [<c8b6d0dc>] lr : [<178030bc>]
sp : 8ef444a8 ip : 126e8068 fp : 8ff59aa8
r10: 8ffd51e4 r9 : 8ef50eb0 r8 : 006e8000
r7 : 00000000 r6 : 126ea01f r5 : 0000002b r4 : 126e8000
r3 : 412c00dd r2 : 00000001 r1 : 00000001 r0 : 00000063
Flags: nzCv IRQs off FIQs off Mode SVC_32
Resetting CPU ...
resetting ...
The hab.h code is defining the HAB API base address according to the
old SoC revision number, thus failing when calling the HAB API
authenticate_image() function.
Fix this issue by using mx6dq rev 1.3 instead of mx6dq rev 1.5.
Signed-off-by: Breno Lima <breno.lima@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
|
|
Update the refresh_mode setting. Clear the RFSHCTL3.refresh_mode bit
to set it to normal_mode.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
|
|
Update the DDR4 MR value on i.MX8MM DDR4 EVK board.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
|
|
According to iMX6DQ RM, the minor field (low 8 bits) in DIGPROG is not
aligned on silicon revision 1.3. So update get_cpu_rev to correct the
revision.
0x00630002 Silicon revision 1.2
0x00630005 Silicon revision 1.3
0x00630006 Silicon revision 1.6
Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
|
|
After loading hdmi firmware, create partition, HDMI power domain will be
off, this will cause HDMI firmware being lost.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
|
|
camera sometime can't been open once run M4 image.
ISI-CH0 probe funtion is not called when meet issue.
The root cause is:
M4 image set assign resource SC_R_ISI_CH0 into m4 partition
when open camera in m4 side.
Uboot will call update_fdt_with_owned_resources to check the pd
in current dts node. it will call sc_rm_is_resource_owned to
check the pd whether in other partition, If yes, it will delete
the dts node. uboot delete isi_0 node whose pd is SC_R_ISI_CH0.
add CONFIG_SKIP_RESOURCE_CHECING to skip checking resource when load dtb.
Change-Id: Ibf79c0bb9bc133bd7e395be57ca4a1f2ca5cf75a
Signed-off-by: zhang sanshan <sanshan.zhang@nxp.com>
|
|
configuration
Currently it's not possible to authenticate additional boot images in HAB
open configuration.
The hab.c code is checking if the SEC_CONFIG[1] fuse is programmed prior
to calling the hab_authenticate_image() API function. Users cannot check
if their additional boot images has been correctly signed prior to closing
their device.
Enable hab.c to authenticate additional boot images in open mode so HAB
events can be retrieved through get_hab_status() function.
Signed-off-by: Breno Lima <breno.lima@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
|
|
Add fastboot command "fastboot oem set-rpmb-key" to program the rpmb
key which should be staged first.
Usage:
1. fastboot stage my-rpmb-key.bin
2. fastboot oem set-rpmb-key
Test: rpmb key programed successfully on imx8qxp.
Change-Id: I95474a6367eb8ef0db16bb38680975b8c45b84f1
Signed-off-by: Ji Luo <ji.luo@nxp.com>
|
|
enable fastboot for uuu in i.MX6ULL 14x14 QSPI config
Signed-off-by: Han Xu <han.xu@nxp.com>
|
|
Introduce dom0fdt_file env to let user could change
the dom0 dtb file.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
|
|
The codes in imx8mq ARM2 SPL still return back to ROM when booting from
usb serial download. This is old way to support mfgtool not uuu.
Update the codes to support uuu when SPL SDP is enabled.
Signed-off-by: Ye Li <ye.li@nxp.com>
|
|
Enabled fastboot relating macros in optee config to
support uuu.
Signed-off-by: Shenwei Wang <shenwei.wang@nxp.com>
|
|
The mmc_get_boot_dev reads from SRC SBMR register. When booting with USB
serial download, this function does not return correctly. Because SBMR won't
reflect the USB boot.
The patch adds USB boot checking to this function to fix the issue.
Signed-off-by: Ye Li <ye.li@nxp.com>
|
|
Currently the is_boot_from_usb is checking the USB PHY Powerdown bit. This
way has a defect that if we run any usb function in u-boot the checking will
always return true.
This patch improves the way to avoid such problem above. A new arch-specific flag is
added to indicate if it is USB boot. We check the USB PHY PWD bit at early of boot
stage then set that flag. So any following calling of is_boot_from_usb will return
correct value.
Signed-off-by: Ye Li <ye.li@nxp.com>
|
|
change default dtb to imx6sx-sdb-emmc.dtb when config as emmc
Signed-off-by: Frank Li <Frank.Li@nxp.com>
|
|
The current keep-alive check mechanism uses a static variable that is
initialized to 0. When the function is first called, it may happen to
catch the 8-bit keep-alive counter right when it overflows, hence
returning BUSY.
This patch will keep checking the counter for 10us, every 1us, but it
will immediately return if the keep-alive counter changed.
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@nxp.com>
|
|
There is no need to have README in all i.MX documents name.
Remove README from i.MX docs name and add .txt file extension.
Signed-off-by: Breno Lima <breno.lima@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
|
|
The Serial Download Protocol feature is availible in various
i.MX SoCs.
Move README.sdp document to imx/misc directory.
Signed-off-by: Breno Lima <breno.lima@nxp.com>
|
|
The current High Assurance Boot document README.mxc_hab
include details for the following features in a single file:
- HAB Secure Boot
- HAB Encrypted Boot
Split HAB documentation in a specific directory for a cleaner
documentation structure, subsequent patches will include more
content in HAB documentation.
Signed-off-by: Breno Lima <breno.lima@nxp.com>
|
|
The following documents describe device details according to the
i.MX family:
- README.imx25
- README.imx27
- README.imx5
- README.imx6
- README.mxs
Move all device common related document to doc/imx/common for a better
directory structure.
Signed-off-by: Breno Lima <breno.lima@nxp.com>
|
|
The following documents describe the image type used by the mkimage
tool to generate U-Boot images for i.MX devices.
- README.imximage
- README.mxsimage
Move all mkimage related document to doc/imx/mkimage for a better
directory structure.
Signed-off-by: Breno Lima <breno.lima@nxp.com>
|
|
Currently the Serial Download Protocol tools and procedure are
documented in two places:
- doc/imx/README.sdp
- doc/imx/README.imx6
It is better to consolidate all SDP related information into
README.sdp file, so move the content from README.imx6 to
README.sdp.
Signed-off-by: Breno Lima <breno.lima@nxp.com>
|
|
Currently the U-Boot doc/ directory contains the following files
that are only relevant for i.MX devices:
- doc/README.imx25
- doc/README.imx27
- doc/README.imx5
- doc/README.imx6
- doc/README.imximage
- doc/README.mxc_hab
- doc/README.mxs
- doc/README.mxsimage
- doc/README.sdp
Move all content to a common i.MX folder for a better documentation
structure.
Signed-off-by: Breno Lima <breno.lima@nxp.com>
|
|
doc/device-tree-bindings
Currently the U-Boot project contains 2 documentation directories:
- doc/
- Documentation/
The Documentation directory only contains device tree bindings related
content, so move the 2 files to doc/device-tree-bindings/.
This commit is based in a previous submission in U-Boot upstream:
http://git.denx.de/?p=u-boot.git;a=commit;h=ad7061ed742e1312289644268859a0f4b512aaee
Signed-off-by: Breno Lima <breno.lima@nxp.com>
|
|
Decouple the CONFIG_SYS_MMC_ENV_DEV with CONFIG_ENV_IS_IN_MMC to fix
wrong mmcdev value in spinor build image.
Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
|
|
We are using CONFIG_SYS_MMC_ENV_DEV for default value of mmcdev env.
But this config is bound with CONFIG_ENV_IS_IN_MMC, so it is not valid
for qspi build image.
Fix the issue by decoupling two configs.
Signed-off-by: Ye Li <ye.li@nxp.com>
|
|
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 <ji.luo@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
|
|
Specify the default dtb file for kernel boot per i.MX7ULP
board config.
Signed-off-by: Shenwei Wang <shenwei.wang@nxp.com>
Reviewed-by: Frank Li <Frank.li@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
|
|
This reverts commit 26766be89286cad4946655b3004ab0fc4ef63a65.
|
|
This is a hack for imx8qm-mek, since the offset of the flash.bin image
on eMMC differs when compared to imx8qxp-mek. Basically, the default value
is 32K, but for 8qm-mek it's 0. This can go away once the qm and qxp get
aligned (again) from this point of view.
Signed-off-by: Abel Vesa <abel.vesa@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
|
|
Optimize the DDR4 init flow. Split the common flow
with the DDR specific timing config. So the common
flow can be reused.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
For LPDDR4 and DDR4, we use the same dram_timing struct
to config parameters. rename the 'lpddr4_timing' to
'dram_timing' for common use.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
For LPDDR4 or DDR4, the ddr phy train flow is the same.
So rename the 'lpddr4_ddrphy_train.c' to 'ddrphy_train.c'.
make it more common for reuse and move it to driver/ddr/imx8m/.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
We enable the pull-up resistor for i2c pad by setting the PAD_CTL_PUE.
But this requires to enable pull resistors first by setting PAD_CTL_PE on iMX8MM,
otherwise the pull-up won't work.
Signed-off-by: Ye Li <ye.li@nxp.com>
|
|
For imx8 chips, if boot from usb, lock status will be ignored for the
convenience of using uuu. For imx6 and imx7, the presistdata partition
is ignored, so unlock operation can alway succeed.
Change-Id: I842bab9fd2c04f8a864f4a134b63efc4436f71a4
Signed-off-by: faqiang.zhu <faqiang.zhu@nxp.com>
|
|
The current u-boot configures the fdt_file environment variable
to the file name of that built together with u-boot. Sometimes
Linux kernel needs another dtb file other than the one built with
u-boot. For example, imx7ulp needs to build imx7ulp-evk-qspi.dts for
u-boot, but the kernel needs imx7ulp-evk.dts. Adding this new
macro to let the user have an option to specify a dtb file to run
Linux kernel.
Signed-off-by: Shenwei Wang <shenwei.wang@nxp.com>
|
|
sd_dev should be 0
Signed-off-by: Frank Li <Frank.Li@nxp.com>
|
|
Add the imx8qm_mek_spl_fspi_defconfig to allow booting from QSPI.
Signed-off-by: Abel Vesa <abel.vesa@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
|
|
Allow iMX8QM mek SPL to boot from QSPI.
Signed-off-by: Abel Vesa <abel.vesa@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
|
|
Add a defconfig for SPL build for iMX8QM MEK board
Signed-off-by: Abel Vesa <abel.vesa@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
|