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

45002 Commits

Author SHA1 Message Date
Marian Buschsieweke
2ee949e676
tests/periph/gpio_ll: fix output on LOW_ROM_BOARDS
Printing the newline after the state was printed is not optional.

This also moves the call to `gpio_ll_print_conf()` and `puts("")` to
a static function to safe enough ROM so that this still can be flashed
on `nucleo-l011k4`.
2024-01-21 08:38:47 +01:00
Marian Buschsieweke
2a00ec13e5
drivers/periph/gpio_ll: shrink gpio_conf_t
This commit optimizes the `gpio_conf_t` type in the following
regards:

- The "base" `gpio_conf_t` is stripped from members that only some
  platforms support, e.g. drive strength, slew rate, and disabling of
  the Schmitt Trigger are no longer universally available but
  platform-specific extensions
- The `gpio_conf_t` is now crammed into a bit-field that is 8 bit or
  16 bit wide. This allows for storing lots of them e.g. in
  `driver_foo_params_t` or `uart_conf_t` etc.
- A `union` of the `struct` with bit-field members and a `bits` is used
  to allow accessing all bits in a simple C statement and to ensure
  alignment for efficient handling of the type

Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
2024-01-21 08:38:40 +01:00
Marian Buschsieweke
504c169346
Merge pull request #20270 from maribu/boards/gd32vf103c-start
boards/gd32vf103c-start: new board
2024-01-20 16:11:31 +00:00
Marian Buschsieweke
66abbd22d6
examples,tests: add gd32vr103c-start to Makefile.ci 2024-01-20 17:00:04 +01:00
Marian Buschsieweke
c6c5d9a1a7
boards/common/gd32v: reorder members in initialization
C has this feature that the order of struct members in the
initialization doesn't need to match the order in the declaration.
C++ has not yet caught up:

    boards/common/gd32v/include/cfg_usbdev_default.h:50:1: error: designator order for field 'dwc2_usb_otg_fshs_config_t::type' does not match declaration order in 'const dwc2_usb_otg_fshs_config_t'

So, just reorder the fields for now by hand.
2024-01-20 16:42:49 +01:00
Marian Buschsieweke
2cb575affe
Merge pull request #20278 from chrysn-pull-requests/rust-gcoap-dep-fix
examples/rust-gcoap: Fix transitive unbounded dependency
2024-01-20 14:17:22 +00:00
chrysn
4b13a37d60 examples/rust-gcoap: Fix transitive unbounded dependency
The older version of the external module used to have an `embedded-hal =
"*"` dependency that finally broke; the updated version is fixed.
2024-01-20 14:22:33 +01:00
benpicco
8dbe2ef7e4
Merge pull request #20273 from benpicco/coap_find_uri_query
nanocoap: implement coap_find_uri_query()
2024-01-20 11:27:15 +00:00
Marian Buschsieweke
7f27e6cc7f
boards/gd32vf103c-start: new board
This adds support for the GD32VF103C-START, the official "starter board"
for the GD32VF103C MCU by the MCU vendor.
2024-01-19 23:17:35 +01:00
Marian Buschsieweke
9fbb23b167
boards/common/gd32v: make common OpenOCD config opt-in
Let boards explicitly use the common OpenOCD config if it works for
them, rather than having boards with specific needs opt out.
2024-01-19 23:17:35 +01:00
Marian Buschsieweke
8b1c43afb0
cpu/gd32v: Allow configuration of SWJ_CFG
Expose the compile time configuration knob `CONFIG_AFIO_PCF0_SWJ_CFG`
to allow freeing some/all JTAG pins and use them as GPIOs.

As default, PB4 is remapped from NJTRST to be usable as regular GPIO.
This still allows using the JTAG interface for debugging/flashing,
but makes an GPIO exposed by some boards available.
2024-01-19 23:17:35 +01:00
benpicco
d9da212135
Merge pull request #20277 from benpicco/tests/RIOT_TERMINAL
tests: don't explicitly set RIOT_TERMINAL=native
2024-01-19 20:34:34 +00:00
Benjamin Valentin
f9d5328242 tests: don't explicitly set RIOT_TERMINAL=native 2024-01-19 18:11:09 +01:00
benpicco
912294912a
Merge pull request #20264 from benpicco/boards/native-term_fix
boards/native: only use pyterm wrapper with term target
2024-01-19 14:31:39 +00:00
Benjamin Valentin
e5618f705b boards/native: set and test for pyterm explicitly 2024-01-19 14:42:03 +01:00
Benjamin Valentin
d0093cf9cc Revert "riotctrl_ctrl: one more indirection to get native"
This reverts commit 5e0c9b4bff.
2024-01-19 12:59:14 +01:00
Benjamin Valentin
4c7fc012c5 tests/unittests: nanocoap: add test for coap_find_uri_query() 2024-01-19 10:53:03 +01:00
Benjamin Valentin
1c24462cd9 nanocoap: implement coap_find_uri_query() 2024-01-19 10:53:03 +01:00
Marian Buschsieweke
fccfd391fe
Merge pull request #20274 from benpicco/sys/shell/i2c_scan-fix
sys/shell: fix reserved addresses in i2c_scan
2024-01-18 21:45:22 +00:00
benpicco
c94058aa5f
Merge pull request #20263 from maribu/boards/e180-zg120b-tb/pin-mapping
boards/e180-zg120b-tb: Document correct pin mapping
2024-01-18 14:51:03 +00:00
Benjamin Valentin
0b925c2494 sys/shell: fix reserved addresses in i2c_scan
There are only 8 reserved addresses on the low end of the address space.
2024-01-18 15:08:14 +01:00
Marian Buschsieweke
c4fbcfad21
boards/e180-zg120b-tb: Document correct pin mapping
Revision 10199-V1.0 of the board has an incorrect pin labeling on the
silkscreen, presumably because the board was initially developed
for a different E180 module and the silkscreen was not updated when
populated with a different E180 module.

It is very likely that if newer revisions of the test board get
produced, they will use the same very systematical routing as revision
1.0 and only the silkscreen labeling will be fixed. Hence, documenting
the correct pin mapping will be useful even for newer revisions.
2024-01-18 13:52:36 +01:00
benpicco
d5f1fda70d
Merge pull request #20230 from benpicco/CONFIG_UART_DMA_THRESHOLD_BYTES
cpu/stm32: uart: don't do DMA for small transfers
2024-01-18 12:26:30 +00:00
benpicco
dcde978857
Merge pull request #20271 from fzi-haxel/native64-part2
pkg: 64-bit support preparations
2024-01-18 12:03:14 +00:00
5e02a0de2d
Merge pull request #20269 from kaspar030/split_native_test_output
ci: make native tests show up in "tests"
2024-01-18 11:45:57 +00:00
Marian Buschsieweke
a1d2089e04
Merge pull request #20253 from maribu/tests/periph/uart_locate_pins
tests/periph/uart_locate_pins: new test/utility app
2024-01-18 11:20:02 +00:00
Marian Buschsieweke
b17b2b0444
core/lib/init: skip boot message if stdio_null is used
With `stdio_null` no one is reading the boot message anyway, so let's
safe some ROM.
2024-01-18 10:42:14 +01:00
Marian Buschsieweke
f9aab53e16
tests/periph/uart_locate_pins: new test/utility app
This application uses `soft_uart` to bit-bang the name of a number of
configured GPIO pins via said pins at 9600 Bd. This way attaching an
USB UART bridge to one pin at a time easily reveals which MCU GPIO
pin a given pin on a board corresponds to. This is useful when no
schematic and no silkscreen labeling is available, or when the
information is misleading or outright incorrect (looking at the
E180-ZG120B-TB).
2024-01-18 10:42:13 +01:00
Frederik Haxel
db575ac82f pkg/tinydtls: fix debug message
Cast length to `size_t` in macro, before printing.
2024-01-18 00:40:18 +01:00
Frederik Haxel
3291f94e07 pkg: 64 bit compatibility
* Added arch_64bit feature and added it to all packages that require 32 bit.
* hacl, wolfssl: Fixed different types between function declaration and implementation.
* lwip: Add required flag for 64 bit and bug fix in `lwip_sock`.
* micro-ecc: Workaround for GCC warning when using `__int128`.
2024-01-18 00:40:08 +01:00
Marian Buschsieweke
3b5ed6d390
cpu/gd32v: Fix periph_pwm
The API doc clearly states that arbitrary high PWM frequencies can
be requested and the driver should reduce the frequency while keeping
the resolution, when required. So change the code to just do that
rather than blowing assertions.
2024-01-17 21:58:56 +01:00
Marian Buschsieweke
93aa9e1e0d
makefiles/tools/serial.inc.mk: Improve MOST_RECENT_PORT=1 handling
When `stdio_cdc_acm` is used, prefer selecting the USB devices with
vendor `RIOT-os.org` and model `$(BOARD)` and only fall back
to `$(TTY_BOARD_FILTER)` if no such TTY was found.

This makes it possible to add a TTY board filter matching only an
integrated USB to UART bridge, but still do the right thing when
the user explicitly uses `stdio_cdc_acm` instead of the default
`stdio_uart`.
2024-01-17 21:58:56 +01:00
Marian Buschsieweke
0cffb7f365
Merge pull request #20257 from fzi-haxel/native64-part1
core, sys, drivers: 64-bit support preparations
2024-01-17 15:40:34 +00:00
Frederik Haxel
3feb1a369b drivers: 64 bit compatibility
Fixed compilation errors for pointer casting.
2024-01-17 16:05:12 +01:00
Frederik Haxel
394cd0e3a8 sys: 64 bit compatibility
* priority_queue_t: Replaced `-1U` literal with PRIORITY_QUEUE_DATA_SIGNALING define
* architecture.h: Added 64-bit
* bloom.h: Fixed typedef for the hashfp_t function pointer
* vfs.h: Increased default vfs buffer sizes for 64 bit
* bytes.h: Check if socklen_t is already defined
* ztimer: Use PRIxPTR format specifier
2024-01-17 16:05:12 +01:00
0837536566 ci: make native tests show up in "tests" 2024-01-17 14:21:15 +01:00
de7d72c143
Merge pull request #20268 from kaspar030/fix_murdock_tests_file
ci: fix murdock tests after dwq change
2024-01-17 10:33:10 +00:00
c84400ee6c ci: adapt .murdock test_job to changed dwq 2024-01-17 10:08:33 +01:00
9ec623a33f ci: ./murdock run_tests: fail fast if flashing fails 2024-01-17 10:05:44 +01:00
Marian Buschsieweke
f22fc0080b
boards/common/gd32v: Allow overwriting OPENOCD_TRANSPORT 2024-01-17 09:16:26 +01:00
Marian Buschsieweke
d674b3a80c
makefiles/tools/openocd.inc.mk: Improve transport handling
Allow setting `OPENOCD_TRANSPORT` to `default` for when a transport to
not explicitly set the transport. This is useful when the target or
interface script already specify the transport.
2024-01-17 09:14:38 +01:00
mguetschow
084dedcca7
Merge pull request #20116 from bergzand/pr/sha256/no_static
hashes/sha2{24,56}: Remove static variables from sha256
2024-01-16 16:01:56 +00:00
benpicco
c1ae2ecb9f
Merge pull request #20259 from fabian18/pr/gnrc/ipv6/nib_rejoin_ip6_mcast
gnrc/ipv6/nib: rejoin ipv6_addr_all_nodes_link_local on interface up
2024-01-16 15:11:53 +00:00
434e5647d0
hashes/sha224: Remove static variables from sha224 2024-01-16 16:00:44 +01:00
bac3f48dc9
hashes/sha256: Remove static variables from sha256
This removes the static (thread-unsafe) variables from sha256 and
hmac_sha256 to remove a potential footgun. The static variable is only
used when the caller does not supply a pointer to store the digest and
it is returned via the (undocumented) return value.

This commit removes this option and makes the digest argument mandatory.
2024-01-16 16:00:39 +01:00
Benjamin Valentin
7658e01223 Revert "makefiles/tests/tests.inc.mk: use native term for tests"
This reverts commit b166327354.
2024-01-16 15:49:03 +01:00
Benjamin Valentin
3c31000a61 boards/native: only use pyterm wrapper with term target 2024-01-16 15:15:06 +01:00
Fabian Hüßler
ab3f77e673 gnrc/ipv6/nib: rejoin ipv6_addr_all_nodes_link_local on interface up 2024-01-16 12:34:37 +01:00
fbae38b416
Merge pull request #20260 from maribu/dist/tools/zsh-completion
dist/tools/zsh-completion: fix typo
2024-01-16 07:43:53 +00:00
Marian Buschsieweke
c823412f31
dist/tools/zsh-completion: fix typo
This fixes a typo in a description.
2024-01-16 08:01:11 +01:00