gcc9 started realizing that _sram is basically an uint8_t[1] and thus
HARDFAULT_HANDLER_REQUIRED_STACK_SPACE cannot be added to it without
exceeding the one-sized array.
This commit casts _sram to (uintptr_t) where that happens.
gcc 9 started complaining about type mismatches:
1. all int sized return types are expected to be
"unsigned int" instead of e.g., "uint32_t"
2. all arguments are expected to be passed as (volatile)
void * pointers
This commit fixes 1. by doing ifdef'ed typedefs for I2 and I4, an fixes
2. by using void pointers, then casting within the template bodies.
Remove the check that directory are git tracked or not.
This should not be done by the script and was a mistake.
If need be to be checked it should be moved to RIOT 'info-applications'
and running tests should be done in a clean environment anyway.
Currently giving an absolute or outside of RIOT application breaks the
result directory evaluation which can lead to deleting the application.
Add an assertion to detect it.
The documentation states that the implementation is missing for
gcc < 4.7, but then unconditionally compiles it, overriding the
builtins.
(gcc 9 starts complaining about mismatch of declarations.)
The currently supported SAM0 MCUs (samd21, saml21, saml1x) share the
same RTC peripheral, yet each of them carries it's own copy of the RTT
driver.
Unify the drivers and move them to sam0_common.
- Indicated that the hardware reset signal is used to reset the device and that
OpenOCD will that connect under reset
- Added troubleshooting for flashing using hardware reset
- Removed previous troubleshooting for flashing, as this issue is no longer
present since OpenOCD connects under reset
This removes doing `filter-out periph_hwrng, $(FEATURES_PROVIDED)`
after processing `cpu/$(CPU)/Makefile.features`.
The current solution is a HACK as `CPU_MODEL` is currently not available
at that moment but will be in the near future.
It will allow always including `cpu/$(CPU)/Makefile.features` after
`boards/$(BOARD)/Makefile.features`.
It is a part of moving `CPU/CPU_MODEL` definitions to `Makefile.features`.
Previously, there was a very tight allowed margin (100us), then some
special cases for platforms for which the test would otherwise fail,
increasing the margin.
This turned out to be a maintanance burden, as each slightly special
board needed a PR adding the special case.
This commit sets a quite large margin (1000us, 0.1% of total delay),
which should be large enough to not trip over platform-induced timer
inaccuracies, but still verify that the module is using timers
correctly.
(This is not a timer accuracy test.)
Check that some variables are not exported in the build system.
This should track variables that managed to not be exported anymore so
that they do not reappear in a BSP.
It is not a whitelist but just a way to keep things cleaned in the
future.