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.

SK-AM62: how to set the boot priority for SD and eMMC.

Expert 2680 points
Part Number: SK-AM62


Tool/software:

Hi All,

I am considering the following boot procedure.

1.If there is an SD, start from the SD
2.If there is no SD, start from eMMC
3.If the eMMC file is corrupted, start from the SD

What is the Dip SW setting for this boot procedure?

I checked as follows, but I couldn't set it well.


➀ Set SD card 1 (MicroSD) [3:6 = 0001, 7 = 1 [fs], 8:9 = 01] as Primary, and set SD card 0 (eMMC) [10:13= 1010] as BackUp.
〇 1. Boot from the SD, if there is an SD
〇 2. Boot from the eMMC if there is no SD
  3. Boot from the SD if the eMMC file is corrupted

② Specify SD card 1 (MicroSD) [3:6 = 0001, 7 = 0 [raw], 8:9 = 01] as Primary, and SD card 0 (eMMC) [10:13= 1010] as BackUp
*〇 1. Boot from the SD if there is an SD
 〇 2. Boot from the eMMC if there is no SD
      3. Boot from the SD if the eMMC file is corrupted

③ Specify SD card 0 (eMMC) [3:6 = 0001, 7 = 1 [fs], 8:9 = 00] as Primary, and SD card 1 (MicroSD) [10:13= 1011] as BackUp
〇 1. Boot from the SD if there is an SD
*× 2. Boot from the eMMC if there is no SD
〇 3. Boot from the SD if the eMMC file is corrupted

④ Set SD card 0 (eMMC) [3:6 = 0001, 7 = 0 [raw], 8:9 = 00] as Primary, and set SD card 1 (MicroSD) [10:13= 1011] as BackUp
*〇 1. Boot from the SD if there is an SD
*〇 2. Boot from the eMMC if there is no SD
      3. Boot from the SD if the eMMC file is corrupted

・Partition 0 (FAT) and Partition 1 (ext4) for both SD and eMMC

*are not operating according to the settings (Is fs/raw or Praimary behaving strangely?)
Are all operations in fs, not raw?

Best Regards,

Ito

  • Hi Ito-san,

    ➀ Set SD card 1 (MicroSD) [3:6 = 0001, 7 = 1 [fs], 8:9 = 01] as Primary, and set SD card 0 (eMMC) [10:13= 1010] as BackUp.
    〇 1. Boot from the SD, if there is an SD
    〇 2. Boot from the eMMC if there is no SD
      3. Boot from the SD if the eMMC file is corrupted

    To meet #1 & #2, sdcard boot should be the primary and eMMC boot should be the backup. Then #3 won't be met, there is no way to go back from backup boot to primary boot.

    ➀ Set SD card 1 (MicroSD) [3:6 = 0001, 7 = 1 [fs],

    For SD card boot in FS mode, bit7 should be 0. Please see TRM Table 5-16.

  • Hi bin,

    Thank you for your reply.

    To meet #1 & #2, sdcard boot should be the primary and eMMC boot should be the backup. Then #3 won't be met, there is no way to go back from backup boot to primary boot.

    If I set the primary to SD and the backup to eMMC, does that mean that if the eMMC is damaged, I will not be able to boot from the SD card?
    Currently, I have set the primary to SD and the backup to eMMC,
    and I booted after partially damaging the eMMC files,
    but I cannot boot from the SD card.
    Please explain this setting.

    [experimental conditions]

    ・microSD and eMMC both have Partition 1 (FAT) and Partition 2 (ext4)
    ・Rename the tispl.bin file in Partition 1 of eMMC and test it in a way that it cannot be found
    ・Set SD card 1 (MicroSD) [3:6 = 0001, 7 = 0[raw] , 8:9 = 01] as Primary and SD card 0 (eMMC) [10:13= 1010] as BackUp.

    Best Regards,

    Ito

  • Hi Ito-san,

    If I set the primary to SD and the backup to eMMC, does that mean that if the eMMC is damaged, I will not be able to boot from the SD card?

    Correct. If the primary boot failed in ROM, ROM goes to backup boot. But when backup boot failed in ROM, it is unable to go back to the primary boot.

    ・Set SD card 1 (MicroSD) [3:6 = 0001, 7 = 0[raw] , 8:9 = 01] as Primary and SD card 0 (eMMC) [10:13= 1010] as BackUp.

    The bootmode setting seems to be correct for SD card boot. Have you ever been able to boot from the SD card with whatever bootmode setting? I'd like to check if the SD card has been flashed properly and is bootable.

  • Hi Bin,

    Thank you for your reply.

    Correct. If the primary boot failed in ROM, ROM goes to backup boot. But when backup boot failed in ROM, it is unable to go back to the primary boot.

    OK.

    The case we want to implement is when we want to boot from SD as the primary boot, but the eMMC file for backup boot is corrupted.
    In other words, in case #3, we do not expect to migrate from backup to primary.
    I apologise for the lack of explanation.
    In case #3, I thought it would boot from SD as the primary, but for some reason it does not boot.

    Please tell me how to solve this problem.

    Have you ever been able to boot from the SD card with whatever bootmode setting?

    I will confirm.

    Best Regards,

    Ito

  • Hi Ito-san,

    Thanks for the explanation, now I understand the requirement.

    Please confirm if you use SK-AM62 but not SK-AM62B or SK-AM62B-P1, and which SDK version did you flash to the SD card?

    The EVM SK-AM62 has AM62x GP device which is no longer supported in newer SDK out of the box.

  • Hi BIn,

    My customer is using the following SDK.

    ti-processor-sdk-linux-am62xx-evm-11.00.09.04

    Best Regards,

    Ito

  • Hi Ito,

    Please check if the sdcard boot partition (not the boot directory in the root partition) has file "tiboot3-am62x-gp-evm.bin". If so, make a copy and rename it to "tiboot3.bin" (to overwrite the existing "tiboot3.bin"), this should make the sdcard to boot on SK-AM62.

  • Hi Bin,

    tiboot3-am62x-gp-evm.bin has been replaced with tiboot3.bin.

    There are two partitions on the microSD card.

    Partition 1(FAT32):  /boot
                                                   dtb/
                                                  Image
                                                  fitImage
                                                  ti_logo_414x97_32bpp.bmp.gz
                                                  tiboot3-capsule.bin
                                                  tiboot3.bin
                                                  tispl.bin
                                                  u-boot.img 
        Partition 2(ext4):  /rootfs
                                                 bin/
                                                  boot/
    dtb/
                                                              Image
                                                             System.map
                                                             fitImage
                                                             vmlinux
                                                 dev/
                                                 etc/
                                                 gstshark_2025-01-08_18:23:16/
                                                 home/
                                                 lib/
                                                 lost+found/
                                                 media/
                                                 mnt/
                                                 opt/
                                                 proc/
                                                 root/
                                                 run/
                                                 sbin/
                                                 srv/
                                                 sys/
                                                 tmp/
                                                 usr/
                                                 var/
    

    The eMMC also has two partitions, the same as the microSD card.

    Partition 1 (FAT32): /boot

    Partition 2 (ext4): /rootfs

    ① In this state, insert the microSD card, turn on the evaluation board, and check the boot log in the terminal. The board booted normally from the microSD card.

    ② Next, turn off the power, remove the microSD card, turn on the evaluation board's power, and check the boot log in the terminal. It boots normally from the eMMC.

    ③ Furthermore, before turning off the power, rename tiboot3.bin in the eMMC to X_ tiboot3.bin, turn off the power, insert the microSD card used in ➀, and turn on the power. It does not boot.

    ④ Change the DIP switch (set both Primary and Backup to microSD), insert the microSD card, turn on the power, and after booting, rename X_ tiboot3.bin in the eMMC to tiboot3.bin, turn off the power, reset the DIP switch to its original setting, and turn on the power. It boots in the same way as in ①.

    [Question]

    Prepare a bootable microSD card and an eMMC with some files missing (tiboot3.bin is absent), set the Dip-SW to microSD as Primary and eMMC as Backup,

    but why can't it boot from the microSD card?

    Best Regards,

    Ito

  • Hi Ito-san,

    ③ Furthermore, before turning off the power, rename tiboot3.bin in the eMMC to X_ tiboot3.bin, turn off the power, insert the microSD card used in ➀, and turn on the power. It does not boot.

    When the board doesn't boot in this case, I assume no message is printed on the UART console, right?

    ① In this state, insert the microSD card, turn on the evaluation board, and check the boot log in the terminal. The board booted normally from the microSD card.

    ② Next, turn off the power, remove the microSD card, turn on the evaluation board's power, and check the boot log in the terminal. It boots normally from the eMMC.

    In either case of these two, how did you identify which source did it boot from?

    Please attach the U-Boot boot log for both cases.

  • Hi Bin,

    When the board doesn't boot in this case, I assume no message is printed on the UART console, right?

    Yes,

    In either case of these two, how did you identify which source did it boot from?

    Regarding ①, I checked the Linux boot log and the mount status after Linux startup.
    I deleted the boot log, so I will send it later.
    Regarding ②, I checked the boot log and mount status.
    I deleted the boot log, so I will send it later.

    Best Regards,

    Ito