summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-01-18MLK-20775: imx8qm/qxp: change xenlinux_addr to avoid memory conflictFlynn xu
When booting M4 with alt_config enabled, M4 will reserve 128MB for video framebuffer from 0x88000000 to its partition, but Dom0 linux loading address is 0x85000000, which will cause confict, so change xenlinux_addr from 0x85000000 to 0x92000000. Signed-off-by: Flynn xu <flynn.xu@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2019-01-18MA-13940 [Auto] imx8q: Enable dual bootloaderJi Luo
Open configs to enable dual bootloader feature for imx8q Android Auto. Test: Build and boot on imx8q. Change-Id: I99da2ee6b87efd201e16df1046188ae86cab1466 Signed-off-by: Ji Luo <ji.luo@nxp.com>
2019-01-18MA-13938 [Android] imx8q: Support dual bootloader featureJi Luo
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 <ji.luo@nxp.com>
2019-01-18MA-13937 Enable CAAM for imx8qJi Luo
The CAAM driver in u-boot will use JR0 by default, but for imx8q, both JR0 and JR1 are assigned to SECO and A core should never access them. Power on the JR3 in this patchset and use it to complete the CAAM operations for imx8q. Test: CAAM self test cases pass for imx8q. Change-Id: Ie3d77d1f2910e7f4c257c797c12b5c8a30ad936a Signed-off-by: Ji Luo <ji.luo@nxp.com>
2019-01-18MA-13936 Add CAAM self testJi Luo
Add CAAM RNG generating and BLOB encap/decap self test cases. Test: Test cases pass on imx8qm_mek/imx6qp_sabresd. Change-Id: I538f7b1581b36df83a3006ac133ca9e7b57ab4f0 Signed-off-by: Ji Luo <ji.luo@nxp.com>
2019-01-16MLK-20758 mx7: Add new command for tamper pinYe Li
Add new u-boot command "imx_tamper" to configure and check the tamper pins. The codes are used for reference and test. So command is disabled at default, user can enable it by adding CONFIG_IMX_TAMPER=y to defconfig The iMX7D has 10 tamper pins those can be used for SNVS tamper detection. Tamper 9 pin is NVCC_DRAM power switch for LPSR by default. It must be fused to tamper function by command => fuse prog -y 1 3 0x80000000 Otherwise, SNVS power consumption would be high When tamper is detected, CPU can't enter/stay in SNVS mode, the tamper must be cleared and disabled before enter SNVS. Signed-off-by: Ye Li <ye.li@nxp.com> Signed-off-by: Shaojun Wang <shaojun.wang@nxp.com> Acked-by: Peng Fan <peng.fan@nxp.com>
2019-01-16MLK-20664-4 mtd: mxc_nand: Enable flash BBTYe Li
Current MXC NAND driver uses memory BBT, it will create memory BBT in each booting by searching bad blocks. This patch enables the flash BBT, so the NAND driver can read back Bad block table on the flash chip to create memory BBT. Signed-off-by: Ye Li <ye.li@nxp.com> Acked-by: Peng Fan <peng.fan@nxp.com>
2019-01-16MLK-20664-3 imx8m: Enable redundant offset for SPL NAND FITYe Li
The new uuu will change to burn entire boot image to nandfit mtdpart not only the FIT image. We enable REDUND offset configuration here, so that SPL will try to find FIT header at two locations: the begin of nandfit mtdpart and the 0x57c00 offset of nandfit mtdpart. This helps to be compatible with both old and new uuu. Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-16MLK-20664-2 imx8/imx8m: Disable the SPL RAW image supportYe Li
The RAW image support must be disabled, otherwise a RAW image can be used to bypass FIT image. Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-16MLK-20664-1 imx8qxp: spl: Enable SPL container support for NANDYe 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 <ye.li@nxp.com>
2019-01-14MLK-18942-2 imx8: ahab: Add ahab_status commandYe Li
Add new u-boot command "ahab_status" to display seco events and current lifecycle. It parses the seco event only for authenticating container command, so that user can know the authentication failure. Signed-off-by: Ye Li <ye.li@nxp.com> Acked-by: Peng Fan <peng.fan@nxp.com>
2019-01-14MLK-18942-1 imx8: Update SCFW API to latest versionYe Li
Update SCFW API from below SCFW commit which provides the API to get seco events commit 50355d4b11b089be8fc1bc13afa7da001b081a44 Author: Chuck Cannon <chuck.cannon@nxp.com> Date: Mon Jan 14 12:30:42 2019 -0600 SCF-275: Fix monitor error on command 'event'. Signed-off-by: Chuck Cannon <chuck.cannon@nxp.com> Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-08MLK-20559-9 Android: imx8qm/qxp: Update android configurationsYe Li
Due to some USB configurations are moved to header file to bypass SPL build. Changes android and androidatuo defconfigs and header files to avoid build break. Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-08MLK-20559-8 imx8qm/qxp: Update MEK board codes to support UUUYe Li
Enable the SPL SDP driver and USB driver in MEK board codes and defconfigs. Because the USB driver needs larger malloc pool, increase the malloc size and disable simple malloc Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-08MLK-20559-7 tcpc: Bypass the vbus disable for SPLYe Li
The SPL won't use host mode, and the tcpc is default set as device mode. So we don't need to access tcpc in SPL. Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-08MLK-20559-6 f_sdp: Support searching and loading FIT or container imageYe Li
Add support to f_sdp to search and load iMX8 container image or iMX8M FIT image by new UUU command SDPV. When using the SDPV, the uuu will continue to send out data after first level boot loader used by ROM. This means uuu won't skip to the offset of the second boot loader, and the padding data before second boot loader will be sent out. So we have to search the FIT header or container header in the buffer that SDP received. The new BCD value is used by uuu to distinguish if the SPL supports the SDPV. Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-08MLK-20559-5 f_sdp: Add a callback to clean up USB driverYe Li
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 <ye.li@nxp.com>
2019-01-08MLK-20559-4 f_sdp: Fix wrong usb request sizeYe Li
Because the buffer length of sdp usb request is 65, we have to allocate 65 bytes not 64 bytes. Otherwise there is potential buffer overflow. Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-08MLK-20559-3 f_sdp: Add high speed endpoint descriptorYe Li
Add HS endpoint descriptor for SDP. So that we can use high speed endpoint, and the SDP device can send packet with 512 byte size. Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-08MLK-20559-2 spl: Enable cdns3 USB driver for SPL buildingYe Li
The imx8qm/qxp uses cdns3 USB driver. To support SPL SDP, we have to enable the driver. Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-08MLK-20559-1 spl_sdp: Add CONFIG_SPL_SDP_USB_DEV for USB deviceYe 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 <ye.li@nxp.com>
2019-01-08MLK-20666-2 DTS: imx8mq: Enable i2c force idleYe Li
Add i2c gpio pinctrl settings and properties to enable i2c force idle. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2019-01-08MLK-20666-1 DTS: imx8mm: Enable i2c force idleYe Li
Add i2c gpio pinctrl settings and properties to enable i2c force idle. Avoid any i2c bus not released by device during reboot. Signed-off-by: Ye Li <ye.li@nxp.com>
2019-01-08MA-13906 [Trusty] Support commands to set attestation materialsJi Luo
Keystore attestation requires provision keys and cerificate chains into secure storage. Add commands to support rsa/ecdsa keys and certificate chains provision, each key/certificate should be staged before provision. Usage: Set rsa attestation key: fastboot stage <path-to-rsa-atte-key> fastboot oem set-rsa-atte-key Set ec attestation key: fastboot stage <path-to-ec-atte-key> fastboot oem set-ec-atte-key Append rsa attestation certs: fastboot stage <path-to-rsa-atte-cert> fastboot oem append-rsa-atte-cert Append ec attestation certs: fastboot stage <path-to-ec-atte-cert> fastboot oem append-ec-atte-cert Test: Pass CTS cases: android.keystore.cts.KeyAttestationTest#testRsaAttestation android.keystore.cts.KeyAttestationTest#testEcAttestation Change-Id: Ic3ed87e7e328a39b0f1bfb163356ea9e37d2f4fc Signed-off-by: Ji Luo <ji.luo@nxp.com>
2019-01-08MA-13904 [Trusty] Pass root trust to keymaster serviceJi Luo
Pass the verified boot key hash to keymaster, it will be treated as the root trust in keymaster service. Also set the 'initialized' flag after initializing the keymaster client or set keymaster boot parameters will fail. Test: Pass CTS cases: android.keystore.cts.KeyAttestationTest#testRsaAttestation android.keystore.cts.KeyAttestationTest#testEcAttestation Change-Id: I486b5493826160f42c61a3da0e6cd769df92254d Signed-off-by: Ji Luo <ji.luo@nxp.com>
2019-01-07MLK-19973 mx6ulz: Change to load uTee-6ulzevk for 6ULZYe Li
When running on iMX6ULZ, need to set tee_file to uTee-6ulzevk not uTee-6ullevk. Thus, add findtee script into env to set correct tee file before booting. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2019-01-07MA-13879-2 Revert adding bootargs for multi-vendor of 8mmyang.tian
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 8mm Change-Id: Icf7e89df2b4993f6e17a6b7cf38b891591f680d7 Signed-off-by: yang.tian <yang.tian@nxp.com>
2019-01-03MLK-20668-2 fat: Fix issue in rootdir table flush for FAT16/12Ye Li
The FAT16/12 has rootdir area before data area, and the clusters for rootdir are not mantained by FAT table. So we don't need to find empty cluster for next rootdir space, just use next dir cluster. And the FAT table don't need to update for this new dir cluster. Signed-off-by: Ye Li <ye.li@nxp.com> Acked-by: Peng Fan <peng.fan@nxp.com>
2019-01-03MLK-20668-1 fs: fat: fix wrong casting to unsigned value of sect_to_cluster()Seung-Woo Kim
After the commit 265edc03d5a1 ("fs/fat: Clean up open-coded sector <-> cluster conversions"), it is hung up writing new file to FAT16 disk with more than 19 files in armv7. It is because result value of sect_to_cluster() is not proper by casting from signed value to unsigned value. Fix the wrong casting of sect_to_cluster(). Reported-by: Jaehoon Chung <jh80.chung@samsung.com> Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com> Reviewed-by: Lukasz Majewski <lukma@denx.de> (cherry picked from commit 6e2151c729674aecabf5ec5a96dac97433632009)
2019-01-03MLK-20669 lpuart: Fix tstc issue in Non-DM driverYe Li
The tstc function in Non-DM driver does not check the LPUART_FLAG_REGMAP_32BIT_REG flag, it always use 8 bits register version and cause issue in 8QM/QXP SPL. Signed-off-by: Ye Li <ye.li@nxp.com> Acked-by: Peng Fan <peng.fan@nxp.com>
2019-01-03MA-13879[wifi concurrency] Add bootargs to set a property for wifi vendor of 8mmyang.tian
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 <yang.tian@nxp.com>
2018-12-28MLK-20663 imx8: Fix malloc issue in container parserYe Li
The size used for malloc is wrong, the following read function will read 1KB to the container header buffer not the size of the header. Signed-off-by: Ye Li <ye.li@nxp.com> Acked-by: Peng Fan <peng.fan@nxp.com>
2018-12-26MLK-20660 imx8: Check the ROM pass over info only for RevAYe Li
Only the ROM on RevA will pass over some info into OCRAM. U-boot gets the info to determine whether it is eMMC fastboot. Thus, change that codes only for RevA, otherwise if we protect the OCRAM used by SPL on RevB, u-boot will fail to access it. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2018-12-26MLK-20655-2 imx8qm/qxp: Fix wrong gpio resource used in SPLYe Li
Since the gpio non-dm driver maps to wrong GPIO register, the SPL also powers up wrong GPIO resources. Signed-off-by: Ye Li <ye.li@nxp.com> Acked-by: Peng Fan <peng.fan@nxp.com>
2018-12-26MLK-20655-1 mxc_gpio: Fix non-DM driver issue for iMX8 platformsYe Li
The port index is not calculated correctly. It should not be descreased, because the gpio number is from 0 on imx8 platform. Otherwise we will access wrong registers. Signed-off-by: Ye Li <ye.li@nxp.com>
2018-12-26MLK-20654 imx8: Recover SPL data section for partition rebootYe Li
When doing partition reboot, the boot image won't be reloaded by ROM, it is just CPU reset to boot entry. The SW has to keep the boot image inside the RAM unchanged. It includes both the TEXT section and DATA section. For SPL, the problem is DATA section will be updated at runtime, so in next partition reboot the data is not same as the initial value from cold boot. If any code depends on the initial value, then it will have problem. This patch introduces a mechanism to recover the data section for partition reboot. It adds a new section in image for saving data section. When from cold boot, the data section will be saved to that new section at SPL early phase. When from partition reboot, the data section will be restored from the new section. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2018-12-26MA-13850-1 change the device tree and DDR related configurationfaqiang.zhu
After two defconfig files are directly copied from 8mm_evk_android for 8mm_evk_ddr4_android, this patch adapt the defconfig files. Device tree used in defconfig files are modifed, a configuration item of "CONFIG_TARGET_IMX8MM_EVK" is modified to be "CONFIG_TARGET_IMX8MM_DDR4_EVK" Change-Id: Ib48449d0c7abab45aff3a58a9c78c481290e7e6a Signed-off-by: faqiang.zhu <faqiang.zhu@nxp.com>
2018-12-26MA-13850 add two defconfig files for evk_imx8mm ddr4 versionfaqiang.zhu
Add two defconfig files for imx8mm ddr4 version. These two defconfig files are: imx8mm_ddr4_evk_android_defconfig imx8mm_ddr4_evk_android_uuu_defconfig They are respectively copy from the files below: imx8mm_evk_android_defconfig imx8mm_evk_android_uuu_defconfig Change-Id: Ic2ab2b51328b23446e8f264eb27308d226b57295 Signed-off-by: faqiang.zhu <faqiang.zhu@nxp.com>
2018-12-24MA-13832 [Trusty] Support random rpmb key setJi Luo
Sometimes we need to set random rpmb key which is invisible except for the device. Generate the random key with hwcrypto interface and support fastboot command "fastboot oem set-rpmb-random-key" to set it. Test: build and boot on imx8q. Change-Id: I44e1b6b091366d8ffceb1159fc65c17610ce5243 Signed-off-by: Ji Luo <ji.luo@nxp.com>
2018-12-24MA-13831-3 [trusty] Add command to generate rng with CAAMJi Luo
Add new hwcrypto command to support rng generation with CAAM. Test: rng generated on imx8qxp_mek. Change-Id: I756f3e99423f0f9dfc2bcd30117a3f96e9f5f2f7 Signed-off-by: Ji Luo <ji.luo@nxp.com>
2018-12-21MA-13303 fix the issue with 8qm boot from eMMC to flash SDfaqiang.zhu
For mek_8qm, bootloader offset in SD card is 32kb, in eMMC bootpartition, it's 0kb. This patch fix the issue that bootloader offset used in uboot is always based on the device that the board boot from. Now, if uboot environment variable "target_ubootdev" is set, bootloader offset used in uboot is based on the device "target_ubootdev" specified. So boot from eMMC to flash SD, the board can boot from SD and vice versa. Change-Id: Ia2cd64ba6ece02b98ea3d2addbce00b1661077de Signed-off-by: faqiang.zhu <faqiang.zhu@nxp.com>
2018-12-20MLK-20635 imx8: clock: Fix GPR settings for FECYe Li
FEC has some clock settings inside DSC GPR. Kernel configures them, but u-boot not. So when doing partition reset, the GPR keeps the value from kernel, and cause clock issue to u-boot FEC: kernel enables the divclk in GPR and set the clock slice to 250Mhz, u-boot configures the clock slice to 125Mhz, the divclk causes the RGMII TX CLK to 62.5Mhz. Fix the issue by aligning the GPR and clock slice settings with kernel Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Fugang Duan <fugang.duan@nxp.com>
2018-12-20MA-13785 remove the fastboot command of ucmd and acmdfaqiang.zhu
To avoid end user executing uboot command through fastboot, the fastboot command of "ucmd" and "acmd" in the uboot to be flashed into non-volatile storage device is removed in this partch. Change-Id: I999b8688a53c2201d02979be68266afc110dfb15 Signed-off-by: faqiang.zhu <faqiang.zhu@nxp.com>
2018-12-19MLK-20583-2 imx: mx6sabreauto: Enable OCOTP CTRL clock in DCD and pluginBreno Lima
The HAB code can not set Field Return and SRK Revoke sticky bits in case OCOTP CTRL clock is gated out. In case we disable OCOTP CTRL clock in DCD and plugin those features may not operate as expected. Keep OCOTP CTRL clock enabled in DCD and plugin so HAB can propely lock those features, users should use the CSF Unlock command to prevent those features from being locked. Signed-off-by: Breno Lima <breno.lima@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com>
2018-12-19MLK-20583-1 imx: mx6sabresd: Enable OCOTP CTRL clock in DCD and pluginBreno Lima
The HAB code can not set Field Return and SRK Revoke sticky bits in case OCOTP CTRL clock is gated out. In case we disable OCOTP CTRL clock in DCD and plugin those features may not operate as expected. Keep OCOTP CTRL clock enabled in DCD and plugin so HAB can propely lock those features, users should use the CSF Unlock command to prevent those features from being locked. Signed-off-by: Breno Lima <breno.lima@nxp.com>
2018-12-19MLK-20602 imx8mq: Change clock source of GICBai Ping
Change the the GIC clock source to sys_pll2_200m. Improve the IRQ response latency. Signed-off-by: Bai Ping <ping.bai@nxp.com>
2018-12-19MA-13788 add defconfig for aiy_imx8mq uboot used by uuufaqiang.zhu
To align aiy_imx8mq uboot used by uuu with other platforms, a defconfig used to configure and build uboot used by uuu is added. This "imx8mq_aiy_android_uuu_defconfig" for now is a copy of below file: imx8mq_aiy_android_defconfig Change-Id: I7c96297fa13fa7bb02117ceee8675e95f86e7b60 Signed-off-by: faqiang.zhu <faqiang.zhu@nxp.com>
2018-12-18MA-13787 disable FS_FAT write feature for Android Auto ubootfaqiang.zhu
Since FS_FAT has been removed from uboot for Android Auto to minimize image size, disable FS_FAT write feature for Android Auto uboot. Change-Id: I8740735b68759bfd62d53cf7f08287a098b481c4 Signed-off-by: faqiang.zhu <faqiang.zhu@nxp.com>
2018-12-18MLK-20493-10 usb: gaget: ci: set ep's desc when enable epLi Jun
As we need standard usb_ep's desc, so set it when enable ep. Reviewed-by: Peter Chen <peter.chen@nxp.com> Signed-off-by: Li Jun <jun.li@nxp.com>
2018-12-18MLK-20493-9 usb: gadget: fastboot: use correct max packet sizeLi Jun
Change to use wMaxPacketSize of current speed EP desc for request length wrap up. Reviewed-by: Peter Chen <peter.chen@nxp.com> Signed-off-by: Li Jun <jun.li@nxp.com>