summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-12-08MLK-17109-4 imx8mq_arm2: Add i.MX8MQ DDR3L and DDR4 ARM2 boards supportYe Li
Add board codes, configurations, DTS and DDR initialization codes for the DDR3L and DDR4 ARM2 boards. Supported modules - DDR3L ARM2: Two RANK DDR3L, QSPI B, eMMC/SD, RMII ENET, UART. - DDR4 ARM2: Two RANK DDR4, SD, NAND, RGMII ENET, UART. NAND read/write/erase is ok in u-boot, NAND SPL boot will be tested later when tool is ready. Signed-off-by: Ye Li <ye.li@nxp.com> Acked-by: Peng Fan <peng.fan@nxp.com>
2017-12-08MLK-17109-3 mxs_nand: Add support for i.MX8MYe Li
Update the gpmi/apbh_dma/bch drivers and relevant registers for i.MX8M. Signed-off-by: Ye Li <ye.li@nxp.com>
2017-12-08MLK-17109-2 spi_flash: Add gd25q16c to flash ids tableYe Li
The i.MX8MQ DDR3L ARM2 boards uses gd25q16c flash device, add its id to spi flash ids table. Signed-off-by: Ye Li <ye.li@nxp.com>
2017-12-08MLK-17109-1 imx8m: clock: Add more frequencies support in dram pll init functionYe Li
Add 400Mhz, 600Mhz and 800Mhz frequencies for dram pll init function to support DDR3L/DDR4/LPDDR4. Signed-off-by: Ye Li <ye.li@nxp.com>
2017-12-08MLK-17131 serial: lpuart: Enable RX and TX FIFOYe Li
Enable the RX and TX FIFO in LPUART driver to avoid the input lost during u-boot boot up. Signed-off-by: Ye Li <ye.li@nxp.com> Acked-by: Peng Fan <peng.fan@nxp.com>
2017-12-08MLK-17127 DTS: imx8qm_mek: Update fec pad settingsYe Li
Sync the FEC1 and FEC2 pad settings with latest kernel DTS (commit a67f777dfb805fa72ffe31911a18d8c0a9683f73) Signed-off-by: Ye Li <ye.li@nxp.com> Acked-by Fugang Duan <fugang.duan@nxp.com>
2017-12-08MLK-17086 bootm: Add authentication to optee imageYe Li
When IMX_OPTEE is enabled for secure boot, update bootm to authenticate the optee image and the kernel zImage before booting into optee. Signed-off-by: Ye Li <ye.li@nxp.com>
2017-12-08MLK-17123 imx: fix mfgtool bootcmdPeng Fan
Fix mfgtool bootcmd error Signed-off-by: Peng Fan <peng.fan@nxp.com>
2017-12-08MLK-17093 imx8qm/qxp: enable control bit for RGMII interface RX clock delayFugang Duan
Due to RGMII interface timing requirement for imx8qm/qxp mek and arm2 board, it needs to enable RX clock delay. It should not depend on HW default status since kernel may clear the bit only on imx8qm/qxp platforms, then reboot test will cause uboot networking failed. Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2017-12-05MLK-17082-02 imx: add optee support for imx6slBai Ping
Add defconfig for tee support; Enable the TZASC support; Add env config for tee support. Signed-off-by: Bai Ping <ping.bai@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2017-12-05MLK-17082-01 imx: add optee support for imx6sllBai Ping
Add different defconfig for optee; Enable the TZASC support; Add env config for tee support. Signed-off-by: Bai Ping <ping.bai@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2017-12-04MLK-17050 imx8m: print out atf commitPeng Fan
Print out atf commit in U-Boot. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2017-12-04MLK-17055 imx8mq: evk: update DDR seting for display flickering issueJian Li
1. With this change, no flickering when LCDIF + MIPI-DSI in 720p60 single display case 2. With this change, no flickering when DCSS in 4kp60 while running 4x memtester at the same time side effect: GPU resolve performance downgrade ~20%, no obvious impact to non-resolve GPU cases. Signed-off-by: Jian Li <jian.li@nxp.com>
2017-12-03imx: imx7 Support for Manufacturing ProtectionBreno Lima
This code was originally developed by Raul Cardenas <raul.casas@nxp.com> and modified to be applied in U-Boot imx_v2017.03. More information about the initial submission can be seen in the link below: https://lists.denx.de/pipermail/u-boot/2016-February/245273.html i.MX7D has an a protection feature for Manufacturing process. This feature uses asymmetric encryption to sign and verify authenticated software handled between parties. This command enables the use of such feature. The private key is unique and generated once per device. And it is stored in secure memory and only accessible by CAAM. Therefore, the public key generation and signature functions are the only functions available for the user. The manufacturing-protection authentication process can be used to authenticate the chip to the OEM's server. Command usage: Print the public key for the device. - mfgprot pubk Generates Signature over given data. - mfgprot sign <data_address> <data_size> Signed-off-by: Raul Ulises Cardenas <raul.casas@nxp.com> Signed-off-by: Breno Lima <breno.lima@nxp.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com>
2017-12-01MLK-17048 imx8mq_evk: Fix SD CD pad issue in SPLYe Li
The EVK board does not use external pull up resistor for SD CD pin, it requires the pad to be configured as pull up, otherwise the signal level is always low even the card is not inserted. This patch configures the pad of CD and RESET to pull up to align with kernel, although there is already a external pull up for RESET. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2017-11-30MLK-17044-3 booti: Add kernel image authentication for secure bootYe Li
When secure boot is enabled, add authenticate_image in booti to authenticate kernel image. Signed-off-by: Ye Li <ye.li@nxp.com>
2017-11-30MLK-17044-2 HAB: Add SIP call for ARM64 platformYe Li
When current EL is not EL3, the direct calling to HAB will fail because CAAM/SNVS can't initialize at non-secure mode. In this case, we use SIP call to run the HAB in ATF. Signed-off-by: Ye Li <ye.li@nxp.com>
2017-11-30MLK-17044-1 imx-common: Adding new argument for SIP call interfaceYe Li
Need to pass total 5 arguments for SIP HAB call, so update the interface to add new argument. Signed-off-by: Ye Li <ye.li@nxp.com>
2017-11-29MLK-17021 imx8m: Fix thermal temp printed not aligning with kernelYe Li
The TMU calibration data in u-boot DTB is not updated, so the temperature we got in u-boot won't exceed 40C. This patch updates the TMU node with latest kernel DTB (commit ee0a9fbdca80b058c00d74c6afa70558f6c1dcc6) Signed-off-by: Ye Li <ye.li@nxp.com> Acked-by: Peng Fan <peng.fan@nxp.com>
2017-11-28MLK-17011 imx8qm/qxp: Fix wrong boot type for flexspiYe Li
The codes use the QSPI when booting from Flexspi, this cause u-boot prints out unknown device if we boot from Flexspi NOR. Signed-off-by: Ye Li <ye.li@nxp.com>
2017-11-29MLK-17018 Correct CopyrightPeng Fan
Correct Copyright Signed-off-by: Peng Fan <peng.fan@nxp.com>
2017-11-24MLK-16974 imx8m: Modify kernel DTB to limit USB to high-speed for mfgtoolYe Li
We found USB issue when using super-speed for mfgtool, temporally work around the problem to use high-speed only. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Li Jun <jun.li@nxp.com>
2017-11-22MLK-16944: imx8qm/qxp: Add leading zeros to SCFW commit hashLeonard Crestez
This fixes SCFW commits with leading zeros like 0245582bf4a58289e25c59fb0befe84923ca6742 being displayed as "245582b". Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com>
2017-11-22MLK-16940 imx8m: Disable more HDMI and display nodes for mfgtoolYe Li
When running mfgtool, the HDMI FW won't be loaded. U-boot has to disable these new added HDMI and display relevant nodes in DTB. Signed-off-by: Ye Li <ye.li@nxp.com> Acked-by: Peng Fan <peng.fan@nxp.com>
2017-11-22MLK-16939 imx8mq_evk: Change u-boot init stack address and sizeYe Li
Current u-boot init stack on mScale EVK is from 0x40f00000 to 0x41000000. This address overlays with kernel load address. When running mfgtool, the loaded kernel will be overwritten by this stack. So we change the init stack to the first 512KB DDR memory. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2017-11-22MLK-16933 imx8m: clock: set NAND_USDHC_BUS_CLK_ROOT to sys pll1 266MPeng Fan
Set NAND_USDHC_BUS_CLK_ROOT to sys pll1 266M Signed-off-by: Peng Fan <peng.fan@nxp.com>
2017-11-22MA-10703 [Android] use the usb_ep_queue for muti requestzhang sanshan
It need to send muti data through usb for fastboot commands(fastboot getcar all) this patch use usb_ep_queue to queue usb data. Change-Id: I5fd256868ac43163a21417a0634dd194e31f3eb7 Signed-off-by: Li Jun <jun.li@nxp.com>
2017-11-21MLK-16931 imx8m: hab: Fix secure boot build warningYe Li
Found HAB build warnings on mScale, those relate to ARM 64 bits conversion. arch/arm/imx-common/hab.c: In function ‘csf_is_valid’: arch/arm/imx-common/hab.c:556:18: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] !chk_bounds((const uint8_t *)ivt_initial->csf, ^ In file included from arch/arm/imx-common/hab.c:14:0: arch/arm/imx-common/hab.c:557:17: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] HAB_HDR_LEN(*(const struct hab_hdr *)ivt_initial->csf), ^ ./arch/arm/include/asm/imx-common/hab.h:177:40: note: in definition of macro ‘HAB_HDR_LEN’ ((size_t)(((const struct hab_hdr *)&(hdr))->len[0] << 8) \ ^~~ arch/arm/imx-common/hab.c:557:17: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] HAB_HDR_LEN(*(const struct hab_hdr *)ivt_initial->csf), ^ ./arch/arm/include/asm/imx-common/hab.h:178:41: note: in definition of macro ‘HAB_HDR_LEN’ + (size_t)((const struct hab_hdr *)&(hdr))->len[1]) ^~~ arch/arm/imx-common/hab.c:563:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] csf_hdr = (const uint8_t *)ivt_initial->csf; Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2017-11-21MLK-16930 imx6: hab: Fix secure boot build error and warningYe Li
Found secure boot build error and warning for some i.MX6 platforms without CONFIG_ROM_UNIFIED_SECTIONS defined. Fix them in this patch. In file included from arch/arm/imx-common/hab.c:14:0: arch/arm/imx-common/hab.c: In function ‘hab_rvt_report_event’: ./arch/arm/include/asm/imx-common/hab.h:152:59: error: ‘HAB_RVT_BASE_ARM64’ undeclared (first use in this function) ^ arch/arm/imx-common/hab.c:23:29: note: in expansion of macro ‘HAB_RVT_REPORT_EVENT_ARM64’ ((hab_rvt_report_event_t *)HAB_RVT_REPORT_EVENT_ARM64) : \ ^ arch/arm/imx-common/hab.c:153:30: note: in expansion of macro ‘hab_rvt_report_event_p’ hab_rvt_report_event_func = hab_rvt_report_event_p; ^ ./arch/arm/include/asm/imx-common/hab.h:152:59: note: each undeclared identifier is reported only once for each function it appears in ^ arch/arm/imx-common/hab.c:23:29: note: in expansion of macro ‘HAB_RVT_REPORT_EVENT_ARM64’ ((hab_rvt_report_event_t *)HAB_RVT_REPORT_EVENT_ARM64) : \ arch/arm/imx-common/hab.c:126:23: warning: 'gd_save' defined but not used [-Wunused-variable] static volatile gd_t *gd_save; Signed-off-by: Ye Li <ye.li@nxp.com> Acked-by: Peng Fan <peng.fan@nxp.com>
2017-11-21MLK-16921 imx8mq_evk: Change kernel load address to 0x40480000Ye Li
The u-boot running address is 0x40200000, and the image size is larger than 512KB. If we set kernel load address to 0x40280000, when using mfgtool, the kernel loading will overwrite the u-boot image in DDR and cause u-boot crash. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2017-11-21MLK-16895 imx8: use netboot when mmcboot failPeng Fan
Use netboot when mmcboot fail. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2017-11-20MLK-16903 imx8m: Add reset_cpu to use external WDOG_B for resetYe Li
The WDT is enabled for WDOG in current u-boot reset, this cause external WDOG_B and internal WDOG_RESET_B_DEB both asserted for timeout. To avoid any unpredictable behavior, change to use the WDOG_B only. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2017-11-20MLK-16889 PCI: imx: disable the ltssm when link is downRichard Zhu
Disable the LTSSM when link is down. Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com>
2017-11-20MLK-16899 imx8mq: evk: Add back LPDDR4 performance register settingsPeng Fan
Add back LPDDR4 performance register settings Signed-off-by: Peng Fan <peng.fan@nxp.com>
2017-11-20MLK-16880 imx8mq: evk: fix init ram spacePeng Fan
Fix init ram space. Otherwise uboot will override ATF stack space and cause unexpected issues. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2017-11-17MLK-14945 HAB: Check if IVT valid before authenticating imageUtkarsh Gupta
For proper authentication users must check the IVT before authenticating the kernel image. If the IVT DCD pointer is not 0, display an error as shown below and return a boot failure. Authenticate image from DDR location 0x12000000... Error: DCD pointer must be 0 Authenticate zImage Fail, Please check Signed-off-by: Utkarsh Gupta <utkarsh.gupta@nxp.com>
2017-11-17MLK-16703: HAB : Check if CSF is valid before authenticating imageUtkarsh Gupta
For proper authentication users must check if the CSF is valid. This patch calls the csf_is_valid function prior to authenticating the image to parse the CSF and returns a failure if an invalid command is found as shown below. Authenticate image from DDR location 0x12000000... Check CSF for Write Data command before authenticating image Error - WRITE Data command found Authenticate zImage Fail, Please check Signed-off-by: Utkarsh Gupta <utkarsh.gupta@nxp.com>
2017-11-16MLK-16882: imx8qxp: config: add NAND boot environmentHan Xu
add the nand boot related environments for i.MX8QXP ARM2 board. Signed-off-by: Han Xu <han.xu@nxp.com>
2017-11-16MA-10633 [Android] enlarge the timeout for waiting DATA0zhang sanshan
600ms is not enough to erase erase_grp_size for some sdcard. enlarge to to 1200ms. Change-Id: Ic980794fa3064f92b479b87380e694f853f83c6a Signed-off-by: zhang sanshan <sanshan.zhang@nxp.com>
2017-11-16MA-10621 Fix no error returned when lock/unlock failji.luo
Make do_fastboot_unlock() and fastboot_lock() return FbLockState type and correct the compare logic in cb_flashing(). Change-Id: I6df6f39a8aa3197299daa0d64408ac72a54fb5e9 Signed-off-by: ji.luo <ji.luo@nxp.com>
2017-11-16MLK-16831 imx8m: Remove cpu-idle-states property from kernel FDT for rev A0Ye Li
Since i.MX8M A0 has HW issue in CPU idle, we must disable the function when running on A0 chip. This patch checks the CPU rev and remove the "cpu-idle-states" from cpu nodes to disable the CPU idle. Signed-off-by: Ye Li <ye.li@nxp.com> Tested-by: Bai Ping <ping.bai@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2017-11-16MA-10622 add android configure to support mx8qm mek boardRichard Liu
Add android configure to support mx8qm mek board on android build. Change-Id: I6dd885258f58c2f81b81bba87ca56184c653b9a1 Signed-off-by: Richard Liu <xuegang.liu@nxp.com>
2017-11-13MLK-16758-4 SPL: Add HAB image authentication to FITYe Li
Introduce two board level callback functions to FIT image loading process, and a SPL_FIT_FOUND flag to differentiate FIT image or RAW image. Implement functions in imx common SPL codes to call HAB funtion to authenticate the FIT image. Generally, we have to sign multiple regions in FIT image: 1. Sign FIT FDT data (configuration) 2. Sign FIT external data (Sub-images) Because the CSF supports to sign multiple memory blocks, so that we can use one signature to cover all regions in FIT image and only authenticate once. The authentication should be done after the entire FIT image is loaded into memory including all sub-images. We use "-p" option to generate FIT image to reserve a space for FIT IVT and FIT CSF, also this help to fix the offset of the external data (u-boot-nodtb.bin, ATF, u-boot DTB). The signed FIT image layout is as below: -------------------------------------------------- | | | | | | | | | FIT | FIT | FIT | | U-BOOT | ATF | U-BOOT | | FDT | IVT | CSF | | nodtb.bin | | DTB | | | | | | | | | -------------------------------------------------- Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2017-11-13MLK-16787-3 SPL: Add FIT data-position property supportYe Li
For external data, FIT has a optional property "data-position" which can set the external data to a fixed offset to FIT beginning. Add the support for this property in SPL FIT. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2017-11-13MLK-16787-2 iMX8M: Add support to enable CONFIG_SECURE_BOOTYe Li
Add some SOC level codes and build configurations to use HAB lib for CONFIG_SECURE_BOOT, like adding the SEC_CONFIG fuse, enable fuse driver, CAAM clock function, and add CAAM secure RAM to MMU table. The FSL_CAAM is temporally not enabled for iMX8M when CONFIG_SECURE_BOOT is set, because we don't need the CAAM driver for SPL. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2017-11-13MLK-16787-1 HAB: Update hab codes to support ARM64 and i.MX8MYe Li
There are some changes to support ARM64 i.MX8M platform in this patches: 1. The hab_rvt base and function vectors are different as i.MX6/7 2. Need to bypass an workaround for i.MX6 to fix problem in MMU. 3. The x18 register needed save & restore before calling any HAB API. According to ARM procedure call spec, the x18 is caller saved when it is used as temporary register. So calling HAB API may scratch this register, and cause crash once accessing the gd pointer. On ARMv7, the r9 is callee saved when it is used as variable register. So no need to save & restore it. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2017-11-13MLK-16802 imx8m: correct mmu mappingPeng Fan
ATF has been moved to OCRAM, it is no longer in DRAM, so let Uboot could use that space. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2017-11-10MLK-16794 imx8qxp: support ddr3 arm2 boardPeng Fan
Support DDR3 ARM2 board. Most parts are same as LPDDR4 ARM2 board, so share code with LPDDR4 ARM2. The DRAM size is 1GB on DDR3 ARM2 board. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2017-11-10MLK-16795 imx8mq_evk: Rename SPL DDR files and public functionsYe Li
Change to use more generic name for DDR files and public functions used in SPL, not specified to LPDDR4. Signed-off-by: Ye Li <ye.li@nxp.com>
2017-11-10MLK-16797 imx8qm/qxp: Fix memory bank size calculation issueYe Li
The calculation of memory bank size is wrong when the memory on the board is less than 2GB. It causes memory bank exceeding the real DDR end, and cause crash in kernel. Fix the issue in this patch. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>