nxp-pac

Crates

git

Versions

mcxa556

Flavors

Pstat

Struct Pstat 

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

Port Status. RDSTAT/WRSTAT depend on port type; change them through PIRULESTAT, not ordinary writes. Interrupt cause bits 8-14 are sticky write-one-to-clear, even with interrupts masked. Clearing INTERR also clears ERR0-ERR3. RPMC_FLASH_DEVICE may toggle for non-RPMC commands and must then be ignored.

Tuple Fields§

§0: u32

Implementations§

Source§

impl Pstat

Source

pub const fn rdstat(&self) -> u8

Host Read Data Status. Encodings: 0: Endpoint or index-and-data: Empty. Mailbox: Empty (host read to end). Master/Flash: No requests.; 1: Endpoint or index-and-data: Data waiting from MCU. Mailbox: Started (by MCU). Master/Flash: Started. From-host: goes to Pending next. To-host: goes to Complete next. SAF: host made request: Started.; 2: Mailbox: Complete (by MCU). Master/Flash: Complete. SAF: Complete.; 3: Mailbox: Partially read (by host). Master/Flash: From-host only, Pending (request made); goes to Complete next. SAF: MCU has setup completion.

Source

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

Host Read Data Status. Encodings: 0: Endpoint or index-and-data: Empty. Mailbox: Empty (host read to end). Master/Flash: No requests.; 1: Endpoint or index-and-data: Data waiting from MCU. Mailbox: Started (by MCU). Master/Flash: Started. From-host: goes to Pending next. To-host: goes to Complete next. SAF: host made request: Started.; 2: Mailbox: Complete (by MCU). Master/Flash: Complete. SAF: Complete.; 3: Mailbox: Partially read (by host). Master/Flash: From-host only, Pending (request made); goes to Complete next. SAF: MCU has setup completion.

Source

pub const fn wrstat(&self) -> u8

Status of Host Writes. Encodings: 0: Endpoint: Empty. Index-and-data: Empty. Mailbox: Empty. Master/flash: Not last request.; 1: Endpoint: data waiting from host. Index-and-data: data waiting from host (index may have been written before). Mailbox: Started (by host). Master/flash: last request from-host/read-flash (writes to MCU). SAF: Request from master was or is Flash Read.; 2: Endpoint: Empty, but last was CMD. Index-and-data: wrote index. Mailbox: complete/last (host to end). Master/flash: last request to-host/write-flash (read from MCU). SAF: Request from Master was or is Flash Write.; 3: Endpoint: CMD waiting from host. Index-and-data: Wrote Data then Index. Mailbox: Partially read (by MCU). Flash: Last Requested Erase. SAF: Request from Master was or is Flash Erase.

Source

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

Status of Host Writes. Encodings: 0: Endpoint: Empty. Index-and-data: Empty. Mailbox: Empty. Master/flash: Not last request.; 1: Endpoint: data waiting from host. Index-and-data: data waiting from host (index may have been written before). Mailbox: Started (by host). Master/flash: last request from-host/read-flash (writes to MCU). SAF: Request from master was or is Flash Read.; 2: Endpoint: Empty, but last was CMD. Index-and-data: wrote index. Mailbox: complete/last (host to end). Master/flash: last request to-host/write-flash (read from MCU). SAF: Request from Master was or is Flash Write.; 3: Endpoint: CMD waiting from host. Index-and-data: Wrote Data then Index. Mailbox: Partially read (by MCU). Flash: Last Requested Erase. SAF: Request from Master was or is Flash Erase.

Source

pub const fn interr(&self) -> bool

Interrupt Caused by Error

Source

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

Interrupt Caused by Error

Source

pub const fn intrd(&self) -> bool

Interrupt Caused by Read

Source

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

Interrupt Caused by Read

Source

pub const fn intwr(&self) -> bool

Interrupt Caused by Write

Source

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

Interrupt Caused by Write

Source

pub const fn intspc0(&self) -> bool

SPC0 Interrupt

Source

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

SPC0 Interrupt

Source

pub const fn intspc1(&self) -> bool

SPC1 Interrupt

Source

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

SPC1 Interrupt

Source

pub const fn intspc2(&self) -> bool

SPC2 Interrupt

Source

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

SPC2 Interrupt

Source

pub const fn instspc3(&self) -> bool

SPC3 Interrupt

Source

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

SPC3 Interrupt

Source

pub const fn err0(&self) -> bool

Error 0

Source

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

Error 0

Source

pub const fn err1(&self) -> bool

Error 1

Source

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

Error 1

Source

pub const fn err2(&self) -> bool

Error 2

Source

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

Error 2

Source

pub const fn err3(&self) -> bool

Error 3

Source

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

Error 3

Source

pub const fn rpmc_1_or_2(&self) -> bool

RPMC 1 or 2. Encodings: 0: RPMC operation 1 has been chosen; 1: RPMC operation 2 has been chosen

Source

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

RPMC 1 or 2. Encodings: 0: RPMC operation 1 has been chosen; 1: RPMC operation 2 has been chosen

Source

pub const fn rpmc_flash_device(&self) -> u8

RPMC Flash Device. Encodings: 0: First device; 1: Second device; 2: Third device; 3: Fourth device

Source

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

RPMC Flash Device. Encodings: 0: First device; 1: Second device; 2: Third device; 3: Fourth device

Trait Implementations§

Source§

impl Clone for Pstat

Source§

fn clone(&self) -> Pstat

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 Pstat

Source§

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

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

impl Default for Pstat

Source§

fn default() -> Pstat

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

impl PartialEq for Pstat

Source§

fn eq(&self, other: &Pstat) -> 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 Pstat

Source§

impl Eq for Pstat

Source§

impl StructuralPartialEq for Pstat

Auto Trait Implementations§

§

impl Freeze for Pstat

§

impl RefUnwindSafe for Pstat

§

impl Send for Pstat

§

impl Sync for Pstat

§

impl Unpin for Pstat

§

impl UnwindSafe for Pstat

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.