Endless boot in U-Boot due to not well handled exception in Software

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Endless boot in U-Boot due to not well handled exception in Software

ソリューションへジャンプ
820件の閲覧回数
jaskis
Contributor II

Hi Nxp

We have a SoM using the iMX8MP. During reboot and quick reboots tests, we are facing an endless reboot issue which occurs randomly. The only way out of this endless reboot issue is to reset the Board again. We still don't the exact root cause of the issue but we found the exact location in the code where it happens. 

We are using the following U-Boot branch:https://github.com/nxp-imx/uboot-imx/tree/lf_v2022.04.

In this branch, the SoM runs in an exception in the following code from the file arch/arm/mach-imx/spl.c:358 spl_load_simple_fit_fix_load:

void *spl_load_simple_fit_fix_load(const void *fit)
{
struct ivt *ivt;
unsigned long new;
unsigned long offset;
unsigned long size;
u8 *tmp = (u8 *)fit;
 
offset = ALIGN(fdt_totalsize(fit), 0x1000);
size = ALIGN(fdt_totalsize(fit), 4);
size = board_spl_fit_size_align(size);
tmp += offset;
ivt = (struct ivt *)tmp;
if (ivt->hdr.magic != IVT_HEADER_MAGIC) {
debug("no IVT header found\n");
return (void *)fit;
}
debug("%s: ivt: %p offset: %lx size: %lx\n", __func__, ivt, offset, size);
debug("%s: ivt self: %x\n", __func__, ivt->self);
new = ivt->self;
new -= offset;
debug("%s: new %lx\n", __func__, new);
memcpy((void *)new, fit, size);
 
return (void *)new;
}

 

 In case of error IVT found message is shown and then the SoM stays in endless loop, unless a power on/off or hardware reset is applied. 

Do you know this behaviour?

I think IVT is for secure boot images but we don't have secure boot enabled. Why are we having this issue?

 

Thanks and best regards, 

Jaski

0 件の賞賛
返信
1 解決策
764件の閲覧回数
jaskis
Contributor II

Hi, we don't have this issue with the mainline U-Boot.

元の投稿で解決策を見る

0 件の賞賛
返信
4 返答(返信)
794件の閲覧回数
jaskis
Contributor II

Hello, 

I am from the SoM Vendor Toradex. As I said, it is usually working but seen very rarely and randomly on some SoMs. I think the issue is related to the misalignment of reading of the FIT image. Have you done quick reboots on your side? A quick reboot is when you reset the SoM or the SoC on EVK every 1-30 seconds.

Best regards, 

Jaski

0 件の賞賛
返信
799件の閲覧回数
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello,

 

Yes this issue is due to IVT is for secure boot, here you can check with SOM vendor if they have a uboot, since this works on EVK.

 

Regards

0 件の賞賛
返信
765件の閲覧回数
jaskis
Contributor II

Hi, we don't have this issue with the mainline U-Boot.

0 件の賞賛
返信
783件の閲覧回数
jaskis
Contributor II

It is a bit strange since we are not using at all Secure Boot for our regular images and we still see the error. 

0 件の賞賛
返信