This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM6442: XSPI bootmode SFDP pin problem with OSPI flash

Part Number: AM6442
Other Parts Discussed in Thread: UNIFLASH

Hello

I have a custom am64 hsfs board with same flash chip with evm board. when i tried to use sbl_ospi to load my application. I wrote the sbl and appimage in flash using uart uniflash and set to bootmode pins to xspi bootmode (Reffered OSPI in sdk getting started page). When powering up the board nothing written on uart terminal and when i debug the sbl, its stuck at some address after warm reset workaround (prevent cpsw lockup). 

I tried to bootmode pin 9 (SFDP) to low or disable reset workaround board works normally.

But cpu load time in my board is 500ms, EVM board is 35ms (for 370kb same appimage).

what can be cause to this issue.

I can able to print SFDP table using ospi_diag example and compare it to the EVM's SFDP table, they are exactly same.

I am using sdk 8.6 and i tried with sdk 9's sbl_ospi. Both of them work same.

Regard,

Berlam

  • Hi Berlam,

    But cpu load time in my board is 500ms, EVM board is 35ms (for 370kb same appimage).

    Please let me know if this load time is of SBL booting an appimage or ROM booting the SBL. In the former case, if you can share any logs showing the load time, it would be very helpful.

    Thanks!

  • Hi Prashan,

    The black ones are the evm results and red ones are our custom board's results. Same Sbl, same appimage.

    In case of you can not read image --> System_init (10520us) to (78370us)

                                Big Difference !!! --> CPU load    (2647us)   to (587019us)

    These are the only differences by the way.

    Regards,

    Berlam

  • Hi Berlam,

    Thanks for sharing the logs!

    Have you flashed exact SBL on both boards? I ask this because if the DMA is disabled in the SBL flashed on the custom board, this may explain the high CPU load.

    By default, DMA is enabled in sbl_ospi_linux so that the images are read using DMA which decrease the CPU load significantly.

    Regards,

    Prashant

  • Hi Prashant,

    Both of them are same SBL (Sbl_ospi). Is there any problem with my spi clock or something else. It seems like my setup running as SPI speed , not OSPI speed. But my ospi_flash_diag example runnig well. I really dont know what is my issue.

  • Hi Berlam,

    If both boards have exact same SBL flashed and still see the difference in CPU load then this could be a hardware issue. Before connecting you to the hardware expert, could you please once test the new released MCU+ SDK and see if shows the same behaviour.

    https://www.ti.com/tool/download/MCU-PLUS-SDK-AM64X/09.00.00.35

    Thanks!

  • Hi Prashant,

    I tested with the new released sdk (09.00.00.35) and System init decreased but the Cpu load is still same. Probably hardware issue. What could be problem?

    Thanks!

  • Hi Berlam,

    Apologies for the delayed response.

    I looked at your logs and see something interesting. So, you are loading an application of size 392KB as reported in the logs. Then, the time of CPU Load (587019us) reported by your custom board seems more reasonable than the time of CPU Load (2647us) reported by the TI EVM.

    Attaching below the boot logs from my TI EVM

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    DMSC Firmware Version 8.6.4--v08.06.04 (Chill Capybar
    DMSC Firmware revision 0x8
    DMSC ABI revision 3.1
    [BOOTLOADER_PROFILE] Boot Media : NOR SPI FLASH
    [BOOTLOADER_PROFILE] Boot Media Clock : 166.667 MHz
    [BOOTLOADER_PROFILE] Boot Image Size : 221 KB
    [BOOTLOADER_PROFILE] Cores present :
    m4f0-0
    r5f1-0
    r5f1-1
    a530-0
    r5f0-0
    r5f0-1
    [BOOTLOADER PROFILE] SYSFW init : 12042us
    [BOOTLOADER PROFILE] System_init : 63964us
    [BOOTLOADER PROFILE] Drivers_open : 268us
    [BOOTLOADER PROFILE] Board_driversOpen : 22129us
    [BOOTLOADER PROFILE] Sciclient Get Version : 10025us
    [BOOTLOADER PROFILE] CPU Load : 395492us
    [BOOTLOADER_PROFILE] SBL Total Time Taken : 503925us
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    If we see, the time of CPU Load (395495us) for image size of 221KB seems to match more reasonably with the time of CPU Load (587019us) for image size of 392KB.

    It is peculiar how did the TI EVM on your side returned 2647us for 392KB. Could you please once run on your both boards the IPC example configured in the `default_sbl_ospi_hsfs.cfg` and share the full boot logs.

    Thanks & Regards,

    Prashant