cancel
Showing results for 
Search instead for 
Did you mean: 

Is platformProtectST25RComm() just disabling global interrupts?

smithderek2000
Associate III

Hello, I 'm working on porting the RFAL for a ST25R3916B application. I read through the description of platformProtectST25RComm() but I just wanted to clarify: is this disabling all interrupts on the MCU so that nothing will mess up the SPI communication, or is this disabling the interrupt line coming from the ST25R3916B?

1 ACCEPTED SOLUTION

Accepted Solutions
Brian TIDAL
ST Employee

Hi,

when an interrupt is coming from the ST25R3916B, the related ISR reads the interrupt registers through SPI. platformProtectST25RComm() is used to avoid SPI communication mess up between the main task and the ISR.

As well, the ISR updates st25r3916interrupt.status that is then used and cleared by the main task. platformProtectST25RIrqStatus is used to avoid concurrent access issue on st25r3916interrupt.status

On STM32 MCU, platformProtectST25RComm/platformUnprotectST25RComm disables/enables the interrupt line coming from the ST25R3916B.

Fell free to provide more information about your MCU.

Rgds

BT

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

View solution in original post

1 REPLY 1
Brian TIDAL
ST Employee

Hi,

when an interrupt is coming from the ST25R3916B, the related ISR reads the interrupt registers through SPI. platformProtectST25RComm() is used to avoid SPI communication mess up between the main task and the ISR.

As well, the ISR updates st25r3916interrupt.status that is then used and cleared by the main task. platformProtectST25RIrqStatus is used to avoid concurrent access issue on st25r3916interrupt.status

On STM32 MCU, platformProtectST25RComm/platformUnprotectST25RComm disables/enables the interrupt line coming from the ST25R3916B.

Fell free to provide more information about your MCU.

Rgds

BT

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.