rpms/kernel/F-7 linux-2.6-drm-fix-i915-allocation.patch, NONE, 1.1 linux-2.6-drm-radeon-x800-pcie-fix.patch, NONE, 1.1 kernel-2.6.spec, 1.3372, 1.3373

Dave Airlie (airlied) fedora-extras-commits at redhat.com
Tue Nov 6 01:05:46 UTC 2007


Author: airlied

Update of /cvs/pkgs/rpms/kernel/F-7
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv25540

Modified Files:
	kernel-2.6.spec 
Added Files:
	linux-2.6-drm-fix-i915-allocation.patch 
	linux-2.6-drm-radeon-x800-pcie-fix.patch 
Log Message:
* Tue Nov 06 2007 Dave Airlie <airlied at linux.ie>
- copy drm fixes from Fedora 8 (bug 228414) + i915 allocation


linux-2.6-drm-fix-i915-allocation.patch:

--- NEW FILE linux-2.6-drm-fix-i915-allocation.patch ---
>From 54583bf4efda79388fc13163e35c016c8bc5de81 Mon Sep 17 00:00:00 2001
From: Dave Airlie <airlied at redhat.com>
Date: Sun, 14 Oct 2007 21:21:30 +1000
Subject: [PATCH] i915: fix vbl swap allocation size.

Oops...

Signed-off-by: Dave Airlie <airlied at linux.ie>
---
 drivers/char/drm/i915_irq.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/char/drm/i915_irq.c b/drivers/char/drm/i915_irq.c
index 380c3f3..a443f4a 100644
--- a/drivers/char/drm/i915_irq.c
+++ b/drivers/char/drm/i915_irq.c
@@ -540,7 +540,7 @@ int i915_vblank_swap(struct drm_device *dev, void *data,
 		return -EBUSY;
 	}
 
-	vbl_swap = drm_calloc(1, sizeof(vbl_swap), DRM_MEM_DRIVER);
+	vbl_swap = drm_calloc(1, sizeof(*vbl_swap), DRM_MEM_DRIVER);
 
 	if (!vbl_swap) {
 		DRM_ERROR("Failed to allocate memory to queue swap\n");
-- 
1.5.2.4


linux-2.6-drm-radeon-x800-pcie-fix.patch:

--- NEW FILE linux-2.6-drm-radeon-x800-pcie-fix.patch ---
>From 7fc86860cf73e060ab8ed9763010dfe5b5389b1c Mon Sep 17 00:00:00 2001
From: Dave Airlie <airlied at linux.ie>
Date: Mon, 5 Nov 2007 10:45:27 +1000
Subject: [PATCH] radeon: set the address to access the GART table on the CPU side correctly

This code relied on the CPU and GPU address for the aperture being the same,
On some r5xx hardware I was playing with I noticed that this isn't always true.
This fixes issues seen on some r400 cards. (bugs.freedesktop.org 9957)

Signed-off-by: Dave Airlie <airlied at redhat.com>
---
 drivers/char/drm/radeon_cp.c  |    5 +++--
 drivers/char/drm/radeon_drv.h |    1 +
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/char/drm/radeon_cp.c b/drivers/char/drm/radeon_cp.c
index 335423c..24fca8e 100644
--- a/drivers/char/drm/radeon_cp.c
+++ b/drivers/char/drm/radeon_cp.c
@@ -1679,7 +1679,7 @@ static int radeon_do_init_cp(struct drm_device * dev, drm_radeon_init_t * init)
 			dev_priv->gart_info.bus_addr =
 			    dev_priv->pcigart_offset + dev_priv->fb_location;
 			dev_priv->gart_info.mapping.offset =
-			    dev_priv->gart_info.bus_addr;
+			    dev_priv->pcigart_offset + dev_priv->fb_aper_offset;
 			dev_priv->gart_info.mapping.size =
 			    dev_priv->gart_info.table_size;
 
@@ -2275,7 +2275,8 @@ int radeon_driver_firstopen(struct drm_device *dev)
 	if (ret != 0)
 		return ret;
 
-	ret = drm_addmap(dev, drm_get_resource_start(dev, 0),
+	dev_priv->fb_aper_offset = drm_get_resource_start(dev, 0);
+	ret = drm_addmap(dev, dev_priv->fb_aper_offset,
 			 drm_get_resource_len(dev, 0), _DRM_FRAME_BUFFER,
 			 _DRM_WRITE_COMBINING, &map);
 	if (ret != 0)
diff --git a/drivers/char/drm/radeon_drv.h b/drivers/char/drm/radeon_drv.h
index e4077bc..bfbb60a 100644
--- a/drivers/char/drm/radeon_drv.h
+++ b/drivers/char/drm/radeon_drv.h
@@ -293,6 +293,7 @@ typedef struct drm_radeon_private {
 
 	/* starting from here on, data is preserved accross an open */
 	uint32_t flags;		/* see radeon_chip_flags */
+	unsigned long fb_aper_offset;
 } drm_radeon_private_t;
 
 typedef struct drm_radeon_buf_priv {
-- 
1.5.2.4



Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-7/kernel-2.6.spec,v
retrieving revision 1.3372
retrieving revision 1.3373
diff -u -r1.3372 -r1.3373
--- kernel-2.6.spec	1 Nov 2007 23:47:48 -0000	1.3372
+++ kernel-2.6.spec	6 Nov 2007 01:05:12 -0000	1.3373
@@ -630,6 +630,10 @@
 
 Patch900: linux-2.6-md-raid5-fix-clearing-of-biofill-operations.patch
 
+# drm for bug 228414
+Patch950: linux-2.6-drm-fix-i915-allocation.patch
+Patch951: linux-2.6-drm-radeon-x800-pcie-fix.patch
+
 # PS3 updates from 2.6.23
 
 # PS3 Wireless support hasn't yet been merged
@@ -1332,6 +1336,10 @@
 # raid5 data corruption fix
 ApplyPatch linux-2.6-md-raid5-fix-clearing-of-biofill-operations.patch
 
+# drm patches should be in stable upstream soon
+ApplyPatch linux-2.6-drm-fix-i915-allocation.patch
+ApplyPatch linux-2.6-drm-radeon-x800-pcie-fix.patch
+
 # Pending PS3 patches
 ApplyPatch linux-2.6-ps3-gelic-wireless.patch
 # Temporary hacks
@@ -2270,8 +2278,8 @@
 %endif
 
 %changelog
-* Thu Nov 01 2007 Chuck Ebbert <cebbert at redhat.com>
-- e100: don't crash on startup
+* Tue Nov 06 2007 Dave Airlie <airlied at linux.ie>
+- copy drm fixes from Fedora 8 (bug 228414) + i915 allocation
 
 * Wed Oct 31 2007 Chuck Ebbert <cebbert at redhat.com>
 - Copy iwl wireless updates from Fedora 8 (#349981).




More information about the fedora-extras-commits mailing list