kernel/arch/vm: implement for riscv64
Change-Id: I0b463f3d2bca9f31b0aabacbf70a9774493d3467 Reviewed-on: https://review.haiku-os.org/c/haiku/+/4051 Reviewed-by: Alex von Gluck IV <[email protected]>
This commit is contained in:
@@ -7,20 +7,23 @@
|
||||
|
||||
#include <arch/vm_translation_map.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
void riscv64_translation_map_change_asid(VMTranslationMap *map);
|
||||
//gVirtFromPhysOffset = virtAdr - physAdr;
|
||||
extern ssize_t gVirtFromPhysOffset;
|
||||
|
||||
status_t riscv64_map_address_range(addr_t virtualAddress,
|
||||
phys_addr_t physicalAddress, size_t size);
|
||||
void riscv64_unmap_address_range(addr_t virtualAddress, size_t size);
|
||||
status_t riscv64_remap_address_range(addr_t *virtualAddress, size_t size,
|
||||
bool unmap);
|
||||
|
||||
#ifdef __cplusplus
|
||||
static inline void*
|
||||
VirtFromPhys(phys_addr_t physAdr)
|
||||
{
|
||||
return (void*)(physAdr + gVirtFromPhysOffset);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
static inline phys_addr_t
|
||||
PhysFromVirt(void* virtAdr)
|
||||
{
|
||||
return (phys_addr_t)virtAdr - gVirtFromPhysOffset;
|
||||
}
|
||||
|
||||
|
||||
#endif /* _KERNEL_ARCH_RISCV64_VM_TRANSLATION_MAP_H */
|
||||
|
||||
Reference in New Issue
Block a user