[kernel/f15/master] nouveau: fix pcie nv3x

Ben Skeggs bskeggs at fedoraproject.org
Fri Apr 8 04:49:13 UTC 2011


commit 304107e3d0dbc845c1343f71536694f66b889395
Author: Ben Skeggs <bskeggs at redhat.com>
Date:   Fri Apr 8 14:48:37 2011 +1000

    nouveau: fix pcie nv3x

 drm-nouveau-updates.patch |   10 +++++-----
 kernel.spec               |    5 ++++-
 2 files changed, 9 insertions(+), 6 deletions(-)
---
diff --git a/drm-nouveau-updates.patch b/drm-nouveau-updates.patch
index c426b80..61e11a4 100644
--- a/drm-nouveau-updates.patch
+++ b/drm-nouveau-updates.patch
@@ -1680,7 +1680,7 @@ index 4a8ad13..86c2e37 100644
  static inline void
  cp_pos(struct nouveau_grctx *ctx, int offset)
 diff --git a/drivers/gpu/drm/nouveau/nouveau_mem.c b/drivers/gpu/drm/nouveau/nouveau_mem.c
-index b0fb9bd..07ee9af 100644
+index b0fb9bd..f017997 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_mem.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_mem.c
 @@ -152,7 +152,6 @@ nouveau_mem_vram_fini(struct drm_device *dev)
@@ -1706,7 +1706,7 @@ index b0fb9bd..07ee9af 100644
 +			dma_bits = 40;
 +	} else
 +	if (0 && drm_device_is_pcie(dev) &&
-+	    dev_priv->chipset != 0x40 &&
++	    dev_priv->chipset  > 0x40 &&
 +	    dev_priv->chipset != 0x45) {
 +		if (pci_dma_supported(dev->pdev, DMA_BIT_MASK(39)))
 +			dma_bits = 39;
@@ -2277,7 +2277,7 @@ index 04e8fb7..f18cdfc 100644
  #define NV50_PDISPLAY_USER(i)                        ((i) * 0x1000 + 0x00640000)
  #define NV50_PDISPLAY_USER_PUT(i)                    ((i) * 0x1000 + 0x00640000)
 diff --git a/drivers/gpu/drm/nouveau/nouveau_sgdma.c b/drivers/gpu/drm/nouveau/nouveau_sgdma.c
-index 9a250eb..b410d31 100644
+index 9a250eb..2bf9686 100644
 --- a/drivers/gpu/drm/nouveau/nouveau_sgdma.c
 +++ b/drivers/gpu/drm/nouveau/nouveau_sgdma.c
 @@ -74,8 +74,24 @@ nouveau_sgdma_clear(struct ttm_backend *be)
@@ -2605,7 +2605,7 @@ index 9a250eb..b410d31 100644
 -			aper_size = 64 * 1024 * 1024;
 -		else
 -			aper_size = 512 * 1024 * 1024;
-+	if (dev_priv->card_type >= NV_50 || drm_device_is_pcie(dev))
++	if (dev_priv->card_type >= NV_40 && drm_device_is_pcie(dev))
 +		aper_size = 512 * 1024 * 1024;
 +	else
 +		aper_size = 64 * 1024 * 1024;
@@ -2640,7 +2640,7 @@ index 9a250eb..b410d31 100644
 +		dev_priv->gart_info.func = &nv50_sgdma_backend;
 +	} else
 +	if (0 && drm_device_is_pcie(dev) &&
-+	    dev_priv->chipset != 0x40 && dev_priv->chipset != 0x45) {
++	    dev_priv->chipset > 0x40 && dev_priv->chipset != 0x45) {
 +		if (nv44_graph_class(dev)) {
 +			dev_priv->gart_info.func = &nv44_sgdma_backend;
 +			align = 512 * 1024;
diff --git a/kernel.spec b/kernel.spec
index 8a0e33b..fcc710f 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -51,7 +51,7 @@ Summary: The Linux kernel
 # For non-released -rc kernels, this will be prepended with "0.", so
 # for example a 3 here will become 0.3
 #
-%global baserelease 12
+%global baserelease 13
 %global fedora_build %{baserelease}
 
 # base_sublevel is the kernel version we're starting with and patching
@@ -1976,6 +1976,9 @@ fi
 # and build.
 
 %changelog
+* Fri Apr 08 2011 Ben Skeggs <bskeggs at redhat.com> 2.6.38-2.13
+- nouveau: fix pcie nv3x (rhbz#692588)
+
 * Thu Apr 07 2011 Hans de Goede <hdegoede at redhat.com>
 - i915: Add a no lvds quirk for the Asus EB1007, this fixes gnome-shell
 


More information about the scm-commits mailing list