Struct sam4l::dma::DMAChannel
[−]
[src]
pub struct DMAChannel {
registers: *mut DMARegisters,
client: Cell<Option<&'static DMAClient>>,
width: Cell<DMAWidth>,
enabled: Cell<bool>,
buffer: TakeCell<'static, [u8]>,
}Fields
registers: *mut DMARegisters
client: Cell<Option<&'static DMAClient>>
width: Cell<DMAWidth>
enabled: Cell<bool>
buffer: TakeCell<'static, [u8]>
Methods
impl DMAChannel[src]
const fn new(channel: DMAChannelNum) -> DMAChannel[src]
pub fn initialize(&self, client: &'static mut DMAClient, width: DMAWidth)[src]
pub fn enable(&self)[src]
pub fn disable(&self)[src]
pub fn handle_interrupt(&mut self)[src]
pub fn start_xfer(&self)[src]
pub fn prepare_xfer(
&self,
pid: DMAPeripheral,
buf: &'static mut [u8],
len: usize
)[src]
&self,
pid: DMAPeripheral,
buf: &'static mut [u8],
len: usize
)
pub fn do_xfer(&self, pid: DMAPeripheral, buf: &'static mut [u8], len: usize)[src]
pub fn abort_xfer(&self) -> Option<&'static mut [u8]>[src]
Aborts any current transactions and returns the buffer used in the transaction.