Skip to content
Merged
1 change: 1 addition & 0 deletions drivers/clock_control/Kconfig.stm32
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ menuconfig CLOCK_CONTROL_STM32_CUBE
prompt "STM32 Reset & Clock Control"
depends on CLOCK_CONTROL
default n if SOC_SERIES_STM32
select USE_STM32_LL_UTILS
help
Enable driver for Reset & Clock Control subsystem found
in STM32 family of MCUs
Expand Down
1 change: 1 addition & 0 deletions drivers/entropy/Kconfig.stm32
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ menuconfig ENTROPY_STM32_RNG
depends on ENTROPY_GENERATOR
default n
select ENTROPY_HAS_DRIVER
select USE_STM32_LL_RNG
help
This option enables the RNG processor, which is a entropy number
generator, based on a continuous analog noise, that provides
Expand Down
1 change: 1 addition & 0 deletions drivers/ethernet/Kconfig.stm32_hal
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ menuconfig ETH_STM32_HAL
prompt "STM32 HAL Ethernet driver"
depends on NET_L2_ETHERNET
default n
select USE_STM32_HAL_ETH
help
Enable STM32 HAL based Ethernet driver.

Expand Down
3 changes: 3 additions & 0 deletions drivers/i2c/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,7 @@ config I2C_STM32_V1
depends on SOC_FAMILY_STM32
depends on SOC_SERIES_STM32F1X || SOC_SERIES_STM32F4X
select HAS_DTS_I2C
select USE_STM32_LL_I2C
default n
help
Enable I2C support on the STM32 F1 and F4X family of processors. This
Expand All @@ -126,6 +127,8 @@ config I2C_STM32_V2
depends on SOC_FAMILY_STM32
depends on SOC_SERIES_STM32F0X || SOC_SERIES_STM32F3X || SOC_SERIES_STM32L4X
select HAS_DTS_I2C
select USE_STM32_LL_I2C
select USE_STM32_LL_RCC if SOC_SERIES_STM32F0X || SOC_SERIES_STM32F3X
default n
help
Enable I2C support on the STM32 F0, F3 and L4X family of processors.
Expand Down
1 change: 1 addition & 0 deletions drivers/pwm/Kconfig.stm32
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ menuconfig PWM_STM32
bool "STM32 MCU PWM driver"
default n
depends on PWM && SOC_FAMILY_STM32
select USE_STM32_HAL_TIM
help
This option enables the PWM driver for STM32 family of
processors. Say y if you wish to use PWM port on STM32
Expand Down
1 change: 1 addition & 0 deletions drivers/spi/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ config SPI_STM32
depends on SPI && SOC_FAMILY_STM32
depends on SOC_SERIES_STM32L4X || SOC_SERIES_STM32F0X || SOC_SERIES_STM32F3X || SOC_SERIES_STM32F4X
select HAS_DTS_SPI
select USE_STM32_LL_SPI
default n
help
Enable SPI support on the STM32 family of processors.
Expand Down
3 changes: 3 additions & 0 deletions drivers/usb/device/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,9 @@ config USB_DC_STM32
depends on HAS_STM32CUBE
depends on SOC_SERIES_STM32F4X
select USB_DEVICE_DRIVER
select USE_STM32_LL_USB
select USE_STM32_HAL_PCD
select USE_STM32_HAL_PCD_EX
default n
help
STM32 family USB device controller Driver.
Expand Down
53 changes: 7 additions & 46 deletions ext/hal/st/stm32cube/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,7 @@ if(CONFIG_SOC_SERIES_STM32F0X)
stm32f0xx/drivers/include/Legacy
)

zephyr_sources(stm32f0xx/drivers/src/stm32f0xx_hal.c)
zephyr_sources(stm32f0xx/drivers/src/stm32f0xx_hal_rcc.c)
zephyr_sources_ifdef(CONFIG_CLOCK_CONTROL_STM32_CUBE stm32f0xx/drivers/src/stm32f0xx_ll_utils.c)
zephyr_sources_ifdef(CONFIG_I2C_STM32_V2 stm32f0xx/drivers/src/stm32f0xx_ll_i2c.c)
zephyr_sources_ifdef(CONFIG_I2C_STM32_V2 stm32f0xx/drivers/src/stm32f0xx_ll_rcc.c)
zephyr_sources_ifdef(CONFIG_SPI_STM32 stm32f0xx/drivers/src/stm32f0xx_ll_spi.c)
zephyr_sources(stm32f0xx/soc/system_stm32f0xx.c)
add_subdirectory(stm32f0xx)
endif()

if(CONFIG_SOC_SERIES_STM32F1X)
Expand All @@ -41,12 +35,7 @@ if(CONFIG_SOC_SERIES_STM32F1X)
stm32f1xx/drivers/include/Legacy
)

zephyr_sources(stm32f1xx/drivers/src/stm32f1xx_hal.c)
zephyr_sources(stm32f1xx/drivers/src/stm32f1xx_hal_rcc.c)
zephyr_sources_ifdef(CONFIG_CLOCK_CONTROL_STM32_CUBE stm32f1xx/drivers/src/stm32f1xx_ll_utils.c)
zephyr_sources_ifdef(CONFIG_PWM stm32f1xx/drivers/src/stm32f1xx_hal_tim.c)
zephyr_sources_ifdef(CONFIG_I2C stm32f1xx/drivers/src/stm32f1xx_ll_i2c.c)
zephyr_sources(stm32f1xx/soc/system_stm32f1xx.c)
add_subdirectory(stm32f1xx)
endif()

if(CONFIG_SOC_SERIES_STM32F3X)
Expand All @@ -56,39 +45,17 @@ if(CONFIG_SOC_SERIES_STM32F3X)
stm32f3xx/drivers/include/Legacy
)

zephyr_sources(stm32f3xx/drivers/src/stm32f3xx_hal.c)
zephyr_sources(stm32f3xx/drivers/src/stm32f3xx_hal_rcc.c)
zephyr_sources_ifdef(CONFIG_CLOCK_CONTROL_STM32_CUBE stm32f3xx/drivers/src/stm32f3xx_ll_utils.c)
zephyr_sources_ifdef(CONFIG_SPI_STM32 stm32f3xx/drivers/src/stm32f3xx_ll_spi.c)
zephyr_sources_ifdef(CONFIG_I2C stm32f3xx/drivers/src/stm32f3xx_ll_i2c.c)
zephyr_sources_ifdef(CONFIG_I2C stm32f3xx/drivers/src/stm32f3xx_ll_rcc.c)
zephyr_sources(stm32f3xx/soc/system_stm32f3xx.c)
add_subdirectory(stm32f3xx)
endif()



if(CONFIG_SOC_SERIES_STM32F4X)
zephyr_include_directories(
stm32f4xx/soc
stm32f4xx/drivers/include
stm32f4xx/drivers/include/Legacy
)

zephyr_sources(stm32f4xx/drivers/src/stm32f4xx_hal.c)
zephyr_sources(stm32f4xx/drivers/src/stm32f4xx_hal_rcc.c)
zephyr_sources_ifdef(CONFIG_CLOCK_CONTROL_STM32_CUBE stm32f4xx/drivers/src/stm32f4xx_ll_utils.c)
zephyr_sources_ifdef(CONFIG_PWM stm32f4xx/drivers/src/stm32f4xx_hal_tim.c)
zephyr_sources_ifdef(CONFIG_I2C stm32f4xx/drivers/src/stm32f4xx_ll_i2c.c)
zephyr_sources_ifdef(CONFIG_SPI_STM32 stm32f4xx/drivers/src/stm32f4xx_ll_spi.c)
zephyr_sources_ifdef(CONFIG_ENTROPY_STM32_RNG stm32f4xx/drivers/src/stm32f4xx_ll_rng.c)
zephyr_sources_ifdef(CONFIG_ETH_STM32_HAL stm32f4xx/drivers/src/stm32f4xx_hal_eth.c)
zephyr_sources_ifdef(CONFIG_USB_DC_STM32
stm32f4xx/drivers/src/stm32f4xx_ll_usb.c
stm32f4xx/drivers/src/stm32f4xx_hal_pcd.c
stm32f4xx/drivers/src/stm32f4xx_hal_pcd_ex.c
)

zephyr_sources(stm32f4xx/soc/system_stm32f4xx.c)
add_subdirectory(stm32f4xx)
endif()

if(CONFIG_SOC_SERIES_STM32F7X)
Expand All @@ -98,8 +65,7 @@ if(CONFIG_SOC_SERIES_STM32F7X)
stm32f7xx/drivers/include/Legacy
)

zephyr_sources(stm32f7xx/drivers/src/stm32f7xx_hal.c)
zephyr_sources(stm32f7xx/soc/system_stm32f7xx.c)
add_subdirectory(stm32f7xx)
endif()

if(CONFIG_SOC_SERIES_STM32L4X)
Expand All @@ -108,12 +74,7 @@ if(CONFIG_SOC_SERIES_STM32L4X)
stm32l4xx/drivers/include
stm32l4xx/drivers/include/Legacy
)
zephyr_sources(stm32l4xx/drivers/src/stm32l4xx_hal.c)
zephyr_sources(stm32l4xx/drivers/src/stm32l4xx_hal_rcc.c)
zephyr_sources_ifdef(CONFIG_CLOCK_CONTROL_STM32_CUBE stm32l4xx/drivers/src/stm32l4xx_ll_utils.c)
zephyr_sources_ifdef(CONFIG_PWM stm32l4xx/drivers/src/stm32l4xx_hal_tim.c)
zephyr_sources_ifdef(CONFIG_I2C stm32l4xx/drivers/src/stm32l4xx_ll_i2c.c)
zephyr_sources_ifdef(CONFIG_SPI_STM32 stm32l4xx/drivers/src/stm32l4xx_ll_spi.c)
zephyr_sources(stm32l4xx/soc/system_stm32l4xx.c)

add_subdirectory(stm32l4xx)
endif()

Loading