Boot loop at the end of the MB1 prints

Hi,

I have a system that seldom gets a boot loop at the MB1 stage.

The reboot happens before the end of the MB1 bootloader prints. When I compared it to the old logs, I see that the last line (MB1 done) is not printed. The rest of the prints are as expected. Then it starts over from booting with MB1.

Pressing the reset button cannot stop this boot loop behavior too.

Is it possible to get more information from MB1?
Why would be a reset button not enough to recover from that?

Best,

Here is the log:

[0000.056] W> RATCHET: MB1 binary ratchet value 4 is too large than ratchet level 2 from HW fuses.
[0000.064] I> MB1 (prd-version: 1.5.1.7-t194-41334769-98030a79)
[0000.069] I> Boot-mode: Coldboot
[0000.072] I> Chip revision : A02P
[0000.075] I> Bootrom patch version : 15 (correctly patched)
[0000.081] I> ATE fuse revision : 0x200
[0000.084] I> Ram repair fuse : 0x0
[0000.087] I> Ram Code : 0x2
[0000.090] I> rst_source : 0xa
[0000.092] I> rst_level : 0x1
[0000.096] I> Boot-device: eMMC
[0000.111] I> sdmmc DDR50 mode
[0000.115] W> No valid slot number is found in scratch register
[0000.120] W> Return default slot: _a
[0000.124] I> Active Boot chain : 0
[0000.127] I> Boot-device: eMMC
[0000.131] W> MB1_PLATFORM_CONFIG: device prod data is empty in MB1 BCT.
[0000.137] I> Temperature = 36500
[0000.140] W> Skipping boost for clk: BPMP_CPU_NIC
[0000.144] W> Skipping boost for clk: BPMP_APB
[0000.148] W> Skipping boost for clk: AXI_CBB
[0000.152] W> Skipping boost for clk: AON_CPU_NIC
[0000.156] W> Skipping boost for clk: CAN1
[0000.160] W> Skipping boost for clk: CAN2
[0000.164] I> Boot-device: eMMC
[0000.167] I> Boot-device: eMMC
[0000.176] I> Sdmmc: HS400 mode enabled
[0000.181] I> ECC region[0]: Start:0x0, End:0x0
[0000.185] I> ECC region[1]: Start:0x0, End:0x0
[0000.189] I> ECC region[2]: Start:0x0, End:0x0
[0000.193] I> ECC region[3]: Start:0x0, End:0x0
[0000.197] I> ECC region[4]: Start:0x0, End:0x0
[0000.202] I> Non-ECC region[0]: Start:0x80000000, End:0x100000000
[0000.207] I> Non-ECC region[1]: Start:0x0, End:0x0
[0000.212] I> Non-ECC region[2]: Start:0x0, End:0x0
[0000.216] I> Non-ECC region[3]: Start:0x0, End:0x0
[0000.221] I> Non-ECC region[4]: Start:0x0, End:0x0
[0000.226] E> FAILED: Thermal config
[0000.233] E> FAILED: MEMIO rail config
[0000.252] I> Boot-device: eMMC
[0000.261] I> sdmmc bdev is already initialized
��
[0000.056] W> RATCHET: MB1 binary ratchet value 4 is too large than ratchet level 2 from HW fuses.
[0000.064] I> MB1 (prd-version: 1.5.1.7-t194-41334769-98030a79)
[0000.070] I> Boot-mode: Coldboot
[0000.072] I> Chip revision : A02P
[0000.076] I> Bootrom patch version : 15 (correctly patched)
[0000.081] I> ATE fuse revision : 0x200
[0000.084] I> Ram repair fuse : 0x0
[0000.087] I> Ram Code : 0x2
[0000.090] I> rst_source : 0xa
[0000.092] I> rst_level : 0x1
[0000.096] I> Boot-device: eMMC
[0000.111] I> sdmmc DDR50 mode
[0000.115] W> No valid slot number is found in scratch register
[0000.121] W> Return default slot: _a
[0000.124] I> Active Boot chain : 0
[0000.127] I> Boot-device: eMMC
[0000.131] W> MB1_PLATFORM_CONFIG: device prod data is empty in MB1 BCT.
[0000.137] I> Temperature = 36500
[0000.140] W> Skipping boost for clk: BPMP_CPU_NIC
[0000.144] W> Skipping boost for clk: BPMP_APB
[0000.148] W> Skipping boost for clk: AXI_CBB
[0000.152] W> Skipping boost for clk: AON_CPU_NIC
[0000.157] W> Skipping boost for clk: CAN1
[0000.160] W> Skipping boost for clk: CAN2
[0000.164] I> Boot-device: eMMC
[0000.167] I> Boot-device: eMMC
[0000.177] I> Sdmmc: HS400 mode enabled
[0000.181] I> ECC region[0]: Start:0x0, End:0x0
[0000.185] I> ECC region[1]: Start:0x0, End:0x0
[0000.189] I> ECC region[2]: Start:0x0, End:0x0
[0000.193] I> ECC region[3]: Start:0x0, End:0x0
[0000.198] I> ECC region[4]: Start:0x0, End:0x0
[0000.202] I> Non-ECC region[0]: Start:0x80000000, End:0x100000000
[0000.207] I> Non-ECC region[1]: Start:0x0, End:0x0
[0000.212] I> Non-ECC region[2]: Start:0x0, End:0x0
[0000.216] I> Non-ECC region[3]: Start:0x0, End:0x0
[0000.221] I> Non-ECC region[4]: Start:0x0, End:0x0
[0000.226] E> FAILED: Thermal config
[0000.234] E> FAILED: MEMIO rail config
[0000.252] I> Boot-device: eMMC
[0000.261] I> sdmmc bdev is already initialized
��
[0000.056] W> RATCHET: MB1 binary ratchet value 4 is too large than ratchet level 2 from HW fuses.
[0000.064] I> MB1 (prd-version: 1.5.1.7-t194-41334769-98030a79)
[0000.069] I> Boot-mode: Coldboot
[0000.072] I> Chip revision : A02P
[0000.075] I> Bootrom patch version : 15 (correctly patched)
[0000.081] I> ATE fuse revision : 0x200
[0000.084] I> Ram re

Hi mustafa,

Are you using the devkit or custom board?

Does this situation happen occasionally with the same image inside?
If yes, how do you recover this?

Hi Kevin,

We have a custom board with the same image in every trial.

This board has a short-time power source to give the system a few more seconds to save some important information.

If we start with a full discharged power source, we have this boot loop behavior rarely. But once we have it, we cannot stop it until we fully discharge the system and make a new trial. A reset button sending the reset signal to the module does apparently a reset, but we are still in this boot loop.

If we again fully discharge the system and power it, the system boots to Linux normally most of the time. If we reset in this OK status, it does a normal boot each time without any boot loop.

As it occurs in the MB1 stage, we have no more information about this unintended reset behavior.
Can you give some hint to have more debug info?

If we don’t discharge power rails fully, we cannot recover with the reset button.
How can it be possible that the module remembers some status that cannot be erased with a reset?

Best,
Mustafa

Sorry, we don’t enable the MB1 debug log usage for public release.

Have you tried to remove this short-time power and test if the reset button would work for this boot loop issue?

Have you tried to put the button for a longer time?

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.