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

42648 Commits

Author SHA1 Message Date
49da7a446a CI: .murdock: add some docs to CI_BASE_BRANCH and is_bors_build() 2023-02-04 15:38:23 +01:00
76d8a7e732 CI: .murdock: get CI_BASE_COMMIT from previous merge for bors builds 2023-02-03 22:32:50 +01:00
bors[bot]
0fb6a09598
Merge #18903
18903: pkg/tinyusb: add tinyUSB netdev driver r=dylad a=gschorcht

### Contribution description

This PR adds the tinyUSB netdev driver.

The tinyUSB netdev driver is part of the tinyUSB package and is enabled by module `tinyusb_netdev`. It is available for boards that provide the `tinyusb_device` feature.

**Please note** Since the tinyUSB package is distinct from (and incompatible with) the USB stack provided around USBUS in RIOT (see USB), the tinyUSB netdev driver cannot be used together with with any USBUS device class.

The tinyUSB netdev driver uses Ethernet over USB and supports the following protocols:
- CDC ECM (Ethernet Control Model)
- CDC NCM (Network Control Model)
- RNDIS (Microsoft Remote NDIS)

While Linux and macOS support all these protocols, Microsoft Windows only supports the RNDIS protocol and since Windows version 11 also the CDC NCM protocol. macOS supports the RNDIS protocol since version 10.15 (Catalina).

Which protocol is used is selected by the corresponding pseudomodules `tinyusb_class_net_cdc_ecm`, `tinyusb_class_net_cdc_ncm` and `tinyusb_class_net_rndis`.

The CDC ECM protocol (`tinyusb_class_net_cdc_ecm`) and the RNDIS protocol (`tinyusb_class_net_rndis`) can be used simultaneously to support all operating systems, for example :
```
USEMODULE='tinyusb_netdev tinyusb_class_net_rndis tinyusb_class_net_cdc_ecm' \
BOARD=... make -C ... flash
 ```
In this case, the CDC ECM protocol is the default protocol and the RNDIS protocol the alternative protocol defined as second device configuration. The CDC NCM protocol cannot be used together with the CDC ECM or the RNDIS protocol.

This PR includes PR #18983 for now to be compilable. 

Comparison with USBUS CDC ECM (`nucleo-f767zi` board):
```
   text	   data	    bss	    dec	    hex	filename
  65916	    596	  18728	  85240	  14cf8	tests_pkg_tinyusb_netdev.elf
```
```
   text	   data	    bss	    dec	    hex	filename
  63120	    544	  15444	  79108	  13504	tests_usbus_cdc_ecm.elf

```

### Testing procedure

Use a board that is supported by tinyUSB. Compile and flash the test application for each protocol:

1. RNDIS
    ```
    BOARD=... make -j8 -C tests/pkg_tinyusb_netdev flash
    ```
2. CDC ECM
    ```
    CLASS=tinyusb_class_net_cdc_ecm BOARD=... make -j8 -C tests/pkg_tinyusb_netdev flash
    ```
3. CDC NCM
    ```
    CLASS=tinyusb_class_net_cdc_ncm BOARD=... make -j8 -C tests/pkg_tinyusb_netdev flash
    ```
For each test, a network interface should be added on the host. Use command `ifconfig` on USB device and on the host and check that both have a link local address. In syslog there should be an output like the following:
<details>

```
Nov 13 18:14:46 gunny8 kernel: [4611465.480025] usb 1-2.2: new full-speed USB device number 28 using xhci_hcd
Nov 13 18:14:47 gunny8 kernel: [4611465.581641] usb 1-2.2: New USB device found, idVendor=1209, idProduct=7d01, bcdDevice= 1.00
Nov 13 18:14:47 gunny8 kernel: [4611465.581646] usb 1-2.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Nov 13 18:14:47 gunny8 kernel: [4611465.581650] usb 1-2.2: Product: nucleo-f767zi
Nov 13 18:14:47 gunny8 kernel: [4611465.581653] usb 1-2.2: Manufacturer: RIOT-os.org
Nov 13 18:14:47 gunny8 kernel: [4611465.581654] usb 1-2.2: SerialNumber: 6591620BCB270283
Nov 13 18:14:47 gunny8 vmnetBridge: RTM_NEWLINK: name:usb0 index:508 flags:0x00001002
Nov 13 18:14:47 gunny8 vmnet-natd: RTM_NEWLINK: name:usb0 index:508 flags:0x00001002
Nov 13 18:14:47 gunny8 NetworkManager[24229]: <info>  [1668359687.1066] manager: (usb0): new Ethernet device (/org/freedesktop/NetworkManager/Devices/528)
Nov 13 18:14:47 gunny8 kernel: [4611465.594604] rndis_host 1-2.2:1.0 usb0: register 'rndis_host' at usb-0000:00:14.0-2.2, RNDIS device, fa:db:7c:1b:58:80
Nov 13 18:14:47 gunny8 mtp-probe: checking bus 1, device 28: "/sys/devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2.2"
Nov 13 18:14:47 gunny8 mtp-probe: bus: 1, device: 28 was not an MTP device
Nov 13 18:14:47 gunny8 systemd-udevd[17796]: link_config: autonegotiation is unset or enabled, the speed and duplex are not writable.
Nov 13 18:14:47 gunny8 vmnet-natd: RTM_NEWLINK: name:usb0 index:508 flags:0x00001002
Nov 13 18:14:47 gunny8 kernel: [4611465.643852] rndis_host 1-2.2:1.0 enp0s20f0u2u2: renamed from usb0
Nov 13 18:14:47 gunny8 vmnetBridge: RTM_NEWLINK: name:usb0 index:508 flags:0x00001002
Nov 13 18:14:47 gunny8 vmnet-natd: RTM_NEWLINK: name:enp0s20f0u2u2 index:508 flags:0x00001002
Nov 13 18:14:47 gunny8 vmnetBridge: RTM_NEWLINK: name:enp0s20f0u2u2 index:508 flags:0x00001002
Nov 13 18:14:47 gunny8 NetworkManager[24229]: <info>  [1668359687.1833] device (usb0): interface index 508 renamed iface from 'usb0' to 'enp0s20f0u2u2'
Nov 13 18:14:47 gunny8 upowerd[2845]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2.2/1-2.2:1.1
Nov 13 18:14:47 gunny8 NetworkManager[24229]: <info>  [1668359687.2037] device (enp0s20f0u2u2): state change: unmanaged -> unavailable (reason 'managed', sys-iface-state: 'external')
Nov 13 18:14:47 gunny8 vmnet-natd: RTM_NEWLINK: name:enp0s20f0u2u2 index:508 flags:0x00011043
Nov 13 18:14:47 gunny8 vmnetBridge: RTM_NEWLINK: name:enp0s20f0u2u2 index:508 flags:0x00011043
Nov 13 18:14:47 gunny8 vmnetBridge: Adding interface enp0s20f0u2u2 index:508
Nov 13 18:14:47 gunny8 NetworkManager[24229]: <info>  [1668359687.2075] device (enp0s20f0u2u2): carrier: link connected
Nov 13 18:14:47 gunny8 upowerd[2845]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2.2/1-2.2:1.0
Nov 13 18:14:47 gunny8 NetworkManager[24229]: <info>  [1668359687.2129] settings: (enp0s20f0u2u2): created default wired connection 'Kabelgebundene Verbindung 2'
Nov 13 18:14:47 gunny8 NetworkManager[24229]: <warn>  [1668359687.2142] device (enp0s20f0u2u2): connectivity: "/proc/sys/net/ipv4/conf/enp0s20f0u2u2/rp_filter" is set to "1". This might break connectivity checking for IPv4 on this device
Nov 13 18:14:47 gunny8 NetworkManager[24229]: <info>  [1668359687.2151] device (enp0s20f0u2u2): state change: unavailable -> disconnected (reason 'none', sys-iface-state: 'managed')
Nov 13 18:14:47 gunny8 vmnetBridge: RTM_NEWLINK: name:enp0s20f0u2u2 index:508 flags:0x00011043
Nov 13 18:14:47 gunny8 vmnet-natd: RTM_NEWLINK: name:enp0s20f0u2u2 index:508 flags:0x00011043
Nov 13 18:14:47 gunny8 upowerd[2845]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2.2
Nov 13 18:14:47 gunny8 systemd-udevd[17796]: link_config: autonegotiation is unset or enabled, the speed and duplex are not writable.
Nov 13 18:14:47 gunny8 NetworkManager[24229]: <info>  [1668359687.2403] policy: auto-activating connection 'Kabelgebundene Verbindung 2' (0b1ae45e-c76e-3efb-a2cd-138ca2b2a59c)
Nov 13 18:14:47 gunny8 NetworkManager[24229]: <info>  [1668359687.2414] device (enp0s20f0u2u2): Activation: starting connection 'Kabelgebundene Verbindung 2' (0b1ae45e-c76e-3efb-a2cd-138ca2b2a59c)
Nov 13 18:14:47 gunny8 NetworkManager[24229]: <info>  [1668359687.2419] device (enp0s20f0u2u2): state change: disconnected -> prepare (reason 'none', sys-iface-state: 'managed')
Nov 13 18:14:47 gunny8 NetworkManager[24229]: <info>  [1668359687.2429] device (enp0s20f0u2u2): state change: prepare -> config (reason 'none', sys-iface-state: 'managed')
Nov 13 18:14:47 gunny8 NetworkManager[24229]: <info>  [1668359687.2440] device (enp0s20f0u2u2): state change: config -> ip-config (reason 'none', sys-iface-state: 'managed')
Nov 13 18:14:47 gunny8 NetworkManager[24229]: <info>  [1668359687.2445] dhcp4 (enp0s20f0u2u2): activation: beginning transaction (timeout in 45 seconds)
Nov 13 18:14:47 gunny8 vmnetBridge: RTM_NEWLINK: name:enp0s20f0u2u2 index:508 flags:0x00011043
Nov 13 18:14:47 gunny8 vmnet-natd: RTM_NEWLINK: name:enp0s20f0u2u2 index:508 flags:0x00011043
Nov 13 18:14:47 gunny8 avahi-daemon[1464]: Joining mDNS multicast group on interface enp0s20f0u2u2.IPv6 with address fe80::dba4:adb8:9ffe:d93e.
Nov 13 18:14:47 gunny8 avahi-daemon[1464]: New relevant interface enp0s20f0u2u2.IPv6 for mDNS.
Nov 13 18:14:47 gunny8 avahi-daemon[1464]: Registering new address record for fe80::dba4:adb8:9ffe:d93e on enp0s20f0u2u2.*.
Nov 13 18:14:47 gunny8 kernel: [4611465.895046] userif-1: sent link down event.
Nov 13 18:14:47 gunny8 kernel: [4611465.895052] userif-1: sent link up event.
```

</details>

Ping from and to the host.

### Issues/PRs references

Depends on PR https://github.com/RIOT-OS/RIOT/pull/18983

Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
2023-02-03 09:32:29 +00:00
bors[bot]
8700157f92
Merge #19220 #19232
19220: dist/tools/doccheck: Fix grep warning r=benpicco a=maribu

### Contribution description

Fix `grep: warning: stray \ before -` warnings.

### Testing procedure

```
$ ./dist/tools/doccheck/check.sh
```
Should no longer print lots of the warning anymore

### Issues/PRs references


19232: build system: Fix linker feature test with newlib 4.3.0 r=benpicco a=maribu

### Contribution description

Before the build system used something like

    echo "int main(){} void _exit(int n) {(void)n;while(1);}" | LC_ALL=C $(LINK) -xc - -o /dev/null -lc -Wall -Wextra -pedantic <FLAGS_TO_TEST>

to check for flags supported by the compiler (used as linker frontend). This however no longer works with newlib 4.3.0, which requires the symbols `_sbrk_r`, `_close_r`, `_lseek_r`, `_read_r`, and `_write_r` to be present. Instead, now a new file `minimal_linkable.c` was added that adds all the missing symbols and is used in the linker feature tests instead.

### Testing procedure

- No regressions on the CI
- No changes in binaries
- Building rust apps with newlib 4.3.0 should work again

### Issues/PRs references


Co-authored-by: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
2023-02-02 23:40:57 +00:00
Marian Buschsieweke
2b2506c052
build system: Fix linker feature test with newlib 4.3.0
Before the build system used something like

    echo "int main(){} void _exit(int n) {(void)n;while(1);}" | LC_ALL=C $(LINK) -xc - -o /dev/null -lc -Wall -Wextra -pedantic <FLAGS_TO_TEST>

to check for flags supported by the compiler (used as linker frontend).
This however no longer works with newlib 4.3.0, which requires the
symbols `_sbrk_r`, `_close_r`, `_lseek_r`, `_read_r`, and `_write_r` to
be present. Instead, now a new file `minimal_linkable.c` was added that
adds all the missing symbols and is used in the linker feature tests
instead.
2023-02-02 20:47:37 +01:00
bors[bot]
247b8d0a47
Merge #19235 #19236 #19237 #19238
19235: pkg/nimble/autoadv: fix flag comparisons r=benpicco a=kaspar030



19236: sys/vfs: vfs.c missing includes r=benpicco a=kaspar030



19237: sys/net/crosslayer/inet_csum: add missing "modules.h" include r=benpicco a=kaspar030



19238: sys/net/grnc/netreg: avoid creating an infinite loop r=benpicco a=benpicco



Co-authored-by: Kaspar Schleiser <kaspar@schleiser.de>
Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
2023-02-02 17:52:10 +00:00
Benjamin Valentin
b7a5261508 sys/net/grnc/netreg: avoid creating an infinite loop 2023-02-02 17:56:19 +01:00
1db6c4a9de sys/net/crosslayer/inet_csum: add missing "modules.h" include 2023-02-02 16:37:21 +01:00
177b50dfc2 sys/vfs: vfs.c: add missing "container.h" include 2023-02-02 16:34:28 +01:00
47a610e732 sys/vfs: vfs.c: add missing modules.h include 2023-02-02 16:34:28 +01:00
ebc643ffb0 pkg/nimble/autoadv: fix flag comparisons 2023-02-02 15:45:00 +01:00
bors[bot]
7d1ef9d99b
Merge #18863
18863: boards/esp32s2-mini: add definition for ESP32 S2 Mini r=gschorcht a=benpicco



Co-authored-by: Benjamin Valentin <benjamin.valentin@bht-berlin.de>
Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
2023-02-02 14:26:25 +00:00
Benjamin Valentin
bc4c0fb848 tests/xtimer_now64_continuity: blacklist esp32s2-wemos-mini 2023-02-02 14:58:49 +01:00
Benjamin Valentin
17b0f3e41e tests/xtimer_now32_overflow: blacklist esp32s2-wemos-mini 2023-02-02 14:55:08 +01:00
Marian Buschsieweke
7868963cc3 dist/tools/doccheck: Fix grep warning
Fix `grep: warning: stray \ before -` warnings.
2023-02-02 12:47:13 +01:00
Benjamin Valentin
ed5bfb7392 cpu/esp32: drop CONFIG_ESP_PHY_ENABLE_USB for ESP32S2 2023-02-02 10:56:40 +01:00
Benjamin Valentin
9a39c88327 boards/esp32s2-mini: add definition for ESP32 S2 Mini 2023-02-02 10:56:40 +01:00
Benjamin Valentin
4b5df6485f boards: add common stdio_tinyusb_cdc_acm.dep.mk 2023-02-02 10:56:40 +01:00
Benjamin Valentin
7607b9c0f5 cpu/esp32: add esp-bootloader-reset 2023-02-02 10:56:40 +01:00
bors[bot]
b0fc3e5814
Merge #10462
10462: drivers: add driver for ST VL6180X ranging and ambient light sensor r=benpicco a=gschorcht

### Contribution description

This PR adds a driver for the ST VL6180X ranging and ambient light sensor. The driver can be used in two variants which differ in functionality and size:

Module Name   | Driver
:-------------|:-------------------------------------------
vl6180x       | Driver with standard functionality and larger size
vl6180x_basic | Driver with only basic functionality and smaller size

Both driver variants provide

- continuous ranging and ambient light sensing,
- polling for new measurement results, and
- SAUL capabilies.

In addition to these basic functionalities, the standard driver `vl6180x`
 provides interrupt handling, single shot measurements, a number of
 configuration functions and power down / power up functionality.
 Features of the driver variants are summarized in the following comparison
 sheet. 

Feature                                 | vl6180x_basic | vl6180x
:---------------------------------------|:-------------:|:--------:
Range measurements [mm]                 | X             | X
Ambient light measurements [Lux, raw]   | X             | X
SAUL capability                         | X             | X
Continuous measurements                 | X             | X
Single shot measurements                |               | X
Start and stop measurements             |               | X
Polling for new measurement results     | X             | X
Data-ready interrupts                   |               | X
Threshold interrupts                    |               | X
Measurement error status                |               | X
Configuration during run-time           |               | X
Power down and power up                 |               | X
Size on reference platform              | 1.7 kByte     | 3.0 kByte

### Testing procedure

Using the make command
```
make flash -C tests/driver_vl6180x BOARD=...
```
the standard driver variant `vl6180x` is used with the following default
configuration parameters:

- periodic check of the availability of new data every 100 ms
- a ranging inter-measurement period of 100 ms
- a ranging maximum convergence time of 50 ms
- an ambient light sensing (ALS) inter-measurement period of 500 ms
- an ambient light sensing (ALS) integration time of 100 ms
- an ambient light sensing (ALS) analogue light channel gain of 1.0
- an ambient light sensing period of 500 ms
- a ranging period of 100 ms.

To use the basic driver variant, the `vl6180x_basic` module has
to be specified at make command line
```
USEMODULE=vl6180x_basic make flash -C tests/driver_vl6180x BOARD=...
```
The default configuration parameters used for the test application with the
basic driver variant are the same as for the standard driver variant.

To use interrupts to fetch new data instead of polling for new data
periodically, the standard driver variant `vl6180x` has to be used and the
pin connected with the interrupt signal GPIO1 of the sensor has to be
defined by configuration paramater `VL6180X_PARAM_PIN_INT`, e.g.,
```
CFLAGS="-DVL6180X_PARAM_PIN_INT=\(GPIO_PIN\(0,1\)\)" make flash -C tests/driver_vl6180x BOARD=...
```
To test the power down and power up functionality, the pin connected with
the signal GPIO0/CE of the sensor has to be defined by configuration
paramater `VL6180X_PARAM_PIN_SHUTDOWN
`, e.g.,
```
CFLAGS="-DVL6180X_PARAM_PIN_SHUTDOWN=\(GPIO_PIN\(0,2\)\)" make flash -C tests/driver_vl6180x BOARD=...
```


Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
2023-02-02 09:23:45 +00:00
Gunar Schorcht
0bee1ddf55 tests/saul_drivers: add vl6180x driver 2023-02-02 02:04:09 +01:00
Gunar Schorcht
9897dcc5bb Kconfig: integration of VL6180X driver and test app 2023-02-02 02:04:09 +01:00
Gunar Schorcht
afb5e043be drivers/vl6180x: add SAUL integration 2023-02-02 02:04:09 +01:00
Gunar Schorcht
add625aa84 tests/drivers_vl6180x: add test app for VL6180X driver 2023-02-02 02:04:09 +01:00
Gunar Schorcht
51bf9d4d7d drivers/vl6180x: driver for VL6180X ranging and ALS 2023-02-02 02:04:09 +01:00
bors[bot]
a9dbf8bc36
Merge #19055 #19188 #19225
19055: shell/gnrc_icmpv6_echo: acquire ZTIMER_USEC clock for time measurement r=benpicco a=jue89



19188: cpu/gd32v: add periph_adc support r=benpicco a=gschorcht

### Contribution description

This PR provides the `periph_adc` support and is one of a bunch of follow up PRs that complete the peripheral drivers for GD32VF103.

This PR depends on PR #19170 and includes this PR to be compilable since includes the ADC configuration also for Sipeed Longan Nano board.

### Testing procedure

`tests/periph_adc` should work on any GD32VF103 board.

### Issues/PRs references

Depends on PR #19170 

19225: sys/net/dhcpv6: include IA Prefix Option in SOLICIT r=benpicco a=benpicco





Co-authored-by: Jue <me@jue.yt>
Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
2023-02-02 00:04:14 +00:00
Benjamin Valentin
a693ecc148 examples/gnrc_border_router: set number of leases to number of ZEPs 2023-02-01 23:25:22 +01:00
Benjamin Valentin
0a453ae679 sys/net/dhcpv6: let dhcpv6_client_req_ia_pd() return error 2023-02-01 23:25:22 +01:00
Benjamin Valentin
54fe031705 sys/net/dhcpv6: add IA Prefix Option in SOLICIT
Add the IA Prefix Option when soliciting a prefix so we can tell the
server what prefix length we want.
2023-02-01 23:25:22 +01:00
Gunar Schorcht
57463cb0c1 dist/tools/dockcheck: add ADC config as generic exclude pattern 2023-02-01 23:11:07 +01:00
Gunar Schorcht
15a3b08aa7 boards/sipeed-longan-nano: add periph_adc support 2023-02-01 23:11:07 +01:00
Gunar Schorcht
47c95cb2a2 boards/seeedstudio-gd32: add periph_adc support 2023-02-01 23:11:07 +01:00
Gunar Schorcht
f7949e42fd cpu/gd32v: add periph_adc support 2023-02-01 23:11:07 +01:00
Gunar Schorcht
ee8dcfe664 tests: add pkg_tinyusb_netdev for tinyUSB netdec 2023-02-01 21:58:01 +01:00
Gunar Schorcht
e7d0fbbc71 sys/net/gnrc/netif: add tinyUSB netdev to auto_init 2023-02-01 21:58:01 +01:00
Gunar Schorcht
295f8339d2 pkg/tinyusb: add tinyUSB netdev module 2023-02-01 21:58:01 +01:00
Gunar Schorcht
5a270fe521 drivers/netdev: add tinyUSB netdev 2023-02-01 21:57:23 +01:00
Gunar Schorcht
4e7bbb1bbe pkg/tinyusb: Kconfig support of network device class 2023-02-01 21:57:23 +01:00
Gunar Schorcht
5b6a88e070 pkg/tinyusb: enable network device class in makefiles 2023-02-01 21:57:18 +01:00
Gunar Schorcht
5da9b2951f pkg/tinyusb: support for network device class descriptors 2023-02-01 21:56:36 +01:00
bors[bot]
12a05b8fa2
Merge #19230
19230: tools/backport_pr: remove Unnecessary "else" after "raise" r=maribu a=benpicco



Co-authored-by: Benjamin Valentin <benjamin.valentin@bht-berlin.de>
2023-02-01 16:04:28 +00:00
Benjamin Valentin
630a82a260 tools/backport_pr: remove Unnecessary "else" after "raise" 2023-02-01 16:00:28 +01:00
bors[bot]
053f5266a5
Merge #19228
19228: doccheck: avoid generating dot or html r=benpicco a=kfessel

### Contribution description

doccheck without generating dot or html

this also has some new generated lines for exclude_pattern (some of them where broke so I regenerated the block)

### Testing procedure

doccheck 

### Issues/PRs references



Co-authored-by: Karl Fessel <karl.fessel@ovgu.de>
2023-02-01 13:25:03 +00:00
bors[bot]
cf2d66ede8
Merge #19193 #19214
19193: rust: Update dependencies, use riot-wrappers from git r=benpicco a=chrysn

### Contribution description

As riot-wrappers has advanced a bit since it was last released, Rust modules are switched to using it from git again. (This is a regular ping-pong between testing the latest release in RIOT master, and using released support crates when they're current).

This primarily updates riot-wrappers, which has accumulated several compatible changes. Several other crates receive updates as well.

### Testing procedure

* Green CI

### Issues/PRs references

Changes on the riot-wrappers side:

* https://github.com/RIOT-OS/rust-riot-wrappers/pull/17
* https://github.com/RIOT-OS/rust-riot-wrappers/pull/22
* https://github.com/RIOT-OS/rust-riot-wrappers/pull/29
* https://github.com/RIOT-OS/rust-riot-wrappers/pull/30

[edit: added:]

This also serves to help preparing a 0.8.1 release of riot-wrappers, which performs some deprecations so that a breaking 0.9 change can be done more effortlessly later on.

19214: cpu/gd32v: add periph_spi support r=benpicco a=gschorcht

### Contribution description

This PR provides the `periph_spi` support and is one of a bunch of PRs that complete the peripheral drivers for GD32VF103.

The driver is a modified version of the driver for STM32F1 with some changes that were necessary to get it working on GD32V.

### Testing procedure

`tests/periph_spi` as well as a test with any SPI sensor should work. `tests/driver_sdcard_spi` should work on `sipeed-longan-nano`.

### Issues/PRs references

Depeneds on PR #19216 

Co-authored-by: chrysn <chrysn@fsfe.org>
Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
2023-02-01 11:13:05 +00:00
Gunar Schorcht
929bb3e0ab dist/tools/doccheck: add ST7735 config to generic_exclude_pattern 2023-02-01 02:44:54 +01:00
Gunar Schorcht
1e5b89c40b dist/tools/doccheck: add SD_SPI CARD config to generic_exclude_pattern 2023-02-01 02:44:54 +01:00
Gunar Schorcht
4b3663ee02 dist/tools/doccheck: add SPI config to generic_exclude_pattern 2023-02-01 02:44:54 +01:00
Gunar Schorcht
8d3369acc7 boards/sipeed-longan-nano: add SPI configuration 2023-02-01 02:44:54 +01:00
Gunar Schorcht
b2c0062393 boards/seeedstudio-gd32v: add SPI configuration 2023-02-01 02:44:54 +01:00
Gunar Schorcht
ea6a9d3f36 boards/common/gd32v: add default SPI configuration 2023-02-01 02:37:54 +01:00