File syn_spi_queue.c¶
FileList > drivers > syn_spi_queue.c
Go to the source code of this file
Non-blocking SPI transaction queue driver implementation.
#include "syn_spi_queue.h"#include "../port/syn_port_gpio.h"#include "../port/syn_port_spi.h"#include <string.h>
Public Functions¶
| Type | Name |
|---|---|
| SYN_Status | syn_spi_queue_cancel_all (SYN_SPI_Queue * q) Cancel all pending transactions in queue. |
| size_t | syn_spi_queue_count (const SYN_SPI_Queue * q) Query current pending transaction count. |
| SYN_Status | syn_spi_queue_enqueue (SYN_SPI_Queue * q, const SYN_SPI_Transaction * tx) Enqueue an SPI transaction for non-blocking execution. |
| SYN_Status | syn_spi_queue_init (SYN_SPI_Queue * q, uint8_t bus) Initialize an SPI transaction queue for a bus. |
| SYN_Status | syn_spi_queue_process (SYN_SPI_Queue * q) Process queue state machine (triggers pending transaction if idle). |
Public Functions Documentation¶
function syn_spi_queue_cancel_all¶
Cancel all pending transactions in queue.
Parameters:
qPointer to initialized queue handle.
Returns:
SYN_OK on success.
function syn_spi_queue_count¶
Query current pending transaction count.
Parameters:
qPointer to queue handle.
Returns:
Number of queued items (0 if NULL or empty).
function syn_spi_queue_enqueue¶
Enqueue an SPI transaction for non-blocking execution.
Parameters:
qPointer to initialized queue handle.txTransaction descriptor.
Returns:
SYN_OK if enqueued, SYN_BUSY if queue is full, SYN_INVALID_PARAM on invalid inputs.
function syn_spi_queue_init¶
Initialize an SPI transaction queue for a bus.
Parameters:
qPointer to queue handle.busTarget SPI bus index.
Returns:
SYN_OK on success, SYN_INVALID_PARAM if q is NULL.
function syn_spi_queue_process¶
Process queue state machine (triggers pending transaction if idle).
Parameters:
qPointer to initialized queue handle.
Returns:
SYN_OK on success.
The documentation for this class was generated from the following file src/syntropic/drivers/syn_spi_queue.c