This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

SDK v12: nrf_spim_event_clear()

Hello,

I was just checking for differences between SDK v11 and v12, more specifically, the differences in the SPI HAL and driver code.

In hal\nrf_spim.h of the v12 SDK I've found the following code:

__STATIC_INLINE void nrf_spim_event_clear(NRF_SPIM_Type * p_reg,
                                          nrf_spim_event_t spim_event)
{
    *((volatile uint32_t *)((uint8_t *)p_reg + (uint32_t)spim_event)) = 0x0UL;
#if __CORTEX_M == 0x04
    volatile uint32_t dummy = *((volatile uint32_t *)((uint8_t *)p_reg + (uint32_t)spim_event));
    (void)dummy;
#endif
}

Here, the code for the __CORTEX_M == 0x04 case is new. What is this doing? Can any developer comment on this?

Thanks, NewtoM

Related