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.

TDA4VM: Reduce SBL booting time by emmc.

Part Number: TDA4VM

software:SDK8.5 Linux

hardware: J721E EVM

Follow below process to booting linux kernel. I have tested that how long does it take to output  kernel log on SOC uart after power-on. 

It takes about 4.3s by OSPI Boot media and about 13.8s by emmc Boot media.

1. I wonder if the booting time are within the expected range. 

2. How to reduce emmc booting time?

3. If  emmc booting time can be optimized as OSPI booting time?

  • Hi,

    Can you please share the detailed procedure that you are using so that we can reproduce the same results at our end?

    Regards,
    Parth

  • Hi:

    1.   OSPI booting log on mcu uart:

    Starting Sciserver..... PASSED
    OSPI flash left configured in Legacy SPI mode.
    
     OSPI NOR device ID: 0x5b1a, manufacturer ID: 0x2c 
    Boot App: Started at 57 usec
    Boot App: Stage 0 - Started requesting all cores at 184049 usec
    Boot App: Stage 0 - Completed requesting all cores at 184154 usec
    Boot App: Stage 0 - Started copying and image parsing at 184154 usec
    Boot App: Stage 0 - Completed copying and image parsing at 348994 usec
    Boot App: Stage 0 finished at 349536 usecs
    Boot App: Stage 1 - Started requesting all cores at 349536 usec
    Boot App: Stage 1 - Completed requesting all cores at 349778 usec
    Boot App: Stage 1 - Started copying and image parsing at 349778 usec
    Boot App: Stage 1 - Completed copying and image parsing at 1086596 usec
    Boot App: Stage 1 finished at 1087990 usecs
    Boot App: Stage 2 - Started requesting all cores at 1087990 usec
    Boot App: Stage 2 - Completed requesting all cores at 1088042 usec
    Boot App: Stage 2 - Started copying and image parsing at 1088042 usec
    Boot App: Stage 2 - Completed copying and image parsing at 3796527 usec
    Boot App: Stage 2 finished at 3796788 usecs
    Boot App: Total Num booted cores = 6
    Boot App: Booted Core ID #10 at 349321 usecs
    Boot App: Booted Core ID #11 at 349536 usecs
    Boot App: Booted Core ID #16 at 1087044 usecs
    Boot App: Booted Core ID #17 at 1087245 usecs
    Boot App: Booted Core ID #18 at 1087990 usecs
    Boot App: Booted Core ID #0 at 3796788 usecs
    
    MCU Boot Task started at 57 usecs and finished at 9229048 usecs

    2. emmc bootting log on mcu uart:

    SBL Revision: 01.00.10.01 (Mar 17 2023 - 14:33:22)
    TIFS  ver: 8.5.2--v08.05.02 (Chill Capybar
    Starting Sciserver..... PASSED
    
    MCU R5F App started at 0 usecs
    Calling Sciclient_procBootRequestProcessor, ProcId 0x6... 
    Calling Sciclient_procBootRequestProcessor, ProcId 0x7... 
    Loading BootImage                                                     
                                                                          
     MMCBootImageLate: fp 0x 0x41c12280, fileName is 0:/lateapp1          
                                                                          
     Called SBL_MulticoreImageParse, status = 0                           
    BootImage completed, status = 0
    Sciclient_procBootReleaseProcessor, ProcId 0x6...
    Sciclient_procBootReleaseProcessor, ProcId 0x7...
    SBL_SlaveCoreBoot completed for Core ID#10, Entry point is 0x0
    SBL_SlaveCoreBoot completed for Core ID#11, Entry point is 0x0
    Calling Sciclient_procBootRequestProcessor, ProcId 0x8... 
    Calling Sciclient_procBootRequestProcessor, ProcId 0x9...                                                   
    Calling Sciclient_procBootRequestProcessor, ProcId 0x3...                                                   
    Calling Sciclient_procBootRequestProcessor, ProcId 0x4...                                                   
    Calling Sciclient_procBootRequestProcessor, ProcId 0x30...                                                  
    Loading BootImage                                                                                           
                                                                                                                
     MMCBootImageLate: fp 0x 0x41c12280, fileName is 0:/lateapp2                                                
                                                                                                                
     Called SBL_MulticoreImageParse, status = 0                                                                 
    BootImage completed, status = 0                                                                             
    Sciclient_procBootReleaseProcessor, ProcId 0x8...                                                           
    Sciclient_procBootReleaseProcessor, ProcId 0x9...                                                           
    Sciclient_procBootReleaseProcessor, ProcId 0x3...                                                           
    Sciclient_procBootReleaseProcessor, ProcId 0x4...                                                           
    Sciclient_procBootReleaseProcessor, ProcId 0x30...                                                          
    SBL_SlaveCoreBoot completed for Core ID#16, Entry point is 0xa8d7e000                                       
    SBL_SlaveCoreBoot completed for Core ID#17, Entry point is 0xa9d7e000                                       
    SBL_SlaveCoreBoot completed for Core ID#18, Entry point is 0xb2200000                                       
    Calling Sciclient_procBootRequestProcessor, ProcId 0x20...                                                  
    Loading BootImage                                                                                           
                                                                                                                
     MMCBootImageLate: fp 0x 0x41c12280, fileName is 0:/atf_optee.appimage                                      
                                                                                                                
     Called SBL_MulticoreImageParse, status = 0                                                                 
                                                                                                                
     MMCBootImageLate: fp 0x 0x41c12280, fileName is 0:/tikernelimage_linux.appimage                            
                                                                                                                
     Called SBL_MulticoreImageParse, status = 0                                                                 
                                                                                                                
     MMCBootImageLate: fp 0x 0x41c12280, fileName is 0:/tidtb_linux.appimage                                    
                                                                                                                
     Called SBL_MulticoreImageParse, status = 0                                                                 
    BootImage completed, status = 0                                                                             
    Sciclient_procBootReleaseProcessor, ProcId 0x20...                                                          
    SBL_SlaveCoreBoot completed for Core ID#0, Entry point is 0x70000000                                        
    Boot App: Started at 3112 usec                                                                              
    Boot App: Stage 0 - Started requesting all cores at 400070 usec                                             
    Boot App: Stage 0 - Completed requesting all cores at 519158 usec                                           
    Boot App: Stage 0 - Started copying and image parsing at 538103 usec                                        
    Boot App: Stage 0 - Completed copying and image parsing at 1162104 usec                                     
    Boot App: Stage 0 finished at 1426104 usecs                                                                 
    Boot App: Stage 1 - Started requesting all cores at 1426104 usec                                            
    Boot App: Stage 1 - Completed requesting all cores at 1728157 usec                                          
    Boot App: Stage 1 - Started copying and image parsing at 1747103 usec                                       
    Boot App: Stage 1 - Completed copying and image parsing at 4063104 usec                                     
    Boot App: Stage 1 finished at 4565104 usecs                                                                 
    Boot App: Stage 2 - Started requesting all cores at 4565104 usec                                            
    Boot App: Stage 2 - Completed requesting all cores at 4626159 usec                                          
    Boot App: Stage 2 - Started copying and image parsing at 4645103 usec                                       
    Boot App: Stage 2 - Completed copying and image parsing at 10987170 usec                                    
    Boot App: Stage 2 finished at 11143104 usecs                                                                
    Boot App: Total Num booted cores = 6                                                                        
    Boot App: Booted Core ID #10 at 1362104 usecs                                                               
    Boot App: Booted Core ID #11 at 1426104 usecs                                                               
    Boot App: Booted Core ID #16 at 4424104 usecs                                                               
    Boot App: Booted Core ID #17 at 4494104 usecs                                                               
    Boot App: Booted Core ID #18 at 4565104 usecs                                                               
    Boot App: Booted Core ID #0 at 11143104 usecs                                                               
                                                                                                                
    MCU Boot Task started at 3112 usecs and finished at 16484103 usecs

    I found that it takes more time coping and parsing image from emmc than from ospi.  

    Q: I wonder if emmc booting time can be optimized. Or  it can not be optimized as limited by emmc access speed.

  • Hi:

    Any suggetion about this issue?

  • Hi,

    Apologies for the long delay. Now eMMC boot is part of 8.6 SDK.

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1249052/tda4al-q1-how-to-optimize-the-emmc-startup-time-in-sbl-mode#:%7E:text=Hi%2C%0A%0AAre,for%20eMMC%20Boot0%3F

    The above thread has relevant numbers. Please follow that.

    Best Regards,
    Keerthy