Skip to content

DMA SPI needs more attention to the multi-SPI-instance case #312

Open
@multiplemonomials

Description

@multiplemonomials

Doing a quick look at the DMA SPI code, it seems to have some issues with the case where multiple SPI instances, pointing to different chip selects but the same peripheral and mosi/miso/sclk pins, are used at the same time. For instance:

  • What happens if you call abort() and the current transaction is being done by a different SPI instance on this bus? Behavior is not documented.
  • Calling abort_all() will abort transactions enqueued by other SPI instances on this bus, which is probably not desired.
  • There are a number of DMA related class variables in SPI which might be better in the per-peripheral structure instead of the class.

Metadata

Metadata

Assignees

No one assigned

    Labels

    UsabilityThis makes Mbed harder to use, and needs to be cleaned up.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions