-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
User space interface for DMA and Mailbox #75
Conversation
60b23bd
to
edc2136
Compare
a3bc7ce
to
60ddd87
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added user APIs for DMA and mailbox The DMA API allows for AXI-to-AXI transfers or from local buffer to an AXI component. The Mailbox API allows for executing a mailbox command in an atomic fashion, i.e. execute command, wait for response, return response.
521d58b
to
808c333
Compare
Use TockSubscribe while passing buffers with the required permission Add tock API to pass ro and rw buffers for the mailbox use case
@helloxiling , thanks I updated this PR now to be consistent with Flash and MCTP implementations |
runtime/apps/syscall/src/dma.rs
Outdated
#[derive(Debug, Clone)] | ||
pub enum DMASource<'a> { | ||
/// A memory address as the source. | ||
Address(u64), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this an AXI address or a local memory address (which would be a u32
)?
It might be good to have a separate type for AXI addresses so that we don't mix them up. Something like pub type AxiAddr(u64);
or pub type AxiAddr = u64
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it is Axi address. good point, I can create a new type for AxiAddr
Define AXIAddr type Remove unnecessary async keyword
…e syscall interface
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Thank you! |
No description provided.