SebastianOberschwendtner / OTOS

Bearbones realtime operating system for embedded systems. Focus lies on KISS (Keep-It-Super-Simple).
GNU General Public License v3.0
2 stars 0 forks source link

SysTick and SVCall Interrupt Priority #14

Closed SebastianOberschwendtner closed 1 year ago

SebastianOberschwendtner commented 1 year ago

Current Behavior

The interrupt priorities are the default priorities assigned by the CMSIS driver. This makes the SVCall a higher priority as the SysTick. Since the SVCall is called on every context switch, it can happen the SysTick handler does not get called at all. This results in timed tasks not executing.

Solution

The SysTick interrupt priority should be higher than the SVCall to ensure that the timing is kept up to date. Adjust the priorities accordingly.

Discussion

Hoepfully, this does not introduce other bugs. :thinking: