stm32: spi: evolution roadmap #82547
Labels
area: SPI
SPI bus
Enhancement
Changes/Updates/Additions to existing features
platform: STM32
ST Micro STM32
Is your enhancement proposal related to a problem? Please describe.
There are several evolutions that should be integrated in medium term to stm32 spi driver:
This list is open, but these are, I think, the major contenders.
Describe the solution you'd like
I propose to work on integrating these evolutions in the following order:
Half duplex support: There were several attempts to enable this previously (drivers: spi: STM32 half-duplex master SPI support #46803, SPI: Stm32 3-wire (half-duplex) support #57993), but these attempts never succeeded for various reasons. There was a new proposal recently (drivers: spi: stm32 half duplex support #75983, thanks @vai-rikar). We need to ensure this one will get merged. Dedicated tests might be required on top of this work.
DMA for ASYNC API: Current DMA support in driver is odd: It is available for default API but missing in ASYNC_API. Hence there is no way to enable efficient asynchronous transactions. Draft PR Drivers: spi: stm32: add support for DMA in asynchronous mode #73855 (@JarmouniA) proposes to fix this. We should also ensure this PR could be completed.
Note: Once merged, one option could be to remove DMA support from the default API to simplify driver a bit. This may have impact out of tree, so actual gain should be evaluated first.
RTIO API: See RTIO Improvements #46658. No known work on this yet. Proposal is to base any work on a driver state where 2 previous items are already available.
Additional context
I'm raising this issue to provide visibility on the upcoming efforts on this driver.
Any kind of help is welcome to achieve these goals (testing, reviews, PR, feedback), to ensure these works result in a better (more complete, more performant) SPI support on STM32 SoCs.
The text was updated successfully, but these errors were encountered: