Clearing the SNVS_Button_IRQhandler interrupt

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

Clearing the SNVS_Button_IRQhandler interrupt

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

Hi,

I am trying to use the IMX8QM scfw's SNVS_Button_IRQHandler to process an incoming IRQ signal.

Generally it works but in order to clear the IRQ before leaving the ISR I have to use the SNVS_ClearButtonIRQ(); function which takes about +/- 570 µs to execute. 

That is a fairly long time so i am trying to clear the interrupt/IRQ in a different/shorter way. However, whichever method I have tried it has consistently failed as whenever the ISR ends the SCU instantly jumps back into the ISR.
 
From disassembling the scfw_tcm.elf file I know that the SNVS_Button_IRQHandler function interacts with the SECO using the SECO_WriteSNVS function. Is that abolutely necessary to clear the IRQ flag?
 
Any help/suggestion most appreciated.
ラベル(1)
0 件の賞賛
返信
1 解決策
751件の閲覧回数
JorgeCas
NXP TechSupport
NXP TechSupport

Hello,

To handle this interrupt it needs to interact with the SNVS, which is accessible only to the SECO due to the HW design (done for security).

The SCFW has to send SECO several messages to program: AHAB_WRITE_SNVS_PARAM_REQ messages with AHAB_SNVS_ID_BTN_CONFIG, AHAB_SNVS_ID_BTN_MASK, and AHAB_SNVS_ID_BTN_TIME. This is abstracted in the SCFW using the SNVS driver.

So, it is mandatory to clear the IRQ flag.

Best regards.

元の投稿で解決策を見る

0 件の賞賛
返信
2 返答(返信)
732件の閲覧回数
fd9750
Contributor II

Hi,

This confirms exactly what I have found during all of the various tests I did in the mean time and also corresponds to the block diagram in the IMX8QM reference manual. The SNVS component is only accessible to the SECO and must be accessed exclusively by the SECO. Attempting to access the component via any other core, including the SCU, immediately halts all execution on all cores.

Thanks for the confirmation.

752件の閲覧回数
JorgeCas
NXP TechSupport
NXP TechSupport

Hello,

To handle this interrupt it needs to interact with the SNVS, which is accessible only to the SECO due to the HW design (done for security).

The SCFW has to send SECO several messages to program: AHAB_WRITE_SNVS_PARAM_REQ messages with AHAB_SNVS_ID_BTN_CONFIG, AHAB_SNVS_ID_BTN_MASK, and AHAB_SNVS_ID_BTN_TIME. This is abstracted in the SCFW using the SNVS driver.

So, it is mandatory to clear the IRQ flag.

Best regards.

0 件の賞賛
返信