28 Oct, 2019

2 commits


25 Oct, 2019

4 commits


24 Oct, 2019

4 commits

  • Refine trusty logs output to make it more
    simple.

    Test: boots.

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

    Ji Luo
     
  • Since commit c98b47f1ff60 ("MLK-22749 imx8mq: Add workaround to fix sticky
    bits lock up") it's not possible to build i.MX8MM and i.MX8MN targets with
    CONFIG_SECURE_BOOT enabled:

    CC cmd/version.o
    arch/arm/mach-imx/imx8m/soc.c:326:23: error: ‘CONFIG_IMX_UNIQUE_ID’ undeclared \
    (first use in this function); did you mean ‘CONFIG_IMX_VIDEO_SKIP’?
    if (!is_uid_matched(CONFIG_IMX_UNIQUE_ID))
    ^~~~~~~~~~~~~~~~~~~~

    The OCOTP sticky bit workaround is only needed for i.MX8MQ devices, other devices
    should not build the secure_lockup() function.

    Add CONFIG_IMX8MQ to the conditional compilation to avoid such issue.

    Fixes: c98b47f1ff60 ("MLK-22749 imx8mq: Add workaround to fix sticky bits lock up")
    Signed-off-by: Breno Lima
    Reviewed-by: Ye Li
    (cherry picked from commit be033bff3c718e8bd7d4ac5ecfe4361892fc6e61)

    Breno Lima
     
  • When enabled randomizer during ECC reading, the controller reported it's
    erased page. Checking zero count will cause data get modified to all
    0xFF. Stop checking during randomizer to workaround this issue.

    Signed-off-by: Han Xu
    (cherry picked from commit f88f68f29026b084396db003c60e0c15995d1670)

    Han Xu
     
  • add the missing bch register debug0

    Signed-off-by: Han Xu
    (cherry picked from commit 0883946855f7e1eabe26787fbc8529ac412047e7)

    Han Xu
     

22 Oct, 2019

1 commit


17 Oct, 2019

4 commits

  • According to i.MX7ULP Reference Manual we should wait for WDOG unlock
    and reconfiguration to complete.

    Section "59.5.3 Configure Watchdog" provides the following example:

    DisableInterrupts; //disable global interrupt
    WDOG_CNT = 0xD928C520; //unlock watchdog
    while(WDOG_CS[ULK]==0); //wait until registers are unlocked
    WDOG_TOVAL = 256; //set timeout value
    WDOG_CS = WDOG_CS_EN(1) | WDOG_CS_CLK(1) | WDOG_CS_INT(1) |
    WDOG_CS_WIN(0) | WDOG_CS_UPDATE(1);
    while(WDOG_CS[RCS]==0); //wait until new configuration takes effect
    EnableInterrupts; //enable global interrupt

    Update U-Boot WDOG driver to align with i.MX7ULP reference manual.

    Reviewed-by: Ye Li
    Signed-off-by: Breno Lima
    (cherry picked from commit 3ffee301cb4570e0e7681448ec434f0689bcbaa3)

    Breno Lima
     
  • remove the unnecessary space in imx6sx sabreauto mtdparts

    Signed-off-by: Han Xu
    (cherry picked from commit c8bbf2b43767fe7be69a0383ab426172b5083ee1)

    Han Xu
     
  • Enable the mtdparts for imx6sx sabreauto platform

    Signed-off-by: Han Xu
    (cherry picked from commit d76d7e0a28c04a51265b8777a82033bd2e74eda5)

    Han Xu
     
  • With Android10 code, to build GSI image for devices launching with
    Android10, the target should be "aosp_$arch-user". Google releases GSI
    images is so built in user mode.

    To do CTS-on-GSI test, a debug ramdisk containing .prop file to enable
    adb root permission and GSI keys to verify the GSI image is needed, this
    ramdisk is in boot image. so ramdisk in boot image need to be loaded by
    uboot even in non-recovery mode.

    To save boot time, only standard Android use ramdisk to boot up Android,
    Android Auto keeps the original way: kernel be responsible for verify
    and mount system partition. Let the customers to decide whether to use
    recovery ramdisk to boot the system. and under this condition, user-debug
    Android Auto GSI image need to be used for VTS-on-GSI test.

    when use ramdisk to bootup Android, info provided by "dm=" bootarg is
    not used by kernel to setup dm-verity, so it is removed from the
    bootargs. The 4.19 kernel used together with this uboot does not handle
    "skip_initramfs", so it's also removed.

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

    faqiang.zhu
     

16 Oct, 2019

4 commits


15 Oct, 2019

6 commits


12 Oct, 2019

2 commits


11 Oct, 2019

8 commits

  • Current flexspi driver enables the Quad DTR read, so the measured
    100Mhz SCLK is actually for DTR mode not SDR. However, according to
    MT25QU256ABA datasheet, this flash only supports max DTR at 90Mhz and
    max SDR at 166Mhz. It means current clock setting violate the flash
    spec. So change back the flexspi clock to align with imx8mm.

    Signed-off-by: Ye Li
    Reviewed-by: Peng Fan
    (cherry picked from commit 3bf41bae974003550b70ea1a8b44ccb3117d818f)
    (cherry picked from commit 4a369b527c3842751a4edf0171562a0e40c331ba)

    Ye 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
    (cherry picked from commit c98b47f1ff60e1f99807e24fd76053ad880f803e)

    Ye Li
     
  • According to i.MX7ULP Reference Manual the second word write for both
    UNLOCK and REFRESH operations must occur in maximum 16 bus clock.

    The current 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 a WDOG timeout due to 16 bus
    clock window requirement.

    Replace writel() function by __raw_writel() to achieve a faster memory
    access and avoid such issue.

    Signed-off-by: Breno Lima
    Reviewed-by: Ye Li
    (cherry picked from commit 5dd8c46d68d3267e989f980598a4e3e2ed04d4f9)

    Breno Lima
     
  • ROM update emmc offset to 0.
    previous B0 is 32K.

    Signed-off-by: Frank Li
    (cherry picked from commit b642241380227b97f0fa434e3d38dc746adbd9e0)
    (cherry picked from commit 2065bf0a12180f73eb918d09dbe809c10077b033)

    Frank Li
     
  • Add REVC informaiton.

    Signed-off-by: Frank Li
    (cherry picked from commit c7231f2c7a5c1dc754b5fb9bf05941141877a0ec)
    (cherry picked from commit 9a33170a4f4ff2ad2ab0d87e74e722a0e833abaa)

    Frank Li
     
  • bchtype in FCB should be associated to the gf_13/14 settings in BCH, fix
    the issue and test on Micron 29F64G08CBABB, it can boot after the
    change.

    Signed-off-by: Han Xu
    (cherry picked from commit 9cc7bf9b17565b4e0d73acd690e32394034dfae2)

    Han Xu
     
  • gf_13/14 mask was not set correctly in register definition.

    Signed-off-by: Han Xu
    (cherry picked from commit b8aed98b2ecfb0def64c474e1ae171930da4c9fc)

    Han Xu
     
  • imx6ul/ull were not set the mtdparts properly which causes the uuu cannot recognized the correct mtd partition.

    Signed-off-by: Han Xu
    (cherry picked from commit e7bbaadd03df7acbd84e5fbdbce037a369b82d68)

    Han Xu
     

30 Sep, 2019

1 commit


29 Sep, 2019

4 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