Compiler/PROCESSOR-SDK-DRA8X: Need help to boot MCU application from SPL

Part Number: PROCESSOR-SDK-DRA8X

Tool/software: TI C/C++ Compiler

Hi Karan,

My previous thread for SBL is here : https://e2e.ti.com/support/tools/ccs/f/81/t/975865

I'm able to boot using SBL, now same application.out is not booting with SPL. (Using PSDK7.0)

I have prepared SDCard for Linux and keeping application.out in /lib/firmware/pdk-ipc/ path in the SDCard and doing soft link ( sudo ln -sf /lib/firmware/pdk-ipc/application.out  j7-mcu-r5f0_0-fw ).

As per my understanding, if we keep as mention above then SPL will boot application.out. Let me if I'm wrong.

Can you please give your input/suggestion for the below logs ?

Please find below linux boot logs.

======================================================

U-Boot SPL 2020.01-gf9b0d030d3 (Jun 17 2020 - 15:08:08 +0000)
SYSFW ABI: 3.0 (firmware rev 0x0014 '20.04.1-v2020.04a (Terrific Lla')
Trying to boot from MMC2
Loading Environment from MMC... *** Warning - No MMC card found, using default environment

Remoteproc 2 started successfully
Starting ATF on ARM64 core...

NOTICE:  BL31: v2.3():07.00.00.005-dirty
NOTICE:  BL31: Built : 14:33:55, Jun 17 2020

U-Boot SPL 2020.01-gf9b0d030d3 (Jun 17 2020 - 14:34:25 +0000)
SYSFW ABI: 3.0 (firmware rev 0x0014 '20.04.1-v2020.04a (Terrific Lla')
ti_sci_power_domain_on: get_device(197) failed (-19)
ti_sci_power_domain_on: get_device(197) failed (-19)
ti_sci_power_domain_on: get_device(197) failed (-19)
Trying to boot from MMC2
ti_sci_power_domain_on: get_device(92) failed (-19)
spl: could not initialize mmc. error: -19
SPL: failed to boot from all boot devices
### ERROR ### Please RESET the board ###
======================================================

Thanks,

-Makani

  • Hi Makani,

    Amitkumar Makani said:
    U-Boot SPL 2020.01-gf9b0d030d3 (Jun 17 2020 - 14:34:25 +0000)
    SYSFW ABI: 3.0 (firmware rev 0x0014 '20.04.1-v2020.04a (Terrific Lla')
    ti_sci_power_domain_on: get_device(197) failed (-19)
    ti_sci_power_domain_on: get_device(197) failed (-19)
    ti_sci_power_domain_on: get_device(197) failed (-19)
    Trying to boot from MMC2
    ti_sci_power_domain_on: get_device(92) failed (-19)
    spl: could not initialize mmc. error: -19
    SPL: failed to boot from all boot devices
    ### ERROR ### Please RESET the board ###

    The issue you are facing is not that the firmwares are not loading but I see your Linux itself not booting. This has nothing to do with the firwmare you are running.

    Can you confirm that even when you change the old firmware back for MCU1_0 still you see the same issue with booting?

    Regards,

    Karan

  • Hi Karan,

    Yes, If I move to old firmware back for MCU1_0, The Linux is booting properly.

    Linux boot successfully  --> j7-mcu-r5f0_0-fw -> /lib/firmware/pdk-ipc/ipc_echo_testb_mcu1_0_release.xer5f

    Linux not booting(previous logs) --> j7-mcu-r5f0_0-fw -> /lib/firmware/pdk-ipc/application.out

    Thanks,

    -Makani

  • Hi Makani,

    Apologies for delay here.

    The issue which you are seeing is due to a resource being initialized and accessed by both A72 (u-boot/Linux) and R5F (application.out).

    When trying to initialize device IDs 197, 92 the boot for A72 is failing. This would be because your R5F application will be asking for exclusive access for these resources.

    Device 197 is J721E_DEV_WKUP_I2C0 and 92 is J721E_DEV_MMCSD1. (see http://software-dl.ti.com/tisci/esd/latest/5_soc_doc/j721e/devices.html)

    Can you please make sure you are not accessing them from R5F application? There might be blanket calls to Board_init() which might be doing these initializations.

    Regards,

    Karan