summaryrefslogtreecommitdiffstats
path: root/sys/powerpc
diff options
context:
space:
mode:
authormux <mux@FreeBSD.org>2003-02-25 03:21:22 +0000
committermux <mux@FreeBSD.org>2003-02-25 03:21:22 +0000
commit541937cf7373ff6a61c871266ea041503bb02233 (patch)
treea4ad6d456fdd984cdf9c6c6abd5e4654a9b7e3e0 /sys/powerpc
parentf52965fa5d8b4bdc23c2e702d17f5537a81f6d01 (diff)
downloadFreeBSD-src-541937cf7373ff6a61c871266ea041503bb02233.zip
FreeBSD-src-541937cf7373ff6a61c871266ea041503bb02233.tar.gz
Cleanup of the d_mmap_t interface.
- Get rid of the useless atop() / pmap_phys_address() detour. The device mmap handlers must now give back the physical address without atop()'ing it. - Don't borrow the physical address of the mapping in the returned int. Now we properly pass a vm_offset_t * and expect it to be filled by the mmap handler when the mapping was successful. The mmap handler must now return 0 when successful, any other value is considered as an error. Previously, returning -1 was the only way to fail. This change thus accidentally fixes some devices which were bogusly returning errno constants which would have been considered as addresses by the device pager. - Garbage collect the poorly named pmap_phys_address() now that it's no longer used. - Convert all the d_mmap_t consumers to the new API. I'm still not sure wheter we need a __FreeBSD_version bump for this, since and we didn't guarantee API/ABI stability until 5.1-RELEASE. Discussed with: alc, phk, jake Reviewed by: peter Compile-tested on: LINT (i386), GENERIC (alpha and sparc64) Runtime-tested on: i386
Diffstat (limited to 'sys/powerpc')
-rw-r--r--sys/powerpc/aim/mmu_oea.c7
-rw-r--r--sys/powerpc/powerpc/mmu_oea.c7
-rw-r--r--sys/powerpc/powerpc/pmap.c7
3 files changed, 0 insertions, 21 deletions
diff --git a/sys/powerpc/aim/mmu_oea.c b/sys/powerpc/aim/mmu_oea.c
index 77f3451..3180768 100644
--- a/sys/powerpc/aim/mmu_oea.c
+++ b/sys/powerpc/aim/mmu_oea.c
@@ -1452,13 +1452,6 @@ pmap_protect(pmap_t pm, vm_offset_t sva, vm_offset_t eva, vm_prot_t prot)
}
}
-vm_offset_t
-pmap_phys_address(int ppn)
-{
- TODO;
- return (0);
-}
-
/*
* Map a list of wired pages into kernel virtual address space. This is
* intended for temporary mappings which do not need page modification or
diff --git a/sys/powerpc/powerpc/mmu_oea.c b/sys/powerpc/powerpc/mmu_oea.c
index 77f3451..3180768 100644
--- a/sys/powerpc/powerpc/mmu_oea.c
+++ b/sys/powerpc/powerpc/mmu_oea.c
@@ -1452,13 +1452,6 @@ pmap_protect(pmap_t pm, vm_offset_t sva, vm_offset_t eva, vm_prot_t prot)
}
}
-vm_offset_t
-pmap_phys_address(int ppn)
-{
- TODO;
- return (0);
-}
-
/*
* Map a list of wired pages into kernel virtual address space. This is
* intended for temporary mappings which do not need page modification or
diff --git a/sys/powerpc/powerpc/pmap.c b/sys/powerpc/powerpc/pmap.c
index 77f3451..3180768 100644
--- a/sys/powerpc/powerpc/pmap.c
+++ b/sys/powerpc/powerpc/pmap.c
@@ -1452,13 +1452,6 @@ pmap_protect(pmap_t pm, vm_offset_t sva, vm_offset_t eva, vm_prot_t prot)
}
}
-vm_offset_t
-pmap_phys_address(int ppn)
-{
- TODO;
- return (0);
-}
-
/*
* Map a list of wired pages into kernel virtual address space. This is
* intended for temporary mappings which do not need page modification or
OpenPOWER on IntegriCloud