Skip to content

Spi flushing definition improvements #739

Description

@pellico

Issue

In the present definition is of flushing of Spi is required that the transmit FIFO is empty and no activity in the bus.

This definition doesn't require explicitly that also the receive FIFO shall be empty.
This create an issue when using pipelined write operation.

It is already happened that a fully complaint implementation of SpiBus::flush operation caused a shift on read operation after write operation because the read FIFO is not empty.
see atsamd-rs/atsamd#1007 for an example

Proposal

Make explicit that SpiBus flush requires empty read FIFO too.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions