summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--src/radeon_dri.c33
2 files changed, 19 insertions, 21 deletions
diff --git a/ChangeLog b/ChangeLog
index d04e417..5098e65 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2006-05-09 Michel Dänzer <michel@tungstengraphics.com>
+
+ * src/radeon_dri.c: (RADEONDRIGartHeapInit), (RADEONDRIGetVersion):
+ Drop support for radeon DRM <= 1.7. The 2.4 kernel has version 1.7, and
+ various problems up to system hangs on X server startup have been
+ reported with that and DRI enabled.
+
2006-05-08 Michel Dänzer <michel@tungstengraphics.com>
Bugzilla #4640 <https://bugs.freedesktop.org/show_bug.cgi?id=4640>
diff --git a/src/radeon_dri.c b/src/radeon_dri.c
index 9f9895d..62543ca 100644
--- a/src/radeon_dri.c
+++ b/src/radeon_dri.c
@@ -1094,24 +1094,18 @@ static void RADEONDRIGartHeapInit(RADEONInfoPtr info, ScreenPtr pScreen)
drmRadeonMemInitHeap drmHeap;
/* Start up the simple memory manager for GART space */
- if (info->pKernelDRMVersion->version_minor >= 6) {
- drmHeap.region = RADEON_MEM_REGION_GART;
- drmHeap.start = 0;
- drmHeap.size = info->gartTexMapSize;
-
- if (drmCommandWrite(info->drmFD, DRM_RADEON_INIT_HEAP,
- &drmHeap, sizeof(drmHeap))) {
- xf86DrvMsg(pScreen->myNum, X_ERROR,
- "[drm] Failed to initialize GART heap manager\n");
- } else {
- xf86DrvMsg(pScreen->myNum, X_INFO,
- "[drm] Initialized kernel GART heap manager, %d\n",
- info->gartTexMapSize);
- }
+ drmHeap.region = RADEON_MEM_REGION_GART;
+ drmHeap.start = 0;
+ drmHeap.size = info->gartTexMapSize;
+
+ if (drmCommandWrite(info->drmFD, DRM_RADEON_INIT_HEAP,
+ &drmHeap, sizeof(drmHeap))) {
+ xf86DrvMsg(pScreen->myNum, X_ERROR,
+ "[drm] Failed to initialize GART heap manager\n");
} else {
xf86DrvMsg(pScreen->myNum, X_INFO,
- "[drm] Kernel module too old (1.%d) for GART heap manager\n",
- info->pKernelDRMVersion->version_minor);
+ "[drm] Initialized kernel GART heap manager, %d\n",
+ info->gartTexMapSize);
}
}
@@ -1296,11 +1290,8 @@ Bool RADEONDRIGetVersion(ScrnInfoPtr pScrn)
} else if (info->IsIGP) {
req_minor = 10;
req_patch = 0;
- } else if (info->ChipFamily >= CHIP_FAMILY_R200) {
- req_minor = 5;
- req_patch = 0;
- } else {
- req_minor = 3;
+ } else { /* Many problems have been reported with 1.7 in the 2.4 kernel */
+ req_minor = 8;
req_patch = 0;
}