FreeBSD/sys/powerpc/aim/mmu_oea.c
/*
 * Map a range of physical addresses into kernel virtual address space.
 *
 * The value passed in *virt is a suggested virtual address for the mapping.
 * Architectures which can support a direct-mapped physical to virtual region
 * can return the appropriate address within that region, leaving '*virt'
 * unchanged.  We cannot and therefore do not; *virt is updated with the
 * first usable address after the mapped region.
 */
Map a range of physical addresses into kernel virtual address space.
The value passed in *virt is a suggested virtual address for the mapping.
Architectures which can support a direct-mapped physical to virtual region
can return the appropriate address within that region, leaving '*virt'
unchanged.  We cannot and therefore do not; *virt is updated with the
first usable address after the mapped region.
Map a range of physical addresses into kernel virtual address space . The value passed in * virt is a suggested virtual address for the mapping . Architectures which can support a direct - mapped physical to virtual region can return the appropriate address within that region leaving ' * virt ' unchanged . We cannot and therefore do not ; * virt is updated with the first usable address after the mapped region .
vm_offset_t
moea_map(mmu_t mmu, vm_offset_t *virt, vm_paddr_t pa_start,
    vm_paddr_t pa_end, int prot)
{
	vm_offset_t	sva, va;
	sva = *virt;
	va = sva;
	for (; pa_start < pa_end; pa_start += PAGE_SIZE, va += PAGE_SIZE)
		moea_kenter(mmu, va, pa_start);
	*virt = va;
	return (sva);
}
vm_offset_t moea_map ( mmu_t mmu , vm_offset_t * virt , vm_paddr_t pa_start , vm_paddr_t pa_end , int prot ) { vm_offset_t sva , va ; sva = * virt ; va = sva ; for ( ; pa_start < pa_end ; pa_start += PAGE_SIZE , va += PAGE_SIZE ) moea_kenter ( mmu , va , pa_start ) ; * virt = va ; return ( sva ) ; }
Map a range of physical addresses into kernel virtual address space.
Map a range of physical addresses into kernel virtual address space .