1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-12-13 08:33:49 +01:00

48876 Commits

Author SHA1 Message Date
crasbe
ba6c53e93b
Merge pull request #21903 from maribu/core/spdx
core: use SPDX copyright tags
2025-11-23 21:24:10 +00:00
Marian Buschsieweke
bd43254702
core: use SPDX copyright tags
Co-authored-by: crasbe <crasbe@gmail.com>
2025-11-23 21:07:35 +01:00
Marian Buschsieweke
b8c553c77d
Merge pull request #21902 from maribu/tests/sys/spdx
tests/sys: use SPDX copyright tags
2025-11-22 07:53:01 +00:00
Marian Buschsieweke
f8029e8891
tests/sys: use SPDX copyright tags
Co-authored-by: crasbe <crasbe@gmail.com>
2025-11-22 08:48:27 +01:00
Marian Buschsieweke
2c815f837d
Merge pull request #21895 from maribu/core/thread_flags_group/fix
core/thread_flags_group: use portable implementation
2025-11-21 16:33:38 +00:00
Marian Buschsieweke
f396456423
core/thread_flags_group: use portable implementation
The previous implementation relied on `thread_flag_set()` to defer the
context switch when called with IRQs disabled until `irq_restore()` is
called. This however can only be the case when `thread_yield_higher`
triggers an IRQ and performs the context switch within the ISR. This
allowed the previous implementation to continue calling
`thread_flag_set()` for the remaining group members.

This however is an implementation detail that is not part of the API
contract. Platforms that do not have a service request IRQ may have to
use other means for context switching that do not get deferred until
an `irq_restore()` is called. In that case, the first call to
`thread_flags_set()` even with IRQs disabled may directly trigger a
context switch to the unblocked thread, even if other group members
would also be unblocked and have a higher priority.

This changes the implementation to manually set the flags and update
the thread status without yielding and keep track whether any thread
has been awoken. Only once the states of all threads have been updated,
the adapted implementation will now call `thread_yield()` (unless no
thread was awoken).
2025-11-21 15:21:25 +01:00
Marian Buschsieweke
50a1d28b47
core/thread_flags: change internal API
All uses of thread_flags_wake() also had to set the flags anyway, so
we can just combine those operations into a new
thread_flags_set_internal() and update the users to use that instead.
2025-11-21 15:21:22 +01:00
benpicco
47ecbc14a2
Merge pull request #21904 from Stopkaa/drivers/mrf24j40
drivers/mrf24j40: replace && with || in TX power validation
2025-11-21 13:23:42 +00:00
Stepan Konoplev
27ceb0eb8c drivers/mrf24j40: replace && with || in TX power validation 2025-11-21 12:15:37 +01:00
Marian Buschsieweke
42283c4b9d
Merge pull request #21901 from maribu/docker/don-t-leave-1-dirs
build-system: do not create empty folders named `1`
2025-11-20 21:02:14 +00:00
Marian Buschsieweke
193aa54edf
build-system: do not create empty folders named 1
Running `BUILD_IN_DOCKER=1` in an application folder outside of RIOT
created empty `1` folders by adding

  -v '<path/to/external/app>/1:/data/riotbuild/0:delegated' -e 'BUILD_IN_DOCKER=/data/riotbuild/0'

to the docker command line.

This changes the invocation to add just `-e 'BUILD_IN_DOCKER=0'` instead.
2025-11-20 21:07:08 +01:00
Marian Buschsieweke
a23948c23c
Merge pull request #21897 from maribu/tests/f_p/spdx
tests/[f-p]*/spdx: add SPDX tag
2025-11-19 15:07:47 +00:00
Marian Buschsieweke
af266cefba
tests/[f-p]*/spdx: add SPDX tag
Co-authored-by: Ann🐸 <git@annsann.eu>
Co-authored-by: crasbe <crasbe@gmail.com>
2025-11-19 14:04:19 +01:00
benpicco
250758c67c
Merge pull request #21883 from maribu/core/lib/atomics
core/lib/atomic_c11: Add __atomic_test_and_set()
2025-11-19 12:31:35 +00:00
Marian Buschsieweke
0800547502
Merge pull request #21896 from maribu/tests/c_d/spdx
tests/{core,cpu,drivers}: use SPDX copyright tags
2025-11-19 10:16:03 +00:00
Marian Buschsieweke
b1b942f09b
tests/{core,cpu,drivers}: use SPDX copyright tags 2025-11-19 11:12:02 +01:00
crasbe
696ea4d5e4
Merge pull request #21893 from maribu/tests/bxxx/spdx
tests/b*: use SPDX copyright tags
2025-11-18 14:12:24 +00:00
Marian Buschsieweke
a8298ac54d
tests/b*: use SPDX copyright tags
Co-authored-by: crasbe <crasbe@gmail.com>
2025-11-18 12:39:05 +01:00
crasbe
9c578c845e
Merge pull request #21835 from crasbe/pr/esp32_common_module
boards: migrate ESP32 based boards to common board module system
2025-11-18 11:33:21 +00:00
crasbe
9d3cfc2aca boards: migrate ESP32 based boards to common board module system 2025-11-18 12:21:52 +01:00
Marian Buschsieweke
a32e108f2e
core/lib/atomic_c11: Fix compatibility with GCC
GCC requires symbols to first be declared before they can be renamed.
So we move the `#pragma redefine_extname` just to the bottom of the
compilation unit.

Co-authored-by: crasbe <crasbe@gmail.com>
Co-authored-by: Mikolai Gütschow <mikolai.guetschow@tu-dresden.de>
2025-11-18 10:21:23 +01:00
crasbe
bcd09d39f7
Merge pull request #21890 from benpicco/usbus/cdc/acm-fix_garbage
sys/usb/cdc_acm: fix garbage input when disconnected
2025-11-18 01:06:35 +00:00
benpicco
298f722795
Merge pull request #21889 from maribu/pkg/mpaland-printf/wrap-fputs
pkg/mpaland-printf: Add missing wrapper for fputs
2025-11-17 20:14:32 +00:00
Benjamin Valentin
494e171a2e sys/usb_cdc_acm_stdio: use isrpipe_write() 2025-11-17 21:12:58 +01:00
Benjamin Valentin
182c7ec6ee sys/usb/cdc_acm: fix garbage input when disconnected 2025-11-17 21:05:44 +01:00
crasbe
a0de498d8f
Merge pull request #21888 from maribu/tests/net+periph/spdx
tests/periph: use SPDX copyright tags
2025-11-17 19:51:17 +00:00
Marian Buschsieweke
95100124cf
tests/net: use SPDX copyright tags
Co-authored-by: crasbe <crasbe@gmail.com>
2025-11-17 20:40:44 +01:00
Marian Buschsieweke
b67daab1e8
pkg/mpaland-printf: Add missing wrapper for fputs
Another endpoint that was forgotten to overwrite. This fixes the
output of the `i2c_scan` shell command that is e.g. included in the
test app in `tests/periph/i2c`.
2025-11-17 20:31:53 +01:00
Marian Buschsieweke
097fded2f0
tests/periph: use SPDX copyright tags 2025-11-17 18:57:47 +01:00
crasbe
714857a34d
Merge pull request #21886 from maribu/tests/core/msg_queue_print
tests/core/msg_queue_print: fully initialize msg for sending
2025-11-17 10:51:54 +00:00
crasbe
7d5e943dbf
Merge pull request #21855 from Lukas-Luger/pr/legacy-tx_sync
sys/net/gnrc/netif: hold packets after tx_sync split
2025-11-17 08:27:03 +00:00
crasbe
0a2e1649bc
Merge pull request #21884 from maribu/tests/periph/selftest_shield
tests/periph/selftest_shield: Add NONSTRING attribute to test data
2025-11-17 08:22:04 +00:00
Lukas-Luger
bae016a157 sys/net/gnrc/netif: fix tx_sync by holding after split 2025-11-17 09:03:28 +01:00
Lukas-Luger
d62f07393c tests/net: add tx_sync test for legacy netdevs 2025-11-17 09:02:56 +01:00
crasbe
fdd3d09097
Merge pull request #21885 from maribu/tests/bench/runtime_coreapis
tests/bench/runtime_coreapis: fix test on 8 bit system
2025-11-16 22:33:02 +00:00
Marian Buschsieweke
2d475b3dcd
tests/core/msg_queue_print: fully initialize msg for sending
On 8-bit and 16-bit platforms `uint32_t` is wider than `void *`, as
pointers are (typically) only 16 bit in size. This causes output like:

    Message queue of thread 2
        size: 8 (avail: 8)
        * 0: sender: 2, type: 0x0000, content: 2701197312 (0)
        * 1: sender: 2, type: 0x0001, content: 2701197313 (0x1)

As seen here, the leading two bytes of `msg.content.value` contain
"random" bits, as those bytes are not explicitly initialized.

This fixes the issue by explicitly initializing the whole `msg_t` via
an initializer list.
2025-11-16 23:10:31 +01:00
Marian Buschsieweke
31ea0af9a5
tests/bench/runtime_coreapis: fix test on 8 bit system
Reduce size of list nodes to sort to 64 on 8 bit and 16 bit systems
to reduce the time the test takes. On 8 bit systems sorting 256 list
items a thousand times takes more than 2 minutes, which is way above
the 30 seconds timeout the test waits to receive the next expected
output.
2025-11-16 22:48:26 +01:00
Marian Buschsieweke
0998112524
core/lib/compiler_hints: Make NONSTRING CLANG compatible
Starting from clang 21 (see [release notes][1]) clang also supports
`-Wunterminated-string-initialization` and the corresponding
`__attribute__((nonstring))`. Hence, also provide `NONSTRING` as the
corresponding `__attribute__((nonstring))` for clang starting with
clang version 21.

[1]: https://releases.llvm.org/21.1.0/tools/clang/docs/ReleaseNotes.html
2025-11-16 21:06:21 +01:00
Marian Buschsieweke
d96a5a38b5
tests/periph/selftest_shield: Add NONSTRING attribute to test data
The test data is not intended to be a zero terminated C string. Just
a bunch of bytes that are easy to trace with a logic analyzer, in
case someone as to debug a test failure.
2025-11-16 21:05:15 +01:00
Marian Buschsieweke
4588b67fb8
core/lib/atomic_c11: Add __atomic_test_and_set()
This adds a previously missing library implementation for
`__atomic_test_and_set()`.
2025-11-16 20:52:18 +01:00
crasbe
dcf4aa5627
Merge pull request #21880 from maribu/pkg/cn-cbor/fix-failing-test
pkg/cn-cbor: fix unaligned access
2025-11-16 15:59:15 +00:00
crasbe
f8a0c986ae
Merge pull request #21862 from morigawa/pr/integrate-openthread-into-shell
sys/shell: add shell wrapper for openthread cli
2025-11-16 12:58:20 +00:00
morigawa
36a251b461 examples/openthread: Adept example to new shell usage
Add shell to example, update readme and add adafruit-feather-sense to
whitelisted boards, after testing.
2025-11-16 11:31:17 +01:00
morigawa
83b866f69a pkg/openthread: use RIOT shell as wrapper for ot cli
Automatically use RIOT shell when compiling OpenThread with CLI module.
Ordered Makefile.dep alpha numerically.
2025-11-16 11:31:17 +01:00
morigawa
5b3f57522a sys/shell: integrate OpenThread CLI into RIOT shell
Until now OpenThread CLI and RIOT shell could not be used at the same
time. Now it is possible to use all CLI command with the prefix "ot". To
get an overview use "ot help".
2025-11-16 11:31:17 +01:00
Marian Buschsieweke
b44aea38d6
pkg/cn-cbor: fix unaligned access
With GCC 15.2.0, the self test of cn-cbor fails. Using safe unaligned
access and standard endian conversions fixes the issue.
2025-11-16 00:56:50 +01:00
mguetschow
490b595ccd
Merge pull request #21869 from krzysztof-cabaj/pkg_lwip_ipv4_dependencies_v2
pkg/lwip: fix dependencies when LWIP IPv4 and LWIP_DHCP is used
2025-11-14 12:54:24 +00:00
krzysztof-cabaj
6be2534465 pkg/lwip: fix dependencies when LWIP IPv4 and LWIP_DHCP is used 2025-11-14 11:31:53 +01:00
Ann🐸
ff7a26671e
Merge pull request #21876 from crasbe/pr/periph_i2c_latex
drivers/periph/i2c: Replace LaTeX formula with static SVG file in documentation
2025-11-13 14:19:21 +00:00
crasbe
1cd37aaff5 drivers/periph/i2c: replace LaTeX eqn. with SVG in doc 2025-11-13 15:13:30 +01:00