1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-01-18 08:52:45 +01:00
RIOT/cpu/gd32v/periph
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
..
adc.c cpu/gd32v: add periph_adc support 2023-02-01 23:11:07 +01:00
dac.c cpu/gd32v: add periph_dac support 2023-02-07 02:41:06 +01:00
flashpage.c cpu/gd32v: fix periph_flashpage doc group 2023-01-27 06:46:51 +01:00
gpio_ll_irq.c cpu/gd32v: add perip_gpio_ll_irq support 2023-02-07 12:19:49 +01:00
gpio_ll.c drivers/periph/gpio_ll: shrink gpio_conf_t 2024-01-21 08:38:40 +01:00
gpio.c cpu/gd32v: fix gpio_read in periph_gpio 2023-03-24 07:40:23 +01:00
i2c.c tree wide: fix typos in comments found by codespell 2023-05-02 09:52:06 +02:00
Kconfig cpu/gdv32: add pm_layered support 2023-01-24 00:52:02 +01:00
Makefile cpu/gd32v: Initial include of the GD32VF103 device 2021-08-24 14:30:23 +02:00
pm.c cpu/gdv32: add pm_layered support 2023-01-24 00:52:02 +01:00
pwm.c cpu/gd32v: Fix periph_pwm 2024-01-17 21:58:56 +01:00
rtc_mem.c cpu/gd32v: add periph_rtc_mem support 2023-02-06 22:22:01 +01:00
rtc.c cpu/gd32v: add periph_rtc support 2023-01-22 17:53:44 +01:00
rtt.c cpu/gd32v: add periph_rtt support 2023-01-27 06:46:51 +01:00
spi.c cpu/gd32v: allow SPI pin remapping in config 2023-02-06 07:45:59 +01:00
timer.c cpu/gd32v: allow using TIMER0 as timer device 2023-01-28 17:46:45 +01:00
uart.c cpu/gdv32: add pm_layered support 2023-01-24 00:52:02 +01:00
wdt.c cpu/gd32v: Initial include of the GD32VF103 device 2021-08-24 14:30:23 +02:00