aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/tdfx
diff options
context:
space:
mode:
authorMaxime Henrion <mux@FreeBSD.org>2003-02-25 03:21:22 +0000
committerMaxime Henrion <mux@FreeBSD.org>2003-02-25 03:21:22 +0000
commit07159f9c56de91cb7d7bd6b6a795eebfee78133e (patch)
treea4ad6d456fdd984cdf9c6c6abd5e4654a9b7e3e0 /sys/dev/tdfx
parentedf02ff15d952524ebf102c65a7b23e716259fe5 (diff)
Notes
Diffstat (limited to 'sys/dev/tdfx')
-rw-r--r--sys/dev/tdfx/tdfx_pci.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/sys/dev/tdfx/tdfx_pci.c b/sys/dev/tdfx/tdfx_pci.c
index 40fcfadd4dca..33e0896f724f 100644
--- a/sys/dev/tdfx/tdfx_pci.c
+++ b/sys/dev/tdfx/tdfx_pci.c
@@ -441,7 +441,7 @@ tdfx_close(dev_t dev, int fflag, int devtype, struct thread *td)
}
static int
-tdfx_mmap(dev_t dev, vm_offset_t offset, int nprot)
+tdfx_mmap(dev_t dev, vm_offset_t offset, vm_offset_t *paddr, int nprot)
{
/*
* mmap(2) is called by a user process to request that an area of memory
@@ -472,14 +472,17 @@ tdfx_mmap(dev_t dev, vm_offset_t offset, int nprot)
/* We must stay within the bound of our address space */
if((offset & 0xff000000) == tdfx_info[0]->addr0) {
offset &= 0xffffff;
- return atop(rman_get_start(tdfx_info[0]->memrange) + offset);
+ *paddr = rman_get_start(tdfx_info[0]->memrange) + offset;
+ return 0;
}
if(tdfx_count > 1) {
tdfx_info[1] = (struct tdfx_softc*)devclass_get_softc(tdfx_devclass, 1);
if((offset & 0xff000000) == tdfx_info[1]->addr0) {
offset &= 0xffffff;
- return atop(rman_get_start(tdfx_info[1]->memrange) + offset);
+ *paddr = rman_get_start(tdfx_info[1]->memrange) +
+ offset;
+ return 0;
}
}