8#ifndef ZEPHYR_MCTP_UART_H_
9#define ZEPHYR_MCTP_UART_H_
21 struct mctp_binding binding;
25 struct k_sem rx_disabled;
28 struct mctp_pktbuf *rx_pkt;
33 STATE_WAIT_SYNC_START,
53 uint8_t tx_storage[MCTP_PKTBUF_SIZE(MCTP_PACKET_SIZE(MCTP_BTU))] PKTBUF_STORAGE_ALIGN;
82int mctp_uart_start(
struct mctp_binding *binding);
83int mctp_uart_tx(
struct mctp_binding *binding,
struct mctp_pktbuf *pkt);
92#define MCTP_UART_DT_DEFINE(_name, _dev) \
93 struct mctp_binding_uart _name = { \
96 .name = STRINGIFY(_name), .version = 1, \
97 .pkt_size = MCTP_PACKET_SIZE(MCTP_BTU), \
98 .pkt_header = 0, .pkt_trailer = 0, \
99 .tx_storage = _name.tx_storage, \
100 .start = mctp_uart_start, .tx = mctp_uart_tx, \
103 .rx_state = STATE_WAIT_SYNC_START, \
struct _snode sys_snode_t
Single-linked list node structure.
Definition slist.h:39
void mctp_uart_start_rx(struct mctp_binding_uart *uart)
Start the receive of mctp messages.
int mctp_uart_stop_rx(struct mctp_binding_uart *uart)
Stop the receive of mctp messages.
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
__UINT16_TYPE__ uint16_t
Definition stdint.h:89
Runtime device structure (in ROM) per driver instance.
Definition device.h:513
Semaphore structure.
Definition kernel.h:3663
An MCTP binding for Zephyr's asynchronous UART interface.
Definition mctp_uart.h:19