rpms/kernel/F-11 drm-nouveau.patch, 1.41, 1.42 kernel.spec, 1.1569, 1.1570

Ben Skeggs bskeggs at fedoraproject.org
Fri Apr 24 04:10:42 UTC 2009


Author: bskeggs

Update of /cvs/pkgs/rpms/kernel/F-11
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv15289

Modified Files:
	drm-nouveau.patch kernel.spec 
Log Message:
* Fri Apr 24 2009 Ben Skeggs <bskeggs at redhat.com> 2.6.29.1-108
- nouveau/nv50: don't clobber 0x001700 during instmem init, can confuse ddx



drm-nouveau.patch:

Index: drm-nouveau.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-11/drm-nouveau.patch,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -r1.41 -r1.42
--- drm-nouveau.patch	17 Apr 2009 12:25:32 -0000	1.41
+++ drm-nouveau.patch	24 Apr 2009 04:10:41 -0000	1.42
@@ -103,7 +103,7 @@
  	if (mask & ~fence->type) {
  		DRM_ERROR("Wait trying to extend fence type"
 diff --git a/drivers/gpu/drm/drm_gem.c b/drivers/gpu/drm/drm_gem.c
-index 4984aa8..dee9b40 100644
+index c1173d8..2e4e667 100644
 --- a/drivers/gpu/drm/drm_gem.c
 +++ b/drivers/gpu/drm/drm_gem.c
 @@ -280,48 +280,58 @@ drm_gem_close_ioctl(struct drm_device *dev, void *data,
@@ -186,7 +186,7 @@
  	drm_gem_object_unreference(obj);
  	mutex_unlock(&dev->struct_mutex);
 diff --git a/drivers/gpu/drm/drm_stub.c b/drivers/gpu/drm/drm_stub.c
-index 5d45cbf..e3b0a76 100644
+index 5f7e431..a84acdb 100644
 --- a/drivers/gpu/drm/drm_stub.c
 +++ b/drivers/gpu/drm/drm_stub.c
 @@ -406,14 +406,14 @@ int drm_get_dev(struct pci_dev *pdev, const struct pci_device_id *ent,
@@ -7058,7 +7058,7 @@
 +MODULE_LICENSE("GPL and additional rights");
 diff --git a/drivers/gpu/drm/nouveau/nouveau_drv.h b/drivers/gpu/drm/nouveau/nouveau_drv.h
 new file mode 100644
-index 0000000..ae93ea1
+index 0000000..7d2da72
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nouveau_drv.h
 @@ -0,0 +1,776 @@
@@ -16723,10 +16723,10 @@
 +}
 diff --git a/drivers/gpu/drm/nouveau/nouveau_state.c b/drivers/gpu/drm/nouveau/nouveau_state.c
 new file mode 100644
-index 0000000..3e69c36
+index 0000000..3aee6d9
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nouveau_state.c
-@@ -0,0 +1,1046 @@
+@@ -0,0 +1,1043 @@
 +/*
 + * Copyright 2005 Stephane Marchesin
 + * Copyright 2008 Stuart Bennett
@@ -17259,10 +17259,7 @@
 +	/* resource 2 is RAMIN (mmio regs + 0x1000000) */
 +	/* resource 6 is bios */
 +
-+	/* Map 8MiB of the mmio regs, the only stuff beyond that we touch
-+	 * is the channel control regs, but we'll map them per-channel
-+	 * as required.
-+	 */
++	/* map the mmio regs */
 +	ret = drm_addmap(dev, drm_get_resource_start(dev, 0),
 +			 0x00800000, _DRM_REGISTERS, _DRM_READ_ONLY |
 +			 _DRM_DRIVER, &dev_priv->mmio);
@@ -23553,7 +23550,7 @@
 +}
 diff --git a/drivers/gpu/drm/nouveau/nv50_connector.c b/drivers/gpu/drm/nouveau/nv50_connector.c
 new file mode 100644
-index 0000000..afb9ac3
+index 0000000..bc43d4d
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nv50_connector.c
 @@ -0,0 +1,536 @@
@@ -47893,10 +47890,10 @@
 +#endif
 diff --git a/drivers/gpu/drm/nouveau/nv50_instmem.c b/drivers/gpu/drm/nouveau/nv50_instmem.c
 new file mode 100644
-index 0000000..0659f1b
+index 0000000..d69f0cc
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nv50_instmem.c
-@@ -0,0 +1,379 @@
+@@ -0,0 +1,382 @@
 +/*
 + * Copyright (C) 2007 Ben Skeggs.
 + *
@@ -47963,7 +47960,7 @@
 +	uint32_t c_offset, c_size, c_ramfc, c_vmpd, c_base, pt_size;
 +	struct nv50_instmem_priv *priv;
 +	int ret, i;
-+	uint32_t v;
++	uint32_t v, save_nv001700;
 +
 +	priv = drm_calloc(1, sizeof(*priv), DRM_MEM_DRIVER);
 +	if (!priv)
@@ -47992,6 +47989,7 @@
 +		 (uint32_t)dev_priv->ramin->size >> 20);
 +	NV_DEBUG(dev, "        PT size: %d KiB\n", pt_size >> 10);
 +
++	save_nv001700 = nv_rd32(NV50_PUNK_BAR0_PRAMIN);
 +	nv_wr32(NV50_PUNK_BAR0_PRAMIN, (c_offset >> 16));
 +
 +	/* Create a fake channel, and use it as our "dummy" channels 0/127.
@@ -48089,6 +48087,8 @@
 +	}
 +	dev_priv->engine.instmem.finish_access(dev);
 +
++	nv_wr32(NV50_PUNK_BAR0_PRAMIN, save_nv001700);
++
 +	/* Global PRAMIN heap */
 +	if (nouveau_mem_init_heap(&dev_priv->ramin_heap,
 +				  c_size, dev_priv->ramin->size - c_size)) {
@@ -49117,7 +49117,7 @@
  unifdef-y += via_drm.h
 +unifdef-y += nouveau_drm.h
 diff --git a/include/drm/drmP.h b/include/drm/drmP.h
-index 04fbd1e..f2a6bff 100644
+index b61b0c6..5b7ce2d 100644
 --- a/include/drm/drmP.h
 +++ b/include/drm/drmP.h
 @@ -1267,6 +1267,8 @@ extern void drm_idlelock_release(struct drm_lock_data *lock_data);


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-11/kernel.spec,v
retrieving revision 1.1569
retrieving revision 1.1570
diff -u -r1.1569 -r1.1570
--- kernel.spec	23 Apr 2009 22:26:55 -0000	1.1569
+++ kernel.spec	24 Apr 2009 04:10:41 -0000	1.1570
@@ -1982,6 +1982,9 @@
 # and build.
 
 %changelog
+* Fri Apr 24 2009 Ben Skeggs <bskeggs at redhat.com> 2.6.29.1-108
+- nouveau/nv50: don't clobber 0x001700 during instmem init, can confuse ddx
+
 * Thu Apr 23 2009 Chuck Ebbert <cebbert at redhat.com> 2.6.29.1-107
 - Drop POSIX timer patch accidentally committed in 2.6.30.
 




More information about the scm-commits mailing list