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.

RTOS/AM3352: Boot from SD card is not working

Part Number: AM3352

Tool/software: TI-RTOS

Hi.

   I have install the PDK1_0_6.

   I'm experiencing the PDK by referring this wiki: http://processors.wiki.ti.com/index.php/Rebuilding_The_PDK ..

   The project is created and compiling okay.

   But I'm stuck on booting from SD card.

   And I'm reviewing this wiki several times: http://processors.wiki.ti.com/index.php/Processor_SDK_RTOS_BOOT_AM335x/AM437x 

   I got several questions:

    

   Q1. Regarding the MLO creating, 

          The wiki is telling us to follow this step:  

                Bootloader images with ti header (<mmcsd_bootloader>_ti.bin)should be renamed to "MLO". Bootloader images are located at 

                Result: I have tested with renaming the xxx_ti.bin to MLO, the renamed MLO is okay to boot.

         But this wiki is also telling us:                

                tiimage.exe 0x402F0400 MMCSD boot.bin MLO

                Result: This MLO created by tiimage is not okay to boot.

         May you tell us which is the correct step we follow?

         In what kinds of case, we need to use the tiimage to create the MLO?

    Q2 Regarding the app creating,

         For example, the project I build is here:

         C:\TI\pdk_am335x_1_0_6\packages\MyExampleProjects\I2C_Test_evmAM335x_armTestProject\Debug

         There are  3 files:

          app

          I2C_Test_evmAM335x_armTestProject.bin

          I2C_Test_evmAM335x_armTestProject.out

         Okay, I have seen there is "app" file after building the project by using CCS.

         I put this "app" and the "MLO" on the Sd card, and try to boot.

         The console only shows me this:

   

StarterWare Boot Loader
BOARDInit status [0x0]
SoC : [AM335X]
Core : [A8]
Board Detected : [GPEVM]
Base Board Revision : [UNKNOWN]
Daughter Card Revision: [UNKNOWN]

Pin Muxing failed !
Copying application image from MMC/SD card to RAM
Jumping to StarterWare Application...

           And, then, I tested with this:

           

  • tiimage.exe 0x80000000 NONE I2C_Test_evmAM335x_armTestProject.binn app

          And, I put this new "app" onto the SD card and boot.

The console is still showing me this.

StarterWare Boot Loader
BOARDInit status [0x0]
SoC : [AM335X]
Core : [A8]
Board Detected : [GPEVM]
Base Board Revision : [UNKNOWN]
Daughter Card Revision: [UNKNOWN]

Pin Muxing failed !
Copying application image from MMC/SD card to RAM
Jumping to StarterWare Application...

 Please guide me what's the correct step for creating the bootable SD card !!.

BR Rio

          

 

  • The RTOS team have been notified. They will respond here.
  • From your log it appears that the MLO file is booting but there is some issue with either copying the app into memory or transferring control to the app. 

    Are you testing this on AM335x EVM platform or custom board? What revision board are you using? We need to understand why the SBL is reporting Pin Mux is failed as this can cause issues.

    Rio Chan said:

    Bootloader images with ti header (<mmcsd_bootloader>_ti.bin)should be renamed to "MLO". Bootloader images are located at 

                    Result: I have tested with renaming the xxx_ti.bin to MLO, the renamed MLO is okay to boot.

             But this wiki is also telling us:                

                    tiimage.exe 0x402F0400 MMCSD boot.bin MLO

                    Result: This MLO created by tiimage is not okay to boot.

    I see the first part mentioned on wiki regarding renaming xx_ti.bin file to MLO but don`t see any instructions regarding 

      tiimage.exe 0x402F0400 MMCSD boot.bin MLO.... can you provide where these instructions are provided? Are you referring to older starterware documentation?

    For the bootloader (MLO), you can invoke the build from pdk_am335x_x_x_x/packages by invoking the bootloader build using :

    gmake -C ./ti/starterware bootloader BUILDCFG=boot BOOTMODE=mmcsd PLATFORM=am335x-evm PROFILE=debug -s KW_BUILD=no

    Users should only be aware of app creation for their application. The secondary bootloader build is already setup so all you need to is modify the source if you are working with the custom board.

    BTW: I was able to take the bootloader_boot_mmcsd_a8host_debug.bin and convert it to MLO using tiimage.exe using the instructions 

      tiimage.exe 0x402F0400 MMCSDbootloader_boot_mmcsd_a8host_debug.bin MLO

    I did a binary compare on the file MLO and bootloader_boot_mmcsd_a8host_debug.bin and they were identical.

    I have tested this on a AM335x ICEv2 EVM as I didn`t have a AM335x GP EVM.

    Rio Chan said:

    Q2 Regarding the app creating,

             For example, the project I build is here:

             C:\TI\pdk_am335x_1_0_6\packages\MyExampleProjects\I2C_Test_evmAM335x_armTestProject\Debug

    Rio Chan said:
     Please guide me what's the correct step for creating the bootable SD card !!.

    For application boot image creation, the PDK projects are using the script pdkAppImageCreate.bat found under pdk_am335x_x_x_x/packages, you can open the file and look at the instructions in the SOC_AM3_AM4 function in that bat file.

    Each PDK examples CCS project adds this script as a post build step that will convert the .out to app (_ti.bin) hence you see all those binaries.

    Regards,

    Rahul

  • Hi Rahul:

    Thanks for replying.

    #1. processors.wiki.ti.com/.../AM335X_StarterWare_Booting_And_Flashing
    Can you read the above wiki? There is a section to address this:
    tiimage.exe 0x402F0400 MMCSD boot.bin MLO

    I have tested with this MLO creation.
    The MLO created by this command is not working to boot.

    BTW, are you saying we need to use this command:
    tiimage.exe 0x402F0400 MMCSDbootloader_boot_mmcsd_a8host_debug_ti.bin MLO?

    #2. I found there is an file named "app" whenever the CCS finished the building.
    Were you able to boot the system with this "app" file?

    BR Rio
  • As I mentioned the wiki you are referring to is an old Starterware wiki. Please build the bootloader included in PDK using the instructions that I have provided in my earlier post. After the bootloader for MMC SD i s build, you can rename the *_mmcsd_release_ti.bin  or *_mmcsd_debug_ti.bin to MLO. you don`t need to run the tiimage.exe from command line

    When building the CCS projects for PDK examples, the build calls pdkAppImagecreate.bat file to create the app file. Use the MLO and app file in FAT formatted SD card to verify the boot. This is how the system test team is testing the SDK and should work out of the box. If not, please provide the MLO and app files attached here for us to try.

    Regards,

    Rahul