diff options
author | anholt <anholt@FreeBSD.org> | 2005-06-28 21:38:08 +0000 |
---|---|---|
committer | anholt <anholt@FreeBSD.org> | 2005-06-28 21:38:08 +0000 |
commit | 074ec1e21457fbc3a38b600a0df597375bc9bc3b (patch) | |
tree | 35c14f874d71a89d2c93c3f10a95115f92cc3476 /sys/dev/drm/radeon_cp.c | |
parent | 6b954a193369412e75e975e42282c8ae82dcc944 (diff) | |
download | FreeBSD-src-074ec1e21457fbc3a38b600a0df597375bc9bc3b.zip FreeBSD-src-074ec1e21457fbc3a38b600a0df597375bc9bc3b.tar.gz |
Disable the drm_initmap calls in radeon_cp.c, due to them resulting in improper
handling of pci resources, and mapping framebuffer leading to panics on X
startup. The proper solution involves use of bus_alloc_resource without
RF_ACTIVE, but this code is being rewritten in DRM CVS currently, and disabling
for now doesn't remove any features, so take the easy route.
PR: kern/80718
Approved by: re (scottl)
Diffstat (limited to 'sys/dev/drm/radeon_cp.c')
-rw-r--r-- | sys/dev/drm/radeon_cp.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/dev/drm/radeon_cp.c b/sys/dev/drm/radeon_cp.c index 6e8b430..c63e49e 100644 --- a/sys/dev/drm/radeon_cp.c +++ b/sys/dev/drm/radeon_cp.c @@ -2031,6 +2031,11 @@ int radeon_preinit(struct drm_device *dev, unsigned long flags) break; } + /* Disable initmaps because it is broken on FreeBSD, and results in + * crashes on startup for some. The proper fix will involve being + * smarter about allocating PCI resources. + */ + /* ret = drm_initmap(dev, drm_get_resource_start(dev, 2), drm_get_resource_len(dev, 2), 2, _DRM_REGISTERS, _DRM_READ_ONLY); @@ -2042,6 +2047,7 @@ int radeon_preinit(struct drm_device *dev, unsigned long flags) _DRM_WRITE_COMBINING); if (ret != 0) return ret; + */ /* The original method of detecting AGP is known to not work correctly, * according to Mike Harris. The solution is to walk the capabilities |