1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/cpu/gd32v
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
..
include drivers/periph/gpio_ll: shrink gpio_conf_t 2024-01-21 08:38:40 +01:00
periph drivers/periph/gpio_ll: shrink gpio_conf_t 2024-01-21 08:38:40 +01:00
clock.c cpu/gd32v: allow reconfig PLL multiplier in clock config 2023-04-18 06:20:14 +02:00
cpu.c cpu/gd32v: Allow configuration of SWJ_CFG 2024-01-19 23:17:35 +01:00
doc.txt cpu/gd32v: Initial include of the GD32VF103 device 2021-08-24 14:30:23 +02:00
gd32v.config cpu/gdv32: add pm_layered support 2023-01-24 00:52:02 +01:00
Kconfig cpu/gd32v: add periph_usbdev support 2023-04-16 23:24:23 +02:00
Makefile cpu/gd32v: Initial include of the GD32VF103 device 2021-08-24 14:30:23 +02:00
Makefile.default cpu/gdv32: add pm_layered support 2023-01-24 00:52:02 +01:00
Makefile.dep cpu/gd32v: add periph_usbdev support 2023-04-16 23:24:23 +02:00
Makefile.features Merge #17045 #19243 2023-02-07 17:39:20 +00:00
Makefile.include sys/riotboot: common default NUM_SLOT, SLOT_* config 2023-04-18 06:20:14 +02:00