Skip to main content

SystemControlRegisterEl3

Struct SystemControlRegisterEl3 

Source
pub struct SystemControlRegisterEl3(/* private fields */);
Expand description

The layout of SCTLR_EL3.

Implementations§

Source§

impl SystemControlRegisterEl3

Source

pub const RSVD1_MASK: u64

Mask of all reserved-as-1 bits.

Source

pub const RSVD0_MASK: u64

Mask of all reserved-as-0 bits.

Source

pub const DEFAULT: u64

The default value of the layout, combining all field defaults and reserved-as values.

Source

pub const SPINTMASK_MASK: u64

Unshifted bitmask of spintmask.

Source

pub const SPINTMASK_SHIFT: usize = 62

Bit shift (i.e., the low bit) of spintmask.

Source

pub const NMI_MASK: u64

Unshifted bitmask of nmi.

Source

pub const NMI_SHIFT: usize = 61

Bit shift (i.e., the low bit) of nmi.

Source

pub const TSCO_MASK: u64

Unshifted bitmask of tsco.

Source

pub const TSCO_SHIFT: usize = 59

Bit shift (i.e., the low bit) of tsco.

Source

pub const TME_MASK: u64

Unshifted bitmask of tme.

Source

pub const TME_SHIFT: usize = 53

Bit shift (i.e., the low bit) of tme.

Source

pub const TMT_MASK: u64

Unshifted bitmask of tmt.

Source

pub const TMT_SHIFT: usize = 51

Bit shift (i.e., the low bit) of tmt.

Source

pub const DSBSS_MASK: u64

Unshifted bitmask of dsbss.

Source

pub const DSBSS_SHIFT: usize = 44

Bit shift (i.e., the low bit) of dsbss.

Source

pub const ATA_MASK: u64

Unshifted bitmask of ata.

Source

pub const ATA_SHIFT: usize = 43

Bit shift (i.e., the low bit) of ata.

Source

pub const TCF_MASK: u64

Unshifted bitmask of tcf.

Source

pub const TCF_SHIFT: usize = 40

Bit shift (i.e., the low bit) of tcf.

Source

pub const ITFSB_MASK: u64

Unshifted bitmask of itfsb.

Source

pub const ITFSB_SHIFT: usize = 37

Bit shift (i.e., the low bit) of itfsb.

Source

pub const BT_MASK: u64

Unshifted bitmask of bt.

Source

pub const BT_SHIFT: usize = 36

Bit shift (i.e., the low bit) of bt.

Source

pub const ENIA_MASK: u64

Unshifted bitmask of enia.

Source

pub const ENIA_SHIFT: usize = 31

Bit shift (i.e., the low bit) of enia.

Source

pub const ENIB_MASK: u64

Unshifted bitmask of enib.

Source

pub const ENIB_SHIFT: usize = 30

Bit shift (i.e., the low bit) of enib.

Source

pub const ENDA_MASK: u64

Unshifted bitmask of enda.

Source

pub const ENDA_SHIFT: usize = 27

Bit shift (i.e., the low bit) of enda.

Source

pub const EE_MASK: u64

Unshifted bitmask of ee.

Source

pub const EE_SHIFT: usize = 25

Bit shift (i.e., the low bit) of ee.

Source

pub const EIS_MASK: u64

Unshifted bitmask of eis.

Source

pub const EIS_SHIFT: usize = 22

Bit shift (i.e., the low bit) of eis.

Source

pub const IESB_MASK: u64

Unshifted bitmask of iesb.

Source

pub const IESB_SHIFT: usize = 21

Bit shift (i.e., the low bit) of iesb.

Source

pub const WXN_MASK: u64

Unshifted bitmask of wxn.

Source

pub const WXN_SHIFT: usize = 19

Bit shift (i.e., the low bit) of wxn.

Source

pub const DZE_MASK: u64

Unshifted bitmask of dze.

Source

pub const DZE_SHIFT: usize = 14

Bit shift (i.e., the low bit) of dze.

Source

pub const ENDB_MASK: u64

Unshifted bitmask of endb.

Source

pub const ENDB_SHIFT: usize = 13

Bit shift (i.e., the low bit) of endb.

Source

pub const I_MASK: u64

Unshifted bitmask of i.

Source

pub const I_SHIFT: usize = 12

Bit shift (i.e., the low bit) of i.

Source

pub const EOS_MASK: u64

Unshifted bitmask of eos.

Source

pub const EOS_SHIFT: usize = 11

Bit shift (i.e., the low bit) of eos.

Source

pub const NAA_MASK: u64

Unshifted bitmask of naa.

Source

pub const NAA_SHIFT: usize = 6

Bit shift (i.e., the low bit) of naa.

Source

pub const SA_MASK: u64

Unshifted bitmask of sa.

Source

pub const SA_SHIFT: usize = 3

Bit shift (i.e., the low bit) of sa.

Source

pub const C_MASK: u64

Unshifted bitmask of c.

Source

pub const C_SHIFT: usize = 2

Bit shift (i.e., the low bit) of c.

Source

pub const A_MASK: u64

Unshifted bitmask of a.

Source

pub const A_SHIFT: usize = 1

Bit shift (i.e., the low bit) of a.

Source

pub const M_MASK: u64

Unshifted bitmask of m.

Source

pub const M_SHIFT: usize = 0

Bit shift (i.e., the low bit) of m.

Source

pub const FIELDS: [FieldMetadata<u64>; 26]

Metadata of all named fields in the layout.

Source

pub const fn new() -> Self

Creates a new instance with reserved-as-1 bits set and all other bits zeroed (i.e., with a value of Self::RSVD1_MASK).

Source

pub const fn bits(self) -> u64

Source

pub const fn spintmask(&self) -> bool

The value of SystemControlRegisterEl362.

Source

pub const fn set_spintmask(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl362.

Source

pub const fn nmi(&self) -> bool

The value of SystemControlRegisterEl361.

Source

pub const fn set_nmi(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl361.

Source

pub const fn tsco(&self) -> bool

The value of SystemControlRegisterEl359.

Source

pub const fn set_tsco(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl359.

Source

pub const fn tme(&self) -> bool

The value of SystemControlRegisterEl353.

Source

pub const fn set_tme(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl353.

Source

pub const fn tmt(&self) -> bool

The value of SystemControlRegisterEl351.

Source

pub const fn set_tmt(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl351.

Source

pub const fn dsbss(&self) -> bool

The value of SystemControlRegisterEl344.

Source

pub const fn set_dsbss(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl344.

Source

pub const fn ata(&self) -> bool

The value of SystemControlRegisterEl343.

Source

pub const fn set_ata(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl343.

Source

pub fn tcf(&self) -> TagCheckFault

The value of SystemControlRegisterEl3[41:40].

§Panics

Panics if the field’s bit pattern is not a valid value of the custom representation. Use Self::try_tcf to recover from invalid bit patterns.

Source

pub fn try_tcf(&self) -> Result<TagCheckFault, InvalidBits<u8>>

Fallible variant of Self::tcf.

Source

pub fn set_tcf(&mut self, value: TagCheckFault) -> &mut Self

Sets the value of SystemControlRegisterEl3[41:40].

Source

pub const fn itfsb(&self) -> bool

The value of SystemControlRegisterEl337.

Source

pub const fn set_itfsb(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl337.

Source

pub const fn bt(&self) -> bool

The value of SystemControlRegisterEl336.

Source

pub const fn set_bt(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl336.

Source

pub const fn enia(&self) -> bool

The value of SystemControlRegisterEl331.

Source

pub const fn set_enia(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl331.

Source

pub const fn enib(&self) -> bool

The value of SystemControlRegisterEl330.

Source

pub const fn set_enib(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl330.

Source

pub const fn enda(&self) -> bool

The value of SystemControlRegisterEl327.

Source

pub const fn set_enda(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl327.

Source

pub const fn ee(&self) -> bool

The value of SystemControlRegisterEl325.

Source

pub const fn set_ee(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl325.

Source

pub const fn eis(&self) -> bool

The value of SystemControlRegisterEl322.

Source

pub const fn set_eis(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl322.

Source

pub const fn iesb(&self) -> bool

The value of SystemControlRegisterEl321.

Source

pub const fn set_iesb(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl321.

Source

pub const fn wxn(&self) -> bool

The value of SystemControlRegisterEl319.

Source

pub const fn set_wxn(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl319.

Source

pub const fn dze(&self) -> bool

The value of SystemControlRegisterEl314.

Source

pub const fn set_dze(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl314.

Source

pub const fn endb(&self) -> bool

The value of SystemControlRegisterEl313.

Source

pub const fn set_endb(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl313.

Source

pub const fn i(&self) -> bool

The value of SystemControlRegisterEl312.

Source

pub const fn set_i(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl312.

Source

pub const fn eos(&self) -> bool

The value of SystemControlRegisterEl311.

Source

pub const fn set_eos(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl311.

Source

pub const fn naa(&self) -> bool

The value of SystemControlRegisterEl36.

Source

pub const fn set_naa(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl36.

Source

pub const fn sa(&self) -> bool

The value of SystemControlRegisterEl33.

Source

pub const fn set_sa(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl33.

Source

pub const fn c(&self) -> bool

The value of SystemControlRegisterEl32.

Source

pub const fn set_c(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl32.

Source

pub const fn a(&self) -> bool

The value of SystemControlRegisterEl31.

Source

pub const fn set_a(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl31.

Source

pub const fn m(&self) -> bool

The value of SystemControlRegisterEl30.

Source

pub const fn set_m(&mut self, value: bool) -> &mut Self

Sets the value of SystemControlRegisterEl30.

Source§

impl SystemControlRegisterEl3

Source

pub fn iter(&self) -> SystemControlRegisterEl3Iter

Returns an iterator over (metadata, value) pairs for each field.

Trait Implementations§

Source§

impl Binary for SystemControlRegisterEl3

Source§

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

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

impl Clone for SystemControlRegisterEl3

Source§

fn clone(&self) -> SystemControlRegisterEl3

Returns a duplicate of the value. Read more
1.0.0 (const: unstable)§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for SystemControlRegisterEl3

Source§

impl Debug for SystemControlRegisterEl3

Source§

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

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

impl Default for SystemControlRegisterEl3

Source§

fn default() -> Self

Returns an instance with the default bits set (i.e,. with a value of Self::DEFAULT.

Source§

impl Eq for SystemControlRegisterEl3

Source§

impl From<SystemControlRegisterEl3> for u64

Source§

fn from(value: SystemControlRegisterEl3) -> Self

Converts to this type from the input type.
Source§

impl From<u64> for SystemControlRegisterEl3

Source§

fn from(value: u64) -> Self

Converts to this type from the input type.
Source§

impl IntoIterator for SystemControlRegisterEl3

Source§

type Item = (&'static FieldMetadata<u64>, u64)

The type of the elements being iterated over.
Source§

type IntoIter = SystemControlRegisterEl3Iter

Which kind of iterator are we turning this into?
Source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
Source§

impl<'a> IntoIterator for &'a SystemControlRegisterEl3

Source§

type Item = (&'static FieldMetadata<u64>, u64)

The type of the elements being iterated over.
Source§

type IntoIter = SystemControlRegisterEl3Iter

Which kind of iterator are we turning this into?
Source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
Source§

impl LowerHex for SystemControlRegisterEl3

Source§

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

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

impl Octal for SystemControlRegisterEl3

Source§

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

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

impl PartialEq for SystemControlRegisterEl3

Source§

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

Equality operator ==. Read more
1.0.0 (const: unstable)§

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

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for SystemControlRegisterEl3

Source§

impl UpperHex for SystemControlRegisterEl3

Source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl Freeze for SystemControlRegisterEl3

§

impl RefUnwindSafe for SystemControlRegisterEl3

§

impl Send for SystemControlRegisterEl3

§

impl Sync for SystemControlRegisterEl3

§

impl Unpin for SystemControlRegisterEl3

§

impl UnsafeUnpin for SystemControlRegisterEl3

§

impl UnwindSafe for SystemControlRegisterEl3

Blanket Implementations§

§

impl<T> Any for T
where T: 'static + ?Sized,

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> Borrow<T> for T
where T: ?Sized,

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

impl<T> BorrowMut<T> for T
where T: ?Sized,

§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CloneToUninit for T
where T: Clone,

§

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
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, U> Into<U> for T
where U: From<T>,

§

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<Layout, Base> LayoutOver<Base> for Layout
where Layout: Copy + From<Base> + Into<Base>,

§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = !

The type returned in the event of a conversion error.
§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.