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/AM5728: Starting .out file from SD card

Part Number: AM5728


Tool/software: TI-RTOS

I want to run GPIO_LedBlink_evmAM572x_armTestProject or GPIO_LedBlink_evmAM572x_c66TestProject on evm AM572x board using SD Card without any operating system. I'm using processor_sdk_rtos_am57xx_4_00_00_04. I built the pdk examples for board evmAM572x for both arm and dsp and ran successfully on evm AM572x using CCS. Then I followed this guide "http://processors.wiki.ti.com/index.php/Processor_SDK_RTOS_BOOT_AM57x", to copy MLO and app files to SD card. With either of the examples armTestProject.out running on ARM or c66TestProject running on dsp, the board turns on for few seconds and shuts off and LED doesn't blink. Board is in default mode so it should boot up using SD card. 

root@ghumChen:~/ti/processor_sdk_rtos_am57xx_4_00_00_04/bin# sudo ./create-sdcard.sh ../prebuilt-sdcards/evmAM572x/sd_card_files/

root@ghumChen:~/ti/processor_sdk_rtos_am57xx_4_00_00_04/bin# rm -r /media/ghumman/boot/*

root@ghumChen:~/ti/processor_sdk_rtos_am57xx_4_00_00_04/bin# cd ~/ti/pdk_am57xx_1_0_7/packages/
root@ghumChen:~/ti/pdk_am57xx_1_0_7/packages# find . -name "MLO"
./ti/boot/sbl/binary/evmAM572x/mmcsd/bin/MLO
./ti/boot/sbl/binary/idkAM572x/mmcsd/bin/MLO
./ti/boot/sbl/binary/idkAM572x/qspi/bin/MLO
./ti/boot/sbl/binary/idkAM571x/mmcsd/bin/MLO
./ti/boot/sbl/binary/idkAM571x/qspi/bin/MLO
root@ghumChen:~/ti/pdk_am57xx_1_0_7/packages# cp ti/boot/sbl/binary/evmAM572x/mmcsd/bin/MLO /media/ghumman/boot/

root@ghumChen:~/ti/pdk_am57xx_1_0_7/packages# cd ti/boot/sbl/tools/scripts/

root@ghumChen:~/ti/pdk_am57xx_1_0_7/packages/ti/boot/sbl/tools/scripts# export BIN_PATH=/media/ghumman/boot/
root@ghumChen:~/ti/pdk_am57xx_1_0_7/packages/ti/boot/sbl/tools/scripts# export APP_MPU_CPU0=~/ti/pdk_am57xx_1_0_7/packages/MyExampleProjects/GPIO_LedBlink_evmAM572x_armTestProject/Debug/GPIO_LedBlink_evmAM572x_armTestProject.out
root@ghumChen:~/ti/pdk_am57xx_1_0_7/packages/ti/boot/sbl/tools/scripts# export APP_DSP1=
root@ghumChen:~/ti/pdk_am57xx_1_0_7/packages/ti/boot/sbl/tools/scripts# export APP_DSP2=
root@ghumChen:~/ti/pdk_am57xx_1_0_7/packages/ti/boot/sbl/tools/scripts# export APP_IPU1_CPU0=
root@ghumChen:~/ti/pdk_am57xx_1_0_7/packages/ti/boot/sbl/tools/scripts# export APP_IPU2_CPU0=

root@ghumChen:~/ti/pdk_am57xx_1_0_7/packages/ti/boot/sbl/tools/scripts# export PDK_INSTALL_PATH=/root/ti/pdk_am57xx_1_0_7/packages/
root@ghumChen:~/ti/pdk_am57xx_1_0_7/packages/ti/boot/sbl/tools/scripts# ./AM57xImageGen.sh
/media/ghumman/boot/ exists
WARNING: The runtime version supported by this application is unavailable.
Using default runtime: v4.0.30319
Parsing the input object file, /root/ti/pdk_am57xx_1_0_7/packages/MyExampleProjects/GPIO_LedBlink_evmAM572x_armTestProject/Debug/GPIO_LedBlink_evmAM572x_armTestProject.out.
File conversion complete!
/root/ti/pdk_am57xx_1_0_7/packages//ti/boot/sbl/binary/testApp does not exists
/root/ti/pdk_am57xx_1_0_7/packages//ti/boot/sbl/binary/testApp does not exists
/root/ti/pdk_am57xx_1_0_7/packages//ti/boot/sbl/binary/testApp does not exists
/root/ti/pdk_am57xx_1_0_7/packages//ti/boot/sbl/binary/testApp does not exists
/root/ti/pdk_am57xx_1_0_7/packages//ti/boot/sbl/binary/testApp does not exists
/root/ti/pdk_am57xx_1_0_7/packages//ti/boot/sbl/binary/testApp does not exists
/root/ti/pdk_am57xx_1_0_7/packages//ti/boot/sbl/binary/testApp does not exists
Number of Input Files 1

root@ghumChen:~/ti/pdk_am57xx_1_0_7/packages/ti/boot/sbl/tools/scripts#

After copying the files to sd card, I run the board and no light blinks and board shuts off after few seconds. 

Please help.  

Thanks. 

  • The RTOS team have been notified. They will respond here.
  • Did you format the SD card using FAT formatting tools. Please refer to the section "Preparing the SD card "
    processors.wiki.ti.com/.../Processor_SDK_RTOS_BOOT_AM57x

    the fact that the board shuts off indicates the ROM bootloader is not booting the secondary bootloader from the SD card. The other thing to confirm is that the boot switches on your board are set to SD /MMC boot as described here:
    processors.wiki.ti.com/.../AM572x_GP_EVM_Hardware_Setup
    processors.wiki.ti.com/.../AM572x_General_Purpose_EVM_HW_User_Guide

    Regards,
    Rahul
  • SD card is formatted using FAT. I used this command "sudo ./create-sdcard.sh ../prebuilt-sdcards/evmAM572x/sd_card_files/" to put default MLO and app file onto SD card. I think this command formats the SD card using FAT format. I also confirmed using DISKS GUI in ubuntu, so the SD card is in bootable FAT format.

    Regarding boot switches, I've beaglebone-x15, just bought couple of days ago, it's little different from AM572x GP EVM. It didn't come with these switches/headers, although there is a place to solder them. I think still the default mode of this board is to boot from SD card. I tested it with yocto linux image and ti-processor-linux default image and it does boot those images without any problem.

    Any other suggestions Rahul?
    Thanks.
  • I also soldered headers and shorted switches to boot up from SD card, but didn't have any success. I used a FTDI 3.3 v serial cable and the only output I get from the board is a single block. There's no other output from serial console.
  • Also I noticed that SD card created using command"sudo ./create-sdcard.sh ../prebuilt-sdcards/evmAM572x/sd_card_files/", is formatted in FAT32 not bootable FAT32. I also tried to format SD card as bootable FAT32 and copied both files MLO and app manually but still the board shuts down after few seconds.
  • Yes, if you are using create-sdcard.sh, then the SD card formatting should be as expected. Have you also tried to use the prebuilt SD card image provided here using dd command. The file can be located under :
    processor_sdk_rtos_am57xx_4_00_00_04\prebuilt-sdcards\evmAM572x\sd_card_img

    If it booted yocto linux images, then I am surprised that it doesn`t boot the RTOS MLO as that essentially eliminates any issues with the hardware. You will need to check with the board manufacturer to see how it differs from the AM572x GP EVM as the MLO is validated only on the EVM Processor module where the MLO is designed to keep the PMIC on using I2C commands using its slave address. If all of those hook ups are the same on beagleboard X15 then I can`t think of a reason why the RTOS MLO fails to keep the PMIC alive after 8 second power off.

    Regards,
    Rahul
  • Ahmed,

    I discussed this setup internally and it appears that the new Beagle board X15 design is not supported with Processor SDK RTOS software essentially because there are quite a few design changes on that board and we don`t account for in Processor SDK software. Processor SDK Linux may have come up as someone in the community may have submitted patches for this board that were integrated in TI Mainline Linux kernel but RTOS software doesn`t integrate similar patches for this platform.

    One such issue that I noticed is with the programming of the board ID On the EEPROM, the MLO has a code to read the board ID and configures the clocks and DDR based on the ID that it detected but on the beagle board X15 that I obtained the EEPROM board detect didn`t return the board ID as AM572x GP EVM so it doesn`t perform this initialization. I am not sure if the board I used is production version of this board.

    We may need to make some modifications to the RTOS software to be able to run the application boot the same way as in case of AM572x GP EVM.

    Regards,
    Rahul