mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
f341ad6c9c
17045: sys/coding: add XOR based coding module r=benpicco a=benpicco 19243: cpu/gd32v: add periph_gpio_ll and periph_gpio_ll_irq support r=benpicco a=gschorcht ### Contribution description This PR provides the `periph_gpio_ll` and `periph_gpio_ll_irq` support for GD32VF103. Level triggered interrupts are emulated. `periph_gpio_ll_irq` could be split off from this PR as a separate PR if necessary. ### Testing procedure Use any GD32V board and connect PA0 -> PB0 and PA1 -> PB1 where PA is the output port and PB the input port. With these connections `tests/periph_gpio_ll` should work. ``` BOARD=sipeed-longan-nano make -j8 -C tests/periph_gpio_ll flash term ``` If necessary, change the input and output pins by setting the environment variables and connect the corresponding pins, for example for `seeedstudio-gd32` PA1 -> PB8 and PA8 -> PB9: ``` PIN_OUT_0=1 PIN_OUT_1=8 PIN_IN_0=8 PIN_IN_1=9 BOARD=seedstudio-gd32 make -j8 -C tests/periph_gpio_ll flash term ``` ### Issues/PRs references Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com> Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
29 lines
972 B
Makefile
29 lines
972 B
Makefile
CPU_CORE := rv32imac
|
|
|
|
FEATURES_PROVIDED += arch_nuclei
|
|
FEATURES_PROVIDED += periph_clic
|
|
FEATURES_PROVIDED += periph_gpio
|
|
FEATURES_PROVIDED += periph_gpio_irq
|
|
FEATURES_PROVIDED += periph_gpio_ll
|
|
FEATURES_PROVIDED += periph_gpio_ll_irq
|
|
FEATURES_PROVIDED += periph_gpio_ll_irq_level_triggered_high
|
|
FEATURES_PROVIDED += periph_gpio_ll_irq_level_triggered_low
|
|
FEATURES_PROVIDED += periph_rtc
|
|
FEATURES_PROVIDED += periph_rtc_mem
|
|
FEATURES_PROVIDED += periph_rtt
|
|
FEATURES_PROVIDED += periph_timer
|
|
FEATURES_PROVIDED += periph_timer_periodic
|
|
FEATURES_PROVIDED += periph_wdt
|
|
FEATURES_PROVIDED += periph_pm
|
|
FEATURES_PROVIDED += periph_flashpage
|
|
FEATURES_PROVIDED += periph_flashpage_in_address_space
|
|
FEATURES_PROVIDED += periph_flashpage_pagewise
|
|
|
|
include $(RIOTCPU)/riscv_common/Makefile.features
|
|
|
|
# This configuration enables modules that are only available when using Kconfig
|
|
# module modelling
|
|
ifeq (1, $(TEST_KCONFIG))
|
|
KCONFIG_ADD_CONFIG += $(RIOTCPU)/gd32v/gd32v.config
|
|
endif
|