pub struct ExtendedAmdFeaturesB(/* private fields */);Expand description
Layout for EXTENDED_AMD_FEATURES_B.
[amd/ibc] details bits [18:14] and 12. [amd/ssbd] details bits [26:24].
Implementations§
Source§impl ExtendedAmdFeaturesB
impl ExtendedAmdFeaturesB
Sourcepub const RSVD1_MASK: u32
pub const RSVD1_MASK: u32
Mask of all reserved-as-1 bits.
Sourcepub const RSVD0_MASK: u32
pub const RSVD0_MASK: u32
Mask of all reserved-as-0 bits.
Sourcepub const DEFAULT: u32
pub const DEFAULT: u32
The default value of the layout, combining all field defaults and reserved-as values.
Sourcepub const SSB_NO_MASK: u32
pub const SSB_NO_MASK: u32
Unshifted bitmask of ssb_no.
Sourcepub const SSB_NO_SHIFT: usize = 26
pub const SSB_NO_SHIFT: usize = 26
Bit shift (i.e., the low bit) of ssb_no.
Sourcepub const VIRT_SSBD_MASK: u32
pub const VIRT_SSBD_MASK: u32
Unshifted bitmask of virt_ssbd.
Sourcepub const VIRT_SSBD_SHIFT: usize = 25
pub const VIRT_SSBD_SHIFT: usize = 25
Bit shift (i.e., the low bit) of virt_ssbd.
Sourcepub const SSBD_SHIFT: usize = 24
pub const SSBD_SHIFT: usize = 24
Bit shift (i.e., the low bit) of ssbd.
Sourcepub const PREFERS_IBRS_MASK: u32
pub const PREFERS_IBRS_MASK: u32
Unshifted bitmask of prefers_ibrs.
Sourcepub const PREFERS_IBRS_SHIFT: usize = 18
pub const PREFERS_IBRS_SHIFT: usize = 18
Bit shift (i.e., the low bit) of prefers_ibrs.
Sourcepub const STIBP_ALWAYS_ON_MASK: u32
pub const STIBP_ALWAYS_ON_MASK: u32
Unshifted bitmask of stibp_always_on.
Sourcepub const STIBP_ALWAYS_ON_SHIFT: usize = 17
pub const STIBP_ALWAYS_ON_SHIFT: usize = 17
Bit shift (i.e., the low bit) of stibp_always_on.
Sourcepub const IBRS_ALWAYS_ON_MASK: u32
pub const IBRS_ALWAYS_ON_MASK: u32
Unshifted bitmask of ibrs_always_on.
Sourcepub const IBRS_ALWAYS_ON_SHIFT: usize = 16
pub const IBRS_ALWAYS_ON_SHIFT: usize = 16
Bit shift (i.e., the low bit) of ibrs_always_on.
Sourcepub const STIBP_MASK: u32
pub const STIBP_MASK: u32
Unshifted bitmask of stibp.
Sourcepub const STIBP_SHIFT: usize = 15
pub const STIBP_SHIFT: usize = 15
Bit shift (i.e., the low bit) of stibp.
Sourcepub const IBRS_SHIFT: usize = 14
pub const IBRS_SHIFT: usize = 14
Bit shift (i.e., the low bit) of ibrs.
Sourcepub const IBPB_SHIFT: usize = 12
pub const IBPB_SHIFT: usize = 12
Bit shift (i.e., the low bit) of ibpb.
Sourcepub const WBNOINVD_MASK: u32
pub const WBNOINVD_MASK: u32
Unshifted bitmask of wbnoinvd.
Sourcepub const WBNOINVD_SHIFT: usize = 9
pub const WBNOINVD_SHIFT: usize = 9
Bit shift (i.e., the low bit) of wbnoinvd.
Sourcepub const MCOMMIT_MASK: u32
pub const MCOMMIT_MASK: u32
Unshifted bitmask of mcommit.
Sourcepub const MCOMMIT_SHIFT: usize = 8
pub const MCOMMIT_SHIFT: usize = 8
Bit shift (i.e., the low bit) of mcommit.
Sourcepub const RDPRU_MASK: u32
pub const RDPRU_MASK: u32
Unshifted bitmask of rdpru.
Sourcepub const RDPRU_SHIFT: usize = 4
pub const RDPRU_SHIFT: usize = 4
Bit shift (i.e., the low bit) of rdpru.
Sourcepub const RSTR_FP_ERR_PTRS_MASK: u32
pub const RSTR_FP_ERR_PTRS_MASK: u32
Unshifted bitmask of rstr_fp_err_ptrs.
Sourcepub const RSTR_FP_ERR_PTRS_SHIFT: usize = 2
pub const RSTR_FP_ERR_PTRS_SHIFT: usize = 2
Bit shift (i.e., the low bit) of rstr_fp_err_ptrs.
Sourcepub const INST_RET_CNT_MSR_MASK: u32
pub const INST_RET_CNT_MSR_MASK: u32
Unshifted bitmask of inst_ret_cnt_msr.
Sourcepub const INST_RET_CNT_MSR_SHIFT: usize = 1
pub const INST_RET_CNT_MSR_SHIFT: usize = 1
Bit shift (i.e., the low bit) of inst_ret_cnt_msr.
Sourcepub const CLZERO_MASK: u32
pub const CLZERO_MASK: u32
Unshifted bitmask of clzero.
Sourcepub const CLZERO_SHIFT: usize = 0
pub const CLZERO_SHIFT: usize = 0
Bit shift (i.e., the low bit) of clzero.
Sourcepub const FIELDS: [FieldMetadata<u32>; 15]
pub const FIELDS: [FieldMetadata<u32>; 15]
Metadata of all named fields in the layout.
Sourcepub const fn new() -> Self
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).
pub const fn bits(self) -> u32
Sourcepub const fn set_ssb_no(&mut self, value: bool) -> &mut Self
pub const fn set_ssb_no(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedAmdFeaturesB26.
Sourcepub const fn set_virt_ssbd(&mut self, value: bool) -> &mut Self
pub const fn set_virt_ssbd(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedAmdFeaturesB25.
Sourcepub const fn set_ssbd(&mut self, value: bool) -> &mut Self
pub const fn set_ssbd(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedAmdFeaturesB24.
Sourcepub const fn prefers_ibrs(&self) -> bool
pub const fn prefers_ibrs(&self) -> bool
The value of ExtendedAmdFeaturesB18.
Sourcepub const fn set_prefers_ibrs(&mut self, value: bool) -> &mut Self
pub const fn set_prefers_ibrs(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedAmdFeaturesB18.
Sourcepub const fn stibp_always_on(&self) -> bool
pub const fn stibp_always_on(&self) -> bool
The value of ExtendedAmdFeaturesB17.
Sourcepub const fn set_stibp_always_on(&mut self, value: bool) -> &mut Self
pub const fn set_stibp_always_on(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedAmdFeaturesB17.
Sourcepub const fn ibrs_always_on(&self) -> bool
pub const fn ibrs_always_on(&self) -> bool
The value of ExtendedAmdFeaturesB16.
Sourcepub const fn set_ibrs_always_on(&mut self, value: bool) -> &mut Self
pub const fn set_ibrs_always_on(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedAmdFeaturesB16.
Sourcepub const fn set_stibp(&mut self, value: bool) -> &mut Self
pub const fn set_stibp(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedAmdFeaturesB15.
Sourcepub const fn set_ibrs(&mut self, value: bool) -> &mut Self
pub const fn set_ibrs(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedAmdFeaturesB14.
Sourcepub const fn set_ibpb(&mut self, value: bool) -> &mut Self
pub const fn set_ibpb(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedAmdFeaturesB12.
Sourcepub const fn set_wbnoinvd(&mut self, value: bool) -> &mut Self
pub const fn set_wbnoinvd(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedAmdFeaturesB9.
Sourcepub const fn set_mcommit(&mut self, value: bool) -> &mut Self
pub const fn set_mcommit(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedAmdFeaturesB8.
Sourcepub const fn set_rdpru(&mut self, value: bool) -> &mut Self
pub const fn set_rdpru(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedAmdFeaturesB4.
Sourcepub const fn rstr_fp_err_ptrs(&self) -> bool
pub const fn rstr_fp_err_ptrs(&self) -> bool
The value of ExtendedAmdFeaturesB2.
Sourcepub const fn set_rstr_fp_err_ptrs(&mut self, value: bool) -> &mut Self
pub const fn set_rstr_fp_err_ptrs(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedAmdFeaturesB2.
Sourcepub const fn inst_ret_cnt_msr(&self) -> bool
pub const fn inst_ret_cnt_msr(&self) -> bool
The value of ExtendedAmdFeaturesB1.
Sourcepub const fn set_inst_ret_cnt_msr(&mut self, value: bool) -> &mut Self
pub const fn set_inst_ret_cnt_msr(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedAmdFeaturesB1.
Sourcepub const fn set_clzero(&mut self, value: bool) -> &mut Self
pub const fn set_clzero(&mut self, value: bool) -> &mut Self
Sets the value of ExtendedAmdFeaturesB0.
Trait Implementations§
Source§impl Binary for ExtendedAmdFeaturesB
impl Binary for ExtendedAmdFeaturesB
Source§impl Clone for ExtendedAmdFeaturesB
impl Clone for ExtendedAmdFeaturesB
Source§fn clone(&self) -> ExtendedAmdFeaturesB
fn clone(&self) -> ExtendedAmdFeaturesB
1.0.0 (const: unstable)§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for ExtendedAmdFeaturesB
Source§impl Debug for ExtendedAmdFeaturesB
impl Debug for ExtendedAmdFeaturesB
Source§impl Default for ExtendedAmdFeaturesB
impl Default for ExtendedAmdFeaturesB
Source§fn default() -> Self
fn default() -> Self
Returns an instance with the default bits set (i.e,. with a
value of Self::DEFAULT.
impl Eq for ExtendedAmdFeaturesB
Source§impl From<ExtendedAmdFeaturesB> for u32
impl From<ExtendedAmdFeaturesB> for u32
Source§fn from(value: ExtendedAmdFeaturesB) -> Self
fn from(value: ExtendedAmdFeaturesB) -> Self
Source§impl From<u32> for ExtendedAmdFeaturesB
impl From<u32> for ExtendedAmdFeaturesB
Source§impl IntoIterator for ExtendedAmdFeaturesB
impl IntoIterator for ExtendedAmdFeaturesB
Source§impl<'a> IntoIterator for &'a ExtendedAmdFeaturesB
impl<'a> IntoIterator for &'a ExtendedAmdFeaturesB
Source§impl LowerHex for ExtendedAmdFeaturesB
impl LowerHex for ExtendedAmdFeaturesB
Source§impl Octal for ExtendedAmdFeaturesB
impl Octal for ExtendedAmdFeaturesB
Source§impl PartialEq for ExtendedAmdFeaturesB
impl PartialEq for ExtendedAmdFeaturesB
impl StructuralPartialEq for ExtendedAmdFeaturesB
Auto Trait Implementations§
impl Freeze for ExtendedAmdFeaturesB
impl RefUnwindSafe for ExtendedAmdFeaturesB
impl Send for ExtendedAmdFeaturesB
impl Sync for ExtendedAmdFeaturesB
impl Unpin for ExtendedAmdFeaturesB
impl UnsafeUnpin for ExtendedAmdFeaturesB
impl UnwindSafe for ExtendedAmdFeaturesB
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)