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.
解決済! 解決策の投稿を見る。
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.
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.
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.