1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

9 Commits

Author SHA1 Message Date
10e9336c78 boards: adapt to automatically included boards/$board/Makefile.dep 2016-09-29 15:41:12 +02:00
Ludwig Knüpfer
6d30ced410 Merge pull request #5763 from jthacker/avr_thread_arch_isr_stack_usage
atmega: use software interrupt for context swap
2016-09-21 21:13:05 +02:00
Martine Lenders
8a74475e70 Merge pull request #5761 from mali/rmdeadcode
boards/atmega_common: remove dead code on link
2016-09-12 17:01:15 +02:00
Jon Thacker
e0365e0bf9 atmega: use software interrupt for context swap
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.
2016-09-07 14:35:53 -05:00
Laurent Navet
3a7e3f4cb7 boards/waspmote-pro: adapt compilation flags
Remove flags which are now exported in atmega_common
2016-08-31 21:34:01 +02:00
Laurent Navet
2cd918a07a atmega_common: abstract Power Reduction Register
PR Register is PRR0 on atmega2560 and atmega1281
but PRR on atmega328p.
this abstracts as atmega Power Reduction Register as MEGA_PRR.
2016-08-20 12:21:32 +02:00
Bas Stottelaar
43f146663e boards: arduino-mega2560, waspmote-pro: garbage collect dead code in linker options 2016-07-13 16:45:13 +02:00
46bd2f45d9 sys: xtimer: replace XTIMER_MASK with XTIMER_WIDTH in board config 2016-07-06 18:16:15 +02:00
kYc0o
62a9773a9c boards/waspmote-pro: add support for Waspmote PRO v1.2 2016-07-05 13:05:12 +02:00