use crate::vmem::{Mapping, TableOps, TableReadOps, Void};
pub const PAGE_SIZE: usize = 4096;
pub const PAGE_TABLE_SIZE: usize = 4096;
pub const PAGE_PRESENT: u64 = 1; pub const PTE_ADDR_MASK: u64 = 0x0000_FFFF_FFFF_F000; pub type PageTableEntry = u64;
pub type VirtAddr = u64;
pub type PhysAddr = u64;
#[allow(clippy::missing_safety_doc)]
pub unsafe fn map<Op: TableOps>(_op: &Op, _mapping: Mapping) {
unimplemented!("map")
}
#[allow(clippy::missing_safety_doc)]
pub unsafe fn virt_to_phys<'a, Op: TableReadOps + 'a>(
_op: impl core::convert::AsRef<Op> + Copy + 'a,
_address: u64,
_len: u64,
) -> impl Iterator<Item = Mapping> + 'a {
unimplemented!("virt_to_phys");
#[allow(unreachable_code)]
core::iter::empty()
}
#[allow(clippy::missing_safety_doc)]
pub unsafe fn walk_va_spaces<Op: TableReadOps>(
_op: &Op,
_roots: &[Op::TableAddr],
_address: u64,
_len: u64,
) -> ::alloc::vec::Vec<(
crate::vmem::SpaceId,
::alloc::vec::Vec<crate::vmem::SpaceAwareMapping>,
)> {
::alloc::vec::Vec::new()
}
#[allow(clippy::missing_safety_doc)]
pub unsafe fn space_aware_map<Op: TableOps>(
_op: &Op,
_ref_map: crate::vmem::SpaceReferenceMapping,
_built_roots: &::alloc::collections::BTreeMap<crate::vmem::SpaceId, Op::TableAddr>,
) {
}
pub trait TableMovability<Op: TableReadOps + ?Sized, TableMoveInfo> {}
impl<Op: TableOps<TableMovability = crate::vmem::MayMoveTable>> TableMovability<Op, Op::TableAddr>
for crate::vmem::MayMoveTable
{
}
impl<Op: TableReadOps> TableMovability<Op, Void> for crate::vmem::MayNotMoveTable {}