rpms/xorg-x11-drv-ati/devel radeon-r600-kms-shadowfb.patch, NONE, 1.1 xorg-x11-drv-ati.spec, 1.157, 1.158

Adam Jackson ajax at fedoraproject.org
Thu Mar 12 20:10:07 UTC 2009


Author: ajax

Update of /cvs/pkgs/rpms/xorg-x11-drv-ati/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv30571

Modified Files:
	xorg-x11-drv-ati.spec 
Added Files:
	radeon-r600-kms-shadowfb.patch 
Log Message:
* Thu Mar 12 2009 Adam Jackson <ajax at redhat.com> 6.11.0-9
- radeon-r600-kms-shadowfb.patch: Make R600 fall back to shadowfb whne KMS
  is enabled (as opposed to crashing).


radeon-r600-kms-shadowfb.patch:

--- NEW FILE radeon-r600-kms-shadowfb.patch ---
diff -up xf86-video-ati-6.11.0/src/drmmode_display.c.jx xf86-video-ati-6.11.0/src/drmmode_display.c
--- xf86-video-ati-6.11.0/src/drmmode_display.c.jx	2009-03-12 16:00:29.000000000 -0400
+++ xf86-video-ati-6.11.0/src/drmmode_display.c	2009-03-12 16:04:43.497426645 -0400
@@ -153,6 +153,9 @@ copy_fb_contents (drmmode_ptr drmmode,
 	PixmapPtr src_pixmap, dest_pixmap;
 	ScreenPtr pScreen = pScrn->pScreen;
 
+	if (info->ChipFamily >= CHIP_FAMILY_R600)
+		return;
+
 	dest_fb = drmModeGetFB(drmmode->fd, dest_id);
 	src_fb = drmModeGetFB(drmmode->fd, src_id);
 	if (src_fb == NULL || dest_fb == NULL) {
diff -up xf86-video-ati-6.11.0/src/radeon_driver.c.jx xf86-video-ati-6.11.0/src/radeon_driver.c
--- xf86-video-ati-6.11.0/src/radeon_driver.c.jx	2009-03-12 16:00:29.317422095 -0400
+++ xf86-video-ati-6.11.0/src/radeon_driver.c	2009-03-12 16:00:29.340421256 -0400
@@ -1991,6 +1991,15 @@ static Bool RADEONPreInitAccel(ScrnInfoP
     }
     info->accel_state->fifo_slots                 = 0;
 
+    if (info->drm_mode_setting && info->ChipFamily >= CHIP_FAMILY_R600) {
+	xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+		   "Using shadowfb for KMS on R600+\n");
+	info->r600_shadow_fb = TRUE;
+	if (!xf86LoadSubModule(pScrn, "shadow"))
+	    info->r600_shadow_fb = FALSE;
+	return TRUE;
+    }
+
     if ((info->ChipFamily == CHIP_FAMILY_RS100) ||
 	(info->ChipFamily == CHIP_FAMILY_RS200) ||
 	(info->ChipFamily == CHIP_FAMILY_RS300) ||
diff -up xf86-video-ati-6.11.0/src/radeon_video.c.jx xf86-video-ati-6.11.0/src/radeon_video.c
--- xf86-video-ati-6.11.0/src/radeon_video.c.jx	2009-03-12 16:00:29.309397119 -0400
+++ xf86-video-ati-6.11.0/src/radeon_video.c	2009-03-12 16:00:29.344420788 -0400
@@ -297,7 +297,10 @@ void RADEONInitVideo(ScreenPtr pScreen)
 	RADEONInitOffscreenImages(pScreen);
     }
 
-    if (info->ChipFamily != CHIP_FAMILY_RV250) {
+    if (info->ChipFamily >= CHIP_FAMILY_R600 && info->drm_mode_setting) {
+	xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+		   "Disabling textured video for KMS On R600+\n");
+    } else if (info->ChipFamily != CHIP_FAMILY_RV250) {
 	if ((info->ChipFamily < CHIP_FAMILY_RS400)
 #ifdef XF86DRI
 	    || (info->directRenderingEnabled || info->drm_mode_setting)


Index: xorg-x11-drv-ati.spec
===================================================================
RCS file: /cvs/pkgs/rpms/xorg-x11-drv-ati/devel/xorg-x11-drv-ati.spec,v
retrieving revision 1.157
retrieving revision 1.158
diff -u -r1.157 -r1.158
--- xorg-x11-drv-ati.spec	12 Mar 2009 05:01:19 -0000	1.157
+++ xorg-x11-drv-ati.spec	12 Mar 2009 20:09:37 -0000	1.158
@@ -5,7 +5,7 @@
 Summary:   Xorg X11 ati video driver
 Name:      xorg-x11-drv-ati
 Version:   6.11.0
-Release:   8%{?dist}
+Release:   9%{?dist}
 URL:       http://www.x.org
 License:   MIT
 Group:     User Interface/X Hardware Support
@@ -21,6 +21,7 @@
 Patch6:     radeon-6.9.0-bgnr-enable.patch
 Patch7:	    radeon-fix-r600-xv.patch
 Patch8:	    radeon-r600-gart-table.patch
+Patch9:	    radeon-r600-kms-shadowfb.patch
 
 ExcludeArch: s390 s390x
 
@@ -49,6 +50,7 @@
 %patch6 -p1 -b .bgnr
 %patch7 -p1 -b .r600xv
 %patch8 -p1 -b .r600gart
+%patch9 -p1 -b .kms-shadowfb
 
 %build
 autoreconf -iv
@@ -80,6 +82,10 @@
 %{_mandir}/man4/radeon.4*
 
 %changelog
+* Thu Mar 12 2009 Adam Jackson <ajax at redhat.com> 6.11.0-9
+- radeon-r600-kms-shadowfb.patch: Make R600 fall back to shadowfb whne KMS
+  is enabled (as opposed to crashing).
+
 * Thu Mar 12 2009 Dave Airlie <airlied at redhat.com> 6.11.0-8
 - fix r600 GART table sizing bug
 




More information about the fedora-extras-commits mailing list