mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-08-26 08:35:50 +00:00
Provide PWM driver for STM32 series F1/F4/L4. Driver is ported on STM32Cube HAL and should support other STM32 series with minor updates. Configuration is done so that PWM sample driver could be run on all nucleo boards supporting PWM driver. Change-Id: I6522a565451085df932e0eefd8404268380b5bfe Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org> |
||
---|---|---|
.. | ||
stm32f1xx | ||
stm32f3xx | ||
stm32f4xx | ||
stm32f7xx | ||
stm32l4xx | ||
Kbuild | ||
Kconfig | ||
Makefile | ||
README |
How to introduce a new version of stm32cube: ============================================ Original STM32Cube tree structure has been modified to a minimum structure for a better fit into Zephyr. STM32Cube is divided into drivers and soc section, with: drivers/ include/ contains Cube HAL/LL files from: STM32Cube_FW_F1_VX.X.X/Drivers/STM32YYxx_HAL_Driver/Inc/* src/ contains: STM32Cube_FW_F1_VX.X.X/Drivers/STM32YYxx_HAL_Driver/Src/* soc/ contains STM32 CMSIS files from *STM32Cube_FW_F1_VX.X.X/Drivers/CMSIS/Device/ST/STM32F1xx/Include/* *STM32Cube_FW_F1_VX.X.X/Drivers/CMSIS/Device/ST/STM32F1xx/Source/Templates/system_stm32f1xx.c One file needs to be renamed: driver/include/stm32f1xx_hal_conf_template.h into: driver/include/stm32f1xx_hal_conf.h In order to enjoy ST CMSIS definitions: *CONFIG_HAS_STM32CUBE should be defined *stm32yyxx.h should be included in soc.h **E.g.: #include <stm32f1xx.h> In order to use STM32Cube HAL, these files should be compiled: In /ext/hal/st/stm32cube/Kbuild : obj-y += stm32yyxx/drivers/src/stm32yyxx_hal.o obj-y += stm32yyxx/drivers/src/stm32yyxx_hal_rcc.o obj-y += stm32yyxx/soc/system_stm32yyxx.o Plus add HAL driver file (when needed): obj-$(CONFIG_SERIAL_HAS_DRIVER) += stm32yyxx/drivers/src/stm32yyxx_hal_uart.o Additionally, in order to use STM32Cube LL (when needed): *include stm32yyxx_ll_usart.h in soc.h **E.g.: #include <stm32f1xx_ll_usart.h>