Skip to content
Snippets Groups Projects
  1. Jan 22, 2019
  2. Nov 02, 2018
  3. Aug 22, 2018
  4. Apr 27, 2018
  5. Dec 15, 2017
  6. Nov 30, 2017
  7. Sep 20, 2017
  8. Sep 12, 2017
  9. Apr 18, 2017
  10. Apr 13, 2017
  11. Feb 02, 2017
  12. Jan 19, 2017
  13. Jan 10, 2017
  14. Nov 28, 2016
  15. Sep 21, 2016
  16. Sep 07, 2016
    • Jon Thacker's avatar
      atmega: use software interrupt for context swap · e0365e0b
      Jon Thacker authored
      Fixes #5745
      For AVR based boards, three defines must be defined AVR_CONTEXT_SWAP_INIT,
      AVR_CONTEXT_SWAP_INTERRUPT_VECT, and AVR_CONTEXT_SWAP_TRIGGER.
      These defines are used to trigger a software interrupt used for context
      switching.
      
      When AVR_CONTEXT_SWAP_INTERRUPT_VECT is handled, the scheduler is run
      and a context swap will happen if necessary, with the resulting thread
      starting following the reti instruction. This results in threads running
      at normal priority instead of at interrupt priority.
      
      Atmega devices do provide a pure software interrupt. The method used
      here for waspmote-pro and arduino-mega2560 is to use pin change
      interrupts, set the pin to act as an output, and toggle the value to
      simulate a software interrupt. The main limitation here is that a
      physical pin is now occupied and must be defined for each board
      supported by RIOT. On the plus side, it provides an easy method for
      detecting context swaps with an oscilloscope.
      e0365e0b
  17. Jul 06, 2016
  18. Jun 22, 2016
  19. Apr 18, 2016
  20. Apr 07, 2016
  21. Mar 15, 2016
  22. Mar 11, 2016
  23. Jan 27, 2016
  24. Jan 05, 2016
  25. Nov 19, 2015
  26. Sep 17, 2015
  27. Sep 16, 2015
  28. Sep 03, 2015
  29. Jun 24, 2015
  30. Feb 12, 2015
  31. Oct 31, 2014
  32. Aug 27, 2014
  33. Aug 23, 2014
  34. Aug 11, 2014
  35. May 24, 2014
  36. May 15, 2014
Loading