pub struct Aircr(pub u32);
Expand description
Application Interrupt and Reset Control Register, AIRCR (see armv8-M Architecture Reference Manual D1.2.3)
Aircr::vectkey
must be called before this register can effectively be written!
Tuple Fields§
§0: u32
Implementations§
Source§impl Aircr
impl Aircr
Sourcepub fn endianness(&self) -> bool
pub fn endianness(&self) -> bool
Indicates the memory system data endianness:
0
: little endian.
1
big endian.
See Endian support on page A3-44 for more information.
Sourcepub fn prigroup(&self) -> u32
pub fn prigroup(&self) -> u32
Priority grouping, indicates the binary point position. For information about the use of this field see Priority grouping on page B1-527.
This field resets to 0b000
.
Sourcepub fn sysresetreqs(&self) -> bool
pub fn sysresetreqs(&self) -> bool
System reset request Secure only. The value of this bit defines whether the SYSRESETREQ bit is functional for Non-secure use. This bit is not banked between Security states. The possible values of this bit are:
0
: SYSRESETREQ functionality is available to both Security states.
1
: SYSRESETREQ functionality is only available to Secure state.
This bit is RAZ/WI from Non-secure state. This bit resets to zero on a Warm reset
Sourcepub fn sysresetreq(&self) -> bool
pub fn sysresetreq(&self) -> bool
System Reset Request:
0
do not request a reset.
1
request reset.
Writing 1 to this bit asserts a signal to request a reset by the external system. The system components that are reset by this request are IMPLEMENTATION DEFINED. A Local reset is required as part of a system reset request.
A Local reset clears this bit to 0
.
See Reset management on page B1-208 for more information
Sourcepub fn vectclractive(&self) -> bool
pub fn vectclractive(&self) -> bool
Clears all active state information for fixed and configurable exceptions:
0
: do not clear state information.
1
: clear state information.
The effect of writing a 1
to this bit if the processor is not halted in Debug
state is UNPREDICTABLE.
Sourcepub fn vectreset(&self) -> bool
pub fn vectreset(&self) -> bool
Writing 1
to this bit causes a local system reset, see Reset management on page B1-559 for
more information. This bit self-clears.
The effect of writing a 1
to this bit if the processor is not halted in Debug state is
UNPREDICTABLE.
When the processor is halted in Debug state, if a write to the register writes a 1
to both
VECTRESET and SYSRESETREQ, the behavior is UNPREDICTABLE.
This bit is write only.
Sourcepub fn set_endianness(&mut self, value: bool)
pub fn set_endianness(&mut self, value: bool)
Indicates the memory system data endianness:
0
: little endian.
1
big endian.
See Endian support on page A3-44 for more information.
Sourcepub fn set_prigroup(&mut self, value: u32)
pub fn set_prigroup(&mut self, value: u32)
Priority grouping, indicates the binary point position. For information about the use of this field see Priority grouping on page B1-527.
This field resets to 0b000
.
Sourcepub fn set_sysresetreqs(&mut self, value: bool)
pub fn set_sysresetreqs(&mut self, value: bool)
System reset request Secure only. The value of this bit defines whether the SYSRESETREQ bit is functional for Non-secure use. This bit is not banked between Security states. The possible values of this bit are:
0
: SYSRESETREQ functionality is available to both Security states.
1
: SYSRESETREQ functionality is only available to Secure state.
This bit is RAZ/WI from Non-secure state. This bit resets to zero on a Warm reset
Sourcepub fn set_sysresetreq(&mut self, value: bool)
pub fn set_sysresetreq(&mut self, value: bool)
System Reset Request:
0
do not request a reset.
1
request reset.
Writing 1 to this bit asserts a signal to request a reset by the external system. The system components that are reset by this request are IMPLEMENTATION DEFINED. A Local reset is required as part of a system reset request.
A Local reset clears this bit to 0
.
See Reset management on page B1-208 for more information
Sourcepub fn set_vectclractive(&mut self, value: bool)
pub fn set_vectclractive(&mut self, value: bool)
Clears all active state information for fixed and configurable exceptions:
0
: do not clear state information.
1
: clear state information.
The effect of writing a 1
to this bit if the processor is not halted in Debug
state is UNPREDICTABLE.
Sourcepub fn set_vectreset(&mut self, value: bool)
pub fn set_vectreset(&mut self, value: bool)
Writing 1
to this bit causes a local system reset, see Reset management on page B1-559 for
more information. This bit self-clears.
The effect of writing a 1
to this bit if the processor is not halted in Debug state is
UNPREDICTABLE.
When the processor is halted in Debug state, if a write to the register writes a 1
to both
VECTRESET and SYSRESETREQ, the behavior is UNPREDICTABLE.
This bit is write only.
Source§impl Aircr
impl Aircr
Sourcepub fn vectkeystat(&self) -> bool
pub fn vectkeystat(&self) -> bool
Verifies that the vector key is correct (see Aircr::vectkey
)
Trait Implementations§
Source§impl<T> BitRangeMut<T> for Aircrwhere
u32: BitRangeMut<T>,
impl<T> BitRangeMut<T> for Aircrwhere
u32: BitRangeMut<T>,
Source§fn set_bit_range(&mut self, msb: usize, lsb: usize, value: T)
fn set_bit_range(&mut self, msb: usize, lsb: usize, value: T)
Source§impl MemoryMappedRegister<u32> for Aircr
impl MemoryMappedRegister<u32> for Aircr
Source§const ADDRESS_OFFSET: u64 = 3_758_157_068u64
const ADDRESS_OFFSET: u64 = 3_758_157_068u64
Source§fn get_mmio_address_from_base(
base_address: u64,
) -> Result<u64, RegisterAddressOutOfBounds>
fn get_mmio_address_from_base( base_address: u64, ) -> Result<u64, RegisterAddressOutOfBounds>
MemoryMappedRegister::get_mmio_address
.Source§fn get_mmio_address() -> u64
fn get_mmio_address() -> u64
MemoryMappedRegister::ADDRESS_OFFSET
.
For other architectures (e.g. ARM Cortex-A) where this address is offset from a base address, please use MemoryMappedRegister::get_mmio_address_from_base
.impl Copy for Aircr
Auto Trait Implementations§
impl Freeze for Aircr
impl RefUnwindSafe for Aircr
impl Send for Aircr
impl Sync for Aircr
impl Unpin for Aircr
impl UnwindSafe for Aircr
Blanket Implementations§
Source§impl<T> BitMut for Twhere
T: BitRangeMut<u8>,
impl<T> BitMut for Twhere
T: BitRangeMut<u8>,
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self
to use its Binary
implementation when Debug
-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self
to use its Display
implementation when
Debug
-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self
to use its LowerExp
implementation when
Debug
-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self
to use its LowerHex
implementation when
Debug
-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self
to use its Octal
implementation when Debug
-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self
to use its Pointer
implementation when
Debug
-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self
to use its UpperExp
implementation when
Debug
-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self
to use its UpperHex
implementation when
Debug
-formatted.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self
, then passes self.as_ref()
into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self
, then passes self.as_mut()
into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self
, then passes self.deref()
into the pipe function.Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B>
of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B>
of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R>
view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R>
view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target
of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target
of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap()
only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow()
only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref()
only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref()
only in debug builds, and is erased in release
builds.