STM32Cube SDK in Zephyr
Erwan Gouriou
Hi all,
There are growing number of STM32 based boards being ported in Zephyr by the community. As part of ST, I can say that we are pleased to contribute this way to Zephyr impact in IoT world. In order to ease porting of STM32 devices, we'd like to introduce STM32Cube SDK into Zephyr. Aim is to make porting fast and easy thanks to ST CSMIS files, reduce code duplication and provide mature software with STM32Cube adaptation layers (HAL and LL). About STM32Cube CMSIS files: Proposition for now is to move progressively towards the support of STM32Cube on available STM32 based boards and that new boards include STM32Cube CMSIS files from start. About STM32Cube Abstraction layers: HAL and LL are 2 flavors of component based porting layers provided by STM32Cube. *Cube HAL provides high level, complete porting API *Cube LL (Low Layers) provides basic set, optimized porting API They could be used independently or mixed. HAL and LL provide abstraction for full STM32 family. Hence, one single HAL/LL based driver could be used on all STM32 family. Implementing HAL/LL based drivers is not mandatory. Though, by maximizing code reuse and providing proven maturity SW, using HAL/LL could be a good asset for STM32 Zephyr devices. HAL/LL based drivers can co-exist with already available drivers. STM32Cube SDKs (one per series) are available for download here: http://www.st.com/en/embedded-software/stm32cube-embedded-software.html If you're curious: I've made a first change to introduce STM32Cube on stm32f1 series in Zephyr and implement serial driver with HAL/LL: https://gerrit.zephyrproject.org/r/#/c/5761/5 STM32Cube is also being brought on stm32l4 in nucleo_l476rg porting by Baylibre: https://gerrit.zephyrproject.org/r/#/c/5194/ Erwan
|
|