spi: callback API for asynchronous transcieve

Adds a new spi_transcieve_cb API which enables asynchronous
SPI transactions with callback notification.

The exist spi_transcieve_async API remains and uses the new
spi_transcieve_cb API to provide a k_poll_signal notifier.

The driver API changes to provide a callback and userdata
parameter to async transcieve. All drivers in the tree
have been updated to the change.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
This commit is contained in:
Tom Burdick 2022-08-15 15:57:43 -05:00 committed by Anas Nashif
commit 4c20403629
28 changed files with 325 additions and 148 deletions

View file

@ -27,7 +27,8 @@ static int vnd_spi_transceive_async(const struct device *dev,
const struct spi_config *spi_cfg,
const struct spi_buf_set *tx_bufs,
const struct spi_buf_set *rx_bufs,
struct k_poll_signal *async)
spi_callback_t cb,
void *userdata)
{
return -ENOTSUP;
}