1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-01-17 05:52:44 +01:00
Commit Graph

43991 Commits

Author SHA1 Message Date
Fabian Hüßler
8e122e9354 drivers/atwinc15x0: handle M2M errors of m2m_wifi_enable_mac_mcast 2023-08-19 23:23:10 +02:00
Fabian Hüßler
c5d1ae1b9a examples/gnrc_border_router: relax restriction on wifi UPLINK 2023-08-19 23:23:10 +02:00
Fabian Hüßler
0a18d019b4 sys/shell: add iw shell command 2023-08-19 23:23:10 +02:00
Fabian Hüßler
814d718d7b drivers/atwinc15x0: support network scanning and dynamic connection
There are new pseudomodules for this driver:

- atwinc15x0_static_connect: Should behave as before, by trying to connect to an AP
by specified WIFI_SSIS and WIFI_PASS

- atwinc15x0_dynamic_connect: takes connection request via NETOPT_CONNECT
and provides the connection result via callback

- atwinc15x0_dynamic_scan: takes network scan requests via NETOPT_SCAN
and provides the scan result as a sorted list via callback
2023-08-19 23:23:10 +02:00
Fabian Hüßler
7f2b214e47 drivers/net/netdev: extend netopt request/result for Wi-Fi 2023-08-19 23:23:10 +02:00
Fabian Hüßler
9120452be6 net: add basic Wi-Fi definitions 2023-08-19 23:23:10 +02:00
Fabian Hüßler
63ac792b8b net: add NETOPT_{SCAN, CONNECT, DISCONNECT} 2023-08-19 23:23:10 +02:00
Fabian Hüßler
dd28ee1a8c net: add wifi scan list as wrapper around l2scan list 2023-08-18 20:42:43 +02:00
Fabian Hüßler
b65002ecdc tests/net: add test for l2scan list module 2023-08-18 20:42:43 +02:00
Fabian Hüßler
dd52f5fedd sys/net: add l2scan list module 2023-07-14 20:27:10 +02:00
bors[bot]
b482a713a3
Merge #19823
19823: dist/tools/usb-serial: call ttys.py with its path r=maribu a=dylad

### Contribution description
This PR provides a fix for #19805
When calling `SERIAL=xxx make flash` the command failed because the script `dist/tools/usb-serial/find-ttys.sh` tries to call `ttys.py` but it doesn't find it. So pass the full path to `ttys.py` to get rid of the problem.

### Testing procedure
Connect at least two boards to your computer
run `make list-ttys ` to get the ID of your boards
Try to flash one of them with (replace SERIAL with the one you get with the previous command):
`BOARD=xxx SERIAL=xxx make -C tests/leds flash`
It fails on master.
It should works with this PR.

### Issues/PRs references

Fixes #19805


Co-authored-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2023-07-13 15:28:04 +00:00
Dylan Laduranty
1007f020ea dist/tools/usb-serial/find-tty.sh: call ttys.py with its path
Signed-off-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2023-07-13 16:43:57 +02:00
Dylan Laduranty
3b85c56646 dist/tools/usb-serial/list-ttys.sh: call ttys.py with its path
Signed-off-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2023-07-13 16:36:12 +02:00
bors[bot]
0f50a8fa00
Merge #19798
19798: cpu/nrf53: add I2C and SPI support r=benpicco a=dylad

### Contribution description

This PR provides support for nRF53 SPI and I2C.
It also moves common structs from each nRF CPU folder to `cpu/nrf5x_common` to avoid duplication.
Moreover, since nRF9160 and nRF5340 have shared IRQ for UART/SPI/I2C. Both this families now use a common file to register and manage these interrupts. Note that nRF9160 have different name for its interrupts than nRF5340 but they have the same purpose.

### Testing procedure

Since some structs were moved around, I think this PR should be carefully tested against nRF52, nRF53 and nRF9160 to avoid any issues.
On nRF5340DK-APP, SPI can be tested with its onboard SPI flash.

### Issues/PRs references



Co-authored-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2023-07-13 12:08:04 +00:00
Dylan Laduranty
883d138e1c pkg: don't align nrf53 features on nrf51/nrf52
Signed-off-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2023-07-13 13:22:28 +02:00
bors[bot]
7dd7d1e3a7
Merge #19806 #19814
19806: ztimer/periodic: remove timer on init if already running r=kaspar030 a=benpicco



19814: boards/sipeed-longan-nano: revert default to variant with TFT r=benpicco a=gschorcht

### Contribution description

This PR reverts commit 69fb00bdfa to fix CI compilation.

### Testing procedure

Green CI with full build.

### Issues/PRs references


Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
Co-authored-by: Marian Buschsieweke <marian.buschsieweke@posteo.net>
Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
2023-07-12 20:03:13 +00:00
Dylan Laduranty
b050ad3631 boards/nrf9160dk: remove unneeded UART ISR macros
Signed-off-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2023-07-12 21:51:51 +02:00
Dylan Laduranty
fdbba517a2 boards/nrf5340dk-app: add SPI flash configuration and I2C pins
Signed-off-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2023-07-12 21:51:50 +02:00
bors[bot]
ae2118cbf6
Merge #19816
19816: drivers/lcd: code deduplication for st7735 and ili9341 r=aabadie a=gschorcht

### Contribution description

In preparation for the parallel interface support the following changes were made:

1. The code for basic communication (acquire/release SPI device, SPI transfers), which were always duplicated by copy & paste in each display driver again and again, has been moved to the LCD driver as low-level functions that are now used by the display drivers. These low level function allow 
- code deduplication and
- to define a more abstract communication interface that can then be extended later by parallel communication interface
2. Identical GPIO initializations has also been moved from display drivers to the LCD driver.
3. Using a default implementation of `lcd_set_area` function allows further code deduplication.

Finally, the `ili9341` and `st7735` drivers only implement the inialization sequence for the LCD driver IC.

### Testing procedure

`tests/drivers/ili9341` should still work for a board with an ILI9341. Tested with `esp32-wrover-kit`.
`tests/drivers/st7735` should still work for a board with a ST77xx. Tested with `esp32s3-usb-otg`.

### Issues/PRs references


Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
2023-07-12 14:08:56 +00:00
Gunar Schorcht
ce653b74cd boards/sipeed-longan-nano: default to TFT version if st7735 is used 2023-07-12 15:56:20 +02:00
Gunar Schorcht
3f389d0b15 boards/sipeed-longan-nano: fix Kconfig for disp_dev driver 2023-07-12 15:53:36 +02:00
Gunar Schorcht
5cb51b17a3 driver/lcd: use a default implementation of lcd_set_area used
Using a default implementation of `lcd_set_area` function allows further code deduplication.
2023-07-12 15:31:29 +02:00
Gunar Schorcht
878af4f9a1 drivers/st7735: move basic communication functions to drivers/lcd 2023-07-12 15:31:29 +02:00
Gunar Schorcht
c51496fe2e drivers/ili9341: move basic communication functions to drivers/lcd 2023-07-12 15:31:29 +02:00
Gunar Schorcht
3f8ba798cb drivers/lcd: move basic communication functions to drivers/lcd
In preparation for the parallel interface support the following changes were made:

1. The code for basic communication (acquire/release SPI device, SPI transfers), which were always implemented identically in the individual display drivers again and again, have been moved to the LCD driver as low-level functions and are now used by the display drivers. These low level function allow 
- code deduplication on one hand and 
- to define a more abstract communication interface on the other hand that can then be extended by parallel communication
2. Identical GPIO initialization has  also been moved from display drivers to the LCD driver.
2023-07-12 15:31:29 +02:00
Gunar Schorcht
b30401a1c2 drivers/st7735: fix Kconfig logic for ST7789
MODULE_ST7789 is enabled if MODULE_ST7735 is enabled and the board has selected HAVE_ST7789.
2023-07-12 15:31:29 +02:00
Benjamin Valentin
eadb3741e3 ztimer/periodic: remove timer on init if already running 2023-07-12 15:03:48 +02:00
Dylan Laduranty
f27bde3f37 cpu/nrf53: enable I2C/SPI support
Signed-off-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2023-07-11 23:43:35 +02:00
bors[bot]
82f4154c71
Merge #19754
19754: boards/atmega8: new board r=benpicco a=hugueslarrive

### Contribution description
Splitted from:
- #19740

### Testing procedure
Tested on atmega8 with:
- #19755

### Issues/PRs references

Dependencies:
- #19753
- #19752
- #19751



Co-authored-by: Hugues Larrive <hlarrive@pm.me>
2023-07-11 21:41:07 +00:00
Dylan Laduranty
5811c847ad cpu/nrfxx: use shared serial IRQ
Signed-off-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2023-07-11 22:42:10 +02:00
Dylan Laduranty
72c93a9743 cpu/nrfxx: introduce shared serial IRQ
For now, nRF53 and nRF9160 will shared UART/I2C/SPI IRQs, nRF52 will reuse the same callback but will keep its own file to avoid breakage. This can be continue in a followup PR

Signed-off-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2023-07-11 22:39:23 +02:00
Hugues Larrive
3c465836f2 examples and tests: add atmega8 to relevent Makefile.ci
using dist/tools/insufficient_memory/add_insufficient_memory_board.sh
2023-07-11 21:22:02 +02:00
Hugues Larrive
e8327a4a9a boards/atmega8: new board 2023-07-11 21:22:02 +02:00
Hugues Larrive
064c799e57 cpu/atmega_common: some additional periph drivers fixed for atmega8 cpu
- periph/eeprom.c
- periph/wdt.c
- periph/gpio_ll_irq.c

removed unsupported cpuid and dpgpin feature for atmega8 cpu familly

pkg/qdsa: bump the commit hash bump the commit hash after RIOT-OS/qDSA#4
was merged
2023-07-11 21:22:02 +02:00
Dylan Laduranty
63310189a5 cpu/nrfxx: move I2C/SPI/UART structs to nrf5x_common
This will reduces code duplication across nRF52,nRF53 and nRF9160 families

Signed-off-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2023-07-11 20:07:26 +02:00
bors[bot]
9a46bcdbe7
Merge #19685
19685: pkg/openthread: remove deprecated functions r=benpicco a=maribu



Co-authored-by: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
2023-07-11 14:59:53 +00:00
bors[bot]
1b8ad7cffc
Merge #19777
19777: cpu/avr8_common: Prepare for rework ISR r=benpicco a=nandojve

### Contribution description

This prepares for rework how ISR is handled for AVR-8 platform. It is not expected changes on the behavior but tests on other boards were welcome to avoid regressions.

#### Improvements
 * Split UART state from ISR states. Now it is necessary two variables and GPIORx registers are automatically selected when available.
 * UART states now supports up to 8 UARTs.
 * Added AVR8_ISR macro do clean-up and hide internals related to ISR processing. This allows changes on ISR without any other changes on drivers.

### Testing procedure

Tests were conducted using atmega328p-xplained-mini and atxmega-a1u-xpro and the zigduino board was only built. The example thread_duel was used to test regressions.

Co-authored-by: Gerson Fernando Budke <nandojve@gmail.com>
2023-07-11 10:39:11 +00:00
Marian Buschsieweke
2fe9d9f755 Revert "boards/sipeed-longan-nano: default to variant with TFT"
This reverts commit 69fb00bdfa.
2023-07-10 14:56:01 +02:00
bors[bot]
37c6233bcb
Merge #19764 #19781
19764: drivers/shield_w5100: add module for the W5100 Ethernet Shield r=benpicco a=maribu

### Contribution description

This module provides no more than the correct configuration parameters for the `w5100` driver using the Arduino I/O mapping features. But by doing so, it will work out of the box with every mechanically and electrically compatible board for which the Arduino I/O mapping features are implemented.


19781: cpu/nrf{53,9160}: add pwm support r=benpicco a=dylad

### Contribution description

This PR moves the nRF52 PWM driver to `cpu/nrf5x_common` to allow nRF9160 and nRF53 to use this driver.
IP is identical on these families.

I didn't test on nRF9160DK and I didn't test if there is any regression on nRF52-based board as I don't have any so tests are welcome !
However it works fine on nRF53-based board.


### Testing procedure

Flash the `tests/periph/pwm` test application on `nrf5340dk` or `nrf9160dk`.
You can then use the `osci` command to make the onboard LEDs "breath".
You can also attach an oscilloscope and/or logic analyzer to watch the signal.


### Issues/PRs references
~~Based on #19769~~

Co-authored-by: Marian Buschsieweke <marian.buschsieweke@posteo.net>
Co-authored-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
Co-authored-by: dylad <dylan.laduranty@mesotic.com>
2023-07-10 10:51:20 +00:00
bors[bot]
123cce95d8
Merge #19813
19813: buildsystem: fix kconfig mismatches r=gschorcht a=maribu

### Contribution description

This adds three commits each addressing a deviation between dependency resolutions done with and without Kconfig. Hopefully, these in combination should fix the nightly builds.

### Testing procedure

For each `$failing_board` and `$failing_app` pair in the latest nightly build, do:

```
make BOARD=$failing_board -C $failing_app TEST_KCONFIG=0 info-modules > ~/without-kconfig
make BOARD=$failing_board -C $failing_app TEST_KCONFIG=1 info-modules > ~/with-kconfig
diff -rupN ~/without-kconfig ~/with-kconfig
```

should yield an empty diff other than the `=== [ATTENTION] Testing Kconfig dependency modelling ===`.

### Issues/PRs references

None

Co-authored-by: Marian Buschsieweke <marian.buschsieweke@posteo.net>
2023-07-09 13:30:47 +00:00
Marian Buschsieweke
ca07f77f48
drivers/st7735: fix inconsistency in dependency modeling
In KConfig `MODULE_ST7789` now is hidden module that automatically
gets selected when `HAVE_ST7789` is selected in `MODULE_ST7735` is used.

Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
2023-07-09 14:15:25 +02:00
Marian Buschsieweke
69fb00bdfa
boards/sipeed-longan-nano: default to variant with TFT
Without KConfig presence of the TFT is assumed in anycase, with KConfig
it is optional. This turns the opt-in into an opt-out to match behavior
with make by default, fixing the nightly breakage.
2023-07-09 11:36:12 +02:00
Marian Buschsieweke
cce395da89
boards/esp32s3-box: select ili9341 when disp_dev is used
This matches the behavior when KConfig is used.
2023-07-09 11:33:12 +02:00
dylad
ef9dca0108 drivers/servo: update build dependencies for Nordic families
Signed-off-by: dylad <dylan.laduranty@mesotic.com>
2023-07-08 17:19:57 +02:00
Dylan Laduranty
328d84fcf1 boards/nrf9160dk: enable PWM support on onboard LEDs
Signed-off-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2023-07-08 17:19:57 +02:00
Dylan Laduranty
aeff14703b boards/nrf5340dk-app: enable PWM support on onboard LEDs
Signed-off-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2023-07-08 17:19:57 +02:00
Dylan Laduranty
2033911b7f cpu/nrf53: introduce peripheral clocks defines
Signed-off-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2023-07-08 16:53:44 +02:00
Dylan Laduranty
6ea5081da9 cpu/nrf5x_common: share nRF52 PWM driver with nRF53/nRF9160
Signed-off-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2023-07-08 16:53:41 +02:00
bors[bot]
c19626c525
Merge #19811
19811: boards: add ESP32-S3-Box support r=gschorcht a=gschorcht

### Contribution description

This PR provides the support for the [ESP32-S3-Box](https://github.com/espressif/esp-box).

### Testing procedure

The board has been tested with all basic tests for supported hardware including `tests/drivers/ili9341`:

![IMG_20230707_113423](https://github.com/RIOT-OS/RIOT/assets/31932013/048d9b53-5fa2-4809-bfb8-28433d3d11ce)

- [x] tests/drivers/ili9341
- [x] tests/periph/gpio
- [x] tests/periph/i2c
- [x] tests/periph/spi
- [x] tests/periph/uart
- [x] tests/sys/usbus_cdc_ecm 

### Issues/PRs references


Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
2023-07-08 11:23:20 +00:00
Marian Buschsieweke
f1ab3b1ea6
drivers/shield_w5100: add module for the W5100 Ethernet Shield
This module provides no more than the correct configuration parameters
for the `w5100` driver using the Arduino I/O mapping features. But
by doing so, it will work out of the box with every mechanically and
electrically compatible board for which the Arduino I/O mapping
features are implemented.
2023-07-08 08:36:41 +02:00