Struct hvdef::HvRegisterVsmCapabilities
source · pub struct HvRegisterVsmCapabilities(/* private fields */);
Implementations§
source§impl HvRegisterVsmCapabilities
impl HvRegisterVsmCapabilities
Bits: 0..1
Bits: 0..1
Bits: 0..1
sourcepub const fn mbec_vtl_mask(&self) -> u16
pub const fn mbec_vtl_mask(&self) -> u16
Bits: 1..17
sourcepub const fn with_mbec_vtl_mask(self, value: u16) -> Self
pub const fn with_mbec_vtl_mask(self, value: u16) -> Self
Bits: 1..17
sourcepub fn set_mbec_vtl_mask(&mut self, value: u16)
pub fn set_mbec_vtl_mask(&mut self, value: u16)
Bits: 1..17
sourcepub const fn deny_lower_vtl_startup(&self) -> bool
pub const fn deny_lower_vtl_startup(&self) -> bool
Bits: 17..18
sourcepub const fn with_deny_lower_vtl_startup(self, value: bool) -> Self
pub const fn with_deny_lower_vtl_startup(self, value: bool) -> Self
Bits: 17..18
sourcepub fn set_deny_lower_vtl_startup(&mut self, value: bool)
pub fn set_deny_lower_vtl_startup(&mut self, value: bool)
Bits: 17..18
sourcepub const fn supervisor_shadow_stack(&self) -> bool
pub const fn supervisor_shadow_stack(&self) -> bool
Bits: 18..19
sourcepub const fn with_supervisor_shadow_stack(self, value: bool) -> Self
pub const fn with_supervisor_shadow_stack(self, value: bool) -> Self
Bits: 18..19
sourcepub fn set_supervisor_shadow_stack(&mut self, value: bool)
pub fn set_supervisor_shadow_stack(&mut self, value: bool)
Bits: 18..19
sourcepub const fn hardware_hvpt_available(&self) -> bool
pub const fn hardware_hvpt_available(&self) -> bool
Bits: 19..20
sourcepub const fn with_hardware_hvpt_available(self, value: bool) -> Self
pub const fn with_hardware_hvpt_available(self, value: bool) -> Self
Bits: 19..20
sourcepub fn set_hardware_hvpt_available(&mut self, value: bool)
pub fn set_hardware_hvpt_available(&mut self, value: bool)
Bits: 19..20
sourcepub const fn software_hvpt_available(&self) -> bool
pub const fn software_hvpt_available(&self) -> bool
Bits: 20..21
sourcepub const fn with_software_hvpt_available(self, value: bool) -> Self
pub const fn with_software_hvpt_available(self, value: bool) -> Self
Bits: 20..21
sourcepub fn set_software_hvpt_available(&mut self, value: bool)
pub fn set_software_hvpt_available(&mut self, value: bool)
Bits: 20..21
sourcepub const fn hardware_hvpt_range_bits(&self) -> u8
pub const fn hardware_hvpt_range_bits(&self) -> u8
Bits: 21..27
sourcepub const fn with_hardware_hvpt_range_bits(self, value: u8) -> Self
pub const fn with_hardware_hvpt_range_bits(self, value: u8) -> Self
Bits: 21..27
sourcepub fn set_hardware_hvpt_range_bits(&mut self, value: u8)
pub fn set_hardware_hvpt_range_bits(&mut self, value: u8)
Bits: 21..27
sourcepub const fn intercept_page_available(&self) -> bool
pub const fn intercept_page_available(&self) -> bool
Bits: 27..28
sourcepub const fn with_intercept_page_available(self, value: bool) -> Self
pub const fn with_intercept_page_available(self, value: bool) -> Self
Bits: 27..28
sourcepub fn set_intercept_page_available(&mut self, value: bool)
pub fn set_intercept_page_available(&mut self, value: bool)
Bits: 27..28
sourcepub const fn return_action_available(&self) -> bool
pub const fn return_action_available(&self) -> bool
Bits: 28..29
sourcepub const fn with_return_action_available(self, value: bool) -> Self
pub const fn with_return_action_available(self, value: bool) -> Self
Bits: 28..29
sourcepub fn set_return_action_available(&mut self, value: bool)
pub fn set_return_action_available(&mut self, value: bool)
Bits: 28..29
sourcepub const fn vtl0_alias_map_available(&self) -> bool
pub const fn vtl0_alias_map_available(&self) -> bool
If the VTL0 view of memory is mapped to the high address space, which is the highest legal physical address bit.
Only available in VTL2.
Bits: 29..30
sourcepub const fn with_vtl0_alias_map_available(self, value: bool) -> Self
pub const fn with_vtl0_alias_map_available(self, value: bool) -> Self
If the VTL0 view of memory is mapped to the high address space, which is the highest legal physical address bit.
Only available in VTL2.
Bits: 29..30
sourcepub fn set_vtl0_alias_map_available(&mut self, value: bool)
pub fn set_vtl0_alias_map_available(&mut self, value: bool)
If the VTL0 view of memory is mapped to the high address space, which is the highest legal physical address bit.
Only available in VTL2.
Bits: 29..30
sourcepub const fn intercept_not_present_available(&self) -> bool
pub const fn intercept_not_present_available(&self) -> bool
If the HvRegisterVsmPartitionConfig
register has support for
intercept_not_present
.
Only available in VTL2.
Bits: 30..31
sourcepub const fn with_intercept_not_present_available(self, value: bool) -> Self
pub const fn with_intercept_not_present_available(self, value: bool) -> Self
If the HvRegisterVsmPartitionConfig
register has support for
intercept_not_present
.
Only available in VTL2.
Bits: 30..31
sourcepub fn set_intercept_not_present_available(&mut self, value: bool)
pub fn set_intercept_not_present_available(&mut self, value: bool)
If the HvRegisterVsmPartitionConfig
register has support for
intercept_not_present
.
Only available in VTL2.
Bits: 30..31
sourcepub const fn install_intercept_ex(&self) -> bool
pub const fn install_intercept_ex(&self) -> bool
Bits: 31..32
sourcepub const fn with_install_intercept_ex(self, value: bool) -> Self
pub const fn with_install_intercept_ex(self, value: bool) -> Self
Bits: 31..32
sourcepub fn set_install_intercept_ex(&mut self, value: bool)
pub fn set_install_intercept_ex(&mut self, value: bool)
Bits: 31..32
sourcepub const fn intercept_system_reset_available(&self) -> bool
pub const fn intercept_system_reset_available(&self) -> bool
Only available in VTL2.
Bits: 32..33
sourcepub const fn with_intercept_system_reset_available(self, value: bool) -> Self
pub const fn with_intercept_system_reset_available(self, value: bool) -> Self
Only available in VTL2.
Bits: 32..33
sourcepub fn set_intercept_system_reset_available(&mut self, value: bool)
pub fn set_intercept_system_reset_available(&mut self, value: bool)
Only available in VTL2.
Bits: 32..33
sourcepub const fn with_reserved(self, value: u64) -> Self
pub const fn with_reserved(self, value: u64) -> Self
Bits: 33..64
sourcepub fn set_reserved(&mut self, value: u64)
pub fn set_reserved(&mut self, value: u64)
Bits: 33..64
Trait Implementations§
source§impl Clone for HvRegisterVsmCapabilities
impl Clone for HvRegisterVsmCapabilities
source§fn clone(&self) -> HvRegisterVsmCapabilities
fn clone(&self) -> HvRegisterVsmCapabilities
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for HvRegisterVsmCapabilities
impl Debug for HvRegisterVsmCapabilities
source§impl Default for HvRegisterVsmCapabilities
impl Default for HvRegisterVsmCapabilities
source§impl From<HvRegisterVsmCapabilities> for u64
impl From<HvRegisterVsmCapabilities> for u64
source§fn from(v: HvRegisterVsmCapabilities) -> u64
fn from(v: HvRegisterVsmCapabilities) -> u64
source§impl From<u64> for HvRegisterVsmCapabilities
impl From<u64> for HvRegisterVsmCapabilities
impl Copy for HvRegisterVsmCapabilities
Auto Trait Implementations§
impl Freeze for HvRegisterVsmCapabilities
impl RefUnwindSafe for HvRegisterVsmCapabilities
impl Send for HvRegisterVsmCapabilities
impl Sync for HvRegisterVsmCapabilities
impl Unpin for HvRegisterVsmCapabilities
impl UnwindSafe for HvRegisterVsmCapabilities
Blanket Implementations§
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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)