nxp-pac

Crates

git

Versions

mimxrt685s_cm33

Flavors

P4addr

Struct P4addr 

Source
#[repr(transparent)]
pub struct P4addr(pub u32);
Expand description

The Port Address register is used to set the mapped address in the LPC/eSPI memory space. For normal Ports, this is a 16-bit location in IO space or a 32-bit offset into PCIe address mapped space. It is not used for OOB, Bus Mastering, or Flash; see the PnOMFLEN register for those. For Endpoints, it is the base of a dword (64 bits). For Index/Data, it is the base of a word (32 bits). For mailbox memory, the address is modulus the length of the mailbox (x2 for both directions). So, if a 16-byte mailbox (single), the offset must have bits 3:0 set to 0 (that is &~0xF). If split directions, then normally bits 4:0 would be set to 0 (that is &~0x1F).

Tuple Fields§

§0: u32

Implementations§

Source§

impl P4addr

Source

pub const fn off(&self) -> u16

Offset from 0 or the selected mapped base for matching memory or IO

Source

pub const fn set_off(&mut self, val: u16)

Offset from 0 or the selected mapped base for matching memory or IO

Source

pub const fn base_or_asz(&self) -> P4addrBaseOrAsz

The meaning is dependent on type of port:

Source

pub const fn set_base_or_asz(&mut self, val: P4addrBaseOrAsz)

The meaning is dependent on type of port:

Source

pub const fn idxoff(&self) -> u8

For index/register only: This is the byte offset of the Index relative to the data (before or after, based on IDX1ST)

Source

pub const fn set_idxoff(&mut self, val: u8)

For index/register only: This is the byte offset of the Index relative to the data (before or after, based on IDX1ST)

Source

pub const fn idx1st(&self) -> bool

For index/data register only: Is 1 if index is lower address than data (e

Source

pub const fn set_idx1st(&mut self, val: bool)

For index/data register only: Is 1 if index is lower address than data (e

Trait Implementations§

Source§

impl Clone for P4addr

Source§

fn clone(&self) -> P4addr

Returns a duplicate 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 P4addr

Source§

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

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

impl Default for P4addr

Source§

fn default() -> P4addr

Returns the “default value” for a type. Read more
Source§

impl PartialEq for P4addr

Source§

fn eq(&self, other: &P4addr) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for P4addr

Source§

impl Eq for P4addr

Source§

impl StructuralPartialEq for P4addr

Auto Trait Implementations§

§

impl Freeze for P4addr

§

impl RefUnwindSafe for P4addr

§

impl Send for P4addr

§

impl Sync for P4addr

§

impl Unpin for P4addr

§

impl UnwindSafe for P4addr

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, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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.