From 94fdead6411c3b5ed59786d58878246b02a1e130 Mon Sep 17 00:00:00 2001 From: Gunar Schorcht Date: Sun, 30 Jul 2023 09:43:10 +0200 Subject: [PATCH 1/9] cpu/stm32: add FMC support for LCD with parallel interface --- cpu/stm32/Kconfig | 1 + cpu/stm32/Makefile | 4 + cpu/stm32/Makefile.dep | 4 + cpu/stm32/include/lcd_fmc.h | 60 ++++++++++ cpu/stm32/include/periph/cpu_fmc.h | 11 ++ cpu/stm32/lcd_fmc/Kconfig | 13 +++ cpu/stm32/lcd_fmc/Makefile | 3 + cpu/stm32/lcd_fmc/lcd_fmc.c | 176 +++++++++++++++++++++++++++++ 8 files changed, 272 insertions(+) create mode 100644 cpu/stm32/include/lcd_fmc.h create mode 100644 cpu/stm32/lcd_fmc/Kconfig create mode 100644 cpu/stm32/lcd_fmc/Makefile create mode 100644 cpu/stm32/lcd_fmc/lcd_fmc.c diff --git a/cpu/stm32/Kconfig b/cpu/stm32/Kconfig index 1641e79bc5..e714eca3c3 100644 --- a/cpu/stm32/Kconfig +++ b/cpu/stm32/Kconfig @@ -78,6 +78,7 @@ rsource "periph/Kconfig.fmc" if TEST_KCONFIG +rsource "lcd_fmc/Kconfig" rsource "periph/Kconfig" rsource "stmclk/Kconfig" rsource "vectors/Kconfig" diff --git a/cpu/stm32/Makefile b/cpu/stm32/Makefile index 5a56d50d65..b7de58ef40 100644 --- a/cpu/stm32/Makefile +++ b/cpu/stm32/Makefile @@ -6,4 +6,8 @@ ifneq (,$(filter bootloader_stm32,$(USEMODULE))) DIRS += bootloader endif +ifneq (,$(filter lcd_fmc,$(USEMODULE))) + DIRS += lcd_fmc +endif + include $(RIOTBASE)/Makefile.base diff --git a/cpu/stm32/Makefile.dep b/cpu/stm32/Makefile.dep index 2b85221dc1..b1aca8e5be 100644 --- a/cpu/stm32/Makefile.dep +++ b/cpu/stm32/Makefile.dep @@ -54,6 +54,10 @@ ifneq (,$(filter stm32_eth,$(USEMODULE))) endif endif +ifneq (,$(filter lcd_parallel_ll_mcu,$(USEMODULE))) + USEMODULE += lcd_fmc +endif + ifneq (,$(filter periph_can,$(FEATURES_USED))) FEATURES_REQUIRED += periph_gpio FEATURES_REQUIRED += periph_gpio_irq diff --git a/cpu/stm32/include/lcd_fmc.h b/cpu/stm32/include/lcd_fmc.h new file mode 100644 index 0000000000..c95b95126f --- /dev/null +++ b/cpu/stm32/include/lcd_fmc.h @@ -0,0 +1,60 @@ +/* + * Copyright (C) 2023 Gunar Schorcht + * + * This file is subject to the terms and conditions of the GNU Lesser + * General Public License v2.1. See the file LICENSE in the top level + * directory for more details. + */ + +/** + * @defgroup cpu_stm32_lcd_fmc STM32 FMC/FSMC LCD low-level parallel interface driver + * @ingroup cpu_stm32 + * + * @{ + */ + +#ifndef LCD_FMC_H +#define LCD_FMC_H + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @brief Number of LCDs using FMC banks + * + * It represents the number of elements in LCD FMC bank descriptor array of + * type @ref lcd_fmc_desc_t. Because it is used by the preprocessor, it has + * to be defined as a number. It is not possible to use the @ref ARRAY_SIZE + * macro here. + * + * @note `LCD_FMC_NUMOF` has to be equal to the number of elements in the + * LCD FMC bank descriptor array of type @ref lcd_fmc_desc_t. + */ +#if DOXYGEN +#define LCD_FMC_NUMOF 1 +#endif + +/** + * @brief Descriptor of the FMC bank used for a LCD + * + * The board definition has to specify the array @ref lcd_fmc_desc of type + * @ref lcd_fmc_desc_t which defines the FMC banks and the address offsets used + * for the LCD displays that are connected to FMC banks. + * + * @note In the case that multiple LCDs are connected to FMC banks, the FMC + * bank descriptors for LCDs of type @ref lcd_fmc_desc_t + * must be defined in same order as the LCD devices. + */ +typedef struct { + const fmc_bank_conf_t *bank; /**< FMC bank config used for the LCD */ + uint32_t cmd_offset; /**< offset to the bank address used for commands */ + uint32_t data_offset; /**< offset to the bank address used for data */ +} lcd_fmc_desc_t; + +#ifdef __cplusplus +} +#endif + +#endif /* LCD_FMC_H */ +/** @} */ diff --git a/cpu/stm32/include/periph/cpu_fmc.h b/cpu/stm32/include/periph/cpu_fmc.h index 53b69cf3e2..221d4de820 100644 --- a/cpu/stm32/include/periph/cpu_fmc.h +++ b/cpu/stm32/include/periph/cpu_fmc.h @@ -64,6 +64,17 @@ extern "C" { #endif +/** + * @brief Gives the configuration of n-th bank + * + * This macro gives a pointer to the n-th entry of type @ref fmc_bank_conf_t of + * the banks configured by the board in the @ref fmc_bank_config array. n is in + * the range 0 ... @ref FMC_BANK_NUMOF - 1. + */ +#ifndef FMC_BANK_CONFIG +#define FMC_BANK_CONFIG(n) (&fmc_bank_config[n]) +#endif + /** * @brief Number of data pins used * diff --git a/cpu/stm32/lcd_fmc/Kconfig b/cpu/stm32/lcd_fmc/Kconfig new file mode 100644 index 0000000000..96a3da5c5e --- /dev/null +++ b/cpu/stm32/lcd_fmc/Kconfig @@ -0,0 +1,13 @@ +# Copyright (c) 2023 Gunar Schorcht +# +# This file is subject to the terms and conditions of the GNU Lesser +# General Public License v2.1. See the file LICENSE in the top level +# directory for more details. +# + +config MODULE_LCD_FMC + bool + depends on MODULE_LCD + select MODULE_PERIPH_FMC + select MODULE_PERIPH_FMC_NOR_SRAM + default y if HAVE_LCD_PARALLEL_LL_MCU diff --git a/cpu/stm32/lcd_fmc/Makefile b/cpu/stm32/lcd_fmc/Makefile new file mode 100644 index 0000000000..3a49fc191f --- /dev/null +++ b/cpu/stm32/lcd_fmc/Makefile @@ -0,0 +1,3 @@ +MODULE = lcd_fmc + +include $(RIOTBASE)/Makefile.base diff --git a/cpu/stm32/lcd_fmc/lcd_fmc.c b/cpu/stm32/lcd_fmc/lcd_fmc.c new file mode 100644 index 0000000000..844bf7e215 --- /dev/null +++ b/cpu/stm32/lcd_fmc/lcd_fmc.c @@ -0,0 +1,176 @@ +/* + * Copyright (C) 2023 Gunar Schorcht + * + * This file is subject to the terms and conditions of the GNU Lesser + * General Public License v2.1. See the file LICENSE in the top level + * directory for more details. + */ + +/** + * @ingroup cpu_stm32 + * @ingroup drivers_periph_fmc + * @{ + * + * @file + * @brief FMC peripheral driver implementation + * + * @author Gunar Schorcht + * @} + */ + +#include + +#include "periph/gpio.h" +#include "lcd.h" +#include "lcd_internal.h" +#include "ztimer.h" + +#define ENABLE_DEBUG 0 +#include "debug.h" + +#ifndef LCD_FMC_NUMOF +#define LCD_FMC_NUMOF 1 +#endif + +#define FMC_LCD_CMD(d) (*((__IO uint16_t *)(d->bank->address + d->cmd_offset))) +#define FMC_LCD_DATA(d) (*((__IO uint16_t *)(d->bank->address + d->data_offset))) + +/* sanity check */ +static_assert(LCD_FMC_NUMOF == ARRAY_SIZE(lcd_fmc_desc), + "LCD_FMC_NUMOF is not equal to the number of elements in lcd_fmc_desc"); + +#if LCD_FMC_NUMOF > 1 +/* In the case that multiple LCDs are connected to FMC banks, an array + * for mapping the LCD device pointer to the FMC bank descriptor is used. + * This requires that the FMC bank descriptors for LCDs in `lcd_fmc_desc` + * are defined in same order as the LCD devices. */ +static lcd_t *_lcd_fmc_desc_map[LCD_FMC_NUMOF]; +static uint8_t _lcd_index = 0; + +static inline uint8_t _dev_to_lcd_fmc_desc(lcd_t *dev) +{ + for (uint8_t i = 0; i < LCD_FMC_NUMOF; i++) { + if (_lcd_fmc_desc_map[i] == dev) { + return i; + } + } + assert(false); +} +#endif + +static void lcd_ll_mcu_init(lcd_t *dev) +{ +#if LCD_FMC_NUMOF > 1 + /* The FMC bank descriptors for LCDs in `lcd_fmc_desc` must be defined + * in same order as the LCD display devices. We suppose that the + * LCDs are initialized in that order. */ + assert(_lcd_index < LCD_FMC_NUMOF); + _lcd_fmc_desc_map[_lcd_index++] = dev; +#else + (void)dev; +#endif +} + +static void lcd_ll_mcu_set_data_dir(lcd_t *dev, bool output) +{ + /* no action needed */ + (void)dev; + (void)output; +} + +static void lcd_ll_mcu_cmd_start(lcd_t *dev, uint8_t cmd, bool cont) +{ + DEBUG("[lcd_ll_mcu] write cmd: %02x\n", cmd); + + (void)cont; +#if LCD_FMC_NUMOF > 1 + const lcd_fmc_desc_t *desc = &lcd_fmc_desc[_dev_to_lcd_fmc_desc(dev)]; +#else + (void)dev; + const lcd_fmc_desc_t *desc = lcd_fmc_desc; +#endif + + FMC_LCD_CMD(desc) = cmd; + /* data synchronization barrier seems to be necessary on some STM32 MCUs. */ + __DSB(); +} + +static void lcd_ll_mcu_write_byte(lcd_t *dev, bool cont, uint8_t out) +{ + DEBUG("[lcd_ll_mcu] write byte: %02x\n", out); + + (void)cont; +#if LCD_FMC_NUMOF > 1 + const lcd_fmc_desc_t *desc = &lcd_fmc_desc[_dev_to_lcd_fmc_desc(dev)]; +#else + (void)dev; + const lcd_fmc_desc_t *desc = lcd_fmc_desc; +#endif + + FMC_LCD_DATA(desc) = out; + /* data synchronization barrier seems to be necessary on some STM32 MCUs. */ + __DSB(); +} + +static uint8_t lcd_ll_mcu_read_byte(lcd_t *dev, bool cont) +{ + (void)cont; +#if LCD_FMC_NUMOF > 1 + const lcd_fmc_desc_t *desc = &lcd_fmc_desc[_dev_to_lcd_fmc_desc(dev)]; +#else + (void)dev; + const lcd_fmc_desc_t *desc = lcd_fmc_desc; +#endif + + uint8_t in = FMC_LCD_DATA(desc); + DEBUG("[lcd_ll_mcu] read byte: %02x\n", in); + return in; +} + +#if IS_USED(MODULE_LCD_PARALLEL_16BIT) + +static void lcd_ll_mcu_write_word(lcd_t *dev, bool cont, uint16_t out) +{ + DEBUG("[lcd_ll_mcu] write word: %04x\n", out); + + (void)cont; +#if LCD_FMC_NUMOF > 1 + const lcd_fmc_desc_t *desc = &lcd_fmc_desc[_dev_to_lcd_fmc_desc(dev)]; +#else + (void)dev; + const lcd_fmc_desc_t *desc = lcd_fmc_desc; +#endif + + FMC_LCD_DATA(desc) = out; + /* data synchronization barrier seems to be necessary on some STM32 MCUs. */ + __DSB(); +} + +static uint16_t lcd_ll_mcu_read_word(lcd_t *dev, bool cont) +{ + (void)cont; +#if LCD_FMC_NUMOF > 1 + const lcd_fmc_desc_t *desc = &lcd_fmc_desc[_dev_to_lcd_fmc_desc(dev)]; +#else + (void)dev; + const lcd_fmc_desc_t *desc = lcd_fmc_desc; +#endif + + uint16_t in = FMC_LCD_DATA(desc); + DEBUG("[lcd_ll_mcu] read word: %04x\n", in); + return in; +} + +#endif /* MODULE_LCD_PARALLEL_16BIT */ + +const lcd_ll_par_driver_t lcd_ll_par_driver = { + .init = lcd_ll_mcu_init, + .set_data_dir = lcd_ll_mcu_set_data_dir, + .cmd_start = lcd_ll_mcu_cmd_start, + .write_byte = lcd_ll_mcu_write_byte, + .read_byte = lcd_ll_mcu_read_byte, +#if IS_USED(MODULE_LCD_PARALLEL_16BIT) + .write_word = lcd_ll_mcu_write_word, + .read_word = lcd_ll_mcu_read_word, +#endif +}; From 71a97c2ee9a892803ecb52c2bb7eda9d8c2cb0f6 Mon Sep 17 00:00:00 2001 From: Gunar Schorcht Date: Fri, 22 Sep 2023 17:08:37 +0200 Subject: [PATCH 2/9] boards/stm32f723e-disco: enable FMC support for LCD --- boards/stm32f723e-disco/Kconfig | 1 + boards/stm32f723e-disco/Makefile.dep | 2 + boards/stm32f723e-disco/include/periph_conf.h | 43 +++++++++++++++++++ 3 files changed, 46 insertions(+) diff --git a/boards/stm32f723e-disco/Kconfig b/boards/stm32f723e-disco/Kconfig index d61d833a45..31a6910b16 100644 --- a/boards/stm32f723e-disco/Kconfig +++ b/boards/stm32f723e-disco/Kconfig @@ -39,6 +39,7 @@ config BOARD_STM32F723E_DISCO select HAVE_FT5X06 select HAVE_ST7789 select HAVE_LCD_PARALLEL_16BIT if MODULE_ST7789 + select HAVE_LCD_PARALLEL_LL_MCU if MODULE_ST7789 select MODULE_PERIPH_UART_HW_FC if HAS_PERIPH_UART_HW_FC && MODULE_PERIPH_UART # Workaround due to stdout only working with stdin enabled diff --git a/boards/stm32f723e-disco/Makefile.dep b/boards/stm32f723e-disco/Makefile.dep index 9547cf1ae5..3dd06f4f64 100644 --- a/boards/stm32f723e-disco/Makefile.dep +++ b/boards/stm32f723e-disco/Makefile.dep @@ -25,6 +25,8 @@ endif ifneq (,$(filter st7789,$(USEMODULE))) USEMODULE += lcd_parallel_16bit + USEMODULE += lcd_parallel_ll_mcu + FEATURES_REQUIRED += periph_fmc_nor_sram endif # TODO: remove the stdin dependency diff --git a/boards/stm32f723e-disco/include/periph_conf.h b/boards/stm32f723e-disco/include/periph_conf.h index 4a1ccf3493..91d6c893ff 100644 --- a/boards/stm32f723e-disco/include/periph_conf.h +++ b/boards/stm32f723e-disco/include/periph_conf.h @@ -42,6 +42,7 @@ #else #include "cfg_usb_otg_fs.h" #endif +#include "lcd_fmc.h" #ifdef __cplusplus extern "C" { @@ -325,6 +326,29 @@ static const fmc_bank_conf_t fmc_bank_config[] = { .bus_turnaround = 3, }, /* 3 HCLKs a 4.63 ns */ }, }, + /* bank 1, subbank 2 is used for LCD with asynchronuous + * access in Mode 1, i.e. write timings are not used */ + { + .bank = FMC_BANK_1, + .mem_type = FMC_SRAM, + .data_width = FMC_BUS_WIDTH_16BIT, + .address = 0x64000000, /* Bank 1, subbank 2 is mapped to 0x64000000 */ + .size = 4, /* 1 word for command @ 0x64000000 and + 1 word for data @ 0x64000001 */ + .nor_sram = { + .sub_bank = 2, + .ext_mode = false, /* Mode 1 used, no separate w_timing */ + /* timing requirements for ST7789H2: + - t_AST min 0 ns (Address setup time) + - t_DST min 10 ns (Data setup time) + - t_WRL min 15 ns (WE LOW time) + - t_WRH min 15 ns (WE HIGH time) + - t_WRC min 66 ns (WE cycle time) */ + .r_timing = { .addr_setup = 2, /* t_AST = 10 ns (2 HCLKs a 4.63 ns) */ + .data_setup = 8, /* t_DST = 37 ns (8 HCLKs a 4.63 ns) */ + .bus_turnaround = 5, }, /* t_WRH = 23 ns (5 HCLKs a 4.63 ns) */ + }, + }, }; /** @@ -333,6 +357,25 @@ static const fmc_bank_conf_t fmc_bank_config[] = { #define FMC_BANK_NUMOF ARRAY_SIZE(fmc_bank_config) /** @} */ +/** + * @brief Descriptors of FMC banks used for LCDs + */ +static const lcd_fmc_desc_t lcd_fmc_desc[] = { + { + .bank = FMC_BANK_CONFIG(1), /* second bank (fmc_bank_config[1]) is used */ + .cmd_offset = 0x0, /* address 0x64000000 (offset 0x0) used for commands */ + .data_offset = 0x2, /* address 0x64000002 (offset 0x2) used for commands */ + } +}; + +/** + * @brief Number of LCDs using FMC banks + * + * Because it is used by the preprocessor it has to be a number. + * The @ref ARRAY_SIZE can't be used here. + */ +#define LCD_FMC_NUMOF 1 + #ifdef __cplusplus } #endif From eb9515132c1e7f9ec5adb1d7060d58c1ab27ca44 Mon Sep 17 00:00:00 2001 From: Gunar Schorcht Date: Fri, 22 Sep 2023 17:09:46 +0200 Subject: [PATCH 3/9] boards/stm32l496g-disco: enable FMC support for LCD --- boards/stm32l496g-disco/Kconfig | 1 + boards/stm32l496g-disco/Makefile.dep | 2 + boards/stm32l496g-disco/include/periph_conf.h | 44 +++++++++++++++++++ 3 files changed, 47 insertions(+) diff --git a/boards/stm32l496g-disco/Kconfig b/boards/stm32l496g-disco/Kconfig index e50d8e4843..e8db1dc024 100644 --- a/boards/stm32l496g-disco/Kconfig +++ b/boards/stm32l496g-disco/Kconfig @@ -45,6 +45,7 @@ config BOARD_STM32L496G_DISCO select HAVE_FT5X06 select HAVE_ST7789 select HAVE_LCD_PARALLEL_16BIT if MODULE_ST7789 + select HAVE_LCD_PARALLEL_LL_MCU if MODULE_ST7789 select MODULE_PERIPH_LPUART if MODULE_PERIPH_UART select MODULE_PERIPH_UART_HW_FC if MODULE_PERIPH_UART && !MODULE_PERIPH_SPI_STMOD && HAS_PERIPH_UART_HW_FC diff --git a/boards/stm32l496g-disco/Makefile.dep b/boards/stm32l496g-disco/Makefile.dep index c63761b6b3..f231d8bf46 100644 --- a/boards/stm32l496g-disco/Makefile.dep +++ b/boards/stm32l496g-disco/Makefile.dep @@ -28,4 +28,6 @@ endif ifneq (,$(filter st7789,$(USEMODULE))) USEMODULE += lcd_parallel_16bit + USEMODULE += lcd_parallel_ll_mcu + FEATURES_REQUIRED += periph_fmc_nor_sram endif diff --git a/boards/stm32l496g-disco/include/periph_conf.h b/boards/stm32l496g-disco/include/periph_conf.h index 7fb21039b9..0e6d5a5e6f 100644 --- a/boards/stm32l496g-disco/include/periph_conf.h +++ b/boards/stm32l496g-disco/include/periph_conf.h @@ -30,6 +30,7 @@ #include "clk_conf.h" #include "cfg_rtt_default.h" #include "cfg_usb_otg_fs.h" +#include "lcd_fmc.h" #ifdef __cplusplus extern "C" { @@ -253,12 +254,55 @@ static const fmc_bank_conf_t fmc_bank_config[] = { .bus_turnaround = 1, }, /* 1 HCLK a 12.5 ns */ }, }, + /* bank 1, subbank 1 is used for LCD with asynchronuous + * access in Mode 1, i.e. write timings are not used */ + { + .bank = FMC_BANK_1, + .mem_type = FMC_SRAM, + .data_width = FMC_BUS_WIDTH_16BIT, + .address = 0x60000000, /* Bank 1, subbank 1 is mapped to 0x60000000 */ + .size = 2, /* 1 word for command @ 0x60000000 and + 1 word for data @ 0x60080000 */ + .nor_sram = { + .sub_bank = 1, + .ext_mode = false, /* Mode 1 used, no separate w_timing */ + /* timing requirements for ST7789H2: + - t_AST min 0 ns (Address setup time) + - t_DST min 10 ns (Data setup time) + - t_WRL min 15 ns (WE LOW time) + - t_WRH min 15 ns (WE HIGH time) + - t_WRC min 66 ns (WE cycle time) */ + .r_timing = { .addr_setup = 1, /* t_AST = 12 ns (1 HCLKs a 12.5 ns) */ + .data_setup = 3, /* t_DST = 37 ns (3 HCLKs a 12.5 ns) */ + .bus_turnaround = 2, }, /* t_WRH = 25 ns (2 HCLKs a 12.5 ns) */ + }, + }, }; /** * @brief Number of configured FMC banks */ #define FMC_BANK_NUMOF ARRAY_SIZE(fmc_bank_config) + +/** + * @brief Descriptors of FMC banks used for LCDs + */ +static const lcd_fmc_desc_t lcd_fmc_desc[] = { + { + .bank = FMC_BANK_CONFIG(1), /* second bank (fmc_bank_config[1]) is used */ + .cmd_offset = 0x0, /* address 0x60000000 (offset 0x00000) used for commands */ + .data_offset = 0x80000, /* address 0x60080000 (offset 0x80000) used for data */ + } +}; + +/** + * @brief Number of LCDs using FMC banks + * + * Because it is used by the preprocessor it has to be a number. + * The @ref ARRAY_SIZE can't be used here. + */ +#define LCD_FMC_NUMOF 1 + /** @} */ /** From 391f303d41b61e55a71c2dbd15b42abf8f7e1d73 Mon Sep 17 00:00:00 2001 From: Gunar Schorcht Date: Sun, 30 Jul 2023 16:16:33 +0200 Subject: [PATCH 4/9] tests/drivers/st77xx: add benchmarking --- tests/drivers/st77xx/Makefile | 1 + tests/drivers/st77xx/app.config.test | 1 + tests/drivers/st77xx/main.c | 16 ++++++++++++---- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/tests/drivers/st77xx/Makefile b/tests/drivers/st77xx/Makefile index d833180802..742b0e7101 100644 --- a/tests/drivers/st77xx/Makefile +++ b/tests/drivers/st77xx/Makefile @@ -23,6 +23,7 @@ endif DRIVER ?= st7735 USEMODULE += $(DRIVER) +USEMODULE += benchmark USEMODULE += ztimer USEMODULE += ztimer_msec diff --git a/tests/drivers/st77xx/app.config.test b/tests/drivers/st77xx/app.config.test index 375fca9b18..61d5860806 100644 --- a/tests/drivers/st77xx/app.config.test +++ b/tests/drivers/st77xx/app.config.test @@ -1,5 +1,6 @@ # this file enables modules defined in Kconfig. Do not use this file for # application configuration. This is only needed during migration. +CONFIG_MODULE_BENCHMARK=y CONFIG_MODULE_ST77XX=y CONFIG_MODULE_ZTIMER=y CONFIG_MODULE_ZTIMER_MSEC=y diff --git a/tests/drivers/st77xx/main.c b/tests/drivers/st77xx/main.c index d6bfffec4d..723543ae68 100644 --- a/tests/drivers/st77xx/main.c +++ b/tests/drivers/st77xx/main.c @@ -23,6 +23,7 @@ #include #include "timex.h" #include "ztimer.h" +#include "benchmark.h" #include "board.h" #include "lcd.h" #include "lcd_internal.h" @@ -92,14 +93,21 @@ int main(void) lcd_invert_off(&dev); puts("lcd TFT display normal"); - puts("lcd TFT display clear screen"); - lcd_fill(&dev, 0, dev.params->lines, 0, dev.params->rgb_channels, 0x0000); + puts("lcd TFT display clear screen with benchmarking"); + BENCHMARK_FUNC("fill", 1, + lcd_fill(&dev, 0, dev.params->lines, 0, dev.params->rgb_channels, 0x0000)); + #ifndef CONFIG_NO_RIOT_IMAGE + printf("Write pixmap of size %u x %u with benchmarking\n", + RIOT_LOGO_WIDTH, RIOT_LOGO_HEIGHT); /* Approximate middle of the display */ uint8_t x1 = (dev.params->lines / 2) - (RIOT_LOGO_WIDTH / 2); uint8_t y1 = (dev.params->rgb_channels / 2) - (RIOT_LOGO_HEIGHT / 2); - lcd_pixmap(&dev, x1, x1 + RIOT_LOGO_WIDTH - 1, y1, y1 + RIOT_LOGO_HEIGHT - 1, - (const uint16_t *)picture); + BENCHMARK_FUNC("fill", 1, + lcd_pixmap(&dev, + x1, x1 + RIOT_LOGO_WIDTH - 1, + y1, y1 + RIOT_LOGO_HEIGHT - 1, + (const uint16_t *)picture)); #endif while (1) {} From c548efd2680b9434d31ca23af19af2cc16004606 Mon Sep 17 00:00:00 2001 From: Gunar Schorcht Date: Fri, 13 Oct 2023 16:39:14 +0200 Subject: [PATCH 5/9] tests/drivers/st77xx: blacklist nucleo-l031k6 --- tests/drivers/st77xx/Makefile.ci | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/drivers/st77xx/Makefile.ci b/tests/drivers/st77xx/Makefile.ci index 503e5a4624..ae1a170cd5 100644 --- a/tests/drivers/st77xx/Makefile.ci +++ b/tests/drivers/st77xx/Makefile.ci @@ -1,6 +1,7 @@ BOARD_INSUFFICIENT_MEMORY := \ atmega8 \ nucleo-l011k4 \ + nucleo-l031k6 \ samd10-xmini \ stk3200 \ stm32f030f4-demo \ From 4452f0729bd081bd316d145b55db68b5288970e5 Mon Sep 17 00:00:00 2001 From: Marian Buschsieweke Date: Mon, 16 Oct 2023 12:01:15 +0200 Subject: [PATCH 6/9] boards/lsn50: change image Either the wiki is down, or the image was removed from upstream. This replaces it with the same image hosted on the zephyr doc. As a site effect, code spell likes the new URL much more. --- boards/lsn50/doc.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/boards/lsn50/doc.txt b/boards/lsn50/doc.txt index e7ade75df3..39a6ecf8f3 100644 --- a/boards/lsn50/doc.txt +++ b/boards/lsn50/doc.txt @@ -7,7 +7,7 @@ This board is a waterproof board with a LoRa SX1276 radio. -![LSN50](https://wiki.dragino.com/images/thumb/e/e9/Introdution.png/600px-Introdution.png) +![LSN50](https://docs.zephyrproject.org/latest/_images/dragino_lsn50.jpg) Documentation of the board is available [here](https://wiki.dragino.com/index.php?title=Lora_Sensor_Node-LSN50). From edc43201dbf023ca86fd0d8875aeafaecda438ba Mon Sep 17 00:00:00 2001 From: Marian Buschsieweke Date: Mon, 16 Oct 2023 12:17:48 +0200 Subject: [PATCH 7/9] tree-wide: fix typos in doc and comments This should not change any generated binary --- CODING_CONVENTIONS.md | 2 +- boards/airfy-beacon/doc.txt | 2 +- boards/frdm-k64f/doc.txt | 2 +- boards/iotlab-m3/doc.txt | 2 +- boards/spark-core/doc.txt | 2 +- core/include/mutex.h | 2 +- core/msg.c | 4 ++-- cpu/esp8266/periph/adc.c | 2 +- cpu/esp_common/esp-wifi/doc.txt | 2 +- cpu/nrf52/radio/nrf802154/nrf802154_radio.c | 2 +- cpu/sam0_common/periph/timer.c | 2 +- cpu/sam0_common/sam0_sdhc/sdhc.c | 2 +- cpu/stm32/cpu_init.c | 2 +- cpu/stm32/periph/can.c | 2 +- drivers/include/at86rf2xx.h | 4 ++-- drivers/include/bme680.h | 2 +- drivers/include/l3gxxxx.h | 4 ++-- drivers/include/nrf24l01p.h | 2 +- drivers/include/sdmmc/sdmmc.h | 4 ++-- drivers/include/shtcx.h | 2 +- drivers/mpu9x50/mpu9x50.c | 6 +++--- drivers/saul/init_devs/auto_init_sdp3x.c | 2 +- makefiles/defaultmodules_deps.inc.mk | 4 ++-- pkg/flashdb/doc.txt | 4 ++-- pkg/micropython/doc.txt | 2 +- pkg/nimble/contrib/nimble_riot.c | 2 +- pkg/tinyusb/hw/include/nrf52/nrf_clock.h | 2 +- release-notes.txt | 8 ++++---- sys/cpp11-compat/include/riot/thread.hpp | 2 +- sys/crypto/chacha.c | 2 +- sys/fido2/ctap/ctap.c | 6 +++--- sys/fido2/ctap/ctap_cbor.c | 2 +- sys/fido2/ctap/transport/hid/ctap_hid.c | 2 +- sys/hashes/md5.c | 2 +- sys/include/congure/test.h | 2 +- sys/include/crypto/modes/ecb.h | 2 +- sys/include/hashes/sha3.h | 2 +- sys/include/net/asymcute.h | 2 +- sys/include/net/emcute.h | 2 +- sys/include/net/gnrc.h | 2 +- sys/include/net/gnrc/netreg.h | 2 +- sys/include/net/gnrc/sixlowpan/frag/vrb.h | 2 +- sys/include/net/gnrc/tcp.h | 2 +- sys/include/net/nanocoap.h | 2 +- sys/include/net/sock.h | 2 +- sys/include/net/sock/dtls.h | 2 +- sys/include/net/sock/ip.h | 2 +- sys/include/net/sock/tcp.h | 4 ++-- sys/include/net/sock/udp.h | 2 +- sys/include/test_utils/result_output.h | 2 +- sys/include/usb/dfu.h | 2 +- sys/net/application_layer/gcoap/fileserver.c | 2 +- sys/net/gnrc/transport_layer/tcp/gnrc_tcp_pkt.c | 4 ++-- sys/psa_crypto/doc.txt | 2 +- sys/psa_crypto/include/psa_crypto_se_driver.h | 2 +- tests/drivers/candev/README.native.can.md | 2 +- .../gnrc_dhcpv6_client_stateless/tests-as-root/01-run.py | 2 +- tests/pkg/nimble_esp_wifi_coexist/README.md | 2 +- tests/pkg/tinyvcdiff/main.c | 4 ++-- tests/sys/rng/test.h | 4 ++-- tests/sys/sema_inv/main.c | 4 ++-- 61 files changed, 79 insertions(+), 79 deletions(-) diff --git a/CODING_CONVENTIONS.md b/CODING_CONVENTIONS.md index f6adb3da2d..e3f92bff21 100644 --- a/CODING_CONVENTIONS.md +++ b/CODING_CONVENTIONS.md @@ -257,7 +257,7 @@ Wrong: functionality. * Every function must be documented - including parameters and return value. -An examplary doxygen documentation in a header file can look like this. +An exemplary doxygen documentation in a header file can look like this. ``` /* diff --git a/boards/airfy-beacon/doc.txt b/boards/airfy-beacon/doc.txt index 74f52bc744..ae2c03e294 100644 --- a/boards/airfy-beacon/doc.txt +++ b/boards/airfy-beacon/doc.txt @@ -82,7 +82,7 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="3748", \ # If you share your linux system with other users, or just don't like the # idea of write permission for everybody, you can replace MODE:="0666" with # OWNER:="yourusername" to create the device owned by you, or with -# GROUP:="somegroupname" and mange access using standard unix groups. +# GROUP:="somegroupname" and manage access using standard unix groups. > sudo cp 49-stlinkv2.rules /etc/udev/rules.d/ > sudo udevadm control --reload-rules diff --git a/boards/frdm-k64f/doc.txt b/boards/frdm-k64f/doc.txt index 20007e971d..821621b851 100644 --- a/boards/frdm-k64f/doc.txt +++ b/boards/frdm-k64f/doc.txt @@ -55,7 +55,7 @@ See also the ARMmbed [instructions](https://developer.mbed.org/platforms/FRDM-K64F/#getting-started- with-mbed). -## Updating the Booloader +## Updating the Bootloader A update of CMSIS-DAP firmware is necessary to using the board with OpenOCD. A good step by step guide is available [here](https://developer.mbed.org/handbook/Firmware-FRDM-K64F). diff --git a/boards/iotlab-m3/doc.txt b/boards/iotlab-m3/doc.txt index 42905ee655..980a49da23 100644 --- a/boards/iotlab-m3/doc.txt +++ b/boards/iotlab-m3/doc.txt @@ -76,7 +76,7 @@ b c ``` For best debugging experience also change the `-Os` flag in -`Makefile.inlcude`'s `CFLAGS` variable to `-O0`. +`Makefile.include`'s `CFLAGS` variable to `-O0`. ## Details The M3 Open Node can reset, debug and program the STM32 on JTAG through the diff --git a/boards/spark-core/doc.txt b/boards/spark-core/doc.txt index 87c833abe7..7452595402 100644 --- a/boards/spark-core/doc.txt +++ b/boards/spark-core/doc.txt @@ -52,7 +52,7 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="1d50", ATTRS{idProduct}=="607f", \ # If you share your linux system with other users, or just don't like the # idea of write permission for everybody, you can replace MODE:="0666" with # OWNER:="yourusername" to create the device owned by you, or with -# GROUP:="somegroupname" and mange access using standard unix groups. +# GROUP:="somegroupname" and manage access using standard unix groups. sudo cp 50-openmoko.rules /etc/udev/rules.d/ sudo udevadm control --reload-rules diff --git a/core/include/mutex.h b/core/include/mutex.h index 1055bae145..d4eb46415f 100644 --- a/core/include/mutex.h +++ b/core/include/mutex.h @@ -392,7 +392,7 @@ void mutex_unlock_and_sleep(mutex_t *mutex); * @ref mutex_lock_cancelable. (You can reinitialize the same memory * to safely reuse it.) * @warning You ***MUST NOT*** call this function once the thread referred to by - * @p mc re-uses the mutex object referred to by @p mc (not counting + * @p mc reuses the mutex object referred to by @p mc (not counting * the call to @ref mutex_lock_cancelable @p mc was used in). * @note It is safe to call this function from IRQ context, e.g. from a timer * interrupt. diff --git a/core/msg.c b/core/msg.c index 17462db85e..91919442f3 100644 --- a/core/msg.c +++ b/core/msg.c @@ -216,7 +216,7 @@ static int _msg_send_oneway(msg_t *m, kernel_pid_t target_pid) sched_set_status(target, STATUS_PENDING); - /* Interrupts are disabled here, we can set / re-use + /* Interrupts are disabled here, we can set / reuse sched_context_switch_request. */ sched_context_switch_request = 1; @@ -280,7 +280,7 @@ int msg_send_receive(msg_t *m, msg_t *reply, kernel_pid_t target_pid) sched_set_status(me, STATUS_REPLY_BLOCKED); me->wait_data = reply; - /* we re-use (abuse) reply for sending, because wait_data might be + /* we reuse (abuse) reply for sending, because wait_data might be * overwritten if the target is not in RECEIVE_BLOCKED */ *reply = *m; /* msg_send blocks until reply received */ diff --git a/cpu/esp8266/periph/adc.c b/cpu/esp8266/periph/adc.c index 3020b22dad..8c086f013a 100644 --- a/cpu/esp8266/periph/adc.c +++ b/cpu/esp8266/periph/adc.c @@ -37,7 +37,7 @@ int adc_init(adc_t line) { CHECK_PARAM_RET (line < ADC_NUMOF, -1) - /* no special inialization needed */ + /* no special initialization needed */ return 0; } diff --git a/cpu/esp_common/esp-wifi/doc.txt b/cpu/esp_common/esp-wifi/doc.txt index 16eba4936d..a3e5ce9237 100644 --- a/cpu/esp_common/esp-wifi/doc.txt +++ b/cpu/esp_common/esp-wifi/doc.txt @@ -88,7 +88,7 @@ following configuration parameters have to be defined: Parameter | Default | Description :------------------|:----------|:------------ WIFI_SSID | "RIOT_AP" | SSID of the AP to be used. -WIFI_EAP_ID | none | Optional anonymous identity used in phase 1 (outer) EAP authentication. If it is not defined, the user name defined for phase 2 (inner) EAP authentication is used as idendity in phase 1. +WIFI_EAP_ID | none | Optional anonymous identity used in phase 1 (outer) EAP authentication. If it is not defined, the user name defined for phase 2 (inner) EAP authentication is used as identity in phase 1. WIFI_EAP_USER | none | User name used in phase 2 (inner) EAP authentication. WIFI_EAP_PASS | none | Password used in phase 2 (inner) EAP authentication. ESP_WIFI_STACKSIZE | #THREAD_STACKSIZE_DEFAULT | Stack size used for the WiFi netdev driver thread. diff --git a/cpu/nrf52/radio/nrf802154/nrf802154_radio.c b/cpu/nrf52/radio/nrf802154/nrf802154_radio.c index 1debb71af4..839a9c2633 100644 --- a/cpu/nrf52/radio/nrf802154/nrf802154_radio.c +++ b/cpu/nrf52/radio/nrf802154/nrf802154_radio.c @@ -566,7 +566,7 @@ void isr_radio(void) case STATE_ACK: _state = STATE_IDLE; - /* We disable the radio to avoid unwanted emmissions (see ERRATA + /* We disable the radio to avoid unwanted emissions (see ERRATA * ID 204, "Switching between TX and RX causes unwanted emissions") */ _disable(); diff --git a/cpu/sam0_common/periph/timer.c b/cpu/sam0_common/periph/timer.c index 4e9ccbd7f4..4c13bc2e91 100644 --- a/cpu/sam0_common/periph/timer.c +++ b/cpu/sam0_common/periph/timer.c @@ -310,7 +310,7 @@ unsigned int timer_read(tim_t tim) return 0; } - /* request syncronisation */ + /* request synchronisation */ #ifdef TC_CTRLBSET_CMD_READSYNC_Val dev(tim)->CTRLBSET.reg = TC_CTRLBSET_CMD_READSYNC; /* work around a possible hardware bug where it takes some diff --git a/cpu/sam0_common/sam0_sdhc/sdhc.c b/cpu/sam0_common/sam0_sdhc/sdhc.c index d4252a17a0..d851e8a87b 100644 --- a/cpu/sam0_common/sam0_sdhc/sdhc.c +++ b/cpu/sam0_common/sam0_sdhc/sdhc.c @@ -1038,7 +1038,7 @@ static bool sdio_test_type(sdhc_state_t *state) /* * Wait card ready - * Timeout 1s = 400KHz / ((6+4)*8) cylces = 5000 retry + * Timeout 1s = 400KHz / ((6+4)*8) cycles = 5000 retry * 6 = cmd byte size * 4(SPI) 6(MCI) = response byte size */ diff --git a/cpu/stm32/cpu_init.c b/cpu/stm32/cpu_init.c index 31ee24b2d6..4f7c46067e 100644 --- a/cpu/stm32/cpu_init.c +++ b/cpu/stm32/cpu_init.c @@ -219,7 +219,7 @@ static inline uint32_t _multi_read_reg32(volatile uint32_t *addr, bool *glitch) * Think of this as a STM32-specific version of the Rowhammer attack. * * RDP may not be set correctly due to manufacturing error, glitch or - * intentional attack. It's done thrice to reduce the probablility of a + * intentional attack. It's done thrice to reduce the probability of a * glitch attack succeeding amongst all of the multireads desgned to make it * tougher. * diff --git a/cpu/stm32/periph/can.c b/cpu/stm32/periph/can.c index 980f1d7884..73dbfad93f 100644 --- a/cpu/stm32/periph/can.c +++ b/cpu/stm32/periph/can.c @@ -480,7 +480,7 @@ static int read_frame(can_t *dev, struct can_frame *frame, int mailbox) frame->data[j] = (can->sFIFOMailBox[mailbox].RDHR >> ((j - 4) * 8)) & 0xFF; } - /* filter number matching the reveived frame */ + /* filter number matching the received frame */ /* filter = (can->sFIFOMailBox[mailbox].RDTR & CAN_RDT0R_FMI) >> CAN_RDTxR_FMI_SHIFT; */ /* Release input mailbox */ diff --git a/drivers/include/at86rf2xx.h b/drivers/include/at86rf2xx.h index 9799e0dbe8..071fca780c 100644 --- a/drivers/include/at86rf2xx.h +++ b/drivers/include/at86rf2xx.h @@ -574,7 +574,7 @@ void at86rf2xx_tx_exec(at86rf2xx_t *dev); bool at86rf2xx_cca(at86rf2xx_t *dev); /** - * @brief Enable the smart receive tecnology (SRT) + * @brief Enable the smart receive technology (SRT) * * The SRT reduces the power consumption during RX listening periods. * @@ -584,7 +584,7 @@ bool at86rf2xx_cca(at86rf2xx_t *dev); void at86rf2xx_enable_smart_idle(at86rf2xx_t *dev); /** - * @brief Disable the smart receive tecnology (SRT) + * @brief Disable the smart receive technology (SRT) * * @param[in] dev device to use * diff --git a/drivers/include/bme680.h b/drivers/include/bme680.h index 3027ac1359..8fee4e7cef 100644 --- a/drivers/include/bme680.h +++ b/drivers/include/bme680.h @@ -281,7 +281,7 @@ int bme680_force_measurement(bme680_t *dev); * * @param[in,out] dev device descriptor of the sensor * - * @return duration of one THPG measurement cylce in milliseconds. + * @return duration of one THPG measurement cycle in milliseconds. * @return < 0 on error */ int bme680_get_duration(bme680_t* dev); diff --git a/drivers/include/l3gxxxx.h b/drivers/include/l3gxxxx.h index e4340ecd81..3afc85c14b 100644 --- a/drivers/include/l3gxxxx.h +++ b/drivers/include/l3gxxxx.h @@ -633,7 +633,7 @@ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * * If module `l3gxxxx_fifo` is used, the corresponding interrupt sources can - * be testsed. + * be tested. * * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~{.c} * l3gxxxx_int_src_t int_src = l3gxxxx_wait_int(&dev); @@ -1278,7 +1278,7 @@ typedef struct { for threshold comparison */ bool and_or; /**< Combination of interrupt events (true=AND, false=OR):
- AND - all enabled axes passed their tresholds
+ AND - all enabled axes passed their thresholds
OR - at least one axis passed its threshold */ bool latch; /**< Latch the interrupt when true until the interrupt source has been read by function l3gxxxx_wait_int. */ diff --git a/drivers/include/nrf24l01p.h b/drivers/include/nrf24l01p.h index 219136f742..40cd1611ed 100644 --- a/drivers/include/nrf24l01p.h +++ b/drivers/include/nrf24l01p.h @@ -311,7 +311,7 @@ int nrf24l01p_set_address_width(const nrf24l01p_t *dev, nrf24l01p_aw_t aw); * * @ note * This function sets the payload width for one packet. If the maximum of 32 bytes is -* exeeded, this value is set to 32. +* exceeded, this value is set to 32. * * @param[in] dev Transceiver device to use. * @param[in] pipe RX pipe to set the payload width. diff --git a/drivers/include/sdmmc/sdmmc.h b/drivers/include/sdmmc/sdmmc.h index 0f0faa0bbe..aea6d9e9a8 100644 --- a/drivers/include/sdmmc/sdmmc.h +++ b/drivers/include/sdmmc/sdmmc.h @@ -36,7 +36,7 @@ * * 1. The high-level API that implements the SD Host Controller driver and * allows - * - to inititialize and identify different types of cards, + * - to initialize and identify different types of cards, * - to access them either blockwise or bytewise, * - to get information about the used card, and * - to send single commands or application specific commands to the card. @@ -676,7 +676,7 @@ typedef struct __attribute__((packed)) { /** * @brief CSD register structure Version 2.0 and Version 3.0 * - * A combined format is used vor CSD Version 2.0 and 3.0 to reduce the code + * A combined format is used for CSD Version 2.0 and 3.0 to reduce the code * size. The only difference is the bit length of `C_SIZE`. * * @see Physical Layer Simplified Specification Version 9.00 diff --git a/drivers/include/shtcx.h b/drivers/include/shtcx.h index 1c6c88637b..22c747b3fe 100644 --- a/drivers/include/shtcx.h +++ b/drivers/include/shtcx.h @@ -81,7 +81,7 @@ int8_t shtcx_init(shtcx_t* const dev, const shtcx_params_t* params); /** * @brief Reads all register values from the device. - * @details The values as raw data will be saved into reveived. + * @details The values as raw data will be saved into received. * * @param[in] dev The I2C device descriptor. * @param[in] rel_humidity Humidity in centi %. diff --git a/drivers/mpu9x50/mpu9x50.c b/drivers/mpu9x50/mpu9x50.c index 6f6d1dbf86..b31c876e4a 100644 --- a/drivers/mpu9x50/mpu9x50.c +++ b/drivers/mpu9x50/mpu9x50.c @@ -455,7 +455,7 @@ int mpu9x50_set_compass_sample_rate(mpu9x50_t *dev, uint8_t rate) /** * Initialize compass * Caution: This internal function does not acquire exclusive access to the I2C bus. - * Acquisation and release is supposed to be handled by the calling function. + * Acquisition and release is supposed to be handled by the calling function. */ static int compass_init(mpu9x50_t *dev) { @@ -524,7 +524,7 @@ static int compass_init(mpu9x50_t *dev) /** * Configure bypass mode * Caution: This internal function does not acquire exclusive access to the I2C bus. - * Acquisation and release is supposed to be handled by the calling function. + * Acquisition and release is supposed to be handled by the calling function. */ static void conf_bypass(const mpu9x50_t *dev, uint8_t bypass_enable) { @@ -548,7 +548,7 @@ static void conf_bypass(const mpu9x50_t *dev, uint8_t bypass_enable) /** * Configure low pass filter * Caution: This internal function does not acquire exclusive access to the I2C bus. - * Acquisation and release is supposed to be handled by the calling function. + * Acquisition and release is supposed to be handled by the calling function. */ static void conf_lpf(const mpu9x50_t *dev, uint16_t half_rate) { diff --git a/drivers/saul/init_devs/auto_init_sdp3x.c b/drivers/saul/init_devs/auto_init_sdp3x.c index 9c4d13ca66..f7958b777b 100644 --- a/drivers/saul/init_devs/auto_init_sdp3x.c +++ b/drivers/saul/init_devs/auto_init_sdp3x.c @@ -64,7 +64,7 @@ void auto_init_sdp3x(void) saul_reg_add(&saul_entries[se_ix]); se_ix++; - /* differential presure */ + /* differential pressure */ saul_entries[se_ix].dev = &sdp3x_devs[i]; saul_entries[se_ix].name = sdp3x_saul_info[i].name; saul_entries[se_ix].driver = &sdp3x_differential_pressure_saul_driver; diff --git a/makefiles/defaultmodules_deps.inc.mk b/makefiles/defaultmodules_deps.inc.mk index c92eb88f9d..6d2f01fcd4 100644 --- a/makefiles/defaultmodules_deps.inc.mk +++ b/makefiles/defaultmodules_deps.inc.mk @@ -1,6 +1,6 @@ # This files contains dependencies for default modules. They are parsed at the -# end of the dependency loop. They MAY inlcude new modules, but this modules -# MUST NOT have dependencies themselfs. +# end of the dependency loop. They MAY include new modules, but this modules +# MUST NOT have dependencies themselves. ifneq (,$(filter auto_init%,$(USEMODULE))) USEMODULE += preprocessor preprocessor_successor diff --git a/pkg/flashdb/doc.txt b/pkg/flashdb/doc.txt index 3d2d4f871c..5940d5f690 100644 --- a/pkg/flashdb/doc.txt +++ b/pkg/flashdb/doc.txt @@ -61,11 +61,11 @@ * ================== * To enable the Key-Value database, select the `flashdb_kvdb` module. * - * For use of the FlashDB API, reffer to the [FlashDB documentation](http://armink.gitee.io/flashdb/#/sample-kvdb-basic). + * For use of the FlashDB API, refer to the [FlashDB documentation](http://armink.gitee.io/flashdb/#/sample-kvdb-basic). * * Time series database * ==================== * To enable the Key-Value database, select the `flashdb_tsdb` module. * - * For use of the FlashDB API, reffer to the [FlashDB documentation](http://armink.gitee.io/flashdb/#/sample-tsdb-basic). + * For use of the FlashDB API, refer to the [FlashDB documentation](http://armink.gitee.io/flashdb/#/sample-tsdb-basic). */ diff --git a/pkg/micropython/doc.txt b/pkg/micropython/doc.txt index 4daafcf9de..0355cc192a 100644 --- a/pkg/micropython/doc.txt +++ b/pkg/micropython/doc.txt @@ -35,7 +35,7 @@ * The RIOT port of MicroPython currently resides in a fork at * https://github.com/kaspar030/micropython (in branch add_riot_port). It is * based on Micropython's "ports/minimal" with some extra modules enabled. - * It re-uses the gc_collect code from ports/unix, which has special support + * It reuses the gc_collect code from ports/unix, which has special support * for i386 and Cortex-M. On other platforms, it uses setjmp() to collect * registers. * diff --git a/pkg/nimble/contrib/nimble_riot.c b/pkg/nimble/contrib/nimble_riot.c index 05bf29573e..35302e2e92 100644 --- a/pkg/nimble/contrib/nimble_riot.c +++ b/pkg/nimble/contrib/nimble_riot.c @@ -142,7 +142,7 @@ void nimble_riot_init(void) while (!ble_hs_synced()) {} /* for reducing code duplication, we read our own address type once here - * so it can be re-used later on */ + * so it can be reused later on */ res = ble_hs_util_ensure_addr(0); assert(res == 0); res = ble_hs_id_infer_auto(0, &nimble_riot_own_addr_type); diff --git a/pkg/tinyusb/hw/include/nrf52/nrf_clock.h b/pkg/tinyusb/hw/include/nrf52/nrf_clock.h index 4ec451ec27..cf76aa3b0b 100644 --- a/pkg/tinyusb/hw/include/nrf52/nrf_clock.h +++ b/pkg/tinyusb/hw/include/nrf52/nrf_clock.h @@ -43,7 +43,7 @@ typedef enum { } nrf_clock_task_t; /** - * @brief Status HF clock acitvation/deactivation in `dcd_nrf52.c` + * @brief Status HF clock activation/deactivation in `dcd_nrf52.c` * * The `clock_hfxo_request` and `clock_hfxo_release` functions are used in * RIOT to enable/disable the HF clock if necessary. Since `hfclk_enable` diff --git a/release-notes.txt b/release-notes.txt index c75a0f1350..a222c8fd20 100644 --- a/release-notes.txt +++ b/release-notes.txt @@ -1442,7 +1442,7 @@ Build System / Tooling + .vscode: import initial RIOT-OS style (#18945) + build-system: add capability to execute scripts with custom executor (#18770) + dist/tools: add "RESET_PIN" value for the dwm1001 (#18815) -+ examples/gnrc_border_router: add option to re-use existing TAP ++ examples/gnrc_border_router: add option to reuse existing TAP interface (#18836) + makefiles/tools/serial.inc.mk: add support for bootterm (#18749) + tapsetup: add --loss & --delay option (#18885) @@ -3633,7 +3633,7 @@ Packages * pkg/littlefs2: bump version to 2.4.2 (#17837) * pkg/lv_drivers: initial commit (#17713) * pkg/lvgl: bump to 8.2.0 (#17681) -* pkg/lvlgl: allow cusomizing LV_MEM_SIZE (#17759) +* pkg/lvlgl: allow customizing LV_MEM_SIZE (#17759) + pkg/mbedtls: initial pkg import to use entropy module (#15671) * pkg/mynewt-core: fix semaphore (#17771) * pkg/semtech-loramac: enable setting channels mask (#17824) @@ -5848,7 +5848,7 @@ System Libraries (21) + sys/event: add periodic timeout event (#16507) + sys/ps: enable runtime_usec output for the ps command (#16470) * gnrc_dhcpv6_client_6lbr: choose downstream if as !upstream (#16530) -* net/emcute: Allow RETAIN flag to be set on incoming PUBLISHs (#16326) +* net/emcute: Allow RETAIN flag to be set on incoming PUBLISHes (#16326) * net/gnrc/rpl: use ztimer_msec if available (#16339) * net/grnc/sixlowpan/ctx: use ztimer_msec if available (#16340) * sys/arduino: replace xtimer by ztimer as high-level background timer (#15317) @@ -13615,7 +13615,7 @@ Drivers Build System ------------ + Experimental distributed building using Murdock -+ most makfiles moved from root into makefiles/ ++ most makefiles moved from root into makefiles/ + added submodule support Special Thanks diff --git a/sys/cpp11-compat/include/riot/thread.hpp b/sys/cpp11-compat/include/riot/thread.hpp index 7446c13daf..d1796df15b 100644 --- a/sys/cpp11-compat/include/riot/thread.hpp +++ b/sys/cpp11-compat/include/riot/thread.hpp @@ -317,7 +317,7 @@ void swap(thread& lhs, thread& rhs) noexcept; /** @cond INTERNAL */ template void* thread_proxy(void* vp) { - { // without this scope, the objects here are not cleaned up corrctly + { // without this scope, the objects here are not cleaned up correctly std::unique_ptr p(static_cast(vp)); auto tmp = std::get<0>(*p); std::unique_ptr data{tmp}; diff --git a/sys/crypto/chacha.c b/sys/crypto/chacha.c index 044095c654..da3f8ecc40 100644 --- a/sys/crypto/chacha.c +++ b/sys/crypto/chacha.c @@ -26,7 +26,7 @@ * - This implementation of the ChaCha stream cipher is very stripped down. * - It assumes a little-endian system. * - It is implemented for little code and data size, but will likely be - * slower than the refenrence implementation. Optimized implementation will + * slower than the reference implementation. Optimized implementation will * out-perform the code even more. */ diff --git a/sys/fido2/ctap/ctap.c b/sys/fido2/ctap/ctap.c index 9b27da5b86..4db1389459 100644 --- a/sys/fido2/ctap/ctap.c +++ b/sys/fido2/ctap/ctap.c @@ -616,7 +616,7 @@ static int _get_assertion(ctap_req_t *req_raw) goto done; } - /* find eligble credentials */ + /* find eligible credentials */ _assert_state.count = _find_matching_rks(_assert_state.rks, CTAP_MAX_EXCLUDE_LIST_SIZE, req.allow_list, @@ -693,7 +693,7 @@ static int _get_assertion(ctap_req_t *req_raw) memcpy(_assert_state.client_data_hash, req.client_data_hash, SHA256_DIGEST_LENGTH); - /* most recently created eligble rk found */ + /* most recently created eligible rk found */ rk = &_assert_state.rks[_assert_state.cred_counter++]; /* last moment where transaction can be cancelled */ @@ -780,7 +780,7 @@ static int _get_next_assertion(void) goto done; } - /* next eligble rk */ + /* next eligible rk */ rk = &_assert_state.rks[_assert_state.cred_counter]; _assert_state.cred_counter++; diff --git a/sys/fido2/ctap/ctap_cbor.c b/sys/fido2/ctap/ctap_cbor.c index daa2d96f1d..ffcde237f1 100644 --- a/sys/fido2/ctap/ctap_cbor.c +++ b/sys/fido2/ctap/ctap_cbor.c @@ -1557,7 +1557,7 @@ static int _parse_options(CborValue *it, ctap_options_t *options) } else { /* ignore unknown options */ - DEBUG("Ctap parse options, unknown uption: %s \n", key); + DEBUG("Ctap parse options, unknown option: %s \n", key); } cbor_value_advance(&map); diff --git a/sys/fido2/ctap/transport/hid/ctap_hid.c b/sys/fido2/ctap/transport/hid/ctap_hid.c index 41b2bdc21a..0149f22b19 100644 --- a/sys/fido2/ctap/transport/hid/ctap_hid.c +++ b/sys/fido2/ctap/transport/hid/ctap_hid.c @@ -395,7 +395,7 @@ static void _process_transaction(event_t *arg) _handle_init_packet(cid, bcnt, buf); } else { - /* readding deleted cid */ + /* re-adding deleted cid */ if (!_cid_exists(cid) && _add_cid(cid) == -1) { _send_error_response(cid, CTAP_HID_ERR_CHANNEL_BUSY); } diff --git a/sys/hashes/md5.c b/sys/hashes/md5.c index 71f18c060a..8acf1c0f35 100644 --- a/sys/hashes/md5.c +++ b/sys/hashes/md5.c @@ -142,7 +142,7 @@ static void permute(uint32_t abcd[4], const uint8_t block[64] ) uint32_t keep_abcd[4]; uint32_t x[16]; - /* Store the current ABCD values for later re-use */ + /* Store the current ABCD values for later reuse */ for (int i = 0; i < 4; i++) { keep_abcd[i] = abcd[i]; } diff --git a/sys/include/congure/test.h b/sys/include/congure/test.h index f76cecdabd..4b4561af00 100644 --- a/sys/include/congure/test.h +++ b/sys/include/congure/test.h @@ -144,7 +144,7 @@ int congure_test_call_setup(int argc, char **argv); * @param[in] argc Number of @p argv. Needs to be at least 2. * @param[in] argv Command line arguments. `argv[0]` needs to be the command * name and `argv[1]` needs to be a hexadecimal integer of - * format 0xXXXX, represending a pointer to the object used as + * format 0xXXXX, representing a pointer to the object used as * the `ctx` parameter for `init()`. * * This function will generate the following JSON objects in STDOUT on error: diff --git a/sys/include/crypto/modes/ecb.h b/sys/include/crypto/modes/ecb.h index 45f03c065c..35b23098ef 100644 --- a/sys/include/crypto/modes/ecb.h +++ b/sys/include/crypto/modes/ecb.h @@ -53,7 +53,7 @@ int cipher_encrypt_ecb(const cipher_t *cipher, const uint8_t *input, * @param input pointer to input data to decrypt * @param length length of the input data * @param output pointer to allocated memory for plaintext data. It has to - * be of size `lengh`. + * be of size `length`. * * @return Length of decrypted data on a successful decryption * @return A negative error code if something went wrong diff --git a/sys/include/hashes/sha3.h b/sys/include/hashes/sha3.h index 505448a7a0..8bd5c04d0f 100644 --- a/sys/include/hashes/sha3.h +++ b/sys/include/hashes/sha3.h @@ -71,7 +71,7 @@ typedef struct { * * @param[out] ctx context handle to initialise * @param[in] rate the desired rate of the sponge - * @param[in] capacity the desired capcity of the sponge + * @param[in] capacity the desired capacity of the sponge * @param[in] delimitedSuffix suffix to be appended to the message after the absorbation phase */ void Keccak_init(keccak_state_t *ctx, unsigned int rate, unsigned int capacity, diff --git a/sys/include/net/asymcute.h b/sys/include/net/asymcute.h index 3764a28199..c6deef203b 100644 --- a/sys/include/net/asymcute.h +++ b/sys/include/net/asymcute.h @@ -288,7 +288,7 @@ struct asymcute_con { */ struct asymcute_topic { asymcute_con_t *con; /**< connection used for registration */ - char name[CONFIG_ASYMCUTE_TOPIC_MAXLEN + 1]; /**< topic string (ACSII only) */ + char name[CONFIG_ASYMCUTE_TOPIC_MAXLEN + 1]; /**< topic string (ASCII only) */ uint8_t flags; /**< normal, short, or pre-defined */ uint16_t id; /**< topic id */ }; diff --git a/sys/include/net/emcute.h b/sys/include/net/emcute.h index 9f47cd3aa4..48ffff7a91 100644 --- a/sys/include/net/emcute.h +++ b/sys/include/net/emcute.h @@ -214,7 +214,7 @@ enum { * @brief MQTT-SN topic */ typedef struct { - const char *name; /**< topic string (currently ACSII only) */ + const char *name; /**< topic string (currently ASCII only) */ uint16_t id; /**< topic id, as assigned by the gateway */ } emcute_topic_t; diff --git a/sys/include/net/gnrc.h b/sys/include/net/gnrc.h index aadaffb781..02821b2ccd 100644 --- a/sys/include/net/gnrc.h +++ b/sys/include/net/gnrc.h @@ -183,7 +183,7 @@ * First, the data to be sent is added to the @ref net_gnrc_pktbuf "packet buffer". * This ensures its intactness during the sending process. After the data to be * sent has been added to the packet buffer, its parent data structure can safely - * be freed or re-used. + * be freed or reused. * * Then, the @ref net_gnrc_pkt "pkt" will be sent to all threads that registered * for @ref GNRC_NETTYPE_UDP and the demux context `80`. Every registered thread diff --git a/sys/include/net/gnrc/netreg.h b/sys/include/net/gnrc/netreg.h index a733428928..c9b9c01e27 100644 --- a/sys/include/net/gnrc/netreg.h +++ b/sys/include/net/gnrc/netreg.h @@ -227,7 +227,7 @@ typedef struct gnrc_netreg_entry { * There is an exclusive counterpart to the lock, which is * internal to netreg (and used through functions such as @ref * gnrc_netreg_register and @ref gnrc_netreg_unregister). The current - * implementation priorizes shared locks. This means that shared locks are + * implementation prioritizes shared locks. This means that shared locks are * generally acquired fast (they only block if an exclusive operation has * already started), but constant access through shared locks might starve * registration and deregistration. diff --git a/sys/include/net/gnrc/sixlowpan/frag/vrb.h b/sys/include/net/gnrc/sixlowpan/frag/vrb.h index 8ea59f5198..daabe8225f 100644 --- a/sys/include/net/gnrc/sixlowpan/frag/vrb.h +++ b/sys/include/net/gnrc/sixlowpan/frag/vrb.h @@ -87,7 +87,7 @@ gnrc_sixlowpan_frag_vrb_t *gnrc_sixlowpan_frag_vrb_add( * @brief Generate reassembly buffer from a header's forwarding information. * * @param[in] base Base data of the datagram. Must not be `NULL`. - * @param[in] netif Restict route to this interface. May be `NULL` for any + * @param[in] netif Restrict route to this interface. May be `NULL` for any * interface. * @param[in] hdr Header from which to take the forwarding information from * (e.g. IPv6 header implies `hdr->type == GNRC_NETTYPE_IPV6`). diff --git a/sys/include/net/gnrc/tcp.h b/sys/include/net/gnrc/tcp.h index 6dd2360e44..9b37c58a09 100644 --- a/sys/include/net/gnrc/tcp.h +++ b/sys/include/net/gnrc/tcp.h @@ -49,7 +49,7 @@ extern "C" { #endif #ifdef SOCK_HAS_IPV6 -/* Re-use sock endpoint if sock is available and supporting IPv6. */ +/* Reuse sock endpoint if sock is available and supporting IPv6. */ typedef struct _sock_tl_ep gnrc_tcp_ep_t; #else diff --git a/sys/include/net/nanocoap.h b/sys/include/net/nanocoap.h index 700b8066a7..c92b3f4e25 100644 --- a/sys/include/net/nanocoap.h +++ b/sys/include/net/nanocoap.h @@ -287,7 +287,7 @@ typedef ssize_t (*coap_handler_t)(coap_pkt_t *pkt, uint8_t *buf, size_t len, typedef int (*coap_blockwise_cb_t)(void *arg, size_t offset, uint8_t *buf, size_t len, int more); /** - * @brief Coap equest callback descriptor + * @brief Coap request callback descriptor * * @param[in] arg Pointer to be passed as arguments to the callback * @param[in] pkt The received CoAP response. diff --git a/sys/include/net/sock.h b/sys/include/net/sock.h index 6636abe4cf..2cbde66261 100644 --- a/sys/include/net/sock.h +++ b/sys/include/net/sock.h @@ -74,7 +74,7 @@ * The actual code very much depends on the used `sock` type. Please refer to * their documentation for specific examples. * - * Implementor Notes + * Implementer Notes * ================= * ### Type definition * For simplicity and modularity this API doesn't put any restriction on the diff --git a/sys/include/net/sock/dtls.h b/sys/include/net/sock/dtls.h index a152386f6c..9daa432a9f 100644 --- a/sys/include/net/sock/dtls.h +++ b/sys/include/net/sock/dtls.h @@ -599,7 +599,7 @@ enum { /** * @brief Type for a DTLS sock object * - * @note API implementors: `struct sock_dtls` needs to be defined by + * @note API implementers: `struct sock_dtls` needs to be defined by * an implementation-specific `sock_dtls_types.h`. */ typedef struct sock_dtls sock_dtls_t; diff --git a/sys/include/net/sock/ip.h b/sys/include/net/sock/ip.h index 1e296c3444..d215a91f14 100644 --- a/sys/include/net/sock/ip.h +++ b/sys/include/net/sock/ip.h @@ -289,7 +289,7 @@ extern "C" { /** * @brief Type for a raw IPv4/IPv6 sock object * - * @note API implementors: `struct sock_ip` needs to be defined by + * @note API implementers: `struct sock_ip` needs to be defined by * implementation-specific `sock_types.h`. */ typedef struct sock_ip sock_ip_t; diff --git a/sys/include/net/sock/tcp.h b/sys/include/net/sock/tcp.h index 1812463d43..ed6ebfbc95 100644 --- a/sys/include/net/sock/tcp.h +++ b/sys/include/net/sock/tcp.h @@ -322,7 +322,7 @@ typedef struct _sock_tl_ep sock_tcp_ep_t; /**< An end point for a TCP sock obj /** * @brief Type for a TCP sock object * - * @note API implementors: `struct sock_tcp` needs to be defined by + * @note API implementers: `struct sock_tcp` needs to be defined by * implementation-specific `sock_types.h`. */ typedef struct sock_tcp sock_tcp_t; @@ -330,7 +330,7 @@ typedef struct sock_tcp sock_tcp_t; /** * @brief Type for a TCP listening queue * - * @note API implementors: `struct sock_tcp_queue` needs to be defined by + * @note API implementers: `struct sock_tcp_queue` needs to be defined by * implementation-specific `sock_types.h`. */ typedef struct sock_tcp_queue sock_tcp_queue_t; diff --git a/sys/include/net/sock/udp.h b/sys/include/net/sock/udp.h index 7ed8ed1234..0dd7db73e0 100644 --- a/sys/include/net/sock/udp.h +++ b/sys/include/net/sock/udp.h @@ -295,7 +295,7 @@ typedef struct _sock_tl_ep sock_udp_ep_t; /**< An end point for a UDP sock obj /** * @brief Type for a UDP sock object * - * @note API implementors: `struct sock_udp` needs to be defined by + * @note API implementers: `struct sock_udp` needs to be defined by * implementation-specific `sock_types.h`. */ typedef struct sock_udp sock_udp_t; diff --git a/sys/include/test_utils/result_output.h b/sys/include/test_utils/result_output.h index 3e8b4d13b9..b21b865fc6 100644 --- a/sys/include/test_utils/result_output.h +++ b/sys/include/test_utils/result_output.h @@ -68,7 +68,7 @@ extern "C" { /** * @brief Type for a TURO object * - * @note API implementors: `struct turo` needs to be defined by + * @note API implementers: `struct turo` needs to be defined by * implementation-specific `result_output_types.h`. */ typedef struct turo turo_t; diff --git a/sys/include/usb/dfu.h b/sys/include/usb/dfu.h index 2ad7f6b01a..0b4646413a 100644 --- a/sys/include/usb/dfu.h +++ b/sys/include/usb/dfu.h @@ -50,7 +50,7 @@ extern "C" { #define USB_DFU_CAN_DOWNLOAD 0x01 /**< DFU Download attribute */ #define USB_DFU_CAN_UPLOAD 0x02 /**< DFU Upload attribute */ #define USB_DFU_MANIFEST_TOLERANT 0x04 /**< DFU Manifest tolerant attribute */ -#define USB_DFU_WILL_DETACH 0x08 /**< DFU Detach capabability attribute */ +#define USB_DFU_WILL_DETACH 0x08 /**< DFU Detach capability attribute */ /** @} */ /** diff --git a/sys/net/application_layer/gcoap/fileserver.c b/sys/net/application_layer/gcoap/fileserver.c index a668c6a178..e0add77b51 100644 --- a/sys/net/application_layer/gcoap/fileserver.c +++ b/sys/net/application_layer/gcoap/fileserver.c @@ -85,7 +85,7 @@ static bool entry_is_dir(char *path, const char *name) return false; } - /* re-use path buffer, it is already COAPFILESERVER_PATH_MAX bytes long */ + /* reuse path buffer, it is already COAPFILESERVER_PATH_MAX bytes long */ path[path_len] = '/'; path[path_len + 1] = 0; strncat(path, name, COAPFILESERVER_PATH_MAX - 1); diff --git a/sys/net/gnrc/transport_layer/tcp/gnrc_tcp_pkt.c b/sys/net/gnrc/transport_layer/tcp/gnrc_tcp_pkt.c index 5ffdfdff82..7683d5db94 100644 --- a/sys/net/gnrc/transport_layer/tcp/gnrc_tcp_pkt.c +++ b/sys/net/gnrc/transport_layer/tcp/gnrc_tcp_pkt.c @@ -39,8 +39,8 @@ /** * @brief Calculates the maximum of two unsigned numbers. * - * @param[in] x First comparrison value. - * @param[in] y Second comparrison value. + * @param[in] x First comparison value. + * @param[in] y Second comparison value. * * @returns X if x is larger than y, if not y is returned. */ diff --git a/sys/psa_crypto/doc.txt b/sys/psa_crypto/doc.txt index 181e4fb1f9..2062405559 100644 --- a/sys/psa_crypto/doc.txt +++ b/sys/psa_crypto/doc.txt @@ -745,7 +745,7 @@ * * **cpu/myCPU/Makefile.features:** * @code - * FEATURES_PROVIDED += periph_speedycrypt // General feature for the acclerator + * FEATURES_PROVIDED += periph_speedycrypt // General feature for the accelerator * FEATURES_PROVIDED += periph_hash_sha_256 * FEATURES_PROVIDED += periph_ecc_p256r1 * @endcode diff --git a/sys/psa_crypto/include/psa_crypto_se_driver.h b/sys/psa_crypto/include/psa_crypto_se_driver.h index cb856e4d8d..80b739b058 100644 --- a/sys/psa_crypto/include/psa_crypto_se_driver.h +++ b/sys/psa_crypto/include/psa_crypto_se_driver.h @@ -756,7 +756,7 @@ typedef psa_status_t (*psa_drv_se_aead_encrypt_t)(psa_drv_se_context_t *drv_cont size_t *p_ciphertext_length); /** - * @brief A function that peforms a secure element authenticated decryption operation + * @brief A function that performs a secure element authenticated decryption operation * * @param drv_context The driver context structure. * @param key_slot Slot containing the key to use diff --git a/tests/drivers/candev/README.native.can.md b/tests/drivers/candev/README.native.can.md index 8821157c6b..8bde79b35f 100644 --- a/tests/drivers/candev/README.native.can.md +++ b/tests/drivers/candev/README.native.can.md @@ -134,7 +134,7 @@ CFLAGS=-DCAN_DLL_NUMOF=2 BOARD=native PERIPH_CAN_FLAGS="--can 0:vcan1 --can 1:vc To send or receive bytes from the interface `can-utils` can be used: -- send raw CAN frames: by using `cansend` or altenatively `cangen` to send random can messages: +- send raw CAN frames: by using `cansend` or alternatively `cangen` to send random can messages: ```shell $ cansend : diff --git a/tests/net/gnrc_dhcpv6_client_stateless/tests-as-root/01-run.py b/tests/net/gnrc_dhcpv6_client_stateless/tests-as-root/01-run.py index 825a8959b8..08bd97ee57 100755 --- a/tests/net/gnrc_dhcpv6_client_stateless/tests-as-root/01-run.py +++ b/tests/net/gnrc_dhcpv6_client_stateless/tests-as-root/01-run.py @@ -75,7 +75,7 @@ class StatelessDHCPv6Test(Automaton): """ The initial state. - The Automaton waits for an NDP Router Solication. + The Automaton waits for an NDP Router Solicitation. """ pass diff --git a/tests/pkg/nimble_esp_wifi_coexist/README.md b/tests/pkg/nimble_esp_wifi_coexist/README.md index c947ef06c8..d4402fe306 100644 --- a/tests/pkg/nimble_esp_wifi_coexist/README.md +++ b/tests/pkg/nimble_esp_wifi_coexist/README.md @@ -6,7 +6,7 @@ ESP32x WiFi interface simultaneously. # Usage -Comile and flash the application with command +Compile and flash the application with command ``` CFLAGS='-DWIFI_SSID=\"myssid\" -DWIFI_PASS=\"mypass\"' BOARD=esp32-wroom-32 make -C tests/nimble_esp_wifi_coexist flash term diff --git a/tests/pkg/tinyvcdiff/main.c b/tests/pkg/tinyvcdiff/main.c index 6a0a8a7f91..25fb279b0d 100644 --- a/tests/pkg/tinyvcdiff/main.c +++ b/tests/pkg/tinyvcdiff/main.c @@ -71,7 +71,7 @@ static void test_tinyvcdiff_mtd(void) rc = vcdiff_finish(&vcdiff); TEST_ASSERT_EQUAL_INT(0, rc); - /* check reconsturcted target */ + /* check reconstructed target */ mtd_read(target_mtd, target_buf, 0, sizeof(target_buf)); TEST_ASSERT_EQUAL_INT(0, memcmp(target_bin, target_buf, sizeof(target_buf))); } @@ -109,7 +109,7 @@ static void test_tinyvcdiff_vfs(void) vfs_close(source_fd); vfs_close(target_fd); - /* check reconsturcted target */ + /* check reconstructed target */ memset(target_buf, 0, sizeof(target_buf)); target_fd = vfs_open("/mnt/target", O_RDONLY, 0); vfs_read(target_fd, target_buf, sizeof(target_buf)); diff --git a/tests/sys/rng/test.h b/tests/sys/rng/test.h index 0bb648bf0c..2ebab7eaf5 100644 --- a/tests/sys/rng/test.h +++ b/tests/sys/rng/test.h @@ -109,7 +109,7 @@ void test_fips(void); void test_entropy(uint32_t samples); /** - * @brief Run the speed test for a given duration. It utillizes xtimer for + * @brief Run the speed test for a given duration. It utilizes xtimer for * setting an alarm. * * @param[in] duration Test duration (in seconds) @@ -118,7 +118,7 @@ void test_speed(uint32_t duration); /** * @brief Run the speed test for random numbers r with a <= r < b and a given duration. - * It utillizes xtimer for setting an alarm. + * It utilizes xtimer for setting an alarm. * * @param[in] duration Test duration (in seconds) * @param[in] a Minimum for random number diff --git a/tests/sys/sema_inv/main.c b/tests/sys/sema_inv/main.c index c213be18d2..c0414a61c5 100644 --- a/tests/sys/sema_inv/main.c +++ b/tests/sys/sema_inv/main.c @@ -85,7 +85,7 @@ static void test_counter_mode(void) sema_inv_wait(&sync); puts("thread synced"); - /* wait for all threads to terminate, we are going to re-use the stack */ + /* wait for all threads to terminate, we are going to reuse the stack */ ztimer_sleep(ZTIMER_MSEC, 50); } @@ -112,7 +112,7 @@ static void test_mask_mode(void) sema_inv_wait(&sync); puts("thread synced"); - /* wait for all threads to terminate, we are going to re-use the stack */ + /* wait for all threads to terminate, we are going to reuse the stack */ ztimer_sleep(ZTIMER_MSEC, 50); } From 50d5c69e3e56f36115195e48107822244b5a9f55 Mon Sep 17 00:00:00 2001 From: Marian Buschsieweke Date: Mon, 16 Oct 2023 12:18:08 +0200 Subject: [PATCH 8/9] dist/tools/codespell: add more false positives --- dist/tools/codespell/ignored_words.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/dist/tools/codespell/ignored_words.txt b/dist/tools/codespell/ignored_words.txt index 8f6863da28..bfef4823e3 100644 --- a/dist/tools/codespell/ignored_words.txt +++ b/dist/tools/codespell/ignored_words.txt @@ -168,3 +168,9 @@ rsource # SHS (abbreviation for Secure Hash Standard) => SSH, NHS shs + +# FRAM (abbreviation for ferroelectric random access memory, a non-volatile memory) +fram + +# MIS (mask interrupt register) +mis From 50490ed71b5aba19f771f9a1b2053b32a2d5b455 Mon Sep 17 00:00:00 2001 From: Marian Buschsieweke Date: Mon, 16 Oct 2023 12:18:23 +0200 Subject: [PATCH 9/9] dist/tools/lpc2k_pgm: fix typo in GUI / readme --- dist/tools/lpc2k_pgm/README.txt | 2 +- dist/tools/lpc2k_pgm/src/gui.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dist/tools/lpc2k_pgm/README.txt b/dist/tools/lpc2k_pgm/README.txt index 7dd07c0652..b7dd895ec7 100644 --- a/dist/tools/lpc2k_pgm/README.txt +++ b/dist/tools/lpc2k_pgm/README.txt @@ -66,7 +66,7 @@ been tested with Linux kernel 2.4.20 and 2.6.8, and should work with almost any linux system. You must have the "xterm" program installed. Nearly all linux -distrubtions provide this, and it is often installed by default. If +distributions provide this, and it is often installed by default. If you do not have it, simply install from your linux distribution. Your serial port device file (usually /dev/ttyS0 or /dev/ttyS1) must diff --git a/dist/tools/lpc2k_pgm/src/gui.c b/dist/tools/lpc2k_pgm/src/gui.c index 94d2c83329..1e2b8fbd11 100644 --- a/dist/tools/lpc2k_pgm/src/gui.c +++ b/dist/tools/lpc2k_pgm/src/gui.c @@ -395,7 +395,7 @@ void create_window(int *argc, char ***argv) gtk_widget_set_sensitive(reboot_button, TRUE); gtk_widget_show(reboot_button); - bootloader_button = gtk_button_new_with_label("Booloader"); + bootloader_button = gtk_button_new_with_label("Bootloader"); gtk_widget_show(bootloader_button); quit_button = gtk_button_new_with_label("Quit");