rpms/kernel/devel drm-nouveau.patch, 1.41, 1.42 kernel.spec, 1.1687, 1.1688

Ben Skeggs bskeggs at fedoraproject.org
Tue Aug 4 06:46:49 UTC 2009


Author: bskeggs

Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv19116

Modified Files:
	drm-nouveau.patch kernel.spec 
Log Message:
* Tue Aug 04 2009 Ben Skeggs <bskeggs at redhat.com>
- nouveau: more code share between nv50/<nv50 kms, bug fixes



drm-nouveau.patch:
 drivers/gpu/drm/Kconfig                     |   30 
 drivers/gpu/drm/Makefile                    |    1 
 drivers/gpu/drm/drm_bufs.c                  |   28 
 drivers/gpu/drm/nouveau/Makefile            |   27 
 drivers/gpu/drm/nouveau/nouveau_backlight.c |  155 
 drivers/gpu/drm/nouveau/nouveau_bios.c      | 5056 ++++++
 drivers/gpu/drm/nouveau/nouveau_bios.h      |  227 
 drivers/gpu/drm/nouveau/nouveau_bo.c        |  557 
 drivers/gpu/drm/nouveau/nouveau_calc.c      |  622 
 drivers/gpu/drm/nouveau/nouveau_connector.c |  595 
 drivers/gpu/drm/nouveau/nouveau_connector.h |   52 
 drivers/gpu/drm/nouveau/nouveau_crtc.h      |   88 
 drivers/gpu/drm/nouveau/nouveau_display.c   |  115 
 drivers/gpu/drm/nouveau/nouveau_dma.c       |  143 
 drivers/gpu/drm/nouveau/nouveau_dma.h       |  144 
 drivers/gpu/drm/nouveau/nouveau_drv.c       |  363 
 drivers/gpu/drm/nouveau/nouveau_drv.h       | 1131 +
 drivers/gpu/drm/nouveau/nouveau_encoder.h   |   49 
 drivers/gpu/drm/nouveau/nouveau_fb.h        |   43 
 drivers/gpu/drm/nouveau/nouveau_fbcon.c     | 1027 +
 drivers/gpu/drm/nouveau/nouveau_fbcon.h     |   49 
 drivers/gpu/drm/nouveau/nouveau_fence.c     |  261 
 drivers/gpu/drm/nouveau/nouveau_fifo.c      |  683 
 drivers/gpu/drm/nouveau/nouveau_gem.c       |  751 
 drivers/gpu/drm/nouveau/nouveau_hw.c        | 1018 +
 drivers/gpu/drm/nouveau/nouveau_hw.h        |  431 
 drivers/gpu/drm/nouveau/nouveau_i2c.c       |  246 
 drivers/gpu/drm/nouveau/nouveau_i2c.h       |   45 
 drivers/gpu/drm/nouveau/nouveau_ioc32.c     |   72 
 drivers/gpu/drm/nouveau/nouveau_irq.c       |  674 
 drivers/gpu/drm/nouveau/nouveau_mem.c       |  567 
 drivers/gpu/drm/nouveau/nouveau_notifier.c  |  192 
 drivers/gpu/drm/nouveau/nouveau_object.c    | 1276 +
 drivers/gpu/drm/nouveau/nouveau_reg.h       |  834 +
 drivers/gpu/drm/nouveau/nouveau_sgdma.c     |  317 
 drivers/gpu/drm/nouveau/nouveau_state.c     |  825 +
 drivers/gpu/drm/nouveau/nouveau_swmthd.h    |   33 
 drivers/gpu/drm/nouveau/nouveau_ttm.c       |  116 
 drivers/gpu/drm/nouveau/nv04_crtc.c         | 1143 +
 drivers/gpu/drm/nouveau/nv04_cursor.c       |   70 
 drivers/gpu/drm/nouveau/nv04_display.c      |  250 
 drivers/gpu/drm/nouveau/nv04_fb.c           |   21 
 drivers/gpu/drm/nouveau/nv04_fbcon.c        |  291 
 drivers/gpu/drm/nouveau/nv04_fifo.c         |  146 
 drivers/gpu/drm/nouveau/nv04_graph.c        |  586 
 drivers/gpu/drm/nouveau/nv04_instmem.c      |  192 
 drivers/gpu/drm/nouveau/nv04_mc.c           |   20 
 drivers/gpu/drm/nouveau/nv04_output.c       |  797 +
 drivers/gpu/drm/nouveau/nv04_timer.c        |   51 
 drivers/gpu/drm/nouveau/nv10_fb.c           |   24 
 drivers/gpu/drm/nouveau/nv10_fifo.c         |  177 
 drivers/gpu/drm/nouveau/nv10_graph.c        |  945 +
 drivers/gpu/drm/nouveau/nv20_graph.c        |  958 +
 drivers/gpu/drm/nouveau/nv40_fb.c           |   62 
 drivers/gpu/drm/nouveau/nv40_fifo.c         |  222 
 drivers/gpu/drm/nouveau/nv40_graph.c        | 2203 ++
 drivers/gpu/drm/nouveau/nv40_mc.c           |   38 
 drivers/gpu/drm/nouveau/nv50_crtc.c         |  811 +
 drivers/gpu/drm/nouveau/nv50_cursor.c       |  153 
 drivers/gpu/drm/nouveau/nv50_dac.c          |  284 
 drivers/gpu/drm/nouveau/nv50_display.c      |  849 +
 drivers/gpu/drm/nouveau/nv50_display.h      |   46 
 drivers/gpu/drm/nouveau/nv50_evo.h          |  113 
 drivers/gpu/drm/nouveau/nv50_fbcon.c        |  256 
 drivers/gpu/drm/nouveau/nv50_fifo.c         |  475 
 drivers/gpu/drm/nouveau/nv50_graph.c        |  437 
 drivers/gpu/drm/nouveau/nv50_grctx.h        |22284 ++++++++++++++++++++++++++++
 drivers/gpu/drm/nouveau/nv50_instmem.c      |  499 
 drivers/gpu/drm/nouveau/nv50_mc.c           |   40 
 drivers/gpu/drm/nouveau/nv50_sor.c          |  264 
 drivers/gpu/drm/nouveau/nvreg.h             |  503 
 drivers/gpu/drm/ttm/ttm_bo.c                |    4 
 include/drm/Kbuild                          |    1 
 include/drm/drmP.h                          |    2 
 include/drm/nouveau_drm.h                   |  214 
 75 files changed, 54253 insertions(+), 21 deletions(-)

View full diff with command:
/usr/bin/cvs -n -f diff -kk -u -p -N -r 1.41 -r 1.42 drm-nouveau.patchIndex: drm-nouveau.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/drm-nouveau.patch,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -p -r1.41 -r1.42
--- drm-nouveau.patch	31 Jul 2009 01:15:45 -0000	1.41
+++ drm-nouveau.patch	4 Aug 2009 06:46:46 -0000	1.42
@@ -105,7 +105,7 @@ index 6246e3f..436e2fe 100644
  		if (map->type == _DRM_REGISTERS)
 diff --git a/drivers/gpu/drm/nouveau/Makefile b/drivers/gpu/drm/nouveau/Makefile
 new file mode 100644
-index 0000000..67a9582
+index 0000000..a04127f
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/Makefile
 @@ -0,0 +1,27 @@
@@ -119,7 +119,7 @@ index 0000000..67a9582
 +             nouveau_sgdma.o nouveau_dma.o \
 +             nouveau_bo.o nouveau_fence.o nouveau_gem.o nouveau_ttm.o \
 +             nouveau_hw.o nouveau_calc.o nouveau_bios.o nouveau_i2c.o \
-+	     nouveau_display.o nouveau_fbcon.o \
++	     nouveau_display.o nouveau_connector.o nouveau_fbcon.o \
 +             nv04_timer.o \
 +             nv04_mc.o nv40_mc.o nv50_mc.o \
 +             nv04_fb.o nv10_fb.o nv40_fb.o \
@@ -127,7 +127,7 @@ index 0000000..67a9582
 +             nv04_graph.o nv10_graph.o nv20_graph.o \
 +             nv40_graph.o nv50_graph.o \
 +             nv04_instmem.o nv50_instmem.o \
-+             nv50_crtc.o nv50_dac.o nv50_sor.o nv50_connector.o \
++             nv50_crtc.o nv50_dac.o nv50_sor.o \
 +             nv50_cursor.o nv50_display.o nv50_fbcon.o \
 +             nv04_display.o nv04_output.o nv04_crtc.o nv04_cursor.o \
 +             nv04_fbcon.o
@@ -299,10 +299,10 @@ index 0000000..20564f8
 +}
 diff --git a/drivers/gpu/drm/nouveau/nouveau_bios.c b/drivers/gpu/drm/nouveau/nouveau_bios.c
 new file mode 100644
-index 0000000..668008b
+index 0000000..defc0c8
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nouveau_bios.c
-@@ -0,0 +1,5052 @@
+@@ -0,0 +1,5056 @@
 +/*
 + * Copyright 2005-2006 Erik Waling
 + * Copyright 2006 Stephane Marchesin
@@ -4787,6 +4787,10 @@ index 0000000..668008b
 +	entry->type = conn & 0xf;
 +	entry->i2c_index = (conn >> 4) & 0xf;
 +	entry->heads = (conn >> 8) & 0xf;
++	if (bdcb->version >= 0x30)
++		entry->connector = (conn >> 12) & 0xf;
++	else
++		entry->connector = entry->i2c_index; /* sorta */
 +	entry->bus = (conn >> 16) & 0xf;
 +	entry->location = (conn >> 20) & 0x3;
 +	entry->or = (conn >> 24) & 0xf;
@@ -5357,10 +5361,10 @@ index 0000000..668008b
 +}
 diff --git a/drivers/gpu/drm/nouveau/nouveau_bios.h b/drivers/gpu/drm/nouveau/nouveau_bios.h
 new file mode 100644
-index 0000000..43edd76
+index 0000000..24fc305
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nouveau_bios.h
-@@ -0,0 +1,226 @@
+@@ -0,0 +1,227 @@
 +/*
 + * Copyright 2007-2008 Nouveau Project
 + *
@@ -5400,6 +5404,7 @@ index 0000000..43edd76
 +	uint8_t type;
 +	uint8_t i2c_index;
 +	uint8_t heads;
++	uint8_t connector;
 +	uint8_t bus;
 +	uint8_t location;
 +	uint8_t or;
@@ -5589,10 +5594,10 @@ index 0000000..43edd76
 +#endif
 diff --git a/drivers/gpu/drm/nouveau/nouveau_bo.c b/drivers/gpu/drm/nouveau/nouveau_bo.c
 new file mode 100644
-index 0000000..6bd4337
+index 0000000..d59ffc4
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nouveau_bo.c
-@@ -0,0 +1,567 @@
+@@ -0,0 +1,557 @@
 +/*
 + * Copyright 2007 Dave Airlied
 + * All Rights Reserved.
@@ -5764,10 +5769,7 @@ index 0000000..6bd4337
 +void
 +nouveau_bo_unmap(struct nouveau_bo *nvbo)
 +{
-+	if (nvbo->kmap.virtual) {
-+		ttm_bo_kunmap(&nvbo->kmap);
-+		nvbo->kmap.virtual = NULL;
-+	}
++	ttm_bo_kunmap(&nvbo->kmap);
 +}
 +
 +static struct ttm_backend *
@@ -5882,12 +5884,10 @@ index 0000000..6bd4337
 + * TTM_PL_{VRAM,PRIV0,TT} directly.
 + */
 +static int
-+nouveau_bo_move_accel_cleanup(struct nouveau_bo *nvbo, bool evict, bool no_wait,
++nouveau_bo_move_accel_cleanup(struct nouveau_channel *chan,
++			      struct nouveau_bo *nvbo, bool evict, bool no_wait,
 +			      struct ttm_mem_reg *new_mem)
 +{
-+	struct drm_nouveau_private *dev_priv = nouveau_bdev(nvbo->bo.bdev);
-+	struct nouveau_channel *chan =
-+		nvbo->channel ? nvbo->channel : dev_priv->channel;
 +	struct nouveau_fence *fence = NULL;
 +	int ret;
 +
@@ -5905,8 +5905,7 @@ index 0000000..6bd4337
 +nouveau_bo_mem_ctxdma(struct nouveau_bo *nvbo, struct nouveau_channel *chan,
 +		      struct ttm_mem_reg *mem)
 +{
-+	if (unlikely(nvbo->no_vm)) {
-+		BUG_ON(chan != nouveau_bdev(nvbo->bo.bdev)->channel);
++	if (chan == nouveau_bdev(nvbo->bo.bdev)->channel) {
 +		if (mem->mem_type == TTM_PL_TT)
 +			return NvDmaGART;
 +		return NvDmaVRAM;
@@ -5929,7 +5928,7 @@ index 0000000..6bd4337
 +	int ret;
 +
 +	chan = nvbo->channel;
-+	if (!chan) {
++	if (!chan || nvbo->tile_flags || nvbo->no_vm) {
 +		chan = dev_priv->channel;
 +		if (!chan)
 +			return -EINVAL;
@@ -5937,7 +5936,7 @@ index 0000000..6bd4337
 +
 +	src_offset = old_mem->mm_node->start << PAGE_SHIFT;
 +	dst_offset = new_mem->mm_node->start << PAGE_SHIFT;
-+	if (likely(!nvbo->no_vm)) {
++	if (chan != dev_priv->channel) {
 +		if (old_mem->mem_type == TTM_PL_TT)
 +			src_offset += dev_priv->vm_gart_base;
 +		else
@@ -5999,7 +5998,7 @@ index 0000000..6bd4337
 +		dst_offset += (PAGE_SIZE * line_count);
 +	}
 +
-+	return nouveau_bo_move_accel_cleanup(nvbo, evict, no_wait, new_mem);
++	return nouveau_bo_move_accel_cleanup(chan, nvbo, evict, no_wait, new_mem);
 +}
 +
 +static int
@@ -6071,8 +6070,8 @@ index 0000000..6bd4337
 +nouveau_bo_move(struct ttm_buffer_object *bo, bool evict, bool intr,
 +		bool no_wait, struct ttm_mem_reg *new_mem)
 +{
-+	struct nouveau_bo *nvbo = nouveau_bo(bo);
 +	struct drm_nouveau_private *dev_priv = nouveau_bdev(bo->bdev);
++	struct nouveau_bo *nvbo = nouveau_bo(bo);
 +	struct drm_device *dev = dev_priv->dev;
 +	struct ttm_mem_reg *old_mem = &bo->mem;
 +	int ret;
@@ -6100,10 +6099,6 @@ index 0000000..6bd4337
 +		return 0;
 +	}
 +
-+	if (dev_priv->card_type == NV_50 && (nvbo->tile_flags ||
-+	    (dev_priv->sfb_gem && dev_priv->sfb_gem->driver_private == nvbo)))
-+		return ttm_bo_move_memcpy(bo, evict, no_wait, new_mem);
-+
 +	if (new_mem->mem_type == TTM_PL_SYSTEM) {
 +		if (old_mem->mem_type == TTM_PL_SYSTEM)
 +			return ttm_bo_move_memcpy(bo, evict, no_wait, new_mem);
@@ -6788,12 +6783,613 @@ index 0000000..e2b78d2
 +
 +	return outclk;
 +}
+diff --git a/drivers/gpu/drm/nouveau/nouveau_connector.c b/drivers/gpu/drm/nouveau/nouveau_connector.c
+new file mode 100644
+index 0000000..5015f75
+--- /dev/null
++++ b/drivers/gpu/drm/nouveau/nouveau_connector.c
+@@ -0,0 +1,595 @@
++/*
++ * Copyright (C) 2008 Maarten Maathuis.
++ * All Rights Reserved.
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining
++ * a copy of this software and associated documentation files (the
++ * "Software"), to deal in the Software without restriction, including
++ * without limitation the rights to use, copy, modify, merge, publish,
++ * distribute, sublicense, and/or sell copies of the Software, and to
++ * permit persons to whom the Software is furnished to do so, subject to
++ * the following conditions:
++ *
[...2335 lines suppressed...]
 +}
 +
-+static int nv50_crtc_set_dither(struct nouveau_crtc *crtc, bool update)
++static int nv50_crtc_set_dither(struct nouveau_crtc *crtc, bool on, bool update)
 +{
 +	struct drm_device *dev = crtc->base.dev;
 +	struct drm_nouveau_private *dev_priv = dev->dev_private;
@@ -27928,7 +27584,7 @@ index 0000000..81c53c4
 +	}
 +
 +	BEGIN_RING(evo, 0, NV50_EVO_CRTC(crtc->index, DITHER_CTRL), 1);
-+	if (crtc->use_dithering)
++	if (on)
 +		OUT_RING(evo, NV50_EVO_CRTC_DITHER_CTRL_ON);
 +	else
 +		OUT_RING(evo, NV50_EVO_CRTC_DITHER_CTRL_OFF);
@@ -27989,7 +27645,7 @@ index 0000000..81c53c4
 +
 +	NV_DEBUG(dev, "\n");
 +
-+	if (!connector->digital)
++	if (connector->detected_encoder->dcb->type == OUTPUT_ANALOG)
 +		scaling_mode = DRM_MODE_SCALE_NON_GPU;
 +
 +	switch (scaling_mode) {
@@ -28415,7 +28071,6 @@ index 0000000..81c53c4
 +	}
 +
 +	*crtc->mode = *adjusted_mode;
-+	crtc->use_dithering = connector->use_dithering;
 +
 +	NV_DEBUG(dev, "index %d\n", crtc->index);
 +
@@ -28483,7 +28138,7 @@ index 0000000..81c53c4
 +	BEGIN_RING(evo, 0, NV50_EVO_CRTC(crtc->index, SCALE_CENTER_OFFSET), 1);
 +	OUT_RING  (evo, NV50_EVO_CRTC_SCALE_CENTER_OFFSET_VAL(0, 0));
 +
-+	crtc->set_dither(crtc, false);
++	crtc->set_dither(crtc, connector->use_dithering, false);
 +	crtc->set_scale(crtc, connector->scaling_mode, false);
 +
 +	FIRE_RING (evo);
@@ -29020,10 +28675,10 @@ index 0000000..f07b92a
 +
 diff --git a/drivers/gpu/drm/nouveau/nv50_display.c b/drivers/gpu/drm/nouveau/nv50_display.c
 new file mode 100644
-index 0000000..2ab1685
+index 0000000..ee3905d
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nv50_display.c
-@@ -0,0 +1,844 @@
+@@ -0,0 +1,849 @@
 +/*
 + * Copyright (C) 2008 Maarten Maathuis.
 + * All Rights Reserved.
@@ -29508,19 +29163,21 @@ index 0000000..2ab1685
 +			continue;
 +		}
 +
-+		connector[entry->i2c_index] |= (1 << entry->type);
++		connector[entry->connector] |= (1 << entry->type);
 +	}
 +
-+	/* Look at which encoders are attached to each i2c bus to
-+	 * determine which connectors are present.
++	/* It appears that DCB 3.0+ VBIOS has a connector table, however,
++	 * I'm not 100% certain how to decode it correctly yet so just
++	 * look at what encoders are present on each connector index and
++	 * attempt to derive the connector type from that.
 +	 */
 +	for (i = 0 ; i < dcb->entries; i++) {
 +		struct dcb_entry *entry = &dcb->entry[i];
 +		uint16_t encoders;
 +		int type;
 +
-+		encoders = connector[entry->i2c_index];
-+		connector[entry->i2c_index] = 0;
++		encoders = connector[entry->connector];
++		connector[entry->connector] = 0;
 +
 +		/* already done? */
 +		if (!encoders)
@@ -29543,7 +29200,7 @@ index 0000000..2ab1685
 +		if (type == DRM_MODE_CONNECTOR_Unknown)
 +			continue;
 +
-+		nv50_connector_create(dev, entry->i2c_index, type);
++		nouveau_connector_create(dev, entry->i2c_index, type);
 +	}
 +
 +	ret = nv50_display_init(dev);
@@ -29678,14 +29335,17 @@ index 0000000..2ab1685
 +static void
 +nv50_display_vblank_handler(struct drm_device *dev, uint32_t intr)
 +{
++	intr &= NV50_PDISPLAY_INTR_1_VBLANK_CRTC;
++
 +	if (intr & NV50_PDISPLAY_INTR_1_VBLANK_CRTC_0)
 +		nv50_display_vblank_crtc_handler(dev, 0);
 +
 +	if (intr & NV50_PDISPLAY_INTR_1_VBLANK_CRTC_1)
 +		nv50_display_vblank_crtc_handler(dev, 1);
 +
-+	nv_wr32(dev, NV50_PDISPLAY_INTR_1,
-+		     intr & NV50_PDISPLAY_INTR_1_VBLANK_CRTC);
++	nv_wr32(dev, NV50_PDISPLAY_INTR_EN, nv_rd32(dev,
++		     NV50_PDISPLAY_INTR_EN) & ~intr);
++	nv_wr32(dev, NV50_PDISPLAY_INTR_1, intr);
 +}
 +
 +static void
@@ -30784,10 +30444,10 @@ index 0000000..071a2f3
 +
 diff --git a/drivers/gpu/drm/nouveau/nv50_graph.c b/drivers/gpu/drm/nouveau/nv50_graph.c
 new file mode 100644
-index 0000000..91c36e8
+index 0000000..72db3cf
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nv50_graph.c
-@@ -0,0 +1,432 @@
+@@ -0,0 +1,437 @@
 +/*
 + * Copyright (C) 2007 Ben Skeggs.
 + * All Rights Reserved.
@@ -30909,13 +30569,16 @@ index 0000000..91c36e8
 +		break;
 +	default:
 +		NV_ERROR(dev, "no ctxprog for chipset NV%02x\n", dev_priv->chipset);
-+		return -EINVAL;
++		dev_priv->engine.graph.accel_blocked = true;
++		break;
 +	}
 +
-+	nv_wr32(dev, NV40_PGRAPH_CTXCTL_UCODE_INDEX, 0);
-+	while (*voodoo != ~0) {
-+		nv_wr32(dev, NV40_PGRAPH_CTXCTL_UCODE_DATA, *voodoo);
-+		voodoo++;
++	if (voodoo) {
++		nv_wr32(dev, NV40_PGRAPH_CTXCTL_UCODE_INDEX, 0);
++		while (*voodoo != ~0) {
++			nv_wr32(dev, NV40_PGRAPH_CTXCTL_UCODE_DATA, *voodoo);
++			voodoo++;
++		}
 +	}
 +
 +	nv_wr32(dev, 0x400320, 4);
@@ -31029,13 +30692,15 @@ index 0000000..91c36e8
 +
 +	dev_priv->engine.instmem.prepare_access(dev, true);
 +
-+	pos = 0;
-+	while (*ctxvals) {
-+		int cnt = *ctxvals++;
-+
-+		while (cnt--)
-+			nv_wo32(dev, ctx, pos++, *ctxvals);
-+		ctxvals++;
++	if (ctxvals) {
++		pos = 0;
++		while (*ctxvals) {
++			int cnt = *ctxvals++;
++
++			while (cnt--)
++				nv_wo32(dev, ctx, pos++, *ctxvals);
++			ctxvals++;
++		}
 +	}
 +
 +	nv_wo32(dev, ctx, 0x00000/4, chan->ramin->instance >> 12);
@@ -54063,10 +53728,10 @@ index 0000000..e0a9c3f
 +}
 diff --git a/drivers/gpu/drm/nouveau/nv50_sor.c b/drivers/gpu/drm/nouveau/nv50_sor.c
 new file mode 100644
-index 0000000..c8f1fe9
+index 0000000..af66324
 --- /dev/null
 +++ b/drivers/gpu/drm/nouveau/nv50_sor.c
-@@ -0,0 +1,268 @@
+@@ -0,0 +1,264 @@
 +/*
 + * Copyright (C) 2008 Maarten Maathuis.
 + * All Rights Reserved.
@@ -54103,8 +53768,6 @@ index 0000000..c8f1fe9
 +#include "nouveau_crtc.h"
 +#include "nv50_display.h"
 +
-+extern int nouveau_duallink;
-+
 +static void
 +nv50_sor_disconnect(struct nouveau_encoder *encoder)
 +{
@@ -54325,8 +53988,6 @@ index 0000000..c8f1fe9
 +	encoder->dcb = entry;
 +	encoder->or = ffs(entry->or) - 1;
 +
-+	encoder->dual_link = nouveau_duallink;
-+
 +	drm_encoder_init(dev, &encoder->base, &nv50_sor_encoder_funcs, type);
 +	drm_encoder_helper_add(&encoder->base, &nv50_sor_helper_funcs);
 +


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.1687
retrieving revision 1.1688
diff -u -p -r1.1687 -r1.1688
--- kernel.spec	4 Aug 2009 01:47:32 -0000	1.1687
+++ kernel.spec	4 Aug 2009 06:46:47 -0000	1.1688
@@ -1944,6 +1944,9 @@ fi
 # and build.
 
 %changelog
+* Tue Aug 04 2009 Ben Skeggs <bskeggs at redhat.com>
+- nouveau: more code share between nv50/<nv50 kms, bug fixes
+
 * Tue Aug 04 2009 Dave Airlie <airlied at redhat.com>
 - update VGA arb patches again
 




More information about the fedora-extras-commits mailing list