Topics

STM32 ADC shim


Anthony Kreft <anthony.kreft@...>
 

I'm interested in working on a shim to enable the ADC driver on the STM32. What is the best way to get started with that? Are there any good pull requests I can use as reference? I think most confusing to me are the Kconfig and device tree requirements. If there are known issues with the ADC for STM32 in terms of integrating with the Zephyr driver, please let me know. Thanks for your help.

Regards,
Anthony


Erwan Gouriou
 

Hi Anthony,

Easiest to start would be to use STM32Cube HAL to implement your shim layer.
If you feel more comfortable with ADC, you might want to use STM32Cube LL
layer, which will help you to implement a more integrated and lightweight driver.

For reference, you can have a look a serial driver, which should be the most
simple one using LL, or PWM for HAL. There are other quite good drivers using
LL or HAL but they are more complex to study.
There is also an on going work to push CAN driver, which uses HAL in a quite
limited way, but could be used to check what is needed to provide for Kconfig
and device tree.

Last, you'll find some examples on how to use STM32Cube LL and HAL APIs
in the packages you can download on www.st.com.

In any way, if you feel blocked or have questions, don't hesitate to ask for support
in this mailing list or provide an early version of your work with [DNM][RFC] tags
(Do Not Merge/Request For Comments) and request for review.

Good luck
Erwan


On 3 May 2018 at 05:43, Anthony Kreft <anthony.kreft@...> wrote:
I'm interested in working on a shim to enable the ADC driver on the STM32. What is the best way to get started with that? Are there any good pull requests I can use as reference? I think most confusing to me are the Kconfig and device tree requirements. If there are known issues with the ADC for STM32 in terms of integrating with the Zephyr driver, please let me know. Thanks for your help.

Regards,
Anthony



Justin
 

I was looking to do the same for NRF52 PWM driver.  I followed Erwan's suggestions.  Here's my PR https://github.com/zephyrproject-rtos/zephyr/pull/7334 if you're interested