esp_hal::dma

Struct DmaDescriptor

Source
pub struct DmaDescriptor {
    pub flags: DmaDescriptorFlags,
    pub buffer: *mut u8,
    pub next: *mut DmaDescriptor,
}
Expand description

A DMA transfer descriptor.

Fields§

§flags: DmaDescriptorFlags

Descriptor flags.

§buffer: *mut u8

Address of the buffer.

§next: *mut DmaDescriptor

Address of the next descriptor. If the current descriptor is the last one, this value is 0. This field can only point to internal RAM.

Implementations§

Source§

impl DmaDescriptor

Source

pub const EMPTY: Self = _

An empty DMA descriptor used to initialize the descriptor list.

Source

pub fn reset_for_rx(&mut self)

Resets the descriptor for a new receive transfer.

Source

pub fn reset_for_tx(&mut self, set_eof: bool)

Resets the descriptor for a new transmit transfer. See DmaDescriptorFlags::suc_eof for more details on the set_eof parameter.

Source

pub fn set_size(&mut self, len: usize)

Set the size of the buffer. See DmaDescriptorFlags::size.

Source

pub fn set_length(&mut self, len: usize)

Set the length of the descriptor. See DmaDescriptorFlags::length.

Source

pub fn size(&self) -> usize

Returns the size of the buffer. See DmaDescriptorFlags::size.

Source

pub fn len(&self) -> usize

Returns the length of the descriptor. See DmaDescriptorFlags::length.

Source

pub fn set_suc_eof(&mut self, suc_eof: bool)

Set the suc_eof bit. See DmaDescriptorFlags::suc_eof.

Source

pub fn set_owner(&mut self, owner: Owner)

Set the owner. See DmaDescriptorFlags::owner.

Source

pub fn owner(&self) -> Owner

Returns the owner. See DmaDescriptorFlags::owner.

Trait Implementations§

Source§

impl Clone for DmaDescriptor

Source§

fn clone(&self) -> DmaDescriptor

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for DmaDescriptor

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Copy for DmaDescriptor

Source§

impl Send for DmaDescriptor

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.