Dear NXP Support Team,
I am currently working on a project involving the S32K146 microcontroller and the S32 Design Studio (S32DS) development environment. My question concerns two topics:
After the Bootloader has successfully flashed the firmware, I would like to know if there is a way to verify the integrity of the firmware to ensure that it has been correctly written without any corruption. Could you provide guidance on any available methods or tools for achieving this firmware integrity verification?
I am also attempting to port an existing MPC5606 project to the S32K146. Specifically, the original MPC5606 project uses the following code for section manipulation:#pragma push
#pragma force_active on
#pragma section_sconst_type "_bblk_entry" "_bblk_entry"
extern __asm void __start();
const uint32_t bblk_entry_addr = (uint32_t)__start; /*vcus*/
#pragma pop
I would like to know how to implement similar functionality in the S32K146 environment. Could you provide guidance on how to achieve this in the S32K146?
Thank you for your time and assistance. I look forward to your response.
Best regards,
ChandlerX
已解决! 转到解答。
Hi @ChandlerX
1. Please refer to the following link where this topic has been discussed, as it may be helpful to you: Secure boot implementation for boot loader as well as application image security
2.
To port the code from the MPC5606 to the S32K146, you will need to adjust it for the GCC compiler used in the S32K146 environment. Unlike the MPC5606, GCC does not use pragmas for section manipulation but instead relies on __attribute__((section(".user_section"))). For further guidance, please refer to the following links:
HOWTO: Place custom data into flash memory
BR, VaneB
Hi @ChandlerX
1. Please refer to the following link where this topic has been discussed, as it may be helpful to you: Secure boot implementation for boot loader as well as application image security
2.
To port the code from the MPC5606 to the S32K146, you will need to adjust it for the GCC compiler used in the S32K146 environment. Unlike the MPC5606, GCC does not use pragmas for section manipulation but instead relies on __attribute__((section(".user_section"))). For further guidance, please refer to the following links:
HOWTO: Place custom data into flash memory
BR, VaneB