mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
103 lines
2.9 KiB
Makefile
103 lines
2.9 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)))
|
|
ifneq (,$(filter f2 f4 f7 h7 u5,$(CPU_FAM)))
|
|
# Whole STM32 families F2, F4, F7, H7 and U5 use the Synopsys DWC2 USB OTG core
|
|
USEMODULE += usbdev_synopsys_dwc2
|
|
USEMODULE += ztimer
|
|
USEMODULE += ztimer_msec
|
|
else ifneq (,$(filter stm32f105% stm32f107%,$(CPU_MODEL)))
|
|
# STM32F105xx and STM32F107xx also use the Synopsys DWC2 USB OTG core
|
|
USEMODULE += usbdev_synopsys_dwc2
|
|
USEMODULE += ztimer
|
|
USEMODULE += ztimer_msec
|
|
else ifneq (,$(filter stm32l47% stm32l48% stm32l49%,$(CPU_MODEL)))
|
|
# STM32L475xx, STM32L476xx, STM32L485xx, STM32L486xx and STM32L496xx
|
|
# also use the Synopsys DWC2 USB OTG core
|
|
USEMODULE += usbdev_synopsys_dwc2
|
|
USEMODULE += ztimer
|
|
USEMODULE += ztimer_msec
|
|
else ifneq (,$(filter stm32l4a% stm32l4p% stm32l4q% stm32l4r% stm32l4s%,$(CPU_MODEL)))
|
|
# STM32L4Axxx, STM32L4Pxxx, STM32L4Qxxx, STM32L4Rxxx and STM32L4Sxxx
|
|
# also use the Synopsys DWC2 USB OTG core
|
|
USEMODULE += usbdev_synopsys_dwc2
|
|
USEMODULE += ztimer
|
|
USEMODULE += ztimer_msec
|
|
endif
|
|
endif
|
|
|
|
ifneq (,$(filter periph_uart_nonblocking,$(USEMODULE)))
|
|
USEMODULE += tsrb
|
|
endif
|
|
|
|
ifneq (,$(filter stm32_eth_%,$(USEMODULE)))
|
|
USEMODULE += stm32_eth
|
|
endif
|
|
|
|
ifneq (,$(filter stm32_eth_tracing,$(USEMODULE)))
|
|
FEATURES_REQUIRED += periph_gpio_ll
|
|
endif
|
|
|
|
ifneq (,$(filter stm32_eth_auto,$(USEMODULE)))
|
|
USEMODULE += stm32_eth_link_up
|
|
endif
|
|
|
|
ifneq (,$(filter stm32_eth,$(USEMODULE)))
|
|
FEATURES_REQUIRED += periph_eth
|
|
USEMODULE += iolist
|
|
USEMODULE += netdev_eth
|
|
USEMODULE += netdev_new_api
|
|
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 lcd_parallel_ll_mcu,$(USEMODULE)))
|
|
USEMODULE += lcd_fmc
|
|
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 wb wl, $(CPU_FAM)))
|
|
USEMODULE += ztimer
|
|
USEMODULE += ztimer_msec
|
|
endif
|
|
endif
|
|
|
|
ifneq (,$(filter periph_vbat,$(USEMODULE)))
|
|
FEATURES_REQUIRED += periph_adc
|
|
endif
|
|
|
|
ifneq (,$(filter periph_fmc_%,$(USEMODULE)))
|
|
FEATURES_REQUIRED += periph_fmc
|
|
endif
|
|
|
|
ifneq (,$(filter periph_sdmmc,$(FEATURES_USED)))
|
|
FEATURES_REQUIRED += periph_gpio_irq
|
|
FEATURES_REQUIRED += periph_sdmmc_clk
|
|
FEATURES_OPTIONAL += periph_dma
|
|
endif
|
|
|
|
include $(RIOTCPU)/cortexm_common/Makefile.dep
|