44 #define mutex_unlock(f)
static bool is_fifo_initalized(fifo_t *f) ATTR_ALWAYS_INLINE
Disables the IRQ specified in the FIFO's 'irq' field to prevent reads/write issues with interrupts...
volatile uint16_t rd_idx
read pointer
uint16_t const depth
max items
uint16_t const item_size
size of each item
void fifo_clear(fifo_t *f)
Clear the fifo read and write pointers and set length to zero.
bool fifo_write(fifo_t *f, void const *p_data)
Write one byte into the RX buffer.
bool fifo_read(fifo_t *f, void *p_buffer)
Read one byte out of the RX buffer.
volatile uint16_t wr_idx
write pointer
uint8_t *const buffer
buffer pointer
#define ATTR_ALWAYS_INLINE
Generally, functions are not inlined unless optimization is specified. For functions declared inline...
volatile uint16_t count
number of items in queue