pub struct CommandQueueTDLEntry { /* private fields */ }Expand description
An entry in the CQHCI Task Descriptor List (JESD84-B51A, B.2).
Note that this assumes 16-byte descriptors.
Implementations§
Source§impl CommandQueueTDLEntry
impl CommandQueueTDLEntry
Sourcepub fn single_buffer(
direction: Direction,
block_offset: u64,
block_count: NonZeroU16,
phys_address: u64,
) -> Result<Self, ()>
pub fn single_buffer( direction: Direction, block_offset: u64, block_count: NonZeroU16, phys_address: u64, ) -> Result<Self, ()>
Creates a new CommandQueueTDLEntry which points to a single memory region at
phys_address.
The caller must ensure that block_count does not exceed the maximum transfer size of
TransferBytes::MAX_BLOCKS, otherwise an error is returned.
Sourcepub fn scatter_gather_buffers(
direction: Direction,
block_offset: u64,
block_count: NonZeroU16,
descriptors_phys_address: u64,
) -> Self
pub fn scatter_gather_buffers( direction: Direction, block_offset: u64, block_count: NonZeroU16, descriptors_phys_address: u64, ) -> Self
Creates a new CommandQueueTDLEntry which points to a list of
CommandQueueTransferDescriptors at descriptors_phys_address. The caller must ensure
that one or more descriptors, ending with one that has END set, is initialized at this
address before submitting the task.
Trait Implementations§
Source§impl Clone for CommandQueueTDLEntry
impl Clone for CommandQueueTDLEntry
Source§fn clone(&self) -> CommandQueueTDLEntry
fn clone(&self) -> CommandQueueTDLEntry
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CommandQueueTDLEntry
impl Debug for CommandQueueTDLEntry
Source§impl FromBytes for CommandQueueTDLEntry
impl FromBytes for CommandQueueTDLEntry
Source§impl FromZeros for CommandQueueTDLEntry
impl FromZeros for CommandQueueTDLEntry
Source§fn new_zeroed() -> Selfwhere
Self: Sized,
fn new_zeroed() -> Selfwhere
Self: Sized,
Creates an instance of
Self from zeroed bytes. Read moreSource§fn new_box_zeroed() -> Result<Box<Self>, AllocError>where
Self: Sized,
fn new_box_zeroed() -> Result<Box<Self>, AllocError>where
Self: Sized,
Creates a
Box<Self> from zeroed bytes. Read moreSource§fn new_vec_zeroed(len: usize) -> Result<Vec<Self>, AllocError>where
Self: Sized,
fn new_vec_zeroed(len: usize) -> Result<Vec<Self>, AllocError>where
Self: Sized,
Creates a
Vec<Self> from zeroed bytes. Read moreSource§fn extend_vec_zeroed(
v: &mut Vec<Self>,
additional: usize,
) -> Result<(), AllocError>where
Self: Sized,
fn extend_vec_zeroed(
v: &mut Vec<Self>,
additional: usize,
) -> Result<(), AllocError>where
Self: Sized,
Extends a
Vec<Self> by pushing additional new items onto the end of
the vector. The new items are initialized with zeros.Source§impl IntoBytes for CommandQueueTDLEntrywhere
CommandQueueTaskDescriptor: IntoBytes,
CommandQueueTransferDescriptor: IntoBytes,
(): PaddingFree<Self, { _ }>,
impl IntoBytes for CommandQueueTDLEntrywhere
CommandQueueTaskDescriptor: IntoBytes,
CommandQueueTransferDescriptor: IntoBytes,
(): PaddingFree<Self, { _ }>,
Source§fn as_mut_bytes(&mut self) -> &mut [u8] ⓘwhere
Self: FromBytes,
fn as_mut_bytes(&mut self) -> &mut [u8] ⓘwhere
Self: FromBytes,
Gets the bytes of this value mutably. Read more
Source§fn write_to(&self, dst: &mut [u8]) -> Result<(), SizeError<&Self, &mut [u8]>>where
Self: Immutable,
fn write_to(&self, dst: &mut [u8]) -> Result<(), SizeError<&Self, &mut [u8]>>where
Self: Immutable,
Source§impl PartialEq for CommandQueueTDLEntry
impl PartialEq for CommandQueueTDLEntry
Source§impl TryFromBytes for CommandQueueTDLEntry
impl TryFromBytes for CommandQueueTDLEntry
Source§fn try_read_from_bytes(
source: &[u8],
) -> Result<Self, ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
fn try_read_from_bytes(
source: &[u8],
) -> Result<Self, ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
Source§fn try_read_from_prefix(
source: &[u8],
) -> Result<(Self, &[u8]), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
fn try_read_from_prefix(
source: &[u8],
) -> Result<(Self, &[u8]), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
Source§fn try_read_from_suffix(
source: &[u8],
) -> Result<(&[u8], Self), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
fn try_read_from_suffix(
source: &[u8],
) -> Result<(&[u8], Self), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
impl Copy for CommandQueueTDLEntry
impl Eq for CommandQueueTDLEntry
impl Immutable for CommandQueueTDLEntry
impl StructuralPartialEq for CommandQueueTDLEntry
Auto Trait Implementations§
impl Freeze for CommandQueueTDLEntry
impl RefUnwindSafe for CommandQueueTDLEntry
impl Send for CommandQueueTDLEntry
impl Sync for CommandQueueTDLEntry
impl Unpin for CommandQueueTDLEntry
impl UnsafeUnpin for CommandQueueTDLEntry
impl UnwindSafe for CommandQueueTDLEntry
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more