Expand description
§MCTP Stack
This crate provides a MCTP stack that can be embedded in other programs or devices.
A Router
object lets programs use a Stack
with
MCTP transport binding links. Each Port handles transmitting and receiving
packets independently. Messages destined for the stack’s own EID will
be passed to applications.
Applications can create router::RouterAsyncListener
and router::RouterAsyncReqChannel
instances to communicate over MCTP. Those implement the standard mctp
crate
async traits.
The IO-less Stack
handles MCTP message formatting and parsing, independent
of any particular MCTP transport binding.
§Configuration
mctp-estack
uses fixed sizes to be suitable on no-alloc platforms.
These can be configured at build time, see config
Re-exports§
pub use router::Router;
Modules§
- config
- Build-time configuration and defaults
- control
- MCTP Control Protocol implementation
- fragment
- Packet Fragmentation
- i2c
- MCTP over I2C transport binding
- router
- MCTP Routing
- serial
- A MCTP serial transport binding, DSP0253
- usb
- MCTP over USB transport binding
Structs§
- AppCookie
- An opaque identifier that applications can use to associate responses.
- Mctp
Message - Receive
Handle - A handle to a received message.
- Stack
- Low level MCTP stack.
- Vec
- Re-exported so that callers can use the same
heapless
version.
Constants§
- DEFERRED_
TIMEOUT - Timeout for
get_deferred()
. - TIMEOUT_
INTERVAL - Timeout granularity.