Changeset View
Changeset View
Standalone View
Standalone View
sys/arm64/arm64/efirt_machdep.c
Show First 20 Lines • Show All 142 Lines • ▼ Show 20 Lines | efi_1t1_l3(vm_offset_t va) | ||||
return (l3); | return (l3); | ||||
} | } | ||||
/* | /* | ||||
* Map a physical address from EFI runtime space into KVA space. Returns 0 to | * Map a physical address from EFI runtime space into KVA space. Returns 0 to | ||||
* indicate a failed mapping so that the caller may handle error. | * indicate a failed mapping so that the caller may handle error. | ||||
*/ | */ | ||||
vm_offset_t | vm_offset_t | ||||
efi_phys_to_kva(vm_paddr_t paddr) | efi_phys_to_kva(vm_paddr_t paddr, vm_size_t size) | ||||
{ | { | ||||
vm_offset_t vaddr; | vm_offset_t vaddr; | ||||
if (PHYS_IN_DMAP(paddr)) { | if (PHYS_SZ_IN_DMAP(paddr, size)) { | ||||
vaddr = PHYS_TO_DMAP(paddr); | vaddr = PHYS_TO_DMAP(paddr); | ||||
if (pmap_klookup(vaddr, NULL)) | if (pmap_klookup(vaddr, NULL)) | ||||
return (vaddr); | return (vaddr); | ||||
} | } | ||||
/* TODO: Map memory not in the DMAP */ | /* TODO: Map memory not in the DMAP */ | ||||
return (0); | return (0); | ||||
▲ Show 20 Lines • Show All 124 Lines • Show Last 20 Lines |