ChibiOS/HAL 9.0.0
hal_sio_driver Struct Reference

Structure representing a SIO driver. More...

#include <hal_sio.h>

Collaboration diagram for hal_sio_driver:
Collaboration graph

Data Fields

const struct sio_driver_vmtvmt
 Virtual Methods Table.
siostate_t state
 Driver state.
const SIOConfigconfig
 Current configuration data.
sioevents_t enabled
 Enabled event flags.
siocb_t cb
 Events callback.
void * arg
 User argument.
thread_reference_t sync_rx
 Synchronization point for RX.
thread_reference_t sync_rxidle
 Synchronization point for RX idle.
thread_reference_t sync_tx
 Synchronization point for TX.
thread_reference_t sync_txend
 Synchronization point for TX-end.

Detailed Description

Structure representing a SIO driver.

Note
Implementations may extend this structure to contain more, architecture dependent, fields.

Definition at line 196 of file hal_sio.h.

Field Documentation

◆ vmt

const struct sio_driver_vmt* hal_sio_driver::vmt

Virtual Methods Table.

Definition at line 201 of file hal_sio.h.

Referenced by sioObjectInit().

◆ state

◆ config

const SIOConfig* hal_sio_driver::config

Current configuration data.

Definition at line 210 of file hal_sio.h.

Referenced by sioObjectInit(), sioStart(), and sioStop().

◆ enabled

sioevents_t hal_sio_driver::enabled

Enabled event flags.

Definition at line 214 of file hal_sio.h.

Referenced by sioObjectInit().

◆ cb

siocb_t hal_sio_driver::cb

Events callback.

Note
Can be NULL.

Definition at line 219 of file hal_sio.h.

Referenced by sioObjectInit(), and sioStop().

◆ arg

void* hal_sio_driver::arg

User argument.

Note
Can be retrieved through the siop argument of the callback.

Definition at line 224 of file hal_sio.h.

Referenced by __bsio_default_cb(), bsioObjectInit(), sioObjectInit(), and sioStop().

◆ sync_rx

thread_reference_t hal_sio_driver::sync_rx

Synchronization point for RX.

Definition at line 229 of file hal_sio.h.

Referenced by sioObjectInit(), sioStop(), and sioSynchronizeRX().

◆ sync_rxidle

thread_reference_t hal_sio_driver::sync_rxidle

Synchronization point for RX idle.

Definition at line 233 of file hal_sio.h.

Referenced by sioObjectInit(), sioStop(), and sioSynchronizeRXIdle().

◆ sync_tx

thread_reference_t hal_sio_driver::sync_tx

Synchronization point for TX.

Definition at line 237 of file hal_sio.h.

Referenced by sioObjectInit(), sioStop(), and sioSynchronizeTX().

◆ sync_txend

thread_reference_t hal_sio_driver::sync_txend

Synchronization point for TX-end.

Definition at line 241 of file hal_sio.h.

Referenced by sioObjectInit(), sioStop(), and sioSynchronizeTXEnd().