STM32: Generic HAL LL API headers


Gerard Marull Paretas
 

To all STM32 users and developers,

We're in the final step of reviewing the following PRs:
The aim of these changes is to improve the usage of STM32 LL HAL in both Zephyr drivers and out-of-tree applications by providing generic LL API headers. These generic headers are auto-generated and stored in the STM32 HAL repository. They just include the right series header depending on what SoC is being used in the Zephyr build, so there is no actual abstraction involved.

Some advantages of this approach include:

  1. SoC header dependency on drivers' configuration is removed (drivers using LL API will be responsible for including the necessary headers)
  2. Only the necessary headers are included
  3. Out of tree applications will also have access to generic LL API headers, making it easier to create multi-series applications using the LL API.
For more details please, check the RFC: https://github.com/zephyrproject-rtos/zephyr/issues/28822

I would like to highlight that these headers are an additional way of using the LL API, so existing code will not be affected. In-tree drivers will be gradually moved to the generic LL headers.

Additional reviewers are welcome!

Regards,
Gerard

--

Gerard Marull-Paretas
Teslabs Engineering S.L.
teslabs.com T. +34 622 321 312

CONFIDENTIALITY NOTICE:
The contents of this email message and any attachments are intended solely for the addressee(s)
and may contain confidential and/or privileged information and may be legally protected from
disclosure. If you are not the intended recipient of this message or their agent, or if this message
has been addressed to you in error, please immediately alert the sender by reply email and then
delete this message and any attachments. If you are not the intended recipient, you are hereby
notified that any use, dissemination, copying, or storage of this message or its attachments is
strictly prohibited.