rpms/kernel/devel config-generic, 1.337, 1.338 drm-nouveau.patch, 1.53, 1.54 kernel.spec, 1.1852, 1.1853

Dave Airlie airlied at fedoraproject.org
Fri Nov 27 00:04:23 UTC 2009


Author: airlied

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

Modified Files:
	config-generic drm-nouveau.patch kernel.spec 
Log Message:
* Fri Nov 27 2009 Dave Airlie <airlied at redhat.com> 2.6.32-0.54.rc8.git1
- attempt to put nouveau back - same patch as F-12 should work



Index: config-generic
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/config-generic,v
retrieving revision 1.337
retrieving revision 1.338
diff -u -p -r1.337 -r1.338
--- config-generic	19 Nov 2009 05:51:07 -0000	1.337
+++ config-generic	27 Nov 2009 00:04:21 -0000	1.338
@@ -2301,6 +2301,7 @@ CONFIG_DRM_VIA=m
 CONFIG_DRM_NOUVEAU=m
 CONFIG_DRM_NOUVEAU_KMS=y
 CONFIG_DRM_NOUVEAU_BACKLIGHT=y
+CONFIG_DRM_NOUVEAU_DEBUG=y
 CONFIG_DRM_I2C_CH7006=m
 
 #

drm-nouveau.patch:
 drivers/gpu/drm/Kconfig                     |   56 
 drivers/gpu/drm/Makefile                    |    2 
 drivers/gpu/drm/i2c/Makefile                |    4 
 drivers/gpu/drm/i2c/ch7006_drv.c            |  531 
 drivers/gpu/drm/i2c/ch7006_mode.c           |  473 
 drivers/gpu/drm/i2c/ch7006_priv.h           |  344 
 drivers/gpu/drm/nouveau/Makefile            |   29 
 drivers/gpu/drm/nouveau/nouveau_acpi.c      |  125 
 drivers/gpu/drm/nouveau/nouveau_backlight.c |  155 
 drivers/gpu/drm/nouveau/nouveau_bios.c      | 5734 +++++
 drivers/gpu/drm/nouveau/nouveau_bios.h      |  236 
 drivers/gpu/drm/nouveau/nouveau_bo.c        |  663 
 drivers/gpu/drm/nouveau/nouveau_calc.c      |  626 
 drivers/gpu/drm/nouveau/nouveau_channel.c   |  468 
 drivers/gpu/drm/nouveau/nouveau_connector.c |  811 
 drivers/gpu/drm/nouveau/nouveau_connector.h |   55 
 drivers/gpu/drm/nouveau/nouveau_crtc.h      |   95 
 drivers/gpu/drm/nouveau/nouveau_debugfs.c   |  155 
 drivers/gpu/drm/nouveau/nouveau_display.c   |  115 
 drivers/gpu/drm/nouveau/nouveau_dma.c       |  206 
 drivers/gpu/drm/nouveau/nouveau_dma.h       |  157 
 drivers/gpu/drm/nouveau/nouveau_drv.c       |  413 
 drivers/gpu/drm/nouveau/nouveau_drv.h       | 1288 +
 drivers/gpu/drm/nouveau/nouveau_encoder.h   |   66 
 drivers/gpu/drm/nouveau/nouveau_fb.h        |   47 
 drivers/gpu/drm/nouveau/nouveau_fbcon.c     |  380 
 drivers/gpu/drm/nouveau/nouveau_fbcon.h     |   47 
 drivers/gpu/drm/nouveau/nouveau_fence.c     |  262 
 drivers/gpu/drm/nouveau/nouveau_gem.c       |  981 +
 drivers/gpu/drm/nouveau/nouveau_hw.c        | 1078 +
 drivers/gpu/drm/nouveau/nouveau_hw.h        |  448 
 drivers/gpu/drm/nouveau/nouveau_i2c.c       |  257 
 drivers/gpu/drm/nouveau/nouveau_i2c.h       |   45 
 drivers/gpu/drm/nouveau/nouveau_ioc32.c     |   72 
 drivers/gpu/drm/nouveau/nouveau_irq.c       |  696 
 drivers/gpu/drm/nouveau/nouveau_mem.c       |  585 
 drivers/gpu/drm/nouveau/nouveau_notifier.c  |  196 
 drivers/gpu/drm/nouveau/nouveau_object.c    | 1294 +
 drivers/gpu/drm/nouveau/nouveau_reg.h       |  788 
 drivers/gpu/drm/nouveau/nouveau_sgdma.c     |  321 
 drivers/gpu/drm/nouveau/nouveau_state.c     |  872 
 drivers/gpu/drm/nouveau/nouveau_ttm.c       |  131 
 drivers/gpu/drm/nouveau/nv04_crtc.c         |  992 +
 drivers/gpu/drm/nouveau/nv04_cursor.c       |   70 
 drivers/gpu/drm/nouveau/nv04_dac.c          |  529 
 drivers/gpu/drm/nouveau/nv04_dfp.c          |  621 
 drivers/gpu/drm/nouveau/nv04_display.c      |  293 
 drivers/gpu/drm/nouveau/nv04_fb.c           |   21 
 drivers/gpu/drm/nouveau/nv04_fbcon.c        |  316 
 drivers/gpu/drm/nouveau/nv04_fifo.c         |  271 
 drivers/gpu/drm/nouveau/nv04_graph.c        |  579 
 drivers/gpu/drm/nouveau/nv04_instmem.c      |  210 
 drivers/gpu/drm/nouveau/nv04_mc.c           |   20 
 drivers/gpu/drm/nouveau/nv04_timer.c        |   51 
 drivers/gpu/drm/nouveau/nv04_tv.c           |  305 
 drivers/gpu/drm/nouveau/nv10_fb.c           |   24 
 drivers/gpu/drm/nouveau/nv10_fifo.c         |  260 
 drivers/gpu/drm/nouveau/nv10_graph.c        |  892 
 drivers/gpu/drm/nouveau/nv17_tv.c           |  689 
 drivers/gpu/drm/nouveau/nv17_tv.h           |  156 
 drivers/gpu/drm/nouveau/nv17_tv_modes.c     |  583 
 drivers/gpu/drm/nouveau/nv20_graph.c        |  778 
 drivers/gpu/drm/nouveau/nv40_fb.c           |   62 
 drivers/gpu/drm/nouveau/nv40_fifo.c         |  314 
 drivers/gpu/drm/nouveau/nv40_graph.c        | 2239 ++
 drivers/gpu/drm/nouveau/nv40_mc.c           |   38 
 drivers/gpu/drm/nouveau/nv50_crtc.c         |  788 
 drivers/gpu/drm/nouveau/nv50_cursor.c       |  153 
 drivers/gpu/drm/nouveau/nv50_dac.c          |  304 
 drivers/gpu/drm/nouveau/nv50_display.c      |  902 
 drivers/gpu/drm/nouveau/nv50_display.h      |   46 
 drivers/gpu/drm/nouveau/nv50_evo.h          |  113 
 drivers/gpu/drm/nouveau/nv50_fbcon.c        |  273 
 drivers/gpu/drm/nouveau/nv50_fifo.c         |  494 
 drivers/gpu/drm/nouveau/nv50_graph.c        |  479 
 drivers/gpu/drm/nouveau/nv50_grctx.h        |26832 ++++++++++++++++++++++++++++
 drivers/gpu/drm/nouveau/nv50_instmem.c      |  509 
 drivers/gpu/drm/nouveau/nv50_mc.c           |   40 
 drivers/gpu/drm/nouveau/nv50_sor.c          |  265 
 drivers/gpu/drm/nouveau/nvreg.h             |  535 
 drivers/gpu/drm/ttm/ttm_bo.c                |    4 
 include/drm/Kbuild                          |    1 
 include/drm/i2c/ch7006.h                    |   86 
 include/drm/nouveau_drm.h                   |  220 
 84 files changed, 63664 insertions(+)

View full diff with command:
/usr/bin/cvs -n -f diff -kk -u -p -N -r 1.53 -r 1.54 drm-nouveau.patchIndex: drm-nouveau.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/drm-nouveau.patch,v
retrieving revision 1.53
retrieving revision 1.54
diff -u -p -r1.53 -r1.54
--- drm-nouveau.patch	11 Sep 2009 07:05:05 -0000	1.53
+++ drm-nouveau.patch	27 Nov 2009 00:04:21 -0000	1.54
@@ -1,8 +1,8 @@
 diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig
-index e4d971c..7fe8a4c 100644
+index f831ea1..a2320ac 100644
 --- a/drivers/gpu/drm/Kconfig
 +++ b/drivers/gpu/drm/Kconfig
-@@ -153,3 +153,48 @@ config DRM_SAVAGE
+@@ -154,3 +154,59 @@ config DRM_SAVAGE
  	help
  	  Choose this option if you have a Savage3D/4/SuperSavage/Pro/Twister
  	  chipset. If M is selected the module will be called savage.
@@ -29,6 +29,9 @@ index e4d971c..7fe8a4c 100644
 +	and you have a new enough userspace to support this. Running old
 +	userspaces with this enabled will cause pain.
 +
++	NOTICE: if you plan on using the text based console outside of X, enable
++	FRAMEBUFFER_CONSOLE or else the console will be unusable.
++
 +config DRM_NOUVEAU_BACKLIGHT
 +	bool "Support for backlight control"
 +	depends on DRM_NOUVEAU
@@ -37,6 +40,14 @@ index e4d971c..7fe8a4c 100644
 +	  Say Y here if you want to control the backlight of your display
 +	  (e.g. a laptop panel).
 +
++config DRM_NOUVEAU_DEBUG
++	bool "Build in Nouveau's debugfs support"
++	depends on DRM_NOUVEAU && DEBUG_FS
++	default y
++	help
++	  Say Y here if you want Nouveau to output debugging information
++	  via debugfs.
++
 +menu "I2C encoder or helper chips"
 +     depends on DRM
 +
@@ -61,64 +72,6 @@ index 3c8827a..d22e64b 100644
  obj-$(CONFIG_DRM_VIA)	+=via/
 +obj-$(CONFIG_DRM_NOUVEAU) +=nouveau/
 +obj-y			+= i2c/
-diff --git a/drivers/gpu/drm/drm_bufs.c b/drivers/gpu/drm/drm_bufs.c
-index 6246e3f..436e2fe 100644
---- a/drivers/gpu/drm/drm_bufs.c
-+++ b/drivers/gpu/drm/drm_bufs.c
-@@ -51,38 +51,24 @@ resource_size_t drm_get_resource_len(struct drm_device *dev, unsigned int resour
- 
- EXPORT_SYMBOL(drm_get_resource_len);
- 
--static struct drm_map_list *drm_find_matching_map(struct drm_device *dev,
--						  struct drm_local_map *map)
-+struct drm_map_list *drm_find_matching_map(struct drm_device *dev,
-+					   struct drm_local_map *map)
- {
- 	struct drm_map_list *entry;
- 	list_for_each_entry(entry, &dev->maplist, head) {
--		/*
--		 * Because the kernel-userspace ABI is fixed at a 32-bit offset
--		 * while PCI resources may live above that, we ignore the map
--		 * offset for maps of type _DRM_FRAMEBUFFER or _DRM_REGISTERS.
--		 * It is assumed that each driver will have only one resource of
--		 * each type.
--		 */
- 		if (!entry->map ||
- 		    map->type != entry->map->type ||
- 		    entry->master != dev->primary->master)
- 			continue;
--		switch (map->type) {
--		case _DRM_SHM:
--			if (map->flags != _DRM_CONTAINS_LOCK)
--				break;
--		case _DRM_REGISTERS:
--		case _DRM_FRAME_BUFFER:
--			return entry;
--		default: /* Make gcc happy */
--			;
--		}
--		if (entry->map->offset == map->offset)
-+
-+		if (entry->map->offset == map->offset ||
-+		    (map->type == _DRM_SHM && map->flags & _DRM_CONTAINS_LOCK))
- 			return entry;
- 	}
- 
- 	return NULL;
- }
-+EXPORT_SYMBOL(drm_find_matching_map);
- 
- static int drm_map_handle(struct drm_device *dev, struct drm_hash_item *hash,
- 			  unsigned long user_token, int hashed_handle, int shm)
-@@ -357,7 +343,7 @@ static int drm_addmap_core(struct drm_device * dev, resource_size_t offset,
- 	/* We do it here so that dev->struct_mutex protects the increment */
- 	user_token = (map->type == _DRM_SHM) ? (unsigned long)map->handle :
- 		map->offset;
--	ret = drm_map_handle(dev, &list->hash, user_token, 0,
-+	ret = drm_map_handle(dev, &list->hash, user_token, 1,
- 			     (map->type == _DRM_SHM));
- 	if (ret) {
- 		if (map->type == _DRM_REGISTERS)
 diff --git a/drivers/gpu/drm/i2c/Makefile b/drivers/gpu/drm/i2c/Makefile
 new file mode 100644
 index 0000000..6d2abaf
@@ -131,10 +84,10 @@ index 0000000..6d2abaf
 +obj-$(CONFIG_DRM_I2C_CH7006) += ch7006.o
 diff --git a/drivers/gpu/drm/i2c/ch7006_drv.c b/drivers/gpu/drm/i2c/ch7006_drv.c
 new file mode 100644
-index 0000000..0a3f7a0
+index 0000000..9422a74
 --- /dev/null
 +++ b/drivers/gpu/drm/i2c/ch7006_drv.c
-@@ -0,0 +1,532 @@
+@@ -0,0 +1,531 @@
 +/*
 + * Copyright (C) 2009 Francisco Jerez.
 + * All Rights Reserved.
@@ -350,12 +303,11 @@ index 0000000..0a3f7a0
 +		priv->subconnector = DRM_MODE_SUBCONNECTOR_Unknown;
 +
 +	drm_connector_property_set_value(connector,
-+					 encoder->dev->mode_config.tv_subconnector_property,
-+					 priv->subconnector);
++			encoder->dev->mode_config.tv_subconnector_property,
++							priv->subconnector);
 +
-+	return priv->subconnector?
-+		connector_status_connected
-+		: connector_status_disconnected;
++	return priv->subconnector ? connector_status_connected :
++					connector_status_disconnected;
 +}
 +
 +static int ch7006_encoder_get_modes(struct drm_encoder *encoder,
@@ -371,7 +323,7 @@ index 0000000..0a3f7a0
 +			continue;
 +
 +		drm_mode_probed_add(connector,
-+				    drm_mode_duplicate(encoder->dev, &mode->mode));
++				drm_mode_duplicate(encoder->dev, &mode->mode));
 +
 +		n++;
 +	}
@@ -644,11 +596,11 @@ index 0000000..0a3f7a0
 +	drm_i2c_encoder_unregister(&ch7006_driver);
 +}
 +
-+int ch7006_debug = 0;
++int ch7006_debug;
 +module_param_named(debug, ch7006_debug, int, 0600);
 +MODULE_PARM_DESC(debug, "Enable debug output.");
 +
-+char *ch7006_tv_norm = NULL;
++char *ch7006_tv_norm;
 +module_param_named(tv_norm, ch7006_tv_norm, charp, 0600);
 +MODULE_PARM_DESC(tv_norm, "Default TV norm.\n"
 +		 "\t\tSupported: PAL, PAL-M, PAL-N, PAL-Nc, PAL-60, NTSC-M, NTSC-J.\n"
@@ -669,7 +621,7 @@ index 0000000..0a3f7a0
 +module_exit(ch7006_exit);
 diff --git a/drivers/gpu/drm/i2c/ch7006_mode.c b/drivers/gpu/drm/i2c/ch7006_mode.c
 new file mode 100644
-index 0000000..7ffe0bd
+index 0000000..87f5445
 --- /dev/null
 +++ b/drivers/gpu/drm/i2c/ch7006_mode.c
 @@ -0,0 +1,473 @@
@@ -971,8 +923,8 @@ index 0000000..7ffe0bd
 +	uint8_t *power = &priv->state.regs[CH7006_POWER];
 +	int subconnector;
 +
-+	subconnector = priv->select_subconnector?
-+		priv->select_subconnector : priv->subconnector;
++	subconnector = priv->select_subconnector ? priv->select_subconnector :
++							priv->subconnector;
 +
 +	*power = CH7006_POWER_RESET;
 +
@@ -1148,10 +1100,10 @@ index 0000000..7ffe0bd
 +}
 diff --git a/drivers/gpu/drm/i2c/ch7006_priv.h b/drivers/gpu/drm/i2c/ch7006_priv.h
 new file mode 100644
-index 0000000..576bbea
+index 0000000..b06d3d9
 --- /dev/null
 +++ b/drivers/gpu/drm/i2c/ch7006_priv.h
-@@ -0,0 +1,340 @@
+@@ -0,0 +1,344 @@
 +/*
 + * Copyright (C) 2009 Francisco Jerez.
 + * All Rights Reserved.
@@ -1252,7 +1204,8 @@ index 0000000..576bbea
 +	int last_dpms;
 +};
 +
-+#define to_ch7006_priv(x) ((struct ch7006_priv *)to_encoder_slave(x)->slave_priv)
[...19237 lines suppressed...]
-+	struct nouveau_encoder *encoder = nouveau_encoder(drm_encoder);
++	struct nouveau_encoder *nv_encoder = nouveau_encoder(encoder);
 +	struct nouveau_connector *connector;
 +
-+	NV_DEBUG(drm_encoder->dev, "or %d\n", encoder->or);
++	NV_DEBUG(encoder->dev, "or %d\n", nv_encoder->or);
 +
-+	connector = nouveau_encoder_connector_get(encoder);
++	connector = nouveau_encoder_connector_get(nv_encoder);
 +	if (!connector) {
-+		NV_ERROR(drm_encoder->dev, "Encoder has no connector\n");
++		NV_ERROR(encoder->dev, "Encoder has no connector\n");
 +		return false;
 +	}
 +
@@ -57540,34 +63158,40 @@ index 0000000..45b0ff7
 +	return true;
 +}
 +
-+static void nv50_sor_prepare(struct drm_encoder *drm_encoder)
++static void
++nv50_sor_prepare(struct drm_encoder *encoder)
 +{
 +}
 +
-+static void nv50_sor_commit(struct drm_encoder *drm_encoder)
++static void
++nv50_sor_commit(struct drm_encoder *encoder)
 +{
 +}
 +
-+static void nv50_sor_mode_set(struct drm_encoder *drm_encoder,
-+			      struct drm_display_mode *mode,
-+			      struct drm_display_mode *adjusted_mode)
++static void
++nv50_sor_mode_set(struct drm_encoder *encoder, struct drm_display_mode *mode,
++		  struct drm_display_mode *adjusted_mode)
 +{
-+	struct drm_nouveau_private *dev_priv = drm_encoder->dev->dev_private;
++	struct drm_nouveau_private *dev_priv = encoder->dev->dev_private;
 +	struct nouveau_channel *evo = dev_priv->evo;
-+	struct nouveau_encoder *encoder = nouveau_encoder(drm_encoder);
-+	struct drm_device *dev = drm_encoder->dev;
-+	struct nouveau_crtc *crtc = nouveau_crtc(drm_encoder->crtc);
++	struct nouveau_encoder *nv_encoder = nouveau_encoder(encoder);
++	struct drm_device *dev = encoder->dev;
++	struct nouveau_crtc *crtc = nouveau_crtc(encoder->crtc);
 +	uint32_t mode_ctl = 0;
 +	int ret;
 +
-+	NV_DEBUG(dev, "or %d\n", encoder->or);
++	NV_DEBUG(dev, "or %d\n", nv_encoder->or);
 +
-+	nv50_sor_dpms(drm_encoder, DRM_MODE_DPMS_ON);
++	nv50_sor_dpms(encoder, DRM_MODE_DPMS_ON);
 +
-+	if (to_drm_encoder(encoder)->encoder_type != DRM_MODE_ENCODER_LVDS) {
++	switch (nv_encoder->dcb->type) {
++	case OUTPUT_TMDS:
 +		mode_ctl |= NV50_EVO_SOR_MODE_CTRL_TMDS;
 +		if (adjusted_mode->clock > 165000)
 +			mode_ctl |= NV50_EVO_SOR_MODE_CTRL_TMDS_DUAL_LINK;
++		break;
++	default:
++		break;
 +	}
 +
 +	if (crtc->index == 1)
@@ -57586,8 +63210,8 @@ index 0000000..45b0ff7
 +		NV_ERROR(dev, "no space while connecting SOR\n");
 +		return;
 +	}
-+	BEGIN_RING(evo, 0, NV50_EVO_SOR(encoder->or, MODE_CTRL), 1);
-+	OUT_RING  (evo, mode_ctl);
++	BEGIN_RING(evo, 0, NV50_EVO_SOR(nv_encoder->or, MODE_CTRL), 1);
++	OUT_RING(evo, mode_ctl);
 +}
 +
 +static const struct drm_encoder_helper_funcs nv50_sor_helper_funcs = {
@@ -57601,27 +63225,30 @@ index 0000000..45b0ff7
 +	.detect = NULL
 +};
 +
-+static void nv50_sor_destroy(struct drm_encoder *drm_encoder)
++static void
++nv50_sor_destroy(struct drm_encoder *encoder)
 +{
-+	struct nouveau_encoder *encoder = nouveau_encoder(drm_encoder);
-+
-+	NV_DEBUG(drm_encoder->dev, "\n");
++	struct nouveau_encoder *nv_encoder = nouveau_encoder(encoder);
 +
-+	if (!drm_encoder)
++	if (!encoder)
 +		return;
 +
-+	drm_encoder_cleanup(to_drm_encoder(encoder));
++	NV_DEBUG(encoder->dev, "\n");
++
++	drm_encoder_cleanup(encoder);
 +
-+	kfree(encoder);
++	kfree(nv_encoder);
 +}
 +
 +static const struct drm_encoder_funcs nv50_sor_encoder_funcs = {
 +	.destroy = nv50_sor_destroy,
 +};
 +
-+int nv50_sor_create(struct drm_device *dev, struct dcb_entry *entry)
++int
++nv50_sor_create(struct drm_device *dev, struct dcb_entry *entry)
 +{
-+	struct nouveau_encoder *encoder = NULL;
++	struct nouveau_encoder *nv_encoder = NULL;
++	struct drm_encoder *encoder;
 +	bool dum;
 +	int type;
 +
@@ -57649,20 +63276,21 @@ index 0000000..45b0ff7
 +		return -EINVAL;
 +	}
 +
-+	encoder = kzalloc(sizeof(*encoder), GFP_KERNEL);
-+	if (!encoder)
++	nv_encoder = kzalloc(sizeof(*nv_encoder), GFP_KERNEL);
++	if (!nv_encoder)
 +		return -ENOMEM;
++	encoder = to_drm_encoder(nv_encoder);
 +
-+	encoder->dcb = entry;
-+	encoder->or = ffs(entry->or) - 1;
++	nv_encoder->dcb = entry;
++	nv_encoder->or = ffs(entry->or) - 1;
 +
-+	encoder->disconnect = nv50_sor_disconnect;
++	nv_encoder->disconnect = nv50_sor_disconnect;
 +
-+	drm_encoder_init(dev, to_drm_encoder(encoder), &nv50_sor_encoder_funcs, type);
-+	drm_encoder_helper_add(to_drm_encoder(encoder), &nv50_sor_helper_funcs);
++	drm_encoder_init(dev, encoder, &nv50_sor_encoder_funcs, type);
++	drm_encoder_helper_add(encoder, &nv50_sor_helper_funcs);
 +
-+	to_drm_encoder(encoder)->possible_crtcs = entry->heads;
-+	to_drm_encoder(encoder)->possible_clones = 0;
++	encoder->possible_crtcs = entry->heads;
++	encoder->possible_clones = 0;
 +
 +	return 0;
 +}
@@ -58251,19 +63879,6 @@ index b940fdf..cfa6af4 100644
  unifdef-y += savage_drm.h
  unifdef-y += via_drm.h
 +unifdef-y += nouveau_drm.h
-diff --git a/include/drm/drmP.h b/include/drm/drmP.h
-index eeefb63..1345c39 100644
---- a/include/drm/drmP.h
-+++ b/include/drm/drmP.h
-@@ -1240,6 +1240,8 @@ extern void drm_idlelock_release(struct drm_lock_data *lock_data);
- extern int drm_i_have_hw_lock(struct drm_device *dev, struct drm_file *file_priv);
- 
- 				/* Buffer management support (drm_bufs.h) */
-+extern struct drm_map_list *drm_find_matching_map(struct drm_device *dev,
-+						  drm_local_map_t *map);
- extern int drm_addbufs_agp(struct drm_device *dev, struct drm_buf_desc * request);
- extern int drm_addbufs_pci(struct drm_device *dev, struct drm_buf_desc * request);
- extern int drm_addmap(struct drm_device *dev, resource_size_t offset,
 diff --git a/include/drm/i2c/ch7006.h b/include/drm/i2c/ch7006.h
 new file mode 100644
 index 0000000..8390b43
@@ -58358,10 +63973,10 @@ index 0000000..8390b43
 +#endif
 diff --git a/include/drm/nouveau_drm.h b/include/drm/nouveau_drm.h
 new file mode 100644
-index 0000000..2050357
+index 0000000..1e67c44
 --- /dev/null
 +++ b/include/drm/nouveau_drm.h
-@@ -0,0 +1,216 @@
+@@ -0,0 +1,220 @@
 +/*
 + * Copyright 2005 Stephane Marchesin.
 + * All Rights Reserved.
@@ -58519,6 +64134,9 @@ index 0000000..2050357
 +	uint64_t relocs;
 +	uint32_t suffix0;
 +	uint32_t suffix1;
++	/* below only accessed for CALL2 */
++	uint64_t vram_available;
++	uint64_t gart_available;
 +};
 +
 +struct drm_nouveau_gem_pin {
@@ -58576,5 +64194,6 @@ index 0000000..2050357
 +#define DRM_NOUVEAU_GEM_CPU_PREP       0x45
 +#define DRM_NOUVEAU_GEM_CPU_FINI       0x46
 +#define DRM_NOUVEAU_GEM_INFO           0x47
++#define DRM_NOUVEAU_GEM_PUSHBUF_CALL2  0x48
 +
 +#endif /* __NOUVEAU_DRM_H__ */


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.1852
retrieving revision 1.1853
diff -u -p -r1.1852 -r1.1853
--- kernel.spec	23 Nov 2009 18:52:23 -0000	1.1852
+++ kernel.spec	27 Nov 2009 00:04:22 -0000	1.1853
@@ -1305,7 +1305,7 @@ ApplyPatch hdpvr-ir-enable.patch
 ApplyPatch linux-2.6-e1000-ich9.patch
 
 # Nouveau DRM + drm fixes
-#ApplyPatch drm-nouveau.patch
+ApplyPatch drm-nouveau.patch
 # pm broken on my thinkpad t60p - airlied
 #ApplyPatch drm-radeon-pm.patch
 #ApplyPatch drm-i915-resume-force-mode.patch
@@ -1997,6 +1997,9 @@ fi
 # ##############################################################
 
 %changelog
+* Fri Nov 27 2009 Dave Airlie <airlied at redhat.com> 2.6.32-0.54.rc8.git1
+- attempt to put nouveau back - same patch as F-12 should work
+
 * Mon Nov 23 2009 Roland McGrath <roland at redhat.com>
 - Install vmlinux.id file in kernel-devel rpm.
 




More information about the scm-commits mailing list