Problems passing rtems test sp37 on STM32F7x

Jay Doyle jay.doyle at vecna.com
Wed Oct 28 18:52:34 UTC 2015


All,

We are having problems passing the RTEMS sp37 test case using our 
STM32F7x BSP.  I did some digging around it looks like the problem stems 
from the fact that test_interrupt_body calls rtems_interrupt_disable 
twice and the function returns with most interrupts still disabled.  
Later in the test, a timer is used which requires the system tick 
interrupt to fire which never happens because its interrupt is still 
disabled.

Am I missing something?  Presumably this test case would fail for any 
ARMV7M core since the implementation of the arm interrupt functions are 
generic for all ARMV7M cores and not specific to our BSP.

Below is an annotated copy of the step in test_interrupt_body

// sets basepri to 0x80 and returns previous level of 0
level = rtems_interrupt_disable()

// sets basepri to 0x80 and returns previous level of 0x80
level = rtems_interrupt_disable()

// temporary sets basepri to 0x80 -- which does nothing because it is 
already 0x80
rtems_interrupt_flash( level );

// since level is equal to 0x80 this sets basepri to 0x80
rtems_interrupt_enable( level )
.
.
.
function exits with basepri still set to 0x80 instead of 0x0



More information about the devel mailing list