mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
31efa61eda
There are STM32 families where all models use only the Synopsys DWC2 USB OTG core while others completely use only the USB Device FS core. For these families then either the driver `drivers/usbdev_synopsys_dwc2` or the driver `cpu/stm32/periph/usbdev` is used depending on the respective family. However, the STM32 families F1 and L4 use both cores. The correct driver must therefore be selected depending on the CPU line or CPU model.
67 lines
3.2 KiB
Plaintext
67 lines
3.2 KiB
Plaintext
# Copyright (c) 2021 HAW Hamburg
|
|
#
|
|
# This file is subject to the terms and conditions of the GNU Lesser
|
|
# General Public License v2.1. See the file LICENSE in the top level
|
|
# directory for more details.
|
|
#
|
|
|
|
config MODULE_PERIPH
|
|
bool
|
|
default y
|
|
select MODULE_ZTIMER if MODULE_PERIPH_USBDEV
|
|
select MODULE_ZTIMER_MSEC if MODULE_PERIPH_USBDEV
|
|
# Whole STM32 families F2, F4, F7, H7 and U5 use the Synopsys DWC2 USB OTG core
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && HAS_CPU_STM32F2
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && HAS_CPU_STM32F4
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && HAS_CPU_STM32F7
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && HAS_CPU_STM32H7
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && HAS_CPU_STM32U5
|
|
# STM32F105xx and STM32F107xx lines also use the Synopsys DWC2 USB OTG core
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && CPU_LINE_STM32F105XC
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && CPU_LINE_STM32F107XC
|
|
# Several lines of STM32L4 family also use the Synopsys DWC2 USB OTG core
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && CPU_LINE_STM32L475XX
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && CPU_LINE_STM32L476XX
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && CPU_LINE_STM32L485XX
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && CPU_LINE_STM32L486XX
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && CPU_LINE_STM32L496XX
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && CPU_LINE_STM32L4A6XX
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && CPU_LINE_STM32L4P5XX
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && CPU_LINE_STM32L4Q5XX
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && CPU_LINE_STM32L4R5XX
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && CPU_LINE_STM32L4R7XX
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && CPU_LINE_STM32L4R9XX
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && CPU_LINE_STM32L4S5XX
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && CPU_LINE_STM32L4S7XX
|
|
select MODULE_USBDEV_SYNOPSYS_DWC2 if MODULE_PERIPH_USBDEV && CPU_LINE_STM32L4S9XX
|
|
help
|
|
stm32 common peripheral code.
|
|
|
|
config MODULE_PERIPH_UART_NONBLOCKING
|
|
depends on HAS_PERIPH_UART_NONBLOCKING
|
|
depends on MODULE_PERIPH_UART
|
|
select MODULE_TSRB
|
|
|
|
config MODULE_PERIPH_CAN
|
|
bool
|
|
depends on HAS_PERIPH_CAN
|
|
depends on HAS_PERIPH_GPIO
|
|
depends on HAS_PERIPH_GPIO_IRQ
|
|
select MODULE_PERIPH_GPIO_IRQ
|
|
select MODULE_PERIPH_I2C
|
|
help
|
|
STM32 CAN peripheral controller.
|
|
|
|
config MODULE_PERIPH_ADC
|
|
bool "ADC peripheral driver"
|
|
depends on HAS_PERIPH_ADC
|
|
select MODULE_ZTIMER if HAS_CPU_STM32F3 || HAS_CPU_STM32L4 || HAS_CPU_STM32WL
|
|
select MODULE_ZTIMER_MSEC if HAS_CPU_STM32F3 || HAS_CPU_STM32L4 || HAS_CPU_STM32WL
|
|
select MODULE_PERIPH_COMMON
|
|
|
|
config MODULE_PERIPH_LTDC
|
|
bool "LTDC peripheral driver"
|
|
depends on HAS_PERIPH_LTDC
|
|
help
|
|
STM32 LCD-TFT Display controller
|