Zephyr API Documentation 4.2.0-rc2
A Scalable Open Source RTOS
 4.2.0-rc2
rtio_sqe Struct Reference

A submission queue event. More...

#include <rtio.h>

Data Fields

uint8_t op
 Op code.
uint8_t prio
 Op priority.
uint16_t flags
 Op Flags.
uint32_t iodev_flags
 Op iodev flags.
const struct rtio_iodeviodev
 Device to operation on.
void * userdata
 User provided data which is returned upon operation completion.
union { 
   struct { 
      uint32_t   buf_len 
 Length of buffer. More...
      const uint8_t *   buf 
 Buffer to write from. More...
   }   tx
 OP_TX. More...
   struct { 
      uint32_t   buf_len 
 Length of buffer. More...
      uint8_t *   buf 
 Buffer to read into. More...
   }   rx
 OP_RX. More...
   struct { 
      uint8_t   buf_len 
 Length of tiny buffer. More...
      uint8_t   buf [7] 
 Tiny buffer. More...
   }   tiny_tx
 OP_TINY_TX. More...
   struct { 
      rtio_callback_t   callback 
      void *   arg0 
 Last argument given to callback. More...
   }   callback
 OP_CALLBACK. More...
   struct { 
      uint32_t   buf_len 
 Length of tx and rx buffers. More...
      const uint8_t *   tx_buf 
 Buffer to write from. More...
      uint8_t *   rx_buf 
 Buffer to read into. More...
   }   txrx
 OP_TXRX. More...
   struct { 
      k_timeout_t   timeout 
 Delay timeout. More...
      struct _timeout   to 
 Timeout struct. More...
   }   delay
 OP_DELAY. More...
   uint32_t   i2c_config 
 OP_I2C_CONFIGURE. More...
   struct { 
      int   type 
      void *   config 
   }   i3c_config
 OP_I3C_CONFIGURE. More...
   void *   ccc_payload 
 OP_I3C_CCC. More...
   struct { 
      atomic_t   ok 
      rtio_signaled_t   callback 
      void *   userdata 
   }   await
 OP_AWAIT. More...
}; 

Detailed Description

A submission queue event.

Field Documentation

◆ [union]

union { ... } rtio_sqe

◆ arg0

void* rtio_sqe::arg0

Last argument given to callback.

◆ [struct]

struct { ... } rtio_sqe::await

OP_AWAIT.

◆ buf [1/3]

const uint8_t* rtio_sqe::buf

Buffer to write from.

◆ buf [2/3]

uint8_t* rtio_sqe::buf

Buffer to read into.

◆ buf [3/3]

uint8_t rtio_sqe::buf[7]

Tiny buffer.

◆ buf_len [1/2]

uint32_t rtio_sqe::buf_len

Length of buffer.

Length of tx and rx buffers.

◆ buf_len [2/2]

uint8_t rtio_sqe::buf_len

Length of tiny buffer.

◆ callback [1/3]

rtio_callback_t rtio_sqe::callback

◆ [struct] [2/3]

struct { ... } rtio_sqe::callback

OP_CALLBACK.

◆ callback [3/3]

rtio_signaled_t rtio_sqe::callback

◆ ccc_payload

void* rtio_sqe::ccc_payload

OP_I3C_CCC.

◆ config

void* rtio_sqe::config

◆ [struct]

struct { ... } rtio_sqe::delay

OP_DELAY.

◆ flags

uint16_t rtio_sqe::flags

Op Flags.

◆ i2c_config

uint32_t rtio_sqe::i2c_config

OP_I2C_CONFIGURE.

◆ [struct]

struct { ... } rtio_sqe::i3c_config

OP_I3C_CONFIGURE.

◆ iodev

const struct rtio_iodev* rtio_sqe::iodev

Device to operation on.

◆ iodev_flags

uint32_t rtio_sqe::iodev_flags

Op iodev flags.

◆ ok

atomic_t rtio_sqe::ok

◆ op

uint8_t rtio_sqe::op

Op code.

◆ prio

uint8_t rtio_sqe::prio

Op priority.

◆ [struct]

struct { ... } rtio_sqe::rx

OP_RX.

◆ rx_buf

uint8_t* rtio_sqe::rx_buf

Buffer to read into.

◆ timeout

k_timeout_t rtio_sqe::timeout

Delay timeout.

◆ [struct]

struct { ... } rtio_sqe::tiny_tx

OP_TINY_TX.

◆ to

struct _timeout rtio_sqe::to

Timeout struct.

Used internally.

◆ [struct]

struct { ... } rtio_sqe::tx

OP_TX.

◆ tx_buf

const uint8_t* rtio_sqe::tx_buf

Buffer to write from.

◆ [struct]

struct { ... } rtio_sqe::txrx

OP_TXRX.

◆ type

int rtio_sqe::type

◆ userdata

void* rtio_sqe::userdata

User provided data which is returned upon operation completion.

Could be a pointer or integer.

If unique identification of completions is desired this should be unique as well.


The documentation for this struct was generated from the following file: