11 Oct, 2019

6 commits


30 Sep, 2019

1 commit


29 Sep, 2019

12 commits

  • ROM SError happens on two cases:

    1. ERR050342, on iMX8MQ HDCP enabled parts ROM writes to GPV1 register, but
    when ROM patch lock is fused, this write will cause SError.

    2. ERR050350, on iMX8MQ/MM/MN, when the field return fuse is burned, HAB
    is field return mode, but the last 4K of ROM is still protected and cause SError.

    Since ROM mask SError until ATF unmask it, so then ATF always meets the exception.
    This patch works around the issue in SPL by enabling SPL Exception vectors table
    and the SError exception, take the exception to eret immediately to clear the SError.

    Signed-off-by: Ye Li
    Reviewed-by: Peng Fan
    (cherry picked from commit f05dd45251ca82cc54e13a616f00744c26faab53)
    (cherry picked from commit 25d059411e702a4002f1aa157839001f796dd9f6)

    Ye Li
     
  • Sometimes we met SERROR, but only to catch it when Linux boots up.
    Let's enable catching in U-Boot to catch it ealier and ease debug.

    Signed-off-by: Peng Fan
    (cherry picked from commit 7a0c9b08886e5dc7d50e640ed56eed0fe612161f)
    (cherry picked from commit 33da22c4793e56077033a4f6c567894badb8e907)
    (cherry picked from commit 4da3e872b7c61b93fa227935a7b45eb5fcb252e1)

    Peng Fan
     
  • set the i.X7D default mtdids value as "nand0=gpmi-nand", nandbcb can
    directly write to the nandboot partition after u-boot brings up

    Signed-off-by: Alice Guo
    (cherry picked from commit 820e3bc68f1c8695e6dc9a93be2c7ef27ece929d)

    Alice Guo
     
  • there should no extra space in mtdparts definition

    Signed-off-by: Alice Guo
    (cherry picked from commit 3e50cae62b1f83635ad835b8da840a7e294b7065)

    Alice Guo
     
  • Add subcommand for add writing BCB only, where we provide appropriate
    offsets for firmware1 and firmware2 and size.

    Example of usage:
    > nandbcb bcbonly 0x00180000 0x00080000 0x00200000
    Writing 1024 bytes to 0x0: randomizing
    OK
    Writing 1024 bytes to 0x20000: randomizing
    OK

    Signed-off-by: Igor Opaniuk
    (cherry picked from commit 353a38576ed6f21431bf499a4b402a5ca571f0fa)

    Igor Opaniuk
     
  • Move code for writing FCB/DBBT pages to a separate function

    Signed-off-by: Igor Opaniuk
    (cherry picked from commit c4e8b725681c9e7d18845260ac1061aedb9166a4)

    Igor Opaniuk
     
  • Add support for updating FCB/DBBT on i.MX7:
    - additional new fields in FCB structure
    - Leverage hardware BCH/randomizer for writing FCB

    Signed-off-by: Igor Opaniuk

    Signed-off-by: Alice Guo
    (cherry picked from commit b4b3049b1e4a069e522a1112bf4f9e0253836b2d)

    Igor Opaniuk
     
  • On i.MX7 in a sake of reducing the disturbances caused by a neighboring
    cells in the FCB page in the NAND chip, a randomizer is enabled when
    reading the FCB page by ROM bootloader.

    Add API for setting BCH to specific layout (and restoring it back) used by
    ROM bootloader to be able to burn it in a proper way to NAND using
    nandbcb command.

    Signed-off-by: Igor Opaniuk
    Signed-off-by: Anti Sullin

    Signed-off-by: Alice Guo
    (cherry picked from commit eaba02830252ed044e319571a7f3ebed412ae93b)

    Igor Opaniuk
     
  • Extend GPMI Integrated ECC Control Register Description, include
    additional defines for enabling randomizer function and providing
    proper randomizer type.

    For additional details check i.MX7 APR, section
    9.6.6.3 GPMI Integrated ECC Control Register Description
    (GPMI_ECCCTRLn)

    Signed-off-by: Igor Opaniuk
    (cherry picked from commit 212ab2205175b9be726ef6c00f523391882a7824)

    Igor Opaniuk
     
  • Since the USB HID limits the maximum bandwidth(3072) for interrupt
    endpoint transfers, when the bInterval set to 1, we can only support 3
    boards to run sdp at the same time. In order to support more boards,
    change the bInterval of interrupt endpoint to 3, which will not affect
    the transmission speed.

    Signed-off-by: Sherry Sun
    Reviewed-by: Ye Li
    (cherry picked from commit beb0283e6bac3d42cc87757e3c0e200e2ac3b68f)

    Sherry Sun
     
  • When use ep1out interrupt endpoint to receive data in sdp, the max
    packetsize of ep1out is set to 1024. But in cdns3 gadget driver, the
    max packetsize is limited to 512 bytes in high speed. So we can't
    implement data download through ep1out of cdns3 driver, here need
    change the max packesize of interrupt endpoints to 1024.

    Signed-off-by: Sherry Sun
    Reviewed-by: Ye Li
    (cherry picked from commit 17f321b4a32cfaac52339172dc354729e641451a)

    Sherry Sun
     
  • EP0 has been used to transfer file data in sdp before, but the max
    packetsize of ep0 is 64 bytes. So in order to improve the file transfer
    speed, here add the EP1_OUT interrupt endpoint which max packetsize is
    set to 1024 byte.

    After testing, it turns out that using ep1out is twice as fast as using
    ep0 while receiving data in sdp.

    Signed-off-by: Sherry Sun
    Reviewed-by: Ye Li
    (cherry picked from commit 22614e317b7fdf4a716f2e5bde876649414ffd6c)

    Sherry Sun
     

24 Sep, 2019

2 commits

  • "CONFIG_IMX_TRUSTY_OS=y" is added to the corresponding defconfig files
    to include trusty related code.

    MACROs are added in corresponding header files. standard android uboot
    has more content than android auto uboot, the uboot malloc pool size is
    changed from 76MB to 90MB to make the boot process can be handed over to
    kernel without malloc problem.

    Change-Id: I5072c20aa28fb1da93e889bb920955d2f1cfbefd
    Signed-off-by: faqiang.zhu

    faqiang.zhu
     
  • add below two defconfig files:
    configs/imx8qm_mek_android_trusty_defconfig
    configs/imx8qxp_mek_android_trusty_defconfig

    they are directly copied from below two files for the ease of tracking
    the modifications:
    configs/imx8qm_mek_android_defconfig
    configs/imx8qxp_mek_android_defconfig

    Change-Id: I84ca6ce62698b48bceb651df95ad61cf3e565e99
    Signed-off-by: faqiang.zhu

    faqiang.zhu
     

23 Sep, 2019

1 commit

  • Update the mx7ulp wdog disable sequence to avoid potential reset issue
    in unlock or refresh sequence. Both sequence need two words write
    to wdog CNT register in 16 bus clocks window, if miss the window,
    the write will cause violation in wdog and reset the chip.

    Current u-boot code is using writel() function which has a DMB barrier
    to order the memory access. The DMB between two words write may introduce
    some delay in certain circumstance, causing the wdog reset due to 16 bus
    clock window requirement.

    This patch replaces writel() function by __raw_writel() to avoid such issue,
    and improve to check if watchdog is already disabled or unlocked.

    Signed-off-by: Ye Li
    Tested-by: Breno Lima
    Reviewed-by: Peng Fan
    (cherry picked from commit b8c99d5f5bcc5573d3394b68890db16b6bb5fc88)

    Ye Li
     

19 Sep, 2019

1 commit


11 Sep, 2019

2 commits

  • When enable u-boot splash screen and set kernel dtb with -hdmi.dtb on
    imx8qm, the kernel reboot (partition reboot) will hang in u-boot if HDMI
    cable is plugged in.
    The root cause is kernel set the clock source of DC0 display0 channel to
    bypass clock, when doing reboot this clock setting may not be cleared. So
    u-boot has wrong clock source and cause lpcg stop bit always set.

    Fix the issue by adding the clock parent setting and not depend on default
    parent value.

    Signed-off-by: Ye Li
    Reviewed-by: Peng Fan
    (cherry picked from commit 104c4b5cdc83fb671c6474708bdd00c2dfb01113)
    (cherry picked from commit 8a287c629018e6bf647c3c617fca3e6c94a3d2a4)

    Ye Li
     
  • Have missed the lpcg settings when porting to 2019.04 u-boot

    Signed-off-by: Ye Li
    Reviewed-by: Peng Fan
    (cherry picked from commit 4096d7806a0dcc501123c8c2cdf734620e37d169)

    Ye Li
     

06 Sep, 2019

1 commit


05 Sep, 2019

4 commits


30 Aug, 2019

2 commits


28 Aug, 2019

3 commits


27 Aug, 2019

1 commit

  • Currently it's not possible to boot mx7ulp_evk_m4boot_defconfig target:

    OBJCOPY examples/standalone/hello_world.bin
    LD u-boot
    arch/arm/lib/built-in.o: In function `setup_serial_tag':
    /home/breno/NXP/bootloader/uboot-imx/arch/arm/lib/bootm.c:192: \
    undefined reference to `get_board_serial'
    Makefile:1505: recipe for target 'u-boot' failed
    make: *** [u-boot] Error 1

    Fix this issue by enabling UUU support for mx7ulp_evk_m4boot_defconfig target.

    Reviewed-by: Ye Li
    Signed-off-by: Breno Lima

    Breno Lima
     

20 Aug, 2019

4 commits

  • Enable secure unlock for imx8m and imx8q.

    Test: build and unlock on closed imx8mm_evk and
    imx8qm_mek.

    Change-Id: I4c8038ddffdd07084ea41735b90e6a76fd1076dd
    Signed-off-by: Ji Luo

    Ji Luo
     
  • Duplicate some configs for imx8m and imx8q.

    Test: build.

    Change-Id: I2d33685d68187eb831c48528da06684017951232
    Signed-off-by: Ji Luo

    Ji Luo
     
  • Decrypt and verify the secure credential in keymaster TA, unlock
    operation can only be allowed after secure credential verify pass.

    Since the mppubk can only be generated on hab closed imx8q, so secure
    unlock feature can only supported when hab is closed.

    Test: secure unlock credential verify on hab closed imx8mm_evk.

    Change-Id: I1ab5e24df28d1e75ff853de3adf29f34da1d0a71
    Signed-off-by: Ji Luo

    Ji Luo
     
  • Add commands to support extract serial number from device.
    Commands:
    $ fastboot oem get-serial-number
    $ fastboot get_staged

    Test: serial number upload on imx8mm.

    Change-Id: I5c905ab797d4fd28d76c8403914f191eaf2ef687
    Signed-off-by: Ji Luo

    Ji Luo