pub trait AxMmHal {
// Required methods
fn alloc_frame() -> Option<HostPhysAddr>;
fn dealloc_frame(paddr: HostPhysAddr);
fn phys_to_virt(paddr: HostPhysAddr) -> HostVirtAddr;
fn virt_to_phys(vaddr: HostVirtAddr) -> HostPhysAddr;
}Expand description
Hardware abstraction layer for memory management.
Required Methods§
Sourcefn alloc_frame() -> Option<HostPhysAddr>
fn alloc_frame() -> Option<HostPhysAddr>
Allocates a frame and returns its host physical address. The
§Returns
Option<HostPhysAddr>- Some containing the physical address of the allocated frame, or None if allocation fails.
Sourcefn dealloc_frame(paddr: HostPhysAddr)
fn dealloc_frame(paddr: HostPhysAddr)
Deallocates a frame given its physical address.
§Parameters
paddr- The physical address of the frame to deallocate.
Sourcefn phys_to_virt(paddr: HostPhysAddr) -> HostVirtAddr
fn phys_to_virt(paddr: HostPhysAddr) -> HostVirtAddr
Sourcefn virt_to_phys(vaddr: HostVirtAddr) -> HostPhysAddr
fn virt_to_phys(vaddr: HostVirtAddr) -> HostPhysAddr
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.