1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-12-26 23:11:19 +01:00

47597 Commits

Author SHA1 Message Date
AnnsAnn
d511d60dae doc/guides: Getting Started
doc/guides: remove original windows guide
2025-04-29 18:39:57 +02:00
AnnsAnn
2d044fdbbb doc/starlight: Introduce re-usable components 2025-04-24 15:01:35 +02:00
AnnsAnn
e82ada6358 doc/guide: Introduce a Guide Site
doc/guides: How to Doc

fix: add starlight to base makefile
2025-04-24 12:35:53 +02:00
Marian Buschsieweke
ec94a3cd72
Merge pull request #21430 from crasbe/pr/whitespace_pragma
dist/tools: add a leading whitespace check for `#pragma once` in the `headerguards` static test
2025-04-24 07:28:31 +00:00
crasbe
ab1356e58c dist/tools: add a leading whitespace check for #pragma once
When adding the #pragma once after a comment block, many editors
will remain at the previous indentation level, adding a leading
whitespace to the #pragma once. This is invalid, but causes the
headerguards check to fail. Since it is a common issue, it
warrants a separate check with a proposed solution, just like
for other headerguard issues that are checked.
2025-04-23 22:56:13 +02:00
Marian Buschsieweke
d9938cc634
Merge pull request #21402 from maribu/tests/unittests/clist-sort
tests/unittests/tests-core-clist: improve unit test
2025-04-23 19:53:11 +00:00
Marian Buschsieweke
33b74eb052
Merge pull request #21417 from krzysztof-cabaj/stm32-move-doc-txt-to-md
boards/stm32 Discovery: rename doc.txt -> doc.md for STM32 Discovery boards
2025-04-23 19:29:24 +00:00
Marian Buschsieweke
60e31027b9
tests/unittests/core: reformat code
This should fix the column length warning of the static tests.
2025-04-23 20:39:42 +02:00
Marian Buschsieweke
0602bea5ae
tests/unittests/texts-core-clist: improve unit test
- Iterate of different lengths of unsorted data to also cover corner case
  one-item list
- Actually check that the list is sorted afterwards (and not just that
  the maximum got sorted in last)
- Actually check that the list was stable-sorted (as the API doc
  promises a stable sort)
- Increase the length of the input data for better test coverage
- Check that no elements get lost while sorting

Co-authored-by: crasbe <crasbe@gmail.com>
2025-04-23 20:39:29 +02:00
krzysztof-cabaj
d7853eec2e boards/stm32Discovery: rename doc.txt -> doc.md 2025-04-23 19:36:41 +02:00
Marian Buschsieweke
d9e326b2cd
Merge pull request #21426 from benpicco/shell/cmds/vfs-permission
shell/vfs: set proper file permissions
2025-04-23 17:05:46 +00:00
benpicco
6db96c9598
Merge pull request #21424 from crasbe/pr/fix_suit
examples/suit_update: fix compilation for `native`
2025-04-23 16:02:40 +00:00
Benjamin Valentin
b66155e631 shell/vfs: set proper file permissions 2025-04-23 16:28:53 +02:00
Marian Buschsieweke
3bfdaeba87
Merge pull request #21422 from benpicco/suit_worker_trigger
sys/suit: don't block in suit_worker_trigger()
2025-04-23 13:46:29 +00:00
Benjamin Valentin
aefa8ab20c sys/suit: don't block in suit_worker_trigger() 2025-04-23 14:18:47 +02:00
Marian Buschsieweke
f045ccc34a
Merge pull request #21425 from maribu/sys/embunit/iwyu
sys/embUnit: add IWYU pragmas
2025-04-23 11:54:21 +00:00
Marian Buschsieweke
5c0f1e645b
sys/embUnit: add IWYU pragmas
This will fix false positives for unused includes in the unit tests
with clangd.

Co-authored-by: crasbe <crasbe@gmail.com>
2025-04-23 13:50:33 +02:00
crasbe
06e79a9188 examples/suit_update: fix compilation for native 2025-04-23 11:57:18 +02:00
benpicco
c8454c6ecc
Merge pull request #21423 from maribu/pkg/umore
pkg/umore: upgrade pkg
2025-04-23 07:36:43 +00:00
Marian Buschsieweke
4347120a71
pkg/umore: upgrade pkg
This pulls in a minor doc fix from upstream.
2025-04-22 20:35:44 +02:00
Marian Buschsieweke
7387c3a7e4
Merge pull request #21411 from maribu/core/fanalyzer
build system: enable support for static analysis
2025-04-22 16:21:38 +00:00
Marian Buschsieweke
f6a18be866
Merge pull request #21420 from maribu/pkg/lwip/debug
pkg/lwip: Add DEBUG output to lwip_sock_tcp()
2025-04-22 09:08:20 +00:00
Marian Buschsieweke
0af3fa30d1
build system: Enable static analysis in the CI
For a select set of boards, enable static analysis. The cost of static
analysis in terms of CPU time is quite significant, so we try to get
the most out of as little extra CPU time as possible by having it
enabled only a small set of popular boards.
2025-04-18 09:36:32 +02:00
Marian Buschsieweke
eb6127e4e5
dist/tools/zsh-completion: add awareness for STATIC_ANALYSIS
This adds `STATIC_ANALYSIS` awareness to the ZSH completion, so that
enabling static analysis is made easier for zsh users who use the
completion snippet.
2025-04-18 09:36:32 +02:00
Marian Buschsieweke
e8edd952a4
dist/tools/compile_commands: add awareness for -fanalyzer
Now that static analysis is supported (for some modules), we need to
add awareness for that flag to compile_commands.py: As the flag is
not supported by LLVM, we strip it off in clangd mode  (e.g. for
`make compile-commands`).
2025-04-18 09:36:31 +02:00
Marian Buschsieweke
0069a6bf9a
build system: enable support for static analysis
Modules can now add the following snipped to their `Makefile`:

    MODULE_SUPPORTS_STATIC_ANALYSIS := 1

When the application is then build with `make STATIC_ANALYSIS=1`, all
modules that opted in to static analysis get build with static analysis.
2025-04-18 09:36:31 +02:00
Marian Buschsieweke
16c24a43e9
Merge pull request #21414 from maribu/core/thread/thread_msg_has_queue
core/thread: fix thread_has_msg_queue()
2025-04-17 20:41:30 +00:00
Marian Buschsieweke
87ff0d550d
core/thread_get_unchecked(): fix doc
This fixes the API doc for thread_get_unchecked()
2025-04-17 18:49:49 +02:00
Marian Buschsieweke
2a65b9cfa5
core/thread: fix thread_has_msg_queue()
This fixes compilation with `-fanalyzer`. We use `assume()` to signal
GCC that `thread` must not be null in `NDEBUG` mode, and `assert()` it
in with enabled assertions.

This also drops the `volatile` qualifier from the function argument and
changes the return value to `bool`.
2025-04-17 18:47:39 +02:00
Marian Buschsieweke
61951b31a1
tests/net/gnrc_netif: do not access internal scheduler state
This replaces code that directly accessed internal scheduler state with
the correct API calls.
2025-04-17 18:47:39 +02:00
Marian Buschsieweke
488ded8e98
pkg/lwip: Add DEBUG output to lwip_sock_tcp() 2025-04-17 17:46:33 +02:00
Marian Buschsieweke
69e6943dd9
Merge pull request #21410 from crasbe/pr/distclean_dist
buildsystem: clean `dist/tools` with `(dist)clean` as well, parallel cleaning!
2025-04-17 15:36:19 +00:00
crasbe
cbb4336ea5
Merge pull request #21415 from maribu/core/msg_queue_capacity
core/msg: handle error in msg_queue_capacity()
2025-04-17 13:14:11 +00:00
crasbe
d3cc430110 buildsystem: enable parallel cleaning 2025-04-17 13:43:30 +02:00
crasbe
32ba4b4991 dist/tools/*: add RIOTBASE and distclean to Makefiles 2025-04-17 13:43:30 +02:00
crasbe
3a3e8f74fe buildsystem: clean dist/tools with (dist)clean as well 2025-04-17 13:43:30 +02:00
Marian Buschsieweke
6290516399
Merge pull request #21360 from maribu/cpu/samd5x/can/expose-config
cpu/samd5x/periph_can: Expose more CAN controller configs
2025-04-17 08:51:47 +00:00
Marian Buschsieweke
d36465d532
core/msg: handle error in msg_queue_capacity()
Rather than using an `assert()` on `thread_get()`, check for the thread
to exist and return a capacity of `0` if it does not.

This fixes compilation with `-fanalyzer` with `NDEBUG` defined, is more
consistent with other core APIs, and makes the API usable for threads
with a dynamic life cycle.

Co-authored-by: crasbe <crasbe@gmail.com>
2025-04-17 07:55:13 +02:00
Marian Buschsieweke
7ecf028bb2
Merge pull request #21416 from Teufelchen1/fix/saul_cmd
shell/saul: Rename internal functions
2025-04-16 19:20:05 +00:00
Marian Buschsieweke
c362a09428
Merge pull request #20582 from maribu/ztimer_periph_timer_query_freqs
sys/ztimer: make use of periph_timer_query_freqs
2025-04-16 15:28:53 +00:00
Teufelchen1
38b0287164 shell/saul: Rename internal functions 2025-04-16 16:49:19 +02:00
Teufelchen
852895f1ff
Merge pull request #21269 from AnnsAnns/picotool
Tools: Switch from elf2uf2 to modern picotool
2025-04-16 13:53:42 +00:00
Marian Buschsieweke
c05d546bca
examples,tests: Update Makefile.ci
This updates the `Makefile.ci` entries for all MSP430 boards plus a few
low end Cortex-M boards.
2025-04-16 15:25:38 +02:00
AnnsAnn
0ea40d2757 dist/tools, boards/rpi-pico*: replace elf2uf2 with picotool
Replace elf2uf2 usage with picotool, fix compilation when arm g++ is installed, adjust documentation to new workflow, picotool udev warning (thanks to crasbe)
2025-04-16 12:19:17 +02:00
Marian Buschsieweke
55f9d1c930
Merge pull request #21405 from JerelJr/fix-core-headers
core: replace header guards with #pragma once
2025-04-16 05:30:21 +00:00
JerelJr
04dafd5618 core: replace header guards with #pragma once
core/lib/include/ringbuffer.h: removed trailing newline

core/lib/include/irq.h: restored header guard for irq.h to resolve build errors

core/lib/include/irq.h: added trailing newline to irq.h
2025-04-15 14:55:38 -04:00
Marian Buschsieweke
a605d05eca
Merge pull request #21400 from maribu/core/msg-avail
core/msg: fix `msg_avail_thread()` and `msg_avail()`
2025-04-15 13:20:26 +00:00
Marian Buschsieweke
53fa78a857
boards/{olimex-msp430-h1611,telosb}: add ztimer config
Adding a ztimer configuration that forces the use of frequency conversion
will greatly improve timing accuracy, as the frequency detected at
runtime will just be too much off from the nominal 1 MHz to run without
frequency conversion.
2025-04-15 15:10:07 +02:00
Marian Buschsieweke
25b8d65f68
sys/ztimer: make use of periph_timer_query_freqs
This makes use of the `periph_timer_query_freqs` feature:

1. It does choose the closest frequency supported before calling
   timer_init() in the ztimer_periph_timer backend.
2. It does make use of the actually chosen frequency when using
   `ztimer_convert_frac`.
3. It does `assert()` the frequency is within 5% of the specified when
   no frequency conversion is performed or `ztimer_convert_shift_up`
   is used.
2025-04-15 15:10:07 +02:00
Marian Buschsieweke
caa5561667
core/msg: fix msg_avail_thread() and msg_avail()
This now ensures race-free access to the CIB tracking the number
of messages queued in the ringbuffer for a given thread.

In addition, `msg_avail_thread()` now checks if the provided pid refers
to a thread that is currently existing.

Co-authored-by: Mikolai Gütschow <mikolai.guetschow@tu-dresden.de>
2025-04-15 15:07:11 +02:00