summaryrefslogtreecommitdiff
path: root/bsd-core/drm_drv.c
diff options
context:
space:
mode:
authorEric Anholt <anholt@freebsd.org>2003-12-16 08:57:08 +0000
committerEric Anholt <anholt@freebsd.org>2003-12-16 08:57:08 +0000
commit9fb6986e83a84f6b958e8aba2c20b5988676bd55 (patch)
tree466fa7fd9089d1b7aa4e1257096e177a2c6034c0 /bsd-core/drm_drv.c
parent5285b029876a4d3122ae72cc3d81ca8d184ed9ca (diff)
Don't ioremap the framebuffer area. The ioremapped area wasn't used by
anything, and took up valuable KVA. While I'm in the area, clean up BSD MTRR stuff some more. Suggested by: jonsmirl
Diffstat (limited to 'bsd-core/drm_drv.c')
-rw-r--r--bsd-core/drm_drv.c28
1 files changed, 13 insertions, 15 deletions
diff --git a/bsd-core/drm_drv.c b/bsd-core/drm_drv.c
index bf1e2ac4..7184e3d9 100644
--- a/bsd-core/drm_drv.c
+++ b/bsd-core/drm_drv.c
@@ -565,17 +565,18 @@ static int DRM(takedown)( drm_device_t *dev )
map = list->map;
switch ( map->type ) {
case _DRM_REGISTERS:
+ DRM(ioremapfree)(map);
+ /* FALLTHROUGH */
case _DRM_FRAME_BUFFER:
#if __REALLY_HAVE_MTRR
- if ( map->mtrr >= 0 ) {
- int __unused mtrr;
+ if (map->mtrr) {
+ int __unused retcode;
- mtrr = DRM(mtrr_del)(map->offset,
+ retcode = DRM(mtrr_del)(map->offset,
map->size, DRM_MTRR_WC);
- DRM_DEBUG("mtrr_del=%d\n", mtrr);
+ DRM_DEBUG("mtrr_del = %d", retcode);
}
#endif
- DRM(ioremapfree)( map );
break;
case _DRM_SHM:
DRM(free)(map->handle,
@@ -679,12 +680,9 @@ static int DRM(init)( device_t nbdev )
#endif /* __MUST_HAVE_AGP */
#if __REALLY_HAVE_MTRR
if (dev->agp) {
- int retcode;
-
- retcode = DRM(mtrr_add)(dev->agp->info.ai_aperture_base,
- dev->agp->info.ai_aperture_size, DRM_MTRR_WC);
- if (retcode == 0)
- dev->agp->agp_mtrr=1;
+ if (DRM(mtrr_add)(dev->agp->info.ai_aperture_base,
+ dev->agp->info.ai_aperture_size, DRM_MTRR_WC) == 0)
+ dev->agp->mtrr = 1;
}
#endif /* __REALLY_HAVE_MTRR */
#endif /* __REALLY_HAVE_AGP */
@@ -742,12 +740,12 @@ static void DRM(cleanup)(drm_device_t *dev)
#endif
#if __REALLY_HAVE_AGP && __REALLY_HAVE_MTRR
- if ( dev->agp && dev->agp->agp_mtrr >= 0) {
- int __unused mtrr;
+ if (dev->agp && dev->agp->mtrr) {
+ int __unused retcode;
- mtrr = DRM(mtrr_del)(dev->agp->info.ai_aperture_base,
+ retcode = DRM(mtrr_del)(dev->agp->info.ai_aperture_base,
dev->agp->info.ai_aperture_size, DRM_MTRR_WC);
- DRM_DEBUG("mtrr_del=%d\n", mtrr);
+ DRM_DEBUG("mtrr_del = %d", retcode);
}
#endif