#[repr(transparent)]struct Cfg(u32);
Expand description
The first 32-bit word of an IDMAC descriptor, containing configuration data.
Tuple Fields§
§0: u32
Implementations§
source§impl Cfg
impl Cfg
const _RESERVED_0: Pack32<u32, Self> = _
sourceconst CUR_TXRX_OVER_INT_DIS: Pack32<bool, Self> = _
const CUR_TXRX_OVER_INT_DIS: Pack32<bool, Self> = _
Disable interrupts on completion.
sourceconst LAST: Pack32<bool, Self> = _
const LAST: Pack32<bool, Self> = _
When set to 1, this bit indicates that the buffer this descriptor points to is the last data buffer.
sourceconst FIRST: Pack32<bool, Self> = _
const FIRST: Pack32<bool, Self> = _
When set to 1, this bit indicates that this descriptor contains the first buffer of data. It must be set to 1 in the first DES.
sourceconst CHAIN_MOD: Pack32<bool, Self> = _
const CHAIN_MOD: Pack32<bool, Self> = _
When set to 1, this bit indicates that the second address in the descriptor is the next descriptor address. It must be set to 1.
sourceconst _RESERVED_1: Pack32<u32, Self> = _
const _RESERVED_1: Pack32<u32, Self> = _
Bits 29:5 are reserved.
sourceconst ERR: Pack32<bool, Self> = _
const ERR: Pack32<bool, Self> = _
When some errors happen in transfer, this bit will be set to 1 by the IDMAC.
sourceconst DES_OWN: Pack32<bool, Self> = _
const DES_OWN: Pack32<bool, Self> = _
When set to 1, this bit indicates that the descriptor is owned by the IDMAC. When this bit is reset, it indicates that the descriptor is owned by the host. This bit is cleared when the transfer is over.
const FIELDS: &'static [(&'static str, Pack32<u32, Self>)] = _
sourceconst fn from_bits(bits: u32) -> Self
const fn from_bits(bits: u32) -> Self
Constructs a new instance of Self
from the provided raw bits.
sourcefn with<T>(self, field: Pack32<T, Self>, value: T) -> Self
fn with<T>(self, field: Pack32<T, Self>, value: T) -> Self
Packs the bit representation of value
into self
at the bit
range designated by field
, returning a new bitfield.
sourcefn set<T>(&mut self, field: Pack32<T, Self>, value: T) -> &mut Self
fn set<T>(&mut self, field: Pack32<T, Self>, value: T) -> &mut Self
Packs the bit representation of value
into self
at the range
designated by field
, mutating self
in place.
sourcefn get<T>(self, field: Pack32<T, Self>) -> T
fn get<T>(self, field: Pack32<T, Self>) -> T
Unpacks the bit range represented by field
from self
, and
converts it into a T
-typed value.
§Panics
This method panics if self
does not contain a valid bit
pattern for a T
-typed value, as determined by T
’s
FromBits::try_from_bits
implementation.
sourcefn try_get<T>(self, field: Pack32<T, Self>) -> Result<T, T::Error>
fn try_get<T>(self, field: Pack32<T, Self>) -> Result<T, T::Error>
Unpacks the bit range represented by field
from self
and attempts to convert it into a T
-typed value.
§Returns
Ok(T)
if aT
-typed value could be constructed from the bits insrc
Err(T::Error)
ifsrc
does not contain a valid bit pattern for aT
-typed value, as determined byT
’s [FromBits::try_from_bits
implementation.
sourcefn assert_valid()
fn assert_valid()
Asserts that all the packing specs for this type are valid.
This is intended to be used in unit tests.
sourcefn display_ascii(&self) -> impl Display
fn display_ascii(&self) -> impl Display
Returns a value that formats this bitfield in a multi-line format, using only ASCII characters.
This is equivalent to formatting this bitfield using a {}
display specifier, but will never use Unicode box-drawing
characters, even when an upstream formatter uses the {:#}
fmt::Display
specifier. This is intended for use on platforms
where Unicode box drawing characters are never available.
sourcefn display_unicode(&self) -> impl Display
fn display_unicode(&self) -> impl Display
Returns a value that formats this bitfield in a multi-line format, always using Unicode box-drawing characters.
This is equivalent to formatting this bitfield using a {:#}
format specifier, but will always use Unicode box-drawing
characters, even when an upstream formatter uses the {}
fmt::Display
specifier.
fn fmt_ascii(&self, f: &mut Formatter<'_>) -> Result
fn fmt_unicode(&self, f: &mut Formatter<'_>) -> Result
Trait Implementations§
impl Copy for Cfg
Auto Trait Implementations§
impl Freeze for Cfg
impl RefUnwindSafe for Cfg
impl Send for Cfg
impl Sync for Cfg
impl Unpin for Cfg
impl UnwindSafe for Cfg
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
source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)