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

46510 Commits

Author SHA1 Message Date
Lasse Rosenow
459b8dc6aa
sys/posix/pthread: Add pthread_attr_getstack and pthread_attr_setstack 2024-10-29 13:29:54 +00:00
Marian Buschsieweke
0ffad1d65f
Merge pull request #20877 from maribu/tools/docker
build system: simplify docker image pinning
2024-10-11 10:08:54 +00:00
Marian Buschsieweke
4c92d78480
Merge pull request #20889 from Enoch247/fix_DEVELHELP
make: export DEVELHELP
2024-10-11 07:51:42 +00:00
Marian Buschsieweke
0f4725e3a8
Merge pull request #20904 from maribu/boards/adafruit-grand-central-m4-express/spi-isp
boards/adafruit-grand-central-m4-express: provide arduino features
2024-10-10 11:05:45 +00:00
benpicco
3abfc81ba5
Merge pull request #20902 from maribu/work-around-newlib-nano-stdio-missing-64-bit-support
tree-wide: fix compilation with newlib and GCC 13.2.1
2024-10-10 09:05:01 +00:00
Marian Buschsieweke
7f68acbd0b
boards/adafruit-grand-central-m4-express: provide arduino features
The board is compatible with Arduino UNO and Arduino MEGA shields and
has an ISP connector, so this adds the corresponding features.

This adds the Arduino I/O-mapping for the ISP SPI and provides the
corresponding feature.

It appears that the SPI on D11/D12/D13 cannot be provided by a SERCOM,
this is under clarification at [1]. For now, no I/O mapping for that
SPI bus is provided.

[1]: https://forums.adafruit.com/viewtopic.php?t=214093
2024-10-10 10:23:24 +02:00
Dylan Laduranty
68789a9624
Merge pull request #20901 from maribu/pkg/bme680/use-archive
pkg/driver_bme680: use mirror of git repo
2024-10-10 07:57:31 +00:00
Dylan Laduranty
47ddeffe31
Merge pull request #20903 from maribu/cpu/sam0_common/periph_dma-API-mismatch
cpu/sam0_common/periph_dma: Fix API mismatch
2024-10-10 07:38:36 +00:00
Marian Buschsieweke
702ad02b33
cpu/sam0_common/periph_dma: Fix API mismatch
Match the signature of the implementation of the dma_prepare() with the
declaration to fix:

    /home/marian.buschsieweke@ml-pa.loc/Repos/software/RIOT/master/cpu/sam0_common/periph/dma.c:172:6: error: conflicting types for 'dma_prepare' due to enum/integer mismatch; have 'void(dma_t,  uint8_t,  const void *, void *, size_t,  uint8_t)' {aka 'void(unsigned int,  unsigned char,  const void *, void *, unsigned int,  unsigned char)'} [-Werror=enum-int-mismatch]
      172 | void dma_prepare(dma_t dma, uint8_t width, const void *src, void *dst,
          |      ^~~~~~~~~~~
    In file included from /home/marian.buschsieweke@ml-pa.loc/Repos/software/RIOT/master/cpu/samd5x/include/periph_cpu.h:26,
                     from /home/marian.buschsieweke@ml-pa.loc/Repos/software/RIOT/master/cpu/sam0_common/periph/dma.c:21:
    /home/marian.buschsieweke@ml-pa.loc/Repos/software/RIOT/master/cpu/sam0_common/include/periph_cpu_common.h:1186:6: note: previous declaration of 'dma_prepare' with type void(dma_t,  uint8_t,  const void *, void *, size_t,  dma_incr_t)' {aka 'void(unsigned int,  unsigned char,  const void *, void *, unsigned int,  dma_incr_t)'}
     1186 | void dma_prepare(dma_t dma, uint8_t width, const void *src, void *dst,
          |      ^~~~~~~~~~~
2024-10-09 23:00:06 +02:00
Marian Buschsieweke
8c9105c60c
tests/unittests: fix compilation with newlib and GCC 13.2.1
newlib (nano) is missing 64 bit support in stdio and inttypes.h. This
works around the issue.
2024-10-09 22:32:43 +02:00
Marian Buschsieweke
18036a8326
pkg/tinycbor: fix compilation with newlib and GCC 13.2.1
newlib (nano) is missing 64 bit support in stdio and inttypes.h. This
works around the issue.
2024-10-09 22:23:47 +02:00
Marian Buschsieweke
54f4cd7cd1
sys/matstat: fix compilation with newlib
newlib (nano) does not support 64 bit types (neither in stdio nor with
corresponding `PRI*64` macros). With GCC 13.2.1 (as shipped in Ubuntu
24.04.1 LTS), this triggers the following compilation error (even with
`ENABLE_DEBUG == 0`):

    sys/matstat/matstat.c:57:21: error: expected ')' before 'PRIu64'
       57 |     DEBUG("Var: (%" PRIu64 " / (%" PRId32 " - 1)) = %" PRIu64 "\n",
          |                     ^~~~~~

This fixes the issue by falling back to printing 32 bit values when
the `PRIu64` macro is not defined. A `!trunc` is appended when the
64 bit exceeds the range of [0:UINT32_MAX].
2024-10-09 22:23:40 +02:00
Marian Buschsieweke
a266d90425
pkg/driver_bme680: use mirror of git repo
The upstream repo has gone, so let's use a mirror for now to avoid build
failures.
2024-10-09 21:37:56 +02:00
Marian Buschsieweke
e960a19f24
build system: simplify docker image pinning
It turns out that the ID mechanics of docker are even more crazy than
realized before: On Linux (x86_64) they use a different SHA256 when
referring to a locally installed image than when referring to the
same image at dockerhub. On Mac OS (Apple Silicon), the use the repo
SHA256 also when referring to the local image.

Instead of increasing the complexity of the current solution even more
by covering both cases, we now use
`docker.io/riot/riotbuild@sha256:<SHA256_OF_DOCKERHUB_IMAGE>` to refer
to a specific docker image, which hopefully works across systems.

Instead of pulling the image explicitly, we now can rely on docker
to do so automatically if the pinned image is not found locally. As
a result, the knob to disable automatic pulling has been dropped.

Fixes https://github.com/RIOT-OS/RIOT/issues/20853
2024-10-09 21:05:57 +02:00
Marian Buschsieweke
85172eda49
Merge pull request #20899 from mguetschow/static-tests-codespell
CI: fix true and false positives by newer codespell version
2024-10-09 13:47:11 +00:00
Mikolai Gütschow
f0e6776d40
treewide: apply codespell corrections 2024-10-09 13:03:52 +02:00
Mikolai Gütschow
b5aba962a0
dist/tools/codespell: add false positives 2024-10-09 13:03:28 +02:00
mguetschow
5da0dbe004
Merge pull request #20897 from miri64/doxygen/cleanup/doxyfile
riot.doxyfile: Update and remove deprecated options
2024-10-09 08:07:48 +00:00
benpicco
cb403f9615
Merge pull request #20898 from maribu/cpu/samd5x/drop-non-utf8-chars
cpu/samd5x/periph_cph.h: drop non-UTF-8 chars
2024-10-08 13:58:50 +00:00
Marian Buschsieweke
2ea8601b69
cpu/samd5x/periph_cph.h: drop non-UTF-8 chars
There were some bogus chars in a comment. Let's drop them.
2024-10-08 14:16:24 +02:00
Martine Lenders
1a067e177e
riot.doxyfile: Update and remove deprecated options 2024-10-08 13:37:00 +02:00
Martine Lenders
1c9a485496
Merge pull request #20896 from mguetschow/doc-print-link
doc/doxygen: print link to generated documentation
2024-10-08 10:51:29 +00:00
Marian Buschsieweke
4e797a1c7d
Merge pull request #20895 from mguetschow/make-unrecognized
Makefile: add .DEFAULT target to further guide new users
2024-10-08 10:40:39 +00:00
mguetschow
a54ba26285
Merge pull request #20893 from benpicco/THREAD_CREATE_STACKTEST-cleanup
treewide: clean up remnants of THREAD_CREATE_STACKTEST
2024-10-08 09:55:52 +00:00
Mikolai Gütschow
306b8a872b
doc/doxygen: print link to generated documentation 2024-10-08 11:34:38 +02:00
Mikolai Gütschow
ec9cd2598f
Makefile: add .DEFAULT target to further guide new users 2024-10-08 11:10:20 +02:00
benpicco
0e20bfd2b9
Merge pull request #20845 from thingsat/pr/add_can_to_board_nucleo-l432kc
boards/nucleo-l432kc: enable CAN support
2024-10-07 16:08:21 +00:00
Didier DONSEZ
84ec09f3cf boards/nucleo-l432kc: add configuration CAN peripheral
Signed-off-by: Didier DONSEZ <didier.donsez@gmail.com>
2024-10-07 17:35:10 +02:00
Benjamin Valentin
97128eef48 treewide: clean up remnants of THREAD_CREATE_STACKTEST 2024-10-07 17:31:31 +02:00
benpicco
89d337073d
Merge pull request #20890 from maribu/core/mutex/thread_yield
core/mutex: use thread_yield_higher() in mutex_unlock()
2024-10-07 11:22:32 +00:00
mguetschow
e56b052dfe
Merge pull request #20892 from miri64/gh-actions/fix/bump-deprecated
gh-actions: bump deprecated packages
2024-10-07 11:15:54 +00:00
Martine Lenders
873e7e3e81
gh-actions: bump webfactory/ssh-agent to v0.9.0 2024-10-07 11:40:58 +02:00
Martine Lenders
3f35307a48
gh-actions: bump actions/setup-python to v5
See https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
2024-10-07 11:39:58 +02:00
benpicco
9a639e41da
Merge pull request #20891 from maribu/boards/adafruit-grand-central-m4-express
boards/adafruit-grand-central-m4-express: minor improvements
2024-10-06 16:08:34 +00:00
Marian Buschsieweke
31a2477d48
boards/adafruit-grand-central-m4-express: pimp doc
- use `@image` instead of inline images for better aesthetics,
  especially on mobile form factors (where the image before overflowed
  the screen width)
- add pinout diagram
- use correct units
2024-10-05 23:33:44 +02:00
Marian Buschsieweke
48976a85f6
boards/adafruit-grand-central-m4-express: add OpenOCD config
This allows debugging and flashing the board using the standard CMSIS
SWD header (the 10 pin 1.27 mm pitch one) available on the board.
2024-10-05 23:12:13 +02:00
Marian Buschsieweke
1d99f4f758
core/mutex: use thread_yield_higher() in mutex_unlock()
Using `sched_switch()` in `mutex_unlock()` can result in crashes when
`mutex_unlock()` is called from IRQ context. This however is a common
pattern in RIOT to wake up a thread from IRQ. The reason for the crash
is that `sched_switch()` assumes `thread_get_active()` to always return
a non-`NULL` value. But when thread-less idle is used, no thread may be
active after the last runnable thread exited. Using
`thread_yield_higher()` instead solves the issue, as
`thread_yield_higher()` is safe to call from IRQ context without an
active thread.

This fixes https://github.com/RIOT-OS/RIOT/issues/20812
2024-10-05 22:02:28 +02:00
chrysn
13188e13f2
Merge pull request #20887 from chrysn-pull-requests/fmt
static_tests: Add test for Rust code formatting rules
2024-10-04 08:24:07 +00:00
chrysn
d0299deb33 static_tests/rust: Address shellcheck lints
The pure POSIX way to do `for x in $(find ...)` right involves a
tempfile, thus limiting to bash.
2024-10-03 20:42:40 +02:00
Joshua DeWeese
dda83bc67e make: export DEVELHELP
This patch exports the make macro `DEVELHELP`. Without this patch, use
of the macro in the following files does not work when the macro is set
in a makefile (such as in Makefile.local or an application's makefile as
demonstrated in dist/Makefile). Inside these files `DEVELHELP` is not
defined under these conditions.

 - pkg/littlefs/Makefile
 - pkg/littlefs2/Makefile
 - sys/stdio_null/Makefile

Note that use of the macro does work in these files when the macro is
set from the command line, without the patch. For example:

``` sh
$make DEVELHELP=1 all
```
2024-10-03 14:23:33 -04:00
benpicco
248371e11a
Merge pull request #20881 from Teufelchen1/fix/rpble
bluetil: Ensure advertisement length does not exceed pkt len
2024-10-03 12:50:32 +00:00
benpicco
8a933a56ae
Merge pull request #20882 from Teufelchen1/fix/dhcpv6
net/dhcpv6: Improve option parsing in dhcpv6 advertise
2024-10-03 12:50:12 +00:00
Marian Buschsieweke
d41a39e29b
Merge pull request #20888 from chrysn-pull-requests/riotdocker-update
makefiles/docker: Update docker image
2024-10-03 09:02:55 +00:00
chrysn
69a89b80ca treewide/rust: cargo fmt 2024-10-02 22:17:08 +02:00
chrysn
44cd632af0 static_tests: Add test for Rust code formatting rules 2024-10-02 22:11:09 +02:00
chrysn
c5c248a267 makefiles/docker: Update docker image
This acknowledges the changes after [254], which moved the Rust
installation into the static tools.

[254]: https://github.com/RIOT-OS/riotdocker/pull/254
2024-10-02 22:09:23 +02:00
benpicco
153562f5da
Merge pull request #20885 from maribu/drivers/shield_llcc68
drivers: Add shield_llcc68 module
2024-10-02 15:39:56 +00:00
benpicco
260e58fa52
Merge pull request #20880 from Teufelchen1/fix/lora
gnrc_lorawan: Ensure minimal packet length
2024-10-02 13:08:36 +00:00
chrysn
505433b8f9
Merge pull request #20838 from chrysn-pull-requests/rust-coap-expose-more
examples/gcoap-rust: Expose more functionality
2024-10-02 11:39:42 +00:00
chrysn
e94337bd60 examples/rust-gcoap: Regenerate Makefile.ci 2024-10-02 13:25:32 +02:00