1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/cpu/stm32
Marian Buschsieweke 2a00ec13e5
drivers/periph/gpio_ll: shrink gpio_conf_t
This commit optimizes the `gpio_conf_t` type in the following
regards:

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

Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
2024-01-21 08:38:40 +01:00
..
bootloader cpu/stm32: implement reset to bootloader 2020-06-05 18:41:06 +02:00
dist build-system: Allow out of tree BUILD_DIR 2023-05-16 22:23:03 +02:00
include drivers/periph/gpio_ll: shrink gpio_conf_t 2024-01-21 08:38:40 +01:00
kconfigs cpu/stm32/periph: add SDMMC support for F2/F4/F7/L4 2023-12-21 18:37:43 +01:00
lcd_fmc cpu/stm32: add FMC support for LCD with parallel interface 2023-10-12 18:19:03 +02:00
ldscripts cpu/stm32: add FMC RAM as heap 2023-07-26 09:02:10 +02:00
periph drivers/periph/gpio_ll: shrink gpio_conf_t 2024-01-21 08:38:40 +01:00
stmclk cpu/stm32/periph: add SDMMC support for F2/F4/F7/L4 2023-12-21 18:37:43 +01:00
vectors cpu/stm32: Add Kconfig dependency modeling 2021-07-02 15:11:05 +02:00
cpu_common.c cpu/stm32: make bus arg consistent 2023-05-19 10:44:24 -04:00
cpu_init.c cpu/stm32/f1: prevent corrupting AFIO->MAPR 2023-11-20 20:28:52 +01:00
doc.txt treewide/stm32: Make CLOCK_HS* configurable 2022-11-03 11:37:28 +01:00
Kconfig cpu/stm32: implement periph_timer_query_freqs 2023-12-07 16:15:06 +01:00
Makefile cpu/stm32: add FMC support for LCD with parallel interface 2023-10-12 18:19:03 +02:00
Makefile.cmsis cpu/stm32: bump cmsis packages version 2023-08-28 09:47:44 +02:00
Makefile.default cpu: make pm_layered a DEFAULT_MODULE 2021-01-27 13:21:20 +01:00
Makefile.dep cpu/stm32/periph: add SDMMC support for F2/F4/F7/L4 2023-12-21 18:37:43 +01:00
Makefile.features cpu/stm32/periph: add SDMMC support for F2/F4/F7/L4 2023-12-21 18:37:43 +01:00
Makefile.include cpu/stm32: add FMC RAM as heap 2023-07-26 09:02:10 +02:00
stm32_info.mk cpu/stm32: add initial support for stm32u5 family 2021-12-23 11:04:41 +01:00
stm32_line.mk cpu/stm32: Add STM32_LINE cases for STM32L1xxx6 2022-03-01 17:20:16 +01:00
stm32_mem_lengths.mk cpu/stm32: fix RAM_LEN for F427, F429, F437, F439 models 2022-11-15 22:29:34 +01:00
stm32_riotboot.mk cpu/stm32: fix riotboot settings for L4 and WB 2023-05-23 17:47:04 +02:00
stm32.config cpu/stm32: Add Kconfig dependency modeling 2021-07-02 15:11:05 +02:00