By default the periph_timer tests wants to init all timers with 1MHz,
which is not suitable for all timers, e.g. the atmega timers cannot
run at that speed to make the test work they need to be set to 250kHz.
The inclusion of `net/gnrc.h` in `net/gnrc/mac/types.h` header makes it
impossible to include the `net/gnrc/netif.h` header within
`net/gnrc/netif/hdr.h`, due to `net/gnrc/mac/types.h` being included
with `net/gnrc/netif/mac.h` (which is included in `net/gnrc/netif.h`)
Stack size is changed from 4 times the default + printf to 5 times the
default stack size. Only on the lpc2387 this reduces the resulting stack
space. the test is not rerun for the lpc2387 and is untested.
The dependency from eepreg to FEATURES_REQUIRED is already defined in
`sys/Makefile.dep` so should not need to be duplicated in the
application Makefile.
When the slacker threads and the worker thread have the same priority
the drift and jitter depend on the workload.
Timer set before the worker thread will be fired before the worker and so
the result is not the timings the system might reach when proper priority
is set. Increasing the priority of the worker thread ensures that the
measureed timings are the achievable timings.
When sleeping in the main function with xtimer_sleep not every percentage
will be printed as the sleep duration and the processing time added do
not result in full percentage values.
Using xtimer_periodic_wakeup ensures that every integer percentage is printed.
The test added for crypto_secure_wipe wipes a buffer with a secret in
it. Only the last byte is kept as it was. The last byte is used to check
that the function doesn't write outside the supplied buffer.
The current test implementation wrongly assumes that the diff between
two fired events (e1, e2) must always increase. That is not true, as
event e1 may reside on the upper part of [I/2, I) and e2 on the lower
part of [I, 2*I).
This commit fixes the test to look at the actual time that was randonmly
chosen from both intervals (t1, t2). Given that the intervals are
doubled, t1 must always be smaller than t2.
The unification of a bigger stack for the atmega platforms
makes some boards to not have enough memory to provide
the big stack plus the application code.
It is possible though, to override the stack size to a
smaller amount if running the test is necessary.