Module tx_async

Module tx_async 

Source
Expand description

§Asynchronous TX support.

This module provides support for asynchronous non-blocking TX transfers.

It provides a static number of async wakers to allow a configurable amount of pollable TxFutures. Each UARTLite Tx instance which performs asynchronous TX operations needs to be to explicitely assigned a waker when creating an awaitable TxAsync structure as well as when calling the on_interrupt_tx handler.

The maximum number of available wakers is configured via the waker feature flags:

  • 1-waker
  • 2-wakers
  • 4-wakers
  • 8-wakers
  • 16-wakers
  • 32-wakers

Structs§

InvalidWakerIndex
Invalid waker index for NUM_WAKERS.
TxAsync
Asynchronous TX structure.
TxContext
TX context structure.
TxFuture
TX future structure.

Constants§

NUM_WAKERS1-waker
1 waker (default).

Functions§

on_interrupt_tx
This is a generic interrupt handler to handle asynchronous UART TX operations for a given UART peripheral.