#[repr(u32)]pub enum RiscvFeature {
Sstc = 0,
Svpbmt = 1,
Vector = 2,
Zicbom = 3,
Zicboz = 4,
Zicntr = 5,
}Expand description
An enumeration of RISC-V features.
This is not intended to be exhaustive, but rather to include the features that the kernel currently depends on.
The discriminants must match arch::RiscvFeature in
<lib/arch/riscv64/feature.h>, which is where they are checked.
Variants§
Sstc = 0
Extension for supervisor based timer.
Svpbmt = 1
SuperVisor extension for Page-Based Memory Types.
Vector = 2
The standard V extension for vector support.
Zicbom = 3
Cache-Block Management Operations.
Zicboz = 4
Cache-Block Zero Operations.
Zicntr = 5
Counter CSRs are accessible.
Implementations§
Source§impl RiscvFeature
impl RiscvFeature
Sourcepub const ALL: [RiscvFeature; 6]
pub const ALL: [RiscvFeature; 6]
Every feature, in discriminant order.
Trait Implementations§
Source§impl Clone for RiscvFeature
impl Clone for RiscvFeature
Source§fn clone(&self) -> RiscvFeature
fn clone(&self) -> RiscvFeature
Returns a duplicate of the value. Read more
1.0.0 (const: unstable)§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for RiscvFeature
Source§impl Debug for RiscvFeature
impl Debug for RiscvFeature
impl Eq for RiscvFeature
Source§impl PartialEq for RiscvFeature
impl PartialEq for RiscvFeature
impl StructuralPartialEq for RiscvFeature
Auto Trait Implementations§
impl Freeze for RiscvFeature
impl RefUnwindSafe for RiscvFeature
impl Send for RiscvFeature
impl Sync for RiscvFeature
impl Unpin for RiscvFeature
impl UnsafeUnpin for RiscvFeature
impl UnwindSafe for RiscvFeature
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
Mutably borrows from an owned value. Read more
§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)
🔬This is a nightly-only experimental API. (
clone_to_uninit)