mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
c9798c86ce
An network devices that supports netdev_driver_t::get(NETOPT_LINK, ...) also has to emit NETDEV_EVENT_LINK_UP and NETDEV_EVENT_LINK_DOWN with lwip for IPv6 duplicate address detection to work. The background is that the STM32 Ethernet MAC requires a periodic timer to poll for the state to emit these events. For this reason, `stm32_eth_link_up` was introduced to allow applications to select if they need these events. With this dependency in place, IPv6 addresses won't get stuck in a tentative state any more.
63 lines
1.5 KiB
Makefile
63 lines
1.5 KiB
Makefile
# All stm32 families provide pm support
|
|
|
|
# include stm32 common periph drivers, clock configurations and vectors
|
|
USEMODULE += periph stm32_clk stm32_vectors
|
|
|
|
ifneq (,$(filter periph_usbdev,$(FEATURES_USED)))
|
|
USEMODULE += ztimer
|
|
USEMODULE += ztimer_msec
|
|
endif
|
|
|
|
ifneq (,$(filter periph_uart_nonblocking,$(USEMODULE)))
|
|
USEMODULE += tsrb
|
|
endif
|
|
|
|
ifneq (,$(filter stm32_eth_%,$(USEMODULE)))
|
|
USEMODULE += stm32_eth
|
|
endif
|
|
|
|
ifneq (,$(filter stm32_eth_auto,$(USEMODULE)))
|
|
USEMODULE += stm32_eth_link_up
|
|
endif
|
|
|
|
ifneq (,$(filter stm32_eth,$(USEMODULE)))
|
|
FEATURES_REQUIRED += periph_eth
|
|
USEMODULE += netdev_eth
|
|
USEMODULE += iolist
|
|
USEMODULE += ztimer
|
|
USEMODULE += ztimer_msec
|
|
|
|
# lwip IPv6 supports needs link up events to perform duplicate address
|
|
# detection
|
|
ifneq (,$(filter lwip_ipv6,$(USEMODULE)))
|
|
USEMODULE += stm32_eth_link_up
|
|
endif
|
|
endif
|
|
|
|
ifneq (,$(filter periph_can,$(FEATURES_USED)))
|
|
FEATURES_REQUIRED += periph_gpio
|
|
FEATURES_REQUIRED += periph_gpio_irq
|
|
endif
|
|
|
|
ifneq (,$(filter periph_eth periph_ptp,$(USEMODULE)))
|
|
USEMODULE += periph_eth_common
|
|
endif
|
|
|
|
# periph_rtc_mem is currently tied to the periph_rtc
|
|
ifneq (,$(filter periph_rtc_mem,$(USEMODULE)))
|
|
FEATURES_REQUIRED += periph_rtc
|
|
endif
|
|
|
|
ifneq (,$(filter periph_adc,$(FEATURES_USED)))
|
|
ifneq (,$(filter f3 l4 wl, $(CPU_FAM)))
|
|
USEMODULE += ztimer
|
|
USEMODULE += ztimer_msec
|
|
endif
|
|
endif
|
|
|
|
ifneq (,$(filter periph_vbat,$(USEMODULE)))
|
|
FEATURES_REQUIRED += periph_adc
|
|
endif
|
|
|
|
include $(RIOTCPU)/cortexm_common/Makefile.dep
|