Why the system will be restarted when Use CMAC or Flash Programing or Flash Erase?

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

Why the system will be restarted when Use CMAC or Flash Programing or Flash Erase?

993件の閲覧回数
香龙朱
Contributor II

Hi, NXP!

I use CSEc module. When the code run at CSEC_DRV_VerifyMAC() my system will be restarted. I find the restart reason is lockup in the RCM_SRS register.

I think this operation will spend long time, Then I try the Flash Programing and Flash Erase. the system will be restarted also. 

I want to know why the system will be restarted when those operation?

ラベル(1)
0 件の賞賛
2 返答(返信)

833件の閲覧回数
香龙朱
Contributor II

I find this issue maybe because of the interrupt. I close the global interrupt, the MCU will not be restarted.

anybody can explain the reason?

Thanks!

0 件の賞賛

833件の閲覧回数
lukaszadrapa
NXP TechSupport
NXP TechSupport

Hi,

there are two restrictions:

1.

pastedImage_1.png

That means you can't access partition (flash block) which is being erased or programmed. The code must be executed from RAM memory. This is implemented in SDK drivers. But bear in mind that if interrupt is triggered, the flash is accessed too (reading interrupt vector from flash, executing ISR handler from flash). If you need to handle interrupts during flash operations, it's necessary to move interrupt vector table and ISR handlers to RAM. Or you have to disable the interrupts.

2.

pastedImage_2.png

pastedImage_3.png

Regards,

Lukas

0 件の賞賛