HSE Firmware Update

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

HSE Firmware Update

Jump to solution
406 Views
HaiHoangSoftware
Contributor IV

Dear NXP team,

Currently, We are referring to HSE_DEMOAPP_S32K396_0_2_50_0 to see how to update new HSE firmware (AB SWAP to AB SWAP FW update).

The first step is that programs IVT and Encrypted HSE F/w V2 Image in Active Partition as below picture (mentioned in HSE_DEMOAPP_S32K396_0_2_50_0_ReadMe.pdf).

HaiHoangSoftware_0-1760603654989.png

In the Demo App, this step was done by TRACE32 script.

But in our project, we need to get new Encrypted HSE F/w V2 Image from tester tool via UDS CAN, then perform writing this image into Active Partition in this step.

Please help us verify if we can perform programming Encrypted HSE F/w V2 Image into Active Partition(PFLASH BLOCK0 or PFLASH BLOCK1) while SW is executing in Active Partition(PFLASH BLOCK 0) by Mem43 Flash Driver?

 

Thank you and best regards,

Hai Nguyen Hoang

0 Kudos
Reply
1 Solution
382 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

Hi @HaiHoangSoftware 

Generally speaking, read-while-write (RWW) is supported between blocks. So, when a block is being programmed or erased, this block cannot be accessed and the code must run from another block or from RAM.

Mem_43_INFLS driver provides a feature which can load access code to RAM memory in order to avoid RWW issues. For details, see section "3.6.3 Avoiding Read While Write" in user manual RTD_MEM_43_INFLS_UM.pdf. If this feature is enabled, you can program/erase the same block where the code is running from.
But if you want to keep interrupts enabled during the flash operations, it's better to avoid this situation - if your application is running from block 1 then load new pink file to block 0 and there will be no problem.

Regards,
Lukas

View solution in original post

0 Kudos
Reply
2 Replies
383 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

Hi @HaiHoangSoftware 

Generally speaking, read-while-write (RWW) is supported between blocks. So, when a block is being programmed or erased, this block cannot be accessed and the code must run from another block or from RAM.

Mem_43_INFLS driver provides a feature which can load access code to RAM memory in order to avoid RWW issues. For details, see section "3.6.3 Avoiding Read While Write" in user manual RTD_MEM_43_INFLS_UM.pdf. If this feature is enabled, you can program/erase the same block where the code is running from.
But if you want to keep interrupts enabled during the flash operations, it's better to avoid this situation - if your application is running from block 1 then load new pink file to block 0 and there will be no problem.

Regards,
Lukas

0 Kudos
Reply
365 Views
HaiHoangSoftware
Contributor IV
Hi,

It's clear for now.
Thanks for your support.

Regards,
Hai Nguyen Hoang.
0 Kudos
Reply