After transplanting the UDS protocol stack, compilation reports errors.

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

After transplanting the UDS protocol stack, compilation reports errors.

Jump to solution
746 Views
代码织梦师
Contributor II

Hello, I have ported the bootloader routine from NXP to S32K324. After porting and compiling the UDS routine for the APP, the software reports this error. Could you please tell me what the reason might be?The attachment is the LinkFile.

_0-1769407657933.png

 

Tags (1)
0 Kudos
Reply
1 Solution
602 Views
Julián_AragónM
NXP TechSupport
NXP TechSupport

Hi @代码织梦师,

Thank you for sharing the linker file. I do not see anything necessarily wrong.

By chance, are you using C++? __exidx_start & __exidx_end are symbols used by the compiler to form an exception-handling index. It seems you do not have them initialized inside your linker file. You can refer to this community post where a similar question was asked: What is the function of section named ".ARM.exidx" in ld script - NXP Community.

I've also found these posts discussing something similar: stm32 - When is .ARM.exidx is used - Stack Overflow & c++ - gcc objdump - what is section .ARM.exidx.text - Stack Overflow.

That said, please try using the examples provided in the Unified bootloader Demo. The download .zip already provides a project example for S32K324.

Best regards,
Julián

View solution in original post

0 Kudos
Reply
3 Replies
700 Views
Julián_AragónM
NXP TechSupport
NXP TechSupport

Hi @代码织梦师,

I imagine you are porting the Unified bootloader Demo, correct? 

Please check your linker file and verify whether the stack and heap sizes are both correctly set. Also ensure .sram_data + .bss + .noinit fit below the heap/stack block.

There are various threads discussing similar issues, you can also refer to them: Search - NXP Community.

You mentioned you have attached the linker file; however, I cannot see it. Can you try sharing it? 

Best regards,
Julián

0 Kudos
Reply
669 Views
代码织梦师
Contributor II

Please check the linkfile

Tags (1)
0 Kudos
Reply
603 Views
Julián_AragónM
NXP TechSupport
NXP TechSupport

Hi @代码织梦师,

Thank you for sharing the linker file. I do not see anything necessarily wrong.

By chance, are you using C++? __exidx_start & __exidx_end are symbols used by the compiler to form an exception-handling index. It seems you do not have them initialized inside your linker file. You can refer to this community post where a similar question was asked: What is the function of section named ".ARM.exidx" in ld script - NXP Community.

I've also found these posts discussing something similar: stm32 - When is .ARM.exidx is used - Stack Overflow & c++ - gcc objdump - what is section .ARM.exidx.text - Stack Overflow.

That said, please try using the examples provided in the Unified bootloader Demo. The download .zip already provides a project example for S32K324.

Best regards,
Julián

0 Kudos
Reply