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

44685 Commits

Author SHA1 Message Date
Kyle Burk
986488db85
cpu/stm32/f1: prevent corrupting AFIO->MAPR
The `SWJ_CFG` field of the `AFIO_MAPR` register is write only and values
read are undefined (random). Hence, using `AFIO->MAPR |= mask;` to
enable flags can corrupt the state of the `SWJ_CFG` (configure it to
an unintended value).

Two helper functions have been introduced:
- `afio_mapr_read()` reads the value, but sanitizes the `SWJ_CFG` field
  to zero
- `afio_mapr_write()` writes the given value, but applies the `SWJ_CFG`
  configured by the board before writing.

Finally, the `nucleo-f103rb` and `bluepill*`/`blackpill*` boards have
been updated to no longer specify `STM32F1_DISABLE_JTAG`, as this
is handled by the `SWJ_CFG` setting (which defaults to disabling JTAG).
2023-11-20 20:28:52 +01:00
Marian Buschsieweke
57488a57ab
tests/periph/selftest_shield: timer allocation conflict
- Detect when the same timer is used by `ztimer` (pulled in as
  dependency for a peripheral driver, e.g. `periph_adc` on STM32F3) and
  the test application
- Try to provide a better default (e.g. `TIMER_DEV(1)` when
  `ztimer_periph_timer` is in use, `TIMER_DEV(0)` otherwise)
2023-11-20 17:17:26 +01:00
Kevin "Tristate Tom" Weiss
e51dc0937d
Merge pull request #20092 from MrKevinWeiss/pr/releasenotes202310
release-notes.txt: add 2023.10 release notes
2023-11-20 13:00:50 +00:00
MrKevinWeiss
24893fa06e
release-notes.txt: add 2023.10 release notes 2023-11-20 13:20:19 +01:00
Marian Buschsieweke
6380d81119
Merge pull request #20091 from benpicco/at24cs0x
drivers/at24cxxx: add defines for AT24CS04 & AT24CS08
2023-11-16 17:41:29 +00:00
Marian Buschsieweke
4e7f972303
Merge pull request #20089 from maribu/tests/periph/selftest_shield2
tests/periph/selftest_shield: improve SPI test
2023-11-16 14:39:38 +00:00
Benjamin Valentin
1a19005c22 drivers/at24cxxx: add defines for AT24CS04 & AT24CS08 2023-11-16 14:28:20 +01:00
Karl Fessel
8a9fdf4661
Merge pull request #20062 from derMihai/at_fix_pr
drivers/at: fix URC collision with command response
2023-11-16 12:04:48 +00:00
Marian Buschsieweke
14ff958659
Merge pull request #20083 from maribu/tests/periph/selftest_shield
tests/periph/selftest_shield: re-enable ADC test
2023-11-16 12:04:00 +00:00
Marian Buschsieweke
66d38101d8
tests/periph/selftest_shield: Consistently use DETAILED_OUTPUT
There already is `DETAILED_OUTPUT` to trade ROM size for more verbose
error messages, no need to abuse `DEBUG()` for the same as well.
2023-11-16 12:59:50 +01:00
Marian Buschsieweke
f51ca593ba
tests/periph/selftest_shield: re-enable ADC test
The R-2R resistor ladder dac --> ADC test was disabled due to a bug in
the v0.1 version of the shield. Since this has been fixed in v0.2 and
v0.3 of the shield, it can be re-enabled.

The comment regarding the high accuracy of the resistor is dropped, as
v0.3 has been ordered with cost efficient resistors rather than with
accurate ones. As a result, the tolerance for error has been increased
to 10%. This quite a bit more lax than I have hoped for, but false
positives would be something to avoid.
2023-11-16 12:59:50 +01:00
Dylan Laduranty
5701ebb6ff
Merge pull request #20090 from maribu/boards/p-nucleo-wb55
boards/p-nucleo-wb55: Add pinout and clean up doc
2023-11-16 10:52:37 +00:00
Marian Buschsieweke
61af0f38f8
boards/p-nucleo-wb55: Add pinout and clean up doc 2023-11-16 11:14:45 +01:00
Marian Buschsieweke
bf90638e80
Merge pull request #20087 from MrKevinWeiss/pr/fix/esp32s3-wt32-sc01-plus
cpu/esp32: Fix kconfig of esp-lcd
2023-11-16 07:11:27 +00:00
Marian Buschsieweke
af6bb03bc7
tests/periph/selftest_shield: improve SPI test
- fix a copy-paste error (`TIMER_FREQ_UART_TEST` was used in the SPI
  test, but that should be `TIMER_FREQ_SPI_TEST`)
- use 400 kHz as slow SPI frequency, as faster STM32 MCUs just cannot
  divide the APB clock down to 100 kHz
- when detailed output is enabled, print the SPI clock in addition to
  the SPI mode to ease figuring out what went wrong
- only have one `FAILURE` message for a too fast byte transfer per
  check, rather than per transmitted byte, to reduce the noise
- work around a bug of `periph_timer` on STM32 by reducing the clock
  speed of the timer for the SPI test
2023-11-15 20:29:53 +01:00
Marian Buschsieweke
2e80e9181a
Merge pull request #20086 from maribu/boards/p-nucleo-wb55
boards/p-nucleo-wb55: provide Arduino features
2023-11-15 14:24:33 +00:00
MrKevinWeiss
89a16604d3
cpu/esp32: Fix kconfig of esp-lcd 2023-11-15 12:23:39 +01:00
Marian Buschsieweke
7446cf543a
boards/common/nucleo64: fix doc 2023-11-15 09:57:42 +01:00
Marian Buschsieweke
08379cde27
boards/p-nucleo-wb55: provide Arduino features
This provides the features:
- `arduino_i2c`
- `arduino_spi`
- `arduino_uart`
2023-11-15 09:56:45 +01:00
benpicco
b16c85c5a5
Merge pull request #20085 from maribu/boards/nucleo-wl55jc
boards/nucleo-wl55jc: Fix Arduino SPI bus
2023-11-14 16:15:22 +00:00
Marian Buschsieweke
c7ded84e0c
boards/nucleo-wl55jc: Fix Arduino SPI bus
The macro `ARDUINO_SPI_D11D12D13` is used to refer to the SPI bus
on the pins D11/D12/D13 on Arduino UNO compatible boards. For all
Nucleo64 boards this is `SPI_DEV(0)`, but for this board `SPI_DEV(0)`
is internally connected to the radio. Instead `SPI_DEV(1)` is connected
to the correct pins. This provides the macro explicitly in
`periph_conf.h`, which takes preference over the fallback in
`boards/common/nucleo64` when provided.
2023-11-14 16:16:28 +01:00
benpicco
a24066be93
Merge pull request #20082 from maribu/board/nucleo-f030r8
boards/nucleo-f030r8: enable SPI and I2C
2023-11-14 13:18:35 +00:00
Benjamin Valentin
e3d00682bc sock/udp: work around gnrc_sock_recv() returning early timeout
sock_udp_recv_buf_aux() sometimes will return -ETIMEDOUT before
the given timeout has expired (e.g. 28798µs instead of 160000µs).

This messes with many assumptions and breaks protocols that rely
on the timeout.

Until we have a proper fix, add this workaround.
2023-11-14 13:33:16 +01:00
Marian Buschsieweke
6b30f5cd1b
tests: add nucleo-f030r8 to Makefile.ci where needed 2023-11-14 12:55:28 +01:00
benpicco
81fd126d3e
Merge pull request #20076 from bergzand/pr/gcoap_msec
gcoap: Use millisecond timer for observe option values
2023-11-14 10:26:18 +00:00
Marian Buschsieweke
47d81ffbe1
Merge pull request #20081 from maribu/tests/periph/selftest_shield
tests/periph/selftest_shield: fix integration
2023-11-13 18:03:47 +00:00
Marian Buschsieweke
882ab0059a
boards/nucleo-f030r8: enable SPI and I2C
The SPI configuration was already provided, but the feature never
exposed. The common PB8/PB9 I2C config is used to for I2C.
2023-11-13 16:18:04 +01:00
Marian Buschsieweke
d6dac4bee2
tests/periph/selftest_shield: Fix copy-paste error in comment 2023-11-13 15:53:58 +01:00
Marian Buschsieweke
b6252b334d
tests/periph/selftest_shield: fix integration
The test should execute only with `make test-with-config` and not with
`make test`, as boards without the shield cannot pass the test.

For some reason I accidentally added both variants, which makes no
sense. This drops the `make test` variant.

Finally, the `README.md` is updated to refer to `make test-with-config`
instead of `make test`.
2023-11-13 14:17:03 +01:00
benpicco
72ddd4d01f
Merge pull request #19944 from gschorcht/cpu/esp32/lcd_parallel_ll_mcu
cpu/esp32: add low-level LCD parallel interface using LCD peripheral
2023-11-13 12:12:53 +00:00
Gunar Schorcht
4e85968145 boards/esp32s3-wt32-sc01-plus: enable LCD parallel interface 2023-11-13 13:01:57 +01:00
Gunar Schorcht
70053c5284 cpu/esp32: add LCD low-level parallel interface suppport 2023-11-13 13:01:57 +01:00
Gunar Schorcht
33d6281432 cpu/esp32/esp-idf: add LCD driver of ESP-IDF 2023-11-13 13:01:57 +01:00
Gunar Schorcht
ab8649bd2f pkg/esp32_sdk: patch for LCD driver on ESP32-S3 2023-11-13 13:01:57 +01:00
Marian Buschsieweke
978176a283
Merge pull request #20074 from maribu/sys/flash_utils/avr
sys/flash_utils: Minor bug fixes
2023-11-11 12:58:08 +00:00
benpicco
5e0968a6f6
Merge pull request #20075 from krzysztof-cabaj/nucleo-f070-SPI
boards/nucleo-f070rb: add SPI configuration
2023-11-10 23:06:38 +00:00
benpicco
5d54e89a17
Merge pull request #20078 from benpicco/mtd_dev_get
drivers/mtd: rename mtd_default_get_dev() -> mtd_dev_get()
2023-11-10 21:36:19 +00:00
krzysztof-cabaj
744f3ecbbb tests/drivers/cc110x: add nucleo-f070rb to Makefile.ci 2023-11-10 21:39:31 +01:00
Benjamin Valentin
c2f93c05f1 treewide: mtd_default_get_dev() -> mtd_dev_get() 2023-11-10 19:53:48 +01:00
Benjamin Valentin
63cd55cc7b drivers/mtd_default: deprecate mtd_default_get_dev() 2023-11-10 19:53:48 +01:00
Benjamin Valentin
396d3bbe2b drivers/mtd: introduce mtd_dev_get() 2023-11-10 19:53:48 +01:00
Marian Buschsieweke
60921df406
Merge pull request #20077 from benpicco/cpu/sam0_common/adc_continuous-fix
cpu/sam0_common: adc_continuous: fix uninitialized access
2023-11-10 18:36:30 +00:00
Marian Buschsieweke
bf582b0d68
Merge pull request #19932 from maribu/peripheral-selftest
tests/periph: Add test using the Peripheral Selftest Shield
2023-11-10 18:12:42 +00:00
Benjamin Valentin
5abdc7eb5f cpu/sam0_common: adc_continuous: fix uninitialized access 2023-11-10 18:35:09 +01:00
krzysztof-cabaj
ca93d1793e boards/nucleo-f070rb: full SPI config in periph_conf.h 2023-11-10 16:31:23 +01:00
Marian Buschsieweke
fe6c94070b
boards/nucleo-wl55jc: Add missing ARDUINO_I2C_UNO
The feature `arduino_i2c` was already provided, but the define this
feature indicates to be present is missing.
2023-11-10 16:29:51 +01:00
a6a8f6e1cd
gcoap: Separate out observe option generation in own function 2023-11-10 16:01:57 +01:00
6425fda812
gcoap: Use millisecond timer for observe option values 2023-11-10 16:00:00 +01:00
Mihai Renea
e99cafba33 drivers/at: fix URC collision with command response 2023-11-10 15:26:47 +01:00
Marian Buschsieweke
d7cf39551f
tests/periph/selftest_shield: add test application
This test application makes use of the RIOT Peripheral Selftest Shield,
which connects e.g. PWM to ADC or SPI MOSI to SPI MISO, UART TXD to RXD,
etc. This provides quick and fully automated self testing capabilities.

Please note that the simplicity and ease of use of the hardware comes
with a prices: There are whole classes of issues that cannot be detected
automatically. This test cannot replace other testing approaches
(such as manual testing or PHiLIP on the HiL), but only complement them.
2023-11-10 15:13:23 +01:00