Age | Commit message (Collapse) | Author |
|
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>
(cherry picked from commit dac64635e978fb73ecbe83016a307be6ac7d5f0d)
|
|
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>
(cherry picked from commit 557981f3ace1f11f1483668dd97076e6c3f1d1cc)
|
|
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>
(cherry picked from commit a809d62f2060cf2e907257806bebf688ffc8c924)
|
|
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>
(cherry picked from commit 65fed31a520edf2f19f7fd1c10ff317ce4496ce6)
|
|
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>
(cherry picked from commit 258db72309ec47b99cec89c06f6b4491f9951b27)
|
|
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>
(cherry picked from commit bea54d4fbee5871187d80b67a5ace10577714f1e)
|
|
Allow iMX8QXP SPL to boot from QSPI.
Signed-off-by: Abel Vesa <abel.vesa@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
|
|
The TRNG as used in RNG4, used in CAAM has a documentation issue. The
effect is that it is possible that the entropy used to instantiate the
DRBG may be old entropy, rather than newly generated entropy. There is
proper programming guidance, but it is not in the documentation.
Signed-off-by: Aymen Sghaier <aymen.sghaier@nxp.com>
|
|
Assign security features to specific config.
Now, use AVB_RPMB to enable RPMB stored rollback
index.
After this refine,
for imx6/7/8 Android release, use no AVB_RPMB,
for imx6/7 AndroidThings, use AVB_RPMB.
This patch also fix below build error for imx6/7:
vendor/nxp-opensource/uboot-imx/lib/avb/fsl/fsl_avbkey.c:711:2: error:
implicit declaration of function 'fsl_fuse_read'
[-Werror=implicit-function-declaration]
if (fsl_fuse_read((uint32_t *)blob, RPMBKEY_FUSE_LENW,
RPMBKEY_FUSE_OFFSET)){
Change-Id: I734479f0627901f372f4b211b2e710bd103eb244
Signed-off-by: Haoran.Wang <elven.wang@nxp.com>
|
|
Align the callback to ARM64 environment for
Trusty OS.
TEST: AIY-3G & AIY-1G board's TIPC and AVB handler
works.
Change-Id: I65806f56267a4a9278db04a462e351da181618cb
Signed-off-by: Haoran.Wang <elven.wang@nxp.com>
|
|
- fix the blksize is 0 bug when boot device is sata
- add the sparse image support in the process flash sata
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Signed-off-by: Ye Li <ye.li@nxp.com>
|
|
for 8qm B0, bootloader in eMMC boot partition should be 0, it is
different from 8qm A0, which need to be 33K.
Change-Id: I3606aaee733b3a159bc818ac4938c34ec65f5896
Signed-off-by: faqiang.zhu <faqiang.zhu@nxp.com>
|
|
Need to power down HDMI_PLL_0 after HDMI firmware is loaded, else
resource is left ON when entering low power states thus impacting low
power number.
Signed-off-by: Ranjani Vaidyanathan <Ranjani.Vaidyanathan@nxp.com>
|
|
Non-A/B devices should include dtbo in recovery.img to prevent mismatch
with recovery if OTA failure. Load dtbo from recovery.img for Non-A/B
devices in recovery mode.
Change-Id: Ie8b12aeb562b80a172769af0b163df3c672c9af0
Signed-off-by: Ji Luo <ji.luo@nxp.com>
|
|
On iMX8MQ Rev B1, reading from fuse box is not allowed. The
OCOTP_READ_FUSE_DATA register is tied to magic number 0xff0055aa
for chip rev. So u-boot has to disable the fuse sense function for it.
Signed-off-by: Ye Li <ye.li@nxp.com>
Tested-by: Anson Huang <Anson.Huang@nxp.com>
(cherry picked from commit da95f60611e8859eba3e7ccb715fdce4d6376774)
|
|
After executing each ucmd, the ucmd callback function always call fastboot_setup
to setup some enviroments.
Because the mmc will be switched to user area by calling blk_get_dev in _fastboot_load_partitions.
When running "mmc partconf" by ucmd, the PART_CONFIG EXTCSD is updated, but the part_config and
hwpart variables in mmc and blk structure are not synced. So the old value will write to
PART_CONFIG EXTCSD again when switch to user area.
This patch changes the fastboot_setup, only load the partitions when the storage device is changed.
Also force to re-init mmc before loading the partitions to sync mmc variables.
Signed-off-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit c9cd93b25586ecd4ce9178da7b8141f60cdd9deb)
|
|
make the case of USB_BOOT won't execute to the case of default.
Change-Id: I6393d1532df6fe75e81b0ee0a88ca83427378e5c
Signed-off-by: faqiang.zhu <faqiang.zhu@nxp.com>
|
|
For Android, /data, misc, cache, presistdata, RBK are erased
when lock/unlock.
For Android Things, above partitions except misc are erased.
Change-Id: I4c9f5b81f15bf46322d6aea8d535d80f9ae7ca8b
Signed-off-by: Ji Luo <ji.luo@nxp.com>
|
|
Add some message prompt when the device will enter recovery
mode.
Change-Id: I3b1829594998f146fd973e15a418cd4c9f52f771
Signed-off-by: Ji Luo <ji.luo@nxp.com>
|
|
Blob buffer size is 48 bytes larger than the plain text buffer,
set correct range when flush the dcache. Also use cache aligned
buffer for the blob/plain_text to avoid failure in CAAM.
Change-Id: I3b377cfeb8f5bd9c76233827b2c9c7bd0d788c9b
Signed-off-by: Ji Luo <ji.luo@nxp.com>
|
|
Legacy platform (imx6/7) don't support A/B slot so the fdt
partition name should be 'dtbo' instead of 'dtbo_a/dtbo_b'.
Test: build and boot ok on imx6q_sabresd.
Change-Id: I282594289d78ffac6d7f503a0e471e050724efea
Signed-off-by: Ji Luo <ji.luo@nxp.com>
|
|
Some configs and definations changed from imx_v2017.03 to
imx_v2018.03, refine related codes to make pico-imx7d work.
Test: pico-imx7d boots ok.
Change-Id: I10e5a1849964a62259e0d6c353e5588c1529a840
Signed-off-by: Ji Luo <ji.luo@nxp.com>
|
|
Change bootcmd to "fastboot 0" directly when detect
booted from USB. By this the u-boot which booted by
uuu will enter fastboot mode and ready for the
remain commands.
Change-Id: I937c07f770e68568dcb3ea67130ee6634feea47a
Signed-off-by: Haoran.Wang <elven.wang@nxp.com>
|
|
Sometimes we don't need to dump the whole partition table when
some partition can't be found, only dump the partition table
when it's needed.
Test: Build and boot ok.
Change-Id: I52407f0117b73f4b3656fe2435b08dfc7a349939
Signed-off-by: Ji Luo <ji.luo@nxp.com>
|
|
Remove CONFIG_LOAD_FDT_FROM_PART and decide the fdt
location at run time.
Test: build and build ok on both Android and Android Things.
Change-Id: Ice49e71b54db33468e49298705a714e4acb333e3
Signed-off-by: Ji Luo <ji.luo@nxp.com>
|
|
The oem_bootloader partition is critical and should be verified. All
necessary verify data has been added (hash footer in oem_bootloader
and descriptors in vbmeta), verify the oem_bootloader by libavb at
u-boot stage.
Since the oem_bootloader will be loaded by libavb, use it directly
instead of loading it from disk again.
Test: oem_bootloader verify ok and boot ok for both imx7d and imx8m.
Change-Id: Ic37d2555f800385a982f6664b3858b9c83b9c484
Signed-off-by: Luo Ji <ji.luo@nxp.com>
|
|
Add 1G DDR support, distinguish different boards by the
Board ID, They are:
SAI5_MCLK: Board_id[6]
SAI5_RXFS: Board_id[5]
SAI5_RXC: Board_id[4]
SAI5_RXD3: Board_id[3]
SAI5_RXD2: Board_id[2]
SAI5_RXD1: Board_id[1]
SAI5_RXD0: Board_id[0]
Current Board ID for imx8m boards are:
AIY Micron 1G: 0x5c
AIY Hynix 1G: 0x56
AIY Mirconb 3G: 0x40
Wibo 3G: 0x00
imx8m_ref 3G: 0x00
Test: Boot ok on all imx8m boards.
Change-Id: I3d65931483f369c545632b660f04fc9da120547d
Signed-off-by: Luo Ji <ji.luo@nxp.com>
Reviewed-on: http://androidsource.ap.freescale.net/project/5093
Reviewed-by: guoyin.chen <guoyin.chen@nxp.com>
Reviewed-by: Wang Haoran <elven.wang@nxp.com>
|
|
Unlocked device maybe locked when gpt overlay changed, unlock the device
after valid gpt is flashed, erase the userdata to ensure safety.
Test: device unlocked after valid gpt flashed.
Change-Id: I7b0306606c632b7dc5668ea1ff8aad63428f278f
Signed-off-by: Luo Ji <ji.luo@nxp.com>
|
|
"fastboot reboot bootloader" fails to transmit "OKAY" back to host on
imx8qm because fastboot_tx_write_str() will dequeue the IN request
first before queue it, cdns3 usb driver will always invoke the complete
callback in dequeue, so if we are going to do_reset() in the complete
callback, the device will reboot before we can transmit "OKAY" back to
host in queue.
Check the request status in dequeue first before invoke the complete
callback, this is basically ported from kernel.
Test: No error messages when run "fastboot reboot bootloader" on
imx8qm_mek.
Change-Id: I085df3bd0f37480b8636585cc1068d5fcae331c1
Signed-off-by: Luo Ji <ji.luo@nxp.com>
|
|
A/B switch logic will be moved to SPL stage if dual bootloader
feature is enable, in such case, we just need to verify single
slot which is selected in SPL stage.
Test: verify and boot ok for imx8m.
Change-Id: Iafe0d2d4aea1c178551940808416eec4a3547259
Signed-off-by: Luo Ji <ji.luo@nxp.com>
|
|
The userdata partition size for some platforms
(like imx8/imx8m) could be larger than 4GB, use
"unsigned long int" to store the partition size
instead of "unsigned int".
Test: Get correct userdata partition size for imx8m.
Change-Id: Ib626fa2c3c64dde4eba3a93ee0455f45d1286c9f
Signed-off-by: Luo Ji <ji.luo@nxp.com>
|
|
Fix build warnings in u-boot.
Change-Id: I1944657d2d89a03c0d2303a22a09538dfaa5fd2c
Signed-off-by: Luo Ji <ji.luo@nxp.com>
|
|
Android Things will load dtb from a single partition like
"oem_bootloader" and we are going to sync normal Android
with Android Things. But just keep loading dtb from bootimage
before everything is ready.
Change-Id: I205528b1485d3e8e9961f19812f380a2b11b991b
Signed-off-by: Luo Ji <ji.luo@nxp.com>
|
|
We have different baseboard for same imx8m SoM, add
fastboot variable 'baseboard_id' to distinguish different
boards.
Test: "fastboot getvar baseboard_id" shows "0x0" for imx8m_wibo
board and shows "0x40" for imx8m_enterprise board.
Change-Id: Iec24aa52ae5de546594dd3ce602efb6dcaa60660
Signed-off-by: Luo Ji <ji.luo@nxp.com>
|
|
Make the board enter fastboot mode if we get fatal
errors in AVB. We may fall into infinite boot loop
if panic or reboot the board when fatal errors happen
in AVB.
Bug: 109842106
Test: Build & boot ok for imx8m and imx7d.
Change-Id: I13cdbc1fc0077f8d710c706dae639f004492546b
Signed-off-by: Luo Ji <ji.luo@nxp.com>
|
|
Test: None
Bug: None
Change-Id: I2c899e42d8b2911ed96df535c4864d1316d66383
|
|
Correct oem and vendor partition to ext4.
This make it available to use fastboot command
to format above two parts.
Test: Builds, loads & boots successfully. ext4 file system type
displayed for expected partitions in "fastboot getvar all"
output..
Change-Id: If6d2c58abfb526a7162fb4cd644b6e1e209f8456
Signed-off-by: Haoran.Wang <elven.wang@nxp.com>
|
|
Use rollback index interface to trap into Trusty OS directly.
This interface added due new libavb upgrade.
Change-Id: Id9d158d6e48ff33386613d2920a1bd2d95f68b6f
Signed-off-by: Haoran.Wang <elven.wang@nxp.com>
|
|
When SECURE_BOOT enabled, use HAB verify
Trusty OS image or check its IVT available.
If not available, bootloader consider the TOS
lost unexpected and wipe all data on disk.
Then enter limited fastboot mode. In this situation
only bootloader and tos is able to flash, gpt won't
be available for external.
Change-Id: I04f037f5bd5a51f53174b5b99b2c3053182a8fcf
Signed-off-by: Haoran.Wang <elven.wang@nxp.com>
|
|
Support Android Things Attestation Protocol
in u-boot for imx7d.
Change-Id: I0aef8f208cf8e81238248efc8d7dcfdbc09c3119
Signed-off-by: Haoran.Wang <elven.wang@nxp.com>
|
|
Support "fastboot oem fuse at-perm-attr" command for
ATX. The perm_attr will be stored into RPMB which
managed by Trusty OS.
Modified permanent_attributes related AVB ops that
support Trusty OS backed RPMB storage.
Change-Id: Id6248570b4294fed3c45270064196bd6b9cf9208
Signed-off-by: Haoran.Wang <elven.wang@nxp.com>
|
|
Use Trusty OS AVB manager handle RollbackIndex and
lock status into RPMB partition.
Change-Id: Idfe7234cfa31b2169af59b64e00f028542c49240
Signed-off-by: Haoran.Wang <elven.wang@nxp.com>
|
|
Fix null pointer issue for fdt loading.
This patch will fix the issue that the board
cannot boot issue.
Test: Boot successfully on both TEE and non-TEE environment
Bug: 79272296
Change-Id: I250794a5ce3027d8f4f1a2d43fa8a4e8016cab08
Signed-off-by: Haoran.Wang <elven.wang@nxp.com>
Signed-off-by: Chen Guoyin <guoyin.chen@nxp.com>
|
|
This commit did:
1. Sync AVB lib with external/avb, head of commit is:
commit 6d5326a945c2d17d5d0e7718d5cb97663c3b33a2
Author: Neal Ostrem <nealo@google.com>
Date: Tue Apr 24 13:09:45 2018 -0700
Merge fix/changes required after merge from AOSP ToT.
Change library name to one used by AT.
Test: Built successfully and unit tests pass.
Change-Id: I5e5fc9a6010d96cfecfc6faf0858ba930cba65a0
2. Change product id in ATX to be full zeros to sync with
external/avb.
3. Fix build errors and implement ops fsl_set_key_version.
4. Move most nxp modified code to lib/avb/fsl/.
Test: build and boot successfully for imx7d_pico and imx8m_phanbell.
Change-Id: I199a035fe8267b10955299a4b745458d40a2e754
Signed-off-by: Luo Ji <ji.luo@nxp.com>
|
|
See http://cs/android/system/libufdt/utils/README.md
for the dtimg format.
Bug: 78537598
Bug: 78630913
Bug: 78904624
Test: iMX7D boots with new oem_bootloader format.
Test: iMX8M boots with new oem_bootloader format.
Change-Id: I2cab38a0f0706586a9e4fb06b75e29c82d134032
|
|
Bug: 78601846
Test: Boots with new boot image layout.
Change-Id: I7c2cc7f62ad58756d76ef0d83ca6729fea9c07e9
|
|
In bootloader stage, the keymaster need to be
configured by some parameters. Then it will
be available in Android userspace.
Change-Id: I1cec4fcadd730527be581deacd62aa01c16da754
Signed-off-by: Haoran.Wang <elven.wang@nxp.com>
|
|
When running fastboot reboot bootloder, fastboot fails to kick of the
USB transmit of OKAY back to the host. Rearranged the code to match that of
cb_reboot, where it performs the reset in the completion routine.
Bug: 74613660
Test: Ran "fastboot reboot bootloader" and no longer see the FAILED message.
Change-Id: I827a4e5b9f478da2343486f46710e959a5fc22a1
|
|
Change-Id: Ia8bb6634aa00d7a5dc59a7a33845613155543eaa
Signed-off-by: Chen Guoyin <guoyin.chen@nxp.com>
|
|
Load kernel.dtb from oem_bootloader root, or fall
back to default behavior if that doesn't work.
oem_bootloader should be ext2 or ext4.
Bug: 72662957
Test: U-Boot loads modified dtb from
oem_bootloader, or loads original dtb if
kernel.dtb doesn't exist or oem_bootloader
isn't formatted
Change-Id: Ic93b572a482e85726e2fa0792997348c855f41a1
|