summaryrefslogtreecommitdiff
path: root/arch/arm/mach-imx/imx8m
AgeCommit message (Collapse)Author
2024-02-19Merge tag 'lf-5.15.71-2.2.2' into toradex_imx_lf_v2022.04Max Krummenacher
This pulls in the following commits: git log --oneline --no-merges ^HEAD lf-5.15.71-2.2.2 14b6c8f3e3b MA-20886 imx8ulp: Boot from recovery mode when pressing key 62ad7799b6c LF-7602: Device tree fixup based on compatible string b35420da607 crypto: fsl_hash: Remove unnecessary alignment check in caam_hash() 918dbf78bbb MA-20872 Revert "MA-18775 system will hang about 3s when boot up kernel" ed2c3cbd6ac MA-20814 add fastboot command to erase u-boot env a6762e28bf0 LF-6627: nand drvier fixups in sdboot on ls1043ardb-pd d23cfa09767 LFU-426: qspihdr: Coverity Issue: unchecked return value 413b08f841f MLK-25850: imx8dxl_ddr3l_evk: change the default fdt file name e91a047f54f LF-7382: fastboot: improve emmc write speed 205680f9f4b LFU-428 imx8ulp: Add warning for CAAM non-secure state failure f405551dcc1 LF-7369-2 clk: imx93: update LPCG control API 676831be672 LF-7369-1 clk: imx: implement a clock gate driver for i.MX93 94c5bb2eb83 MA-20507-7 trusty: fix dereference null return value 6933487b4df LFU-427 imx93: Print ELE FW version 15b1ebb00cc LFU-393 imx93: Add reset cause print f3b75e3317d LF-7332 imx8/ahab: sha256: enable image verification using ARMv8 crypto extention 330e2634143 LFU-423: usb: cdns3: gadget: Avoid using usb_ss after null check 58ba744cbad MLK-26034 imx6: Disable LCDIF clock before jumping to kernel ae396d343a3 LF-6627: nand drvier fixups in nandboot on ls1043ardb-pd 0a99627b60e LFU-422-2 imx8ulp_evk: Enable the GD25LX256E support c6c06de038f LFU-422-1 mtd: spi-nor: Add GigaDevice GD25LX256E NOR flash 032fab5e127 LFU-421 imx93_evk: Add imx93 low drive mode support on 11x11 EVK d9f477625d3 LF-7332 armv8: SHA-256 using ARMv8 Crypto Extensions 53689e4f7db MA-20667 set metadata partition of type f2fs f824cd01955 LFU-415 net: fec_mxc: Skip recv packet process when fec is halted 4e7c44e1f33 LFU-419 arm: dts: imx8mp: fix flexspi nand reg 957bdd9c925 LFU-418 imx8ulp: upower_hal: make code cleaner 361b23b98ed Revert "MLK-25478-1 efi: add Platform-Reset-Attack variables" e1ed0611b5e Revert "MLK-25478-2 efi: clean memory and reset MemoryOverwriteRequestControl" 4998fef38a5 Revert "MLK-25478-3 workaround: disable verify time of signer and signee." 320096439b6 MA-20738 imx8ulp: bumps CONFIG_LMB_MAX_REGIONS c244bdfd76c LFU-417-2 imx93_evk/qsb: Enable DDR inline ECC feature 026521c7d65 LFU-417-1 ddr: imx: imx9: Add DDR inline ECC support a555a21be69 LFU-413 imx8ulp_evk: Remove CONFIG_BOOTDELAY=0 from ND defconfig aaead5a2b8d LFU-416 imx: cmd_dek: Fix build warning in blob_encap_dek 933a3b25fe3 LF-7234 enable CONFIG_CMD_CRC32 and CONFIG_CRC32_VERIFY 97fc905e7f7 LFU-409: imx8dxl: fix the i.MX8DXL ddr3l NAND DQS iomux setting aa4ebb66199 LFU-414 imx8ulp: clock: Update clocks to meet max rate restrictions 63d0579f397 LFU-410 imx: ele_ahab: Add ahab_sec_fuse_prog command 266dddae454 LFU-412 configs: imx93_evk: shrink mem= for jailhouse 5703d3ae37e LFU-411 imx8ulp: Always enable MIPI_DSI power switch 32965eb52f7 LFU-392 imx8ulp: upower: replace magic number with macro beb5e5e3303 MA-20677 imx8ulp: android: enable CONFIG_AHAB_BOOT by default bb45dd592db LFU-408 imx93evk: config the pmic standby voltage for buck1 25e38cb4762 LFU-407-02 ddr: imx9: Change the saved ddr data base to 0x2051c000 a8fef10ab92 LFU-407-01 configs: imx93: Update spl stack & bss base address 8731024fe7e LFU-406 mx6ul/mx6ulz: Fix build break caused by RNG patch a95afe08769 LF-7238 imx9: soc: Remove OPTEE memory from DRAM bank and MMU 19c3fdebf8d LFU-403-4 imx93_evk/qsb: Enable TMU sensor driver e1703ec06a4 LFU-403-3 iMX93: soc: print current CPU temperature 050a94e6365 LFU-403-2 DTS: imx93: Update TMU node to sync with kernel 91e711a565c LFU-403-1 thermal: imx_tmu: Update TMU driver to support iMX93 78749666dd3 LFU-402-3 imx93_evk/qsb: Use API to set max ARM clock 401b9824f92 LFU-402-2 iMX93: clock: Add API to set max ARM core clock e4722baa5af LFU-402-1 iMX93: soc: Get market segment and speed grading 432a4af9608 LFU-400 imx8ulp: clock: Clear dividers in PLL3DIV_PFD registers 53f06207782 LFU-399 imx8ulp: Reconfigure MRC3 for SRAM0 access 48a2221acc9 LFU-395 imx93: Add fused parts support d8760a74793 LFU-398-7 imx93_9x9_qsb: Enable Flexspi NOR support 1f500a59670 LFU-398-6 imx93_qsb: Enable M.2 VPCIe_3V3 and deassert SD3_nRST ba4f72198f5 LFU-398-5 DTS: imx93-9x9-qsb: Add flexspi NOR nodes and pinctrl d9f563336f7 LFU-398-4 imx93_11x11_evk: Enable Flexspi NOR support c56f2132d53 LFU-398-3 imx93_evk: Enable M.2 VPCIe_3V3 and deassert SD3_nRST b6cbe6b1416 LFU-398-2 DTS: imx93-11x11-evk: Enable and update flexspi NOR c45c4fb791b LFU-398-1 DTS: imx93: Update flexspi node in DTSi fab973fe1df LFU-397 imx8m: clock: not configure reserved SRC register 4881ba99fa4 LFU-396-7 imx93_9x9_qsp_defconfig: support splash screen 60e0e629f99 LFU-396-6 arm: dts: add imx93 9x9 ontat panel dts fffc330cf1a LFU-396-5 imx9: clock: add 300MHz fracn pll table ef6a3d9cc38 LFU-396-4 video: nxp: imx: add Add i.MX93 parallel display format encoder driver 5f414738a5f LFU-396-3 video: nxp: imx_lcdifv3: support VSYNC/HSYNC active low 21eb66fe1f8 LFU-396-2 video: nxp: imx: dsi: force DISPLAY_FLAGS_HSYNC_HIGH & DISPLAY_FLAGS_VSYNC_HIGH 88132ed0b4e LFU-396-1 video: simple_panel: make backlight optional 65287dc074d LF-7055: video: imx: Add set_parent calls to LVDS initialization 167f65006fb MLK-26021 imx93: add 9x9 qsb lpddr4 board 0a6297a290e MA-20677 imx8ulp: android: enable CONFIG_AHAB_BOOT by default 8789f3ca3e4 PLATSEC-1781-2 MX6: Device tree fix-up 60555c4a445 PLATSEC-1781-1 mx6ull:Add config CONFIG_OF_SYSTEM_SETUP 48b1d6e34fd MA-20149 set fs type of android partitions 9710cc4840e LFOPTEE-177 imx93evk: enable cmd_dek command f0721d67f03 LFOPTEE-177 imx8ulp: enable cmd_dek command bf07f5166bf LFOPTEE-177 imx: cmd_dek: add ELE DEK Blob generation support 6de56c3f629 LFOPTEE-177 s400_api: add DEK Blob generation Conflicts: drivers/crypto/fsl/fsl_hash.c commit 41b2182af73 ("crypto: fsl_hash: Remove unnecessary alignment check in caam_hash()") Both NXP and TXD branch did cherry-picking that commit, but NXP additionally removed a debug print (not present in master) while the TDX branch did not. Resolved by doing it the NXP way. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2023-09-12imx8mn/8mp: Allow booting via USBFabio Estevam
When trying to boot via USB on i.MX8MN it is necessary to specify the U-Boot environment location, otherwise the boot process simply hangs. Specify the environment location when booting from USB. Tested on a imx8mn-evk. Upstream-Status: Backport [d175982c207bb2ace592d7985cd3f05ab99759d9] Suggested-by: Michael Nazzareno Trimarchi <michael@amarulasolutions.com> Signed-off-by: Fabio Estevam <festevam@denx.de> Tested-by: Tim Harvey <tharvey@gateworks.com>
2023-09-12toradex: imx8mp: Enable serial number for fastbootJoao Paulo Goncalves
Fix build error when enabling fastboot support. FSL fastboot use serial number value when CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG is enabled. Upstream-Status: Inappropriate [other] This is a downstream only fix. In upstream fsl fastboot is not implemented. Signed-off-by: Joao Paulo Goncalves <joao.goncalves@toradex.com>
2022-11-08Merge remote-tracking branch 'gh-nxp/lf_v2022.04' into ↵Philippe Schenker
update-to-5.15.52_2.1.0__toradex_imx_lf_v2022.04
2022-09-28LFU-397 imx8m: clock: not configure reserved SRC registerPeng Fan
i.MX8M[M,N,P] SRC not has 0x1004 offset register, so drop it. Reviewed-by: Ye Li <ye.li@nxp.com> Signed-off-by: Peng Fan <peng.fan@nxp.com> (cherry picked from commit 78d7ccda83f729d7f7b5f4b731a6d35764cdc402)
2022-07-18LFU-332-7: arm: mach imx8m: imx8mm ab2 target board configsAdrian Alonso
Add iMX8M Mini Audio board 2.0 target board configs Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com>
2022-07-18LFU-332-2: arm: mach imx8m: imx8mn ab2 target board configsAdrian Alonso
Add iMX8M Nano Audio board 2.0 target board configs Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com>
2022-07-14imx8m: fixup thermal tripsAndrejs Cainikovs
commit 0543a1ed2787805dbbf5f32b5bfae323452b4bd9 upstream. Fixup thermal trips in Linux device tree according to SoC thermal grade. Signed-off-by: Andrejs Cainikovs <andrejs.cainikovs@toradex.com> Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com> Tested-by: Adam Ford <aford173@gmail.com>
2022-05-11LFU-329 caam: Fix crash in case caam_jr probe failedYe Li
If probing caam_jr returns failure, the variable "dev" will not be initialized, so we can't use dev->name for the error print. Otherwise it will cause crash. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Gaurav Jain <gaurav.jain@nxp.com>
2022-04-28LF-5964 imx8m: Delete board_get_usable_ram_top for wrong ram_topYe Li
This function will limit gd->ram_top at first 1GB (address 0x80000000) or optee start address. It conflicts with commit 0aad7b8 (LFU-188-1 imx8m: soc: Relocate u-boot to the top DDR in 4GB space) that moves the u-boot at top of 4GB space. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2022-04-27LFU-296 imx: imx8mq: fix tzasc swap idPeng Fan
i.MX8MQ also needs GPR_TZASC_ID_SWAP_BYPASS set to avoid secure DRAM data leakage, since all i.MX8M has this bit, so we drop the condition check. Also lock the bit. Reviewed-by: Ye Li <ye.li@nxp.com> Signed-off-by: Peng Fan <peng.fan@nxp.com>
2022-04-20MA-19864 imx8m: Add RDC config functionsJi Luo
Add RDC config functions so we can config the RDC on i.MX 8MQ in SPL. Signed-off-by: Ji Luo <ji.luo@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com> Change-Id: I0cf4b7a11438afa460b9eb486ad865b74df28125 (cherry picked from commit f3033e7d3ecaf15f9026d72c7642b6fd9aff919d)
2022-04-20MA-19357 imx8mq: enhance security for androidJi Luo
Setting the CSU configs to enhance the imx8mq security. And as the ocram space reserved for TF-A is very limited (64 KB), the code size would overflow the limit if setting csu configs in TF-A, so this commit will set it in spl. Signed-off-by: Ji Luo <ji.luo@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com> Change-Id: If9d2c20401cb256174aa2e9a72cae2686e58c7bd (cherry picked from commit 9f08e16a291e4d42b6ccb7386b506f6317931bb5)
2022-04-20MA-19331 imx8m: skip JR probe for android in ubootJi Luo
As JR0 is reserved to secure world for HAB (secure boot), commit 'ed618ce6a9 (LFU-219)' switch to use JR1 in uboot. But this will cause conflict with Android as JR1 is assigned to secure world for Trusty OS. Since android doesn't use CAAM in uboot so we just skip the JR probe in uboot to avoid conflicts. Test: Boots on imx8mp. Signed-off-by: Ji Luo <ji.luo@nxp.com> Reviewed-by: Gaurav Jain <gaurav.jain@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 8fdf9c32919e3a4ea671d47c19819321c3c09c9b) Change-Id: Ic79a54f90ecf8ed55140fc45b731716664180fd5
2022-04-20MA-19048-1 MCU security enhancementJi Luo
Move the MCU RDC config to dts, it will be parsed by SPL and stored in OCRAM_S, then the MCU RDC config will be setup before MCU kicking. Use HAB to verify the MCU image to guarantee its integrity. Change-Id: I82dd378a6516b4d3cc47c5de2e403d817ba80256 Signed-off-by: Ji Luo <ji.luo@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 2e972e4aa6c44eec0444d59d11c0a0c175699cf2)
2022-04-20MA-19067 android: skip optee dtb node handlingJi Luo
Android doesn't use optee so skip optee dtb node handling. Change-Id: I30bf91a62fe774dbae0d219fd17405feed6f0784 Signed-off-by: Ji Luo <ji.luo@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 4fd9870d55faadec1f19e29b6b620225bb821418)
2022-04-18MA-17390 Clean build warnings for androidJi Luo
This commit eliminate the annoying build warning logs. Test: builds with buildman. Signed-off-by: Ji Luo <ji.luo@nxp.com> Change-Id: Ia335dafe3f4c0eab08e011215b9de5d2974b8d0c (cherry picked from commit 85e0d429d19b8f9a62369a5f20e088644c488b1e) (cherry picked from commit 52471735760a8d3a410f88c144910a07a161028d) (cherry picked from commit c0ed4a68aecf0cf67d61c72c273fcd655682366f)
2022-04-18MA-15019-1 Support Manufacture Protection public key generationJi Luo
Add new keymaster commands to get Manufacure Production key (mppubk). Since the mppubk can only be generated in OEM CLOSED imx8q board, so we can only use this command when the board is HAB/AHAB closed. Commands to extract the mppubk: * $fastboot oem get-mppubk * $fastboot get_staged mppubk.bin Test: Generate and dump the mppubk.bin Change-Id: Idc59e78ca6345497e744162664b8293f50d1eda4 Signed-off-by: Ji Luo <ji.luo@nxp.com> (cherry picked from commit 52300d644a275dfa4fe73ecb51601a8efaff8ab7) (cherry picked from commit 7320c7c0efacfb7706e85bfe82d11ac6c2e5b61f)
2022-04-18LFU-278-20 imx8m: Disable BINMAN for iMX8M EVK buildYe Li
Disable the BINMAN which is used by upstream to build flash.bin to avoid some build warnings Signed-off-by: Ye Li <ye.li@nxp.com>
2022-04-06LFU-247-1 imx8m: clock: Add function to get DSI PHY reference clock rateYe Li
The D-PHY ref clock source is configurable. We need to know the reference clock rate for D-PHY PLL calculation. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> (cherry picked from commit 2560cd096e54d21d5b68fd3cb70e4d3140854bc3)
2022-04-06LFU-244 imx8mp: Add SC part (iMX8MP UltraLite) supportYe Li
Beside the fused modules on iMX8MP Lite, this part has also fused GPU3D/2D, LVDS and MIPI DSI. So we have to disable them for kernel and also disable MIPI DSI in u-boot DTS for splash screen at runtime. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> (cherry picked from commit 8de08ed09c0853ec5bf74f52db29b90f9f619ead)
2022-04-06LF-4200 imx8m: soc: drop phy-reset-gpios for fecPeng Fan
Need to drop phy-reset-gpios before booting linux, this property is legacy property and replaced with reset-gpios. If provide both, kernel would failed to request the same gpio twice and cause fec not work. Signed-off-by: Peng Fan <peng.fan@nxp.com> (cherry picked from commit 1499d502491087d3200c74588182b2accd372743)
2022-04-06LF-3892-5 imx8mn_evk: update defconfig and code for SR-IRPeng Fan
Update defconfig and code for SR-IR Reviewed-by: Ye Li <ye.li@nxp.com> Signed-off-by: Peng Fan <peng.fan@nxp.com> (cherry picked from commit f8cba1b10417d59187ab80cb7dd5d7d4e17c7ae9)
2022-04-06LFU-188-1 imx8m: soc: Relocate u-boot to the top DDR in 4GB spaceYe Li
The EFI memory init uses gd->ram_top for conventional memory. In current implementation, the ram_top is below optee address. This cause grub failed to allocation memory for initrd. The change updates DDR bank setup functions to place the u-boot at top DDR in 4GB space. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> (cherry picked from commit 971bae76cc3f655fb1a1e8e54936d7b92887aaed) (cherry picked from commit b28bc831e3b206bd35b2fa08a38012fbb73a7854)
2022-04-06LF-3898-3 imx: imx8m: soc: runtime drop extcon property from usbotg nodePeng Fan
The extcon is an decrepted property and not used by upstream Linux and NXP 5.10 kernel, so we remove it before kicking linux in case it is in dts. Otherwise distro kernel will not able to have usb function. Reviewed-by: Ye Li <ye.li@nxp.com> Signed-off-by: Peng Fan <peng.fan@nxp.com> (cherry picked from commit 929b72a960a925ca429d04de770ffe7eb0c968df)
2022-04-06MLK-25486 imx8mp: Set MEDIA_AXI_CLK_ROOT to 400MhzYe Li
MEDIA_AXI_CLK_ROOT is 400Mhz for nominal voltage while 500Mhz is for overdrive voltage. Since we use OD VDD_SOC voltage for LPDDR4 EVK board, but ND for DDR4 EVK board. Using 500Mhz will break for DDR4 EVK. So set it to 400Mhz that can work both ND and OD. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Jacky Bai <ping.bai@nxp.com> (cherry picked from commit f07ffe1db06b96af4d8701eb6e11bdf875667bf0)
2022-04-06LFU-278-6 imx8/imx8m: Enable Job ring driver model for more boardsYe Li
Enable the JR DM driver for more iMX8 and iMX8M boards like 8DXL, 8DXL phantom, 8MM DDR4 EVK, 8MN DDR3 EVK, 8MP DDR4 EVK Signed-off-by: Ye Li <ye.li@nxp.com>
2022-04-06LFU-278-5 imx: Enable FSL_BLOB by defaultYe Li
To align with NXP v2021.04 u-boot, enable the FSL_BLOB to do blob encap/decap with FSL_CAAM enabled Signed-off-by: Ye Li <ye.li@nxp.com>
2022-04-06MLK-25010 iMX8MN: Update low_drive_gpu_freq for new GPU node pathYe Li
Low drive mode needs to update GPU freq in kernel DTB. But 5.4 and 5.10 kernel are using different GPU node pathes. Update low_drive_gpu_freq to support both two paths. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> (cherry picked from commit cb1c6e4279030b859133b9e4e4a0fb2c3e3cd45c) (cherry picked from commit 968b42dd710f4c051eaf958b706fba12675531f2) (cherry picked from commit da4317bef107b78440c6df771e5eb7c6c0726f70) (cherry picked from commit f958691ff975adf40c2c2064123c781445054a95)
2022-04-06MLK-24860-2 imx8mp_evk: Add DDR4 EVK board supportYe Li
This board uses 4GB DDR4 and replace emmc and flexspi to a raw NAND socket. Add the support for this board, including SD boot, NAND boot, and inline ECC (top 1/8 DDR used for ecc). Signed-off-by: Ye Li <ye.li@nxp.com> Acked-by: Peng Fan <peng.fan@nxp.com> (cherry picked from commit 9b47aaef967bb7655312895c133e64e32e8f5b87) (cherry picked from commit 155413f5aa41f782a1a6d68e208d523be7ab83a0) (cherry picked from commit 7e6073fcea5174c247680e8c6a1a22903f2ec7cf) (cherry picked from commit 87959e3b4ab6608c0207ae59585bf1d29b855fc5)
2022-04-06MLK-24817 iMX8MN: Add iMX8MN 11x11 DDR3L EVK supportYe Li
Add relevant configs and DTS for iMX8MN 11x11 DDR3L EVK in SPL/u-boot. Compared with LPDDR4 EVK, the DDR3L EVK has below changes: 1. DDR is changed to 1GB DDR3L 2. WIFI chip is changed. 3. Power rails changed: a) VDD_ARM is combined to VDD_SOC, so disable buck2. b) NVCC_DRAM needs 1.35v for DDR3L. c) VDD_SOC sets to 0.85v since DDR runs at 1600MTS 4. NO GPU and MIPI display. Splash screen is disabled. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> (cherry picked from commit 752ab54b9cb983efcf1ea4bf68e87fb7b837a811) (cherry picked from commit 6da7ba4c30e99d8716985fb38844e9b6420f92c2) (cherry picked from commit 73fa747e96390fcb214144a986873b8d18f0b999) (cherry picked from commit 5d59c2f393dd8eaca448868f6523f38496194273)
2022-04-06MLK-24720 imx8mq_ddr4_val: Change to use iMX8M DDR driverYe Li
Add the DDR4 timing file generated from RPA tool and update codes to enable the DDR driver Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Jacky Bai <ping.bai@nxp.com> (cherry picked from commit 99767e137a4a8fc4a6a3288b5d69779239415b91) (cherry picked from commit 0e15243062186348e958795051c6f34bd732c6d4) (cherry picked from commit acdfacab2e99690c3c094333f6f7d9ccd54c9269) (cherry picked from commit 414b725a0c703752a273079c1c1e5937cfca2cb8)
2022-04-06MLK-24377 imx8mq: Remove clearing mfg prot private keyYe Li
In patch "MLK-22749 imx8mq: Add workaround to fix sticky bits lock up", we clear the manufactory protection private key to workaround the HAB issue. According to detail analysis in KBL-5961, this action is not needed. HAB will clear the key according the unlock command in CSF. - if the HDMI FW CSF signature does not include the Unlock command related to MFG feature, the MPPrivK is cleared. - if the HDMI FW CSF signature contains this Unlock command, the MPPrivK clearing decision is postponed to the next CSF signature. Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 8dafcbcb10274f0fdd9271e559dca427e0b880bf) (cherry picked from commit 88040b01d4ac96675dbae4fdf939e56fc25bd098) (cherry picked from commit 16ed4a7ac5a9c74c5156e589beb74db47c637a1c) (cherry picked from commit 7c5846f2a5f8eb3be0c07b8c5c1853378b6b2088)
2022-04-06MLK-23820 imx8mq/mm: Add config to support secondary image bootYe Li
When primary image boot is failed, ROM will select secondary image to boot if SIT (secondary image table) exists. However, SPL does not know the secondary boot, still loads the FIT from the position of primary image. Introduce a config to add secondary image sector offset to FIT sector offset. This config is default set to 0. Secondary image should configure it to the same value of firstSectorNumber field in SIT. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> (cherry picked from commit 7caa7682a8e3ba765c513127fa2a15e335617a65) (cherry picked from commit fc88ace3e14761984b5c24c831dfdfc1840ec376) (cherry picked from commit a9c09cc034b37b7c82d0db5df0e82a2a56aca145)
2022-04-06MLK-24079 imx8mp: Disable DWC3 gadget before UUU jumping to kernelYe Li
When UUU runs acmd command to boot into kernel, the fastboot never get chance to exit, so the usb gadget is not disconnected. This causes kernel USB gadget failed to work. Re-use iMX8MQ implementation to disconnect DWC3 gadget before jumping to kernel. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Jun Li <jun.li@nxp.com> (cherry picked from commit 27cb9ee66bccabea702c10d909788cac7ebe306e) (cherry picked from commit a0717e53b38f6385f705c14c6e34c03f6464b4ed) (cherry picked from commit 1967e6a0082235364ec1b6409984940dfc7c57e6)
2022-04-06MLK-23964-13 imx8mq: Add power and clock settings for HDMI splash screenYe Li
Implement the power on and clock settings for DCSS and HDMI drivers Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit e97703d2e708f3e44c1276b46b9293fc24ba7a73) (cherry picked from commit f869ee6da408d885e090c5ad54dc36a559051aba) (cherry picked from commit 8fc8de044476f1dcee171a5b01a82a0aee856963) (cherry picked from commit 15d7d060c0786799f0e78d0b751dc1135b4a8e46)
2022-04-06MLK-23574-48 imx8mm: Add DDR3L and DDR4 validation boardsYe Li
Porting board codes, configurations, DTS and DDR initialization codes for the DDR3L and DDR4 validation boards from imx_v2019.04 Ready functions: - DDR3L board: SD, UART, I2C, USB host and NAND FPGA on the board controls WDOG_B and ENET PHY reset, so reset and ethernet can't work - DDR4 board: SD/eMMC, I2C, ENET, Flexspi, UART and USB Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit e34b17b9b5eac3c7c33d54408d2850416125318f) (cherry picked from commit 4a6bfd41d565b560ccb5e3723d664c54fd21f799) (cherry picked from commit 39c1ba9d8b5115e0abe95fc10463c269a5b9d1c1)
2022-04-06MLK-23574-47 imx8mq: Add DDR3L and DDR4 validation boardsYe Li
Porting board codes, configurations, DTS and DDR initialization codes for the DDR3L and DDR4 validation boards from imx_v2019.04 Supported modules - DDR3L VAL: Two RANK DDR3L, QSPI B, eMMC/SD, RMII ENET, UART. - DDR4 VAL: Two RANK DDR4, SD, NAND, RGMII ENET, UART Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit ff5d678353f0f442902a2a3067fad198c7a7dacc) (cherry picked from commit b779c24473711a75b7455e99662ca7a69eb9c6bc) (cherry picked from commit 63ed4473ba855540cdac7faa13c7126b10aabeb0)
2022-04-06TEE-502 imx: refactor optee bindings additionSilvano di Ninno
- Remove code duplication betwee imx8 and imx8m support - add reserved memory node to prevent Linux accessing optee reserved memory Signed-off-by: Silvano di Ninno <silvano.dininno@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 8beac7ef22c16b72ad337b44a0516436a4a0d00c) (cherry picked from commit 07be6f855bdcbca200e4685ea557b2529187e29f) (cherry picked from commit 1bfbbac316e3d7ac051f81264b66425a86d95c4d) (cherry picked from commit 6a27dd9792900a6512b05eca85d22aab120c74a6)
2022-04-06MLK-23165-12 imx8mp: Support imx8mp USB PHYYe Li
Update PHY settings to select 24M ref clock Enable clock in HSIOMIX GPR for SPL which does not call ATF USB domain power up Reviewed-by: Jun Li <jun.li@nxp.com> Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit aa0f45fed58f891e246e6ec743a7de71eb69c911) (cherry picked from commit 6375056baf59d271a06fdbbb5248706ebe4977fd) (cherry picked from commit 82661008a4ab3f2c82463d64b5c4af12b8c569dd) (cherry picked from commit 01ea8acd74f44bf29f0e8f9acb20072104d9e46a)
2022-04-06MLK-22749 imx8mq: Add workaround to fix sticky bits lock upYe Li
On B1 chips with HAB v4.4, the sticky bits are not locked up in HAB closed mode. We introduce a workaround in SPL to lock up these bits and clear Manufacturing Protection Private Key for secure boot. For field return case, user has to build a SPL with CONFIG_SECURE_STICKY_BITS_LOCKUP=n and set CONFIG_IMX_UNIQUE_ID to part's unique id. When the UID check is passed, sticky bits are not lockup and users can burn field return fuse. Otherwise the boot will stop. Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit c98b47f1ff60e1f99807e24fd76053ad880f803e) (cherry picked from commit ce78751b8428228f32b77386cc6e9be8bcbba470) (cherry picked from commit da7fe0d5032a430fb1704c458af2fcf11d64a666) (cherry picked from commit 15716456a045aa2f899b760a71bd54be6e996836)
2022-04-06MLK-22622 imx8m: Enable the SError exceptionYe Li
To work with commit 2f3c920(imx8m: workaround ROM serror), we need to enable the SError exception and install vector in SPL. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> (cherry picked from commit f05dd45251ca82cc54e13a616f00744c26faab53) (cherry picked from commit 25d059411e702a4002f1aa157839001f796dd9f6) (cherry picked from commit 27bf8a2d4deb1f3316497e2a7a3ff277d8a0431c) (cherry picked from commit 469613705d530117e15357d46da9ec2516ac2280)
2022-04-06MLK-23574-34 imx8mn_evk: Update codes for iMX8MN LPDDR4/DDR4 EVKYe Li
Update below codes for LPDDR4/DDR4 EVK: 1. Add PMIC BD71837 support for DDR4 EVK 2. Add DM FEC ENET support 3. Enable Flexspi NOR support 4. Add USB typec host and device mode support 5. Disable binman 6. Use dedicated -u-boot.dtsi for LPDDR4 EVK not share with DDR4 EVK Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 35dd5274f7940a200924838cdcd7ab2e9beeef01) (cherry picked from commit 1f107b7832010a6466676ede895bd3e8a65854ba) (cherry picked from commit 08c42b019211296ed0f4d17623f6c79b1ba29273)
2022-04-06MLK-19995 imx8mq: disconnect usb from host for uuuLi Jun
Stop the usb device controller before enter kernel, this is required to make kernel can properly init usb controller with it's in stopped state. Suggested-by: Ye.Li <ye.li@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com> Signed-off-by: Li Jun <jun.li@nxp.com> (cherry picked from commit 27d6b4cf3d8d6701aeb800b307ef52afd18540ba) (cherry picked from commit dfcd809622bd994937724dc8c3252c16a2131056) (cherry picked from commit c08b3c7621b63d023563d5d5bdb21813568e2c0b) (cherry picked from commit 00415e8c94da2fa916042e21d4d7884a98006779) (cherry picked from commit 1e82385a7368a3f765c8b77d8cf2bbb23bc0f858)
2022-04-06MLK-19181-2: i.MX850: SPL enable usb supportFrank Li
Enable DWC3 USB support at i.MX850D platform Signed-off-by: Li Jun <jun.li@nxp.com> Signed-off-by: Frank Li <Frank.Li@nxp.com> (cherry picked from commit 7c3d2a17bf85e97a486d01e231480baaa7e7a167) (cherry picked from commit 1dd830df85ef684d8b6acd4655204ce7bd6be997) (cherry picked from commit 830584d72ad856fa71e37bfc61f3f590fbaea7e2) (cherry picked from commit 87775f78ddadfeb5208a4eb8982ef210bb56a059) (cherry picked from commit a0571396a38b11a524e7165be9a7c4aa8f531a78)
2022-04-06MLK-18591-6 android: iot: Add boot Trusty OS codes for i.MX SoCsYe Li
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 <ye.li@nxp.com> Signed-off-by: Haoran.Wang <elven.wang@nxp.com> (cherry picked from commit 1ae9ecc73f5001b8bd743011c06a7d07861be64e) (cherry picked from commit 6fa4f4a42fd90631f8dc8303b17f600c085d8595) (cherry picked from commit d5046e6f021f3d55c58e8b46b13ac3e8e1761755) (cherry picked from commit e1588a2741dfd0f37421e13ceb5e310e0b35d3bf) (cherry picked from commit 6eae7a4c237199be90984f03f5c396e0d63b34f1)
2022-04-06MLK-18591-3 android: Add FSL android fastboot supportYe Li
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 <Frank.Li@nxp.com> Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 65120b06a7f750b9b1a6e0db3d2082cc7088d5a8) (cherry picked from commit 9b149c2a28829fe7017f83981d634157bc31cc94) (cherry picked from commit 9f99e9de1d37e9f6c02c1b27348ea3dcdab94569) (cherry picked from commit 6ae1c043431a4987f563026b179b33945a5880ee) (cherry picked from commit 806c9ba15e8742a23b1b9147d9b85219133b6f10) (cherry picked from commit 1357b84595d617f6ebc09f23e7b9d14b080f8048)
2022-04-06MLK-23574-27 imx8mm_evk: Update board codes and add DDR4 supportYe Li
Update the board codes to use latest DDR script and support flexspi boot, USB host/gadget, etc. Also add DDR4 EVK board support for RAW NAND boot. Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 07c35f48b5e9e41f7e8c1dfe81e9e50c65d4e87c) (cherry picked from commit 85e00a89b64369732853971bf3ac8d889bd73993)
2022-04-06MLK-23574-22 imx8m: clock: Sync clock settings with imx_v2020.04Ye Li
Sync the clock settings with imx_v2020.04 u-boot: 1. Set ARM clock directly from PLL, bypass CCM. 2. Add mapping between ROOT clock and MXC clock 3. Fix frac pll parameters issue in imx8mm, which violates spec. 4. Add all root clocks 5. Add clock settings for some peripherals: like enet/uart/i2c/display/nand/usb to allow not use CCF. Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 7fd7134e96c01e6c83bcd2d934913d9abefb6612) (cherry picked from commit 710031075b4317c887c12b9ef2f353b096bc258c)
2022-04-06MLK-16753-1 imx8m: add optee node according to runtime statusPeng Fan
If TEE is enabled according to rom_pointer[0,1] passed to BL33 from ATF, uboot need to add the optee node in dts to let Kernel could probe the TEE driver. Signed-off-by: Peng Fan <peng.fan@nxp.com> (cherry picked from commit 4341d35cc99a6226f2671e15154d3148ebf49c47) (cherry picked from commit 609e6607572225bfff9dcd84928fd061c1682669) (cherry picked from commit dbdf9dd3b8bb6b8e0a87a07227bc22d6333f8081) (cherry picked from commit ada19a1a7c8ee9c3641b3955c68b54694effd02a)