27 May, 2020

4 commits

  • We are targeting let uboot loading images from emmc to boot android.
    Currently only emmc1 is enabled, so other devices are disabled.

    Also change memory layout according to VM layout. The memory layout
    needs to be samesize as what you configured in as "memory = "3584"".

    Add a new dts dedicated for this kind uboot, add a new defconfig
    to select CONFIG_XEN/CONFIG_XEN_DEBUG_SERIAL, deselect CONFIG_DM_SERIAL,
    select CONFIG_ENABLE_ARM_SOC_BOOT0_HOOK, and disable some devices
    compared with imx8qm_mek_androidauto_defconfig.

    Reviewed-by: Ye Li
    Signed-off-by: Peng Fan
    (cherry picked from commit a4e932cae433b9d2e1cff6a94b12e4abcac45543)
    (cherry picked from commit a26de6e05563d3e3e6734e0d99e464437aa89db5)
    (cherry picked from commit 74ac579ee195c4a2f6651ccc0f86efb0eebd889e)
    (cherry picked from commit 7efc2eca10c9d48da6e01ba6a5df63b6f619d7ab)

    Peng Fan
     
  • Starting U-Boot in a XEN VM, needs a header, just like Linux Kernel.
    Without it, xen tool will take is as a file not supported.

    Signed-off-by: Peng Fan
    (cherry picked from commit 344ddf76c6de808699ab742d3c11728ca62f36ee)
    (cherry picked from commit d260e97be35718bea46019b7ca8666e83d0b9f01)
    (cherry picked from commit fa6d1e299da0f6913564dcb11c171cee69a43f8e)
    (cherry picked from commit 2f1f8069405bdb74d811bb594cbbea3d552fa31a)

    Peng Fan
     
  • Update SOC code to support U-Boot in a XEN VM. Currently
    we only support to boot android using uboot in a VM,
    so there is hardcode that using MMC1_BOOT boot.

    There are a few small fixes included.

    For the mmu configuration, the mem map is used from xen
    guest VM and our iomem space in vm cfg file.

    Signed-off-by: Peng Fan
    (cherry picked from commit 533087bc1bce0c35fead0956b0613971862c280f)
    (cherry picked from commit c2ba2460d8985aa0b084f7beef2d0bc8773d90e3)
    (cherry picked from commit 2b0a537f59646f3f222d60ebe46611160ba6bdc9)
    (cherry picked from commit 179a0a6ff3eba16fcf8d5966904b810531fe8665)

    Peng Fan
     
  • Introduce console write hypercall to let Uboot could directly
    output with xen console, this needs CONFIG_VERBOSE_DEBUG
    enabled in xen.

    Because input is not a must requirement in android VM,
    and develop pvconsole needs more efforts, so let's use
    this hypercall first.

    Signed-off-by: Peng Fan
    (cherry picked from commit 8836c3104a1edfe542e0c1cef6690bc9d3d842a0)
    (cherry picked from commit aea71150857d4617009730683c95d858acb43392)
    (cherry picked from commit 3173d3ac39bed27a3197829ea13ffce5a89b07ac)
    (cherry picked from commit 8ece41f15c8d9c407ab0946fa28ba7365419c030)

    Peng Fan
     

22 May, 2020

2 commits


20 May, 2020

1 commit


19 May, 2020

5 commits

  • Fix fec phy addr for network support on imx8mn/imx8mn
    audio board 2 targets

    Reviewed-by: Ye Li
    Signed-off-by: Adrian Alonso
    (cherry picked from commit cef3045bd7cc620051c8dd8e9248157d19b4514f)

    Adrian Alonso
     
  • Current iMX8QM DTSi is a version with full nodes, but this introduces
    overhead in u-boot initf_dm phase because the initf_dm will search all
    subnodes of the root. This is does not like SPL which has slimmed the
    DTB.

    During initf_dm the dcache is not enabled, so the overhead is large
    if we have many unused nodes in the DTS. This patch removed iMX8QM
    nodes those we won't ever used in SPL/u-boot, like VPU/GPU, Audio,
    camera, M4 i2c, flexcan, pwm, etc.

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

    Ye Li
     
  • Add board level implementation to get the ON-OFF button
    status for imx8q/imx8m.

    Test: Get ON-OFF button status on imx7ulp/imx8m/imx8q.

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

    Ji Luo
     
  • Porting the scu api 'sc_misc_get_button_status()' to get the
    ON-OFF button status.

    Test: Get the ON-OFF button status.

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

    Ji Luo
     
  • Some gpio pins are disabled for automotive to save boot time, but now
    we need to enable them on uboot 2020 or the display won't work.

    Test: boots with lvds-hdmi display on imx8qm.

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

    Ji Luo
     

18 May, 2020

9 commits

  • Add board level support and configs for standard android and android automotive,
    each board has android/android auto specific header files include.

    Test: boot/fastboot/avb/AB switch/trusty test.

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

    Ji Luo
     
  • camera sometime can't been open once run M4 image.
    ISI-CH0 probe funtion is not called when meet issue.

    The root cause is:
    M4 image set assign resource SC_R_ISI_CH0 into m4 partition
    when open camera in m4 side.
    Uboot will call update_fdt_with_owned_resources to check
    the pd in current dts node. it will call sc_rm_is_resource_owned to
    check the pd whether in other partition, if yes, it will delete
    the dts node. uboot delete isi_0 node whose pd is SC_R_ISI_CH0.

    add CONFIG_SKIP_RESOURCE_CHECKING to skip checking resource when load
    dtb.

    Change-Id: Iaf9a5eda07074c45c15c43f23cb6ad6b5a77de47
    Signed-off-by: zhang sanshan

    Ji Luo
     
  • To avoid both A/B slots are marked as unbootable because
    of some random failures, we will need to reset at spl stage
    when current slot load/verify fail but already with flag
    "successful_boot" set.

    imx8q can't be reset via the psci driver because the atf
    is not avaiable at spl stage, porting the sc_pm_reboot()
    scu api so we can do reset at spl stage for imx8qm/imx8qxp
    mek boards.

    Test: reset on imx8qm_mek and imx8qxp_mek.

    Change-Id: Ifa0bdea9393e413942a8a0188a4f937fa0aa9ab8
    Signed-off-by: Ji Luo
    (cherry picked from a5c5748101c383bc3afb424a3ef2689ab2664846)

    Ji Luo
     
  • Add implementation to load hdmi rx/tx firmwares, use different config to
    guide the function.

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

    Ji 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
    (cherry picked from commit 52300d644a275dfa4fe73ecb51601a8efaff8ab7)

    Ji Luo
     
  • new imx8mn chips have Cortex-M7 inside, not like other imx8m devices
    of imx8mm and imx8mq which have Cortex-M4 inside. the names of MACROs
    used to boot MCU on imx8m devices is modified to make them more common
    to cover M4 and M7.
    annotations are also modified based on the differences between M4 and
    M7.

    Change-Id: Ida272e6ecdf577eeaadb9f1242f4524bd1014cac
    Signed-off-by: faqiang.zhu
    (cherry picked from commit eb825f8d4fbc2289b9ccf8f457fcba04922c8259)

    faqiang.zhu
     
  • imx-regs-imx8mm.h is used both for imx8mm and imx8mn, while mcu in
    imx8mn is Cortex-M7, it's different from Cortex-M4 in imx8mm, change
    the MACRO name of mcu TCM base address from M4_BOOTROM_BASE_ADDR to
    MCU_BOOTROM_BASE_ADDR.
    since this MACRO will be used in common code for i.MX chips, the same
    MACRO name in other files are also modified.

    Change-Id: I433dd78d11c485d0f4cb82bab299f61cb29dce45
    Signed-off-by: faqiang.zhu
    (cherry picked from commit e2eb616fdbc4ce6475b084ab11b77cd5dcaa6fd2)

    faqiang.zhu
     
  • This commit enables dual bootloader feature for imx8m/imx8q, but
    as commit 'a2018ab' already brings in some dual bootloader codes
    when enabling fastboot support, so this commit won't be a complete
    and standalone patch to introduce the dual bootloader feature.

    This commit will do the following:
    1. clean up dual bootloader flow and add missing implementation.
    2. Merge the dual bootloader entry for fit and container to one
    function 'mmc_load_image_raw_sector_dual_uboot'.

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

    Ji 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.

    below patches are merged to this commit:
    MA-13964 imx8q: Kick the CAAM JR before kicking the SMMU
    MA-13969 Fix CAAM build warnings

    Change-Id: Ie3d77d1f2910e7f4c257c797c12b5c8a30ad936a
    Signed-off-by: Ji Luo
    (cherry picked from commit d6e0fdcde5773fed4804cdacf927808bd2da3d7d)

    Ji Luo
     

13 May, 2020

2 commits


11 May, 2020

16 commits


09 May, 2020

1 commit