Zephyr API Documentation  2.7.0-rc2
A Scalable Open Source RTOS
uart_driver_api Struct Reference

Driver API structure. More...

#include <uart.h>

Data Fields

int(* callback_set )(const struct device *dev, uart_callback_t callback, void *user_data)
 
int(* tx )(const struct device *dev, const uint8_t *buf, size_t len, int32_t timeout)
 
int(* tx_abort )(const struct device *dev)
 
int(* rx_enable )(const struct device *dev, uint8_t *buf, size_t len, int32_t timeout)
 
int(* rx_buf_rsp )(const struct device *dev, uint8_t *buf, size_t len)
 
int(* rx_disable )(const struct device *dev)
 
int(* poll_in )(const struct device *dev, unsigned char *p_char)
 
void(* poll_out )(const struct device *dev, unsigned char out_char)
 
int(* err_check )(const struct device *dev)
 
int(* configure )(const struct device *dev, const struct uart_config *cfg)
 
int(* config_get )(const struct device *dev, struct uart_config *cfg)
 
int(* fifo_fill )(const struct device *dev, const uint8_t *tx_data, int len)
 
int(* fifo_read )(const struct device *dev, uint8_t *rx_data, const int size)
 
void(* irq_tx_enable )(const struct device *dev)
 
void(* irq_tx_disable )(const struct device *dev)
 
int(* irq_tx_ready )(const struct device *dev)
 
void(* irq_rx_enable )(const struct device *dev)
 
void(* irq_rx_disable )(const struct device *dev)
 
int(* irq_tx_complete )(const struct device *dev)
 
int(* irq_rx_ready )(const struct device *dev)
 
void(* irq_err_enable )(const struct device *dev)
 
void(* irq_err_disable )(const struct device *dev)
 
int(* irq_is_pending )(const struct device *dev)
 
int(* irq_update )(const struct device *dev)
 
void(* irq_callback_set )(const struct device *dev, uart_irq_callback_user_data_t cb, void *user_data)
 
int(* drv_cmd )(const struct device *dev, uint32_t cmd, uint32_t p)
 

Detailed Description

Driver API structure.

Field Documentation

◆ callback_set

int(* uart_driver_api::callback_set) (const struct device *dev, uart_callback_t callback, void *user_data)

◆ config_get

int(* uart_driver_api::config_get) (const struct device *dev, struct uart_config *cfg)

◆ configure

int(* uart_driver_api::configure) (const struct device *dev, const struct uart_config *cfg)

UART configuration functions

◆ drv_cmd

int(* uart_driver_api::drv_cmd) (const struct device *dev, uint32_t cmd, uint32_t p)

◆ err_check

int(* uart_driver_api::err_check) (const struct device *dev)

Console I/O function

◆ fifo_fill

int(* uart_driver_api::fifo_fill) (const struct device *dev, const uint8_t *tx_data, int len)

Interrupt driven FIFO fill function

◆ fifo_read

int(* uart_driver_api::fifo_read) (const struct device *dev, uint8_t *rx_data, const int size)

Interrupt driven FIFO read function

◆ irq_callback_set

void(* uart_driver_api::irq_callback_set) (const struct device *dev, uart_irq_callback_user_data_t cb, void *user_data)

Set the irq callback function

◆ irq_err_disable

void(* uart_driver_api::irq_err_disable) (const struct device *dev)

Interrupt driven error disabling function

◆ irq_err_enable

void(* uart_driver_api::irq_err_enable) (const struct device *dev)

Interrupt driven error enabling function

◆ irq_is_pending

int(* uart_driver_api::irq_is_pending) (const struct device *dev)

Interrupt driven pending status function

◆ irq_rx_disable

void(* uart_driver_api::irq_rx_disable) (const struct device *dev)

Interrupt driven receiver disabling function

◆ irq_rx_enable

void(* uart_driver_api::irq_rx_enable) (const struct device *dev)

Interrupt driven receiver enabling function

◆ irq_rx_ready

int(* uart_driver_api::irq_rx_ready) (const struct device *dev)

Interrupt driven receiver ready function

◆ irq_tx_complete

int(* uart_driver_api::irq_tx_complete) (const struct device *dev)

Interrupt driven transfer complete function

◆ irq_tx_disable

void(* uart_driver_api::irq_tx_disable) (const struct device *dev)

Interrupt driven transfer disabling function

◆ irq_tx_enable

void(* uart_driver_api::irq_tx_enable) (const struct device *dev)

Interrupt driven transfer enabling function

◆ irq_tx_ready

int(* uart_driver_api::irq_tx_ready) (const struct device *dev)

Interrupt driven transfer ready function

◆ irq_update

int(* uart_driver_api::irq_update) (const struct device *dev)

Interrupt driven interrupt update function

◆ poll_in

int(* uart_driver_api::poll_in) (const struct device *dev, unsigned char *p_char)

Console I/O function

◆ poll_out

void(* uart_driver_api::poll_out) (const struct device *dev, unsigned char out_char)

◆ rx_buf_rsp

int(* uart_driver_api::rx_buf_rsp) (const struct device *dev, uint8_t *buf, size_t len)

◆ rx_disable

int(* uart_driver_api::rx_disable) (const struct device *dev)

◆ rx_enable

int(* uart_driver_api::rx_enable) (const struct device *dev, uint8_t *buf, size_t len, int32_t timeout)

◆ tx

int(* uart_driver_api::tx) (const struct device *dev, const uint8_t *buf, size_t len, int32_t timeout)

◆ tx_abort

int(* uart_driver_api::tx_abort) (const struct device *dev)

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