rpms/kernel/devel drm-radeon-pre-r300-no-kms.patch, NONE, 1.1 config-generic, 1.157, 1.158 drm-modesetting-radeon.patch, 1.9, 1.10 kernel.spec, 1.880, 1.881 linux-2.6-drm-add-i915-radeon-mdt.patch, 1.1, NONE linux-2.6-drm-fix-master-perm.patch, 1.1, NONE linux-2.6-drm-git-mm.patch, 1.4, NONE linux-2.6-drm-i915-modeset.patch, 1.9, NONE linux-2.6-drm-modesetting-oops-fixes.patch, 1.1, NONE linux-2.6-drm-radeon-fix-oops.patch, 1.1, NONE linux-2.6-drm-radeon-fix-oops2.patch, 1.1, NONE linux-2.6-drm-radeon-module-device-table.patch, 1.1, NONE

Dave Airlie (airlied) fedora-extras-commits at redhat.com
Thu Aug 14 05:40:59 UTC 2008


Author: airlied

Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv3933

Modified Files:
	config-generic drm-modesetting-radeon.patch kernel.spec 
Added Files:
	drm-radeon-pre-r300-no-kms.patch 
Removed Files:
	linux-2.6-drm-add-i915-radeon-mdt.patch 
	linux-2.6-drm-fix-master-perm.patch linux-2.6-drm-git-mm.patch 
	linux-2.6-drm-i915-modeset.patch 
	linux-2.6-drm-modesetting-oops-fixes.patch 
	linux-2.6-drm-radeon-fix-oops.patch 
	linux-2.6-drm-radeon-fix-oops2.patch 
	linux-2.6-drm-radeon-module-device-table.patch 
Log Message:
* Thu Aug 14 2008 Dave Airlie <airlied at redhat.com>
- Update radeon modesetting code - include text cli option
- support r300 cards and up - could in theory support r100/r200


drm-radeon-pre-r300-no-kms.patch:

--- NEW FILE drm-radeon-pre-r300-no-kms.patch ---
diff --git a/drivers/gpu/drm/drm_stub.c b/drivers/gpu/drm/drm_stub.c
index 95b7cfa..694fc43 100644
--- a/drivers/gpu/drm/drm_stub.c
+++ b/drivers/gpu/drm/drm_stub.c
@@ -473,3 +473,4 @@ int drm_put_minor(struct drm_minor **minor_p)
 	*minor_p = NULL;
 	return 0;
 }
+EXPORT_SYMBOL(drm_put_minor);
diff --git a/drivers/gpu/drm/radeon/radeon_cp.c b/drivers/gpu/drm/radeon/radeon_cp.c
index dfc299a..cc3748f 100644
--- a/drivers/gpu/drm/radeon/radeon_cp.c
+++ b/drivers/gpu/drm/radeon/radeon_cp.c
@@ -2424,6 +2424,8 @@ int radeon_driver_load(struct drm_device *dev, unsigned long flags)
 	dev->dev_private = (void *)dev_priv;
 	dev_priv->flags = flags;
 
+	dev_priv->chip_family = flags & RADEON_FAMILY_MASK;
+
 	switch (flags & RADEON_FAMILY_MASK) {
 	case CHIP_R100:
 	case CHIP_RV200:
@@ -2443,15 +2445,20 @@ int radeon_driver_load(struct drm_device *dev, unsigned long flags)
 		break;
 	}
 
-	dev_priv->chip_family = flags & RADEON_FAMILY_MASK;
+	/* FEDORA HACKS - don't enable modesetting on pre-r300
+ 	 * until we have a mesa driver in place
+ 	 */
+	if (dev_priv->chip_family <= CHIP_RV280) {
+		dev->driver->driver_features &= ~DRIVER_MODESET;
+		drm_put_minor(&dev->control);
+	}
+
 	if (drm_device_is_agp(dev))
 		dev_priv->flags |= RADEON_IS_AGP;
 	else if (drm_device_is_pcie(dev))
 		dev_priv->flags |= RADEON_IS_PCIE;
 	else
 		dev_priv->flags |= RADEON_IS_PCI;
-
-
 	    
 	DRM_DEBUG("%s card detected\n",
 		  ((dev_priv->flags & RADEON_IS_AGP) ? "AGP" : (((dev_priv->flags & RADEON_IS_PCIE) ? "PCIE" : "PCI"))));


Index: config-generic
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/config-generic,v
retrieving revision 1.157
retrieving revision 1.158
diff -u -r1.157 -r1.158
--- config-generic	13 Aug 2008 20:28:28 -0000	1.157
+++ config-generic	14 Aug 2008 05:40:29 -0000	1.158
@@ -2094,6 +2094,7 @@
 CONFIG_DRM_TDFX=m
 CONFIG_DRM_R128=m
 CONFIG_DRM_RADEON=m
+CONFIG_DRM_RADEON_KMS=y
 CONFIG_DRM_I810=m
 CONFIG_DRM_I830=m
 CONFIG_DRM_MGA=m

drm-modesetting-radeon.patch:

View full diff with command:
/usr/bin/cvs -f diff  -kk -u -N -r 1.9 -r 1.10 drm-modesetting-radeon.patch
Index: drm-modesetting-radeon.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/drm-modesetting-radeon.patch,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- drm-modesetting-radeon.patch	8 Aug 2008 04:53:49 -0000	1.9
+++ drm-modesetting-radeon.patch	14 Aug 2008 05:40:29 -0000	1.10
@@ -1,3 +1,22 @@
+diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig
+index 610d6fd..649757f 100644
+--- a/drivers/gpu/drm/Kconfig
++++ b/drivers/gpu/drm/Kconfig
+@@ -41,6 +41,14 @@ config DRM_RADEON
+ 
+ 	  If M is selected, the module will be called radeon.
+ 
++config DRM_RADEON_KMS
++	bool "Enable modesetting on radeon by default"
++	depends on DRM_RADEON
++	help
++	Choose this option if you want kernel modesetting enabled by default,
++	and you have a new enough userspace to support this. Running old
++	userspaces with this enabled will cause pain.
++
+ config DRM_I810
+ 	tristate "Intel I810"
+ 	depends on DRM && AGP && AGP_INTEL
 diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile
 index e9f9a97..48567a9 100644
 --- a/drivers/gpu/drm/Makefile
@@ -3369,7 +3388,7 @@
 +EXPORT_SYMBOL(drm_bo_pfn_prot);
 +
 diff --git a/drivers/gpu/drm/drm_bufs.c b/drivers/gpu/drm/drm_bufs.c
-index bde64b8..822f24a 100644
+index bde64b8..0442859 100644
 --- a/drivers/gpu/drm/drm_bufs.c
 +++ b/drivers/gpu/drm/drm_bufs.c
 @@ -54,9 +54,9 @@ static struct drm_map_list *drm_find_matching_map(struct drm_device *dev,
@@ -3459,6 +3478,35 @@
  
  int drm_rmmap(struct drm_device *dev, drm_local_map_t *map)
  {
+@@ -1511,6 +1524,7 @@ int drm_mapbufs(struct drm_device *dev, void *data,
+ 	dev->buf_use++;		/* Can't allocate more after this call */
+ 	spin_unlock(&dev->count_lock);
+ 
++	DRM_DEBUG("dma buf count %d, req count %d\n", request->count, dma->buf_count);
+ 	if (request->count >= dma->buf_count) {
+ 		if ((drm_core_has_AGP(dev) && (dma->flags & _DRM_DMA_USE_AGP))
+ 		    || (drm_core_check_feature(dev, DRIVER_SG)
+@@ -1521,10 +1535,12 @@ int drm_mapbufs(struct drm_device *dev, void *data,
+ 			unsigned long token = dev->agp_buffer_token;
+ 
+ 			if (!map) {
++				DRM_DEBUG("No map\n");
+ 				retcode = -EINVAL;
+ 				goto done;
+ 			}
+ 			down_write(&current->mm->mmap_sem);
++			DRM_DEBUG("%x %d\n", token, map->size);
+ 			virtual = do_mmap(file_priv->filp, 0, map->size,
+ 					  PROT_READ | PROT_WRITE,
+ 					  MAP_SHARED,
+@@ -1538,6 +1554,7 @@ int drm_mapbufs(struct drm_device *dev, void *data,
+ 			up_write(&current->mm->mmap_sem);
+ 		}
+ 		if (virtual > -1024UL) {
++			DRM_DEBUG("mmap failed\n");
+ 			/* Real error */
+ 			retcode = (signed long)virtual;
+ 			goto done;
 diff --git a/drivers/gpu/drm/drm_cache.c b/drivers/gpu/drm/drm_cache.c
 new file mode 100644
 index 0000000..0b25c8d
@@ -6701,11 +6749,39 @@
 +EXPORT_SYMBOL(drm_helper_mode_fill_fb_struct);
 +
 +
+diff --git a/drivers/gpu/drm/drm_dma.c b/drivers/gpu/drm/drm_dma.c
+index 7a8e2fb..0b2df71 100644
+--- a/drivers/gpu/drm/drm_dma.c
++++ b/drivers/gpu/drm/drm_dma.c
+@@ -58,6 +58,7 @@ int drm_dma_setup(struct drm_device *dev)
+ 
+ 	return 0;
+ }
++EXPORT_SYMBOL(drm_dma_setup);
+ 
+ /**
+  * Cleanup the DMA resources.
+@@ -120,6 +121,7 @@ void drm_dma_takedown(struct drm_device *dev)
+ 	drm_free(dev->dma, sizeof(*dev->dma), DRM_MEM_DRIVER);
+ 	dev->dma = NULL;
+ }
++EXPORT_SYMBOL(drm_dma_takedown);
+ 
+ /**
+  * Free a buffer.
 diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c
-index 452c2d8..837d2f0 100644
+index 452c2d8..3bab487 100644
 --- a/drivers/gpu/drm/drm_drv.c
 +++ b/drivers/gpu/drm/drm_drv.c
-@@ -74,6 +74,9 @@ static struct drm_ioctl_desc drm_ioctls[] = {
+@@ -48,6 +48,7 @@
+ 
+ #include "drmP.h"
+ #include "drm_core.h"
++#include <linux/console.h>
+ 
+ static int drm_version(struct drm_device *dev, void *data,
+ 		       struct drm_file *file_priv);
+@@ -74,6 +75,9 @@ static struct drm_ioctl_desc drm_ioctls[] = {
  	DRM_IOCTL_DEF(DRM_IOCTL_SET_SAREA_CTX, drm_setsareactx, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY),
  	DRM_IOCTL_DEF(DRM_IOCTL_GET_SAREA_CTX, drm_getsareactx, DRM_AUTH),
  
@@ -6715,7 +6791,7 @@
  	DRM_IOCTL_DEF(DRM_IOCTL_ADD_CTX, drm_addctx, DRM_AUTH|DRM_ROOT_ONLY),
  	DRM_IOCTL_DEF(DRM_IOCTL_RM_CTX, drm_rmctx, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY),
  	DRM_IOCTL_DEF(DRM_IOCTL_MOD_CTX, drm_modctx, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY),
-@@ -117,6 +120,32 @@ static struct drm_ioctl_desc drm_ioctls[] = {
+@@ -117,6 +121,32 @@ static struct drm_ioctl_desc drm_ioctls[] = {
  	DRM_IOCTL_DEF(DRM_IOCTL_WAIT_VBLANK, drm_wait_vblank, 0),
  
  	DRM_IOCTL_DEF(DRM_IOCTL_UPDATE_DRAW, drm_update_drawable_info, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY),
@@ -6748,7 +6824,7 @@
  };
  
  #define DRM_CORE_IOCTL_COUNT	ARRAY_SIZE( drm_ioctls )
-@@ -132,8 +161,6 @@ static struct drm_ioctl_desc drm_ioctls[] = {
+@@ -132,8 +162,6 @@ static struct drm_ioctl_desc drm_ioctls[] = {
   */
  int drm_lastclose(struct drm_device * dev)
  {
@@ -6757,7 +6833,7 @@
  	struct drm_vma_entry *vma, *vma_temp;
  	int i;
  
-@@ -141,15 +168,10 @@ int drm_lastclose(struct drm_device * dev)
+@@ -141,15 +169,10 @@ int drm_lastclose(struct drm_device * dev)
  
  	if (dev->driver->lastclose)
  		dev->driver->lastclose(dev);
@@ -6775,7 +6851,7 @@
  		drm_irq_uninstall(dev);
  
  	mutex_lock(&dev->struct_mutex);
-@@ -158,18 +180,8 @@ int drm_lastclose(struct drm_device * dev)
+@@ -158,18 +181,8 @@ int drm_lastclose(struct drm_device * dev)
  	drm_drawable_free_all(dev);
  	del_timer(&dev->timer);
  
@@ -6795,7 +6871,7 @@
  		struct drm_agp_mem *entry, *tempe;
  
  		/* Remove AGP resources, but leave dev->agp
-@@ -188,7 +200,7 @@ int drm_lastclose(struct drm_device * dev)
+@@ -188,7 +201,7 @@ int drm_lastclose(struct drm_device * dev)
  		dev->agp->acquired = 0;
  		dev->agp->enabled = 0;
  	}
@@ -6804,7 +6880,7 @@
  		drm_sg_cleanup(dev->sg);
  		dev->sg = NULL;
  	}
-@@ -199,13 +211,6 @@ int drm_lastclose(struct drm_device * dev)
+@@ -199,13 +212,6 @@ int drm_lastclose(struct drm_device * dev)
  		drm_free(vma, sizeof(*vma), DRM_MEM_VMAS);
  	}
  
@@ -6818,8 +6894,12 @@
  	if (drm_core_check_feature(dev, DRIVER_DMA_QUEUE) && dev->queuelist) {
  		for (i = 0; i < dev->queue_count; i++) {
  			if (dev->queuelist[i]) {
-@@ -225,11 +230,7 @@ int drm_lastclose(struct drm_device * dev)
- 	if (drm_core_check_feature(dev, DRIVER_HAVE_DMA))
+@@ -222,14 +228,10 @@ int drm_lastclose(struct drm_device * dev)
+ 	}
+ 	dev->queue_count = 0;
+ 
+-	if (drm_core_check_feature(dev, DRIVER_HAVE_DMA))
++	if (drm_core_check_feature(dev, DRIVER_HAVE_DMA) && !drm_core_check_feature(dev, DRIVER_MODESET))
  		drm_dma_takedown(dev);
  
 -	if (dev->lock.hw_lock) {
@@ -6831,7 +6911,18 @@
  	mutex_unlock(&dev->struct_mutex);
  
  	DRM_DEBUG("lastclose completed\n");
-@@ -312,8 +313,11 @@ static void drm_cleanup(struct drm_device * dev)
+@@ -256,6 +258,10 @@ int drm_init(struct drm_driver *driver)
+ 	int i;
+ 
+ 	DRM_DEBUG("\n");
++#ifdef CONFIG_VGA_CONSOLE
++	if (vgacon_text_force())
++		driver->driver_features &= ~DRIVER_MODESET;
++#endif
[...7596 lines suppressed...]
  
@@ -40117,7 +43808,7 @@
  	DRM_DEBUG("pid=%d index=%d start=%d end=%d discard=%d\n",
  		  DRM_CURRENTPID, elts->idx, elts->start, elts->end,
  		  elts->discard);
-@@ -2353,11 +2379,11 @@ static int radeon_cp_indices(struct drm_device *dev, void *data, struct drm_file
+@@ -2353,11 +2382,11 @@ static int radeon_cp_indices(struct drm_device *dev, void *data, struct drm_file
  	prim.prim = elts->prim;
  	prim.offset = 0;	/* offset from start of dma buffers */
  	prim.numverts = RADEON_MAX_VB_VERTS;	/* duh */
@@ -40132,7 +43823,7 @@
  	}
  
  	COMMIT_RING();
-@@ -2468,7 +2494,7 @@ static int radeon_cp_indirect(struct drm_device *dev, void *data, struct drm_fil
+@@ -2468,7 +2497,7 @@ static int radeon_cp_indirect(struct drm_device *dev, void *data, struct drm_fil
  	 */
  	radeon_cp_dispatch_indirect(dev, buf, indirect->start, indirect->end);
  	if (indirect->discard) {
@@ -40141,7 +43832,7 @@
  	}
  
  	COMMIT_RING();
-@@ -2478,7 +2504,8 @@ static int radeon_cp_indirect(struct drm_device *dev, void *data, struct drm_fil
+@@ -2478,7 +2507,8 @@ static int radeon_cp_indirect(struct drm_device *dev, void *data, struct drm_fil
  static int radeon_cp_vertex2(struct drm_device *dev, void *data, struct drm_file *file_priv)
  {
  	drm_radeon_private_t *dev_priv = dev->dev_private;
@@ -40151,7 +43842,7 @@
  	struct drm_device_dma *dma = dev->dma;
  	struct drm_buf *buf;
  	drm_radeon_vertex2_t *vertex = data;
-@@ -2487,6 +2514,8 @@ static int radeon_cp_vertex2(struct drm_device *dev, void *data, struct drm_file
+@@ -2487,6 +2517,8 @@ static int radeon_cp_vertex2(struct drm_device *dev, void *data, struct drm_file
  
  	LOCK_TEST_WITH_RETURN(dev, file_priv);
  
@@ -40160,7 +43851,7 @@
  	DRM_DEBUG("pid=%d index=%d discard=%d\n",
  		  DRM_CURRENTPID, vertex->idx, vertex->discard);
  
-@@ -2547,12 +2576,12 @@ static int radeon_cp_vertex2(struct drm_device *dev, void *data, struct drm_file
+@@ -2547,12 +2579,12 @@ static int radeon_cp_vertex2(struct drm_device *dev, void *data, struct drm_file
  			tclprim.offset = prim.numverts * 64;
  			tclprim.numverts = RADEON_MAX_VB_VERTS;	/* duh */
  
@@ -40175,7 +43866,7 @@
  		}
  
  		if (sarea_priv->nbox == 1)
-@@ -2560,7 +2589,7 @@ static int radeon_cp_vertex2(struct drm_device *dev, void *data, struct drm_file
+@@ -2560,7 +2592,7 @@ static int radeon_cp_vertex2(struct drm_device *dev, void *data, struct drm_file
  	}
  
  	if (vertex->discard) {
@@ -40184,7 +43875,7 @@
  	}
  
  	COMMIT_RING();
-@@ -2849,7 +2878,7 @@ static int radeon_cp_cmdbuf(struct drm_device *dev, void *data, struct drm_file
+@@ -2849,7 +2881,7 @@ static int radeon_cp_cmdbuf(struct drm_device *dev, void *data, struct drm_file
  
  	orig_nbox = cmdbuf->nbox;
  
@@ -40193,7 +43884,7 @@
  		int temp;
  		temp = r300_do_cp_cmdbuf(dev, file_priv, cmdbuf);
  
-@@ -2909,7 +2938,7 @@ static int radeon_cp_cmdbuf(struct drm_device *dev, void *data, struct drm_file
+@@ -2909,7 +2941,7 @@ static int radeon_cp_cmdbuf(struct drm_device *dev, void *data, struct drm_file
  				goto err;
  			}
  
@@ -40202,7 +43893,7 @@
  			break;
  
  		case RADEON_CMD_PACKET3:
-@@ -3020,7 +3049,7 @@ static int radeon_cp_getparam(struct drm_device *dev, void *data, struct drm_fil
+@@ -3020,7 +3052,7 @@ static int radeon_cp_getparam(struct drm_device *dev, void *data, struct drm_fil
  		 */
  	case RADEON_PARAM_SAREA_HANDLE:
  		/* The lock is the first dword in the sarea. */
@@ -40211,7 +43902,17 @@
  		break;
  #endif
  	case RADEON_PARAM_GART_TEX_HANDLE:
-@@ -3064,6 +3093,7 @@ static int radeon_cp_getparam(struct drm_device *dev, void *data, struct drm_fil
+@@ -3048,6 +3080,9 @@ static int radeon_cp_getparam(struct drm_device *dev, void *data, struct drm_fil
+ 	case RADEON_PARAM_NUM_GB_PIPES:
+ 		value = dev_priv->num_gb_pipes;
+ 		break;
++	case RADEON_PARAM_KERNEL_MM:
++		value = dev_priv->mm_enabled;
++		break;
+ 	default:
+ 		DRM_DEBUG("Invalid parameter %d\n", param->param);
+ 		return -EINVAL;
+@@ -3064,6 +3099,7 @@ static int radeon_cp_getparam(struct drm_device *dev, void *data, struct drm_fil
  static int radeon_cp_setparam(struct drm_device *dev, void *data, struct drm_file *file_priv)
  {
  	drm_radeon_private_t *dev_priv = dev->dev_private;
@@ -40219,7 +43920,7 @@
  	drm_radeon_setparam_t *sp = data;
  	struct drm_radeon_driver_file_fields *radeon_priv;
  
-@@ -3078,12 +3108,14 @@ static int radeon_cp_setparam(struct drm_device *dev, void *data, struct drm_fil
+@@ -3078,12 +3114,14 @@ static int radeon_cp_setparam(struct drm_device *dev, void *data, struct drm_fil
  			DRM_DEBUG("color tiling disabled\n");
  			dev_priv->front_pitch_offset &= ~RADEON_DST_TILE_MACRO;
  			dev_priv->back_pitch_offset &= ~RADEON_DST_TILE_MACRO;
@@ -40236,7 +43937,7 @@
  		}
  		break;
  	case RADEON_SETPARAM_PCIGART_LOCATION:
-@@ -3101,6 +3133,11 @@ static int radeon_cp_setparam(struct drm_device *dev, void *data, struct drm_fil
+@@ -3101,6 +3139,11 @@ static int radeon_cp_setparam(struct drm_device *dev, void *data, struct drm_fil
  	case RADEON_SETPARAM_VBLANK_CRTC:
  		return radeon_vblank_crtc_set(dev, sp->value);
  		break;
@@ -40248,7 +43949,7 @@
  	default:
  		DRM_DEBUG("Invalid parameter %d\n", sp->param);
  		return -EINVAL;
-@@ -3129,14 +3166,6 @@ void radeon_driver_preclose(struct drm_device *dev, struct drm_file *file_priv)
+@@ -3129,14 +3172,6 @@ void radeon_driver_preclose(struct drm_device *dev, struct drm_file *file_priv)
  
  void radeon_driver_lastclose(struct drm_device *dev)
  {
@@ -40263,7 +43964,7 @@
  	radeon_do_release(dev);
  }
  
-@@ -3197,7 +3226,19 @@ struct drm_ioctl_desc radeon_ioctls[] = {
+@@ -3197,7 +3232,19 @@ struct drm_ioctl_desc radeon_ioctls[] = {
  	DRM_IOCTL_DEF(DRM_RADEON_IRQ_WAIT, radeon_irq_wait, DRM_AUTH),
  	DRM_IOCTL_DEF(DRM_RADEON_SETPARAM, radeon_cp_setparam, DRM_AUTH),
  	DRM_IOCTL_DEF(DRM_RADEON_SURF_ALLOC, radeon_surface_alloc, DRM_AUTH),
@@ -40395,6 +44096,42 @@
  static void pci_read_bases(struct pci_dev *dev, unsigned int howmany, int rom)
  {
  	unsigned int pos, reg;
+diff --git a/drivers/video/console/vgacon.c b/drivers/video/console/vgacon.c
+index bd1f57b..646c9ec 100644
+--- a/drivers/video/console/vgacon.c
++++ b/drivers/video/console/vgacon.c
+@@ -112,6 +112,23 @@ static int 		vga_video_font_height;
+ static int 		vga_scan_lines		__read_mostly;
+ static unsigned int 	vga_rolled_over;
+ 
++int vgacon_text_mode_force = 0;
++
++bool vgacon_text_force(void)
++{
++	return vgacon_text_mode_force ? true : false;
++}
++EXPORT_SYMBOL(vgacon_text_force);
++
++static int __init text_mode(char *str)
++{
++	vgacon_text_mode_force = 1;
++	return 1;
++}
++
++/* force text mode - used by kernel modesetting */
++__setup("text", text_mode);
++
+ static int __init no_scroll(char *str)
+ {
+ 	/*
+@@ -125,6 +142,7 @@ static int __init no_scroll(char *str)
+ 
+ __setup("no-scroll", no_scroll);
+ 
++
+ /*
+  * By replacing the four outb_p with two back to back outw, we can reduce
+  * the window of opportunity to see text mislocated to the RHS of the
 diff --git a/include/drm/drm.h b/include/drm/drm.h
 index 38d3c6b..28719eb 100644
 --- a/include/drm/drm.h
@@ -43765,6 +47502,19 @@
 +
 +
  #endif
+diff --git a/include/linux/console.h b/include/linux/console.h
+index 248e6e3..a67a90c 100644
+--- a/include/linux/console.h
++++ b/include/linux/console.h
+@@ -153,4 +153,8 @@ void vcs_remove_sysfs(struct tty_struct *tty);
+ #define VESA_HSYNC_SUSPEND      2
+ #define VESA_POWERDOWN          3
+ 
++#ifdef CONFIG_VGA_CONSOLE
++extern bool vgacon_text_force(void);
++#endif
++
+ #endif /* _LINUX_CONSOLE_H */
 diff --git a/include/linux/mm.h b/include/linux/mm.h
 index 335288b..dca69f9 100644
 --- a/include/linux/mm.h


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.880
retrieving revision 1.881
diff -u -r1.880 -r1.881
--- kernel.spec	14 Aug 2008 01:22:50 -0000	1.880
+++ kernel.spec	14 Aug 2008 05:40:29 -0000	1.881
@@ -604,18 +604,8 @@
 Patch1515: linux-2.6-lirc.patch
 
 # nouveau + drm fixes
-Patch1800: linux-2.6-export-shmem-bits-for-gem.patch
-Patch1801: linux-2.6-drm-git-mm.patch
-Patch1803: nouveau-drm.patch
-Patch1804: nouveau-drm-update.patch
-Patch1806: linux-2.6-drm-i915-modeset.patch
-Patch1807: linux-2.6-drm-radeon-fix-oops.patch
-Patch1808: linux-2.6-drm-radeon-fix-oops2.patch
-Patch1809: linux-2.6-drm-modesetting-oops-fixes.patch
-Patch1810: linux-2.6-drm-fix-master-perm.patch
-
 Patch1811: drm-modesetting-radeon.patch
-Patch1812: linux-2.6-drm-radeon-module-device-table.patch
+Patch1812: drm-radeon-pre-r300-no-kms.patch
 
 # kludge to make ich9 e1000 work
 Patch2000: linux-2.6-e1000-ich9.patch
@@ -1158,16 +1148,7 @@
 
 # Nouveau DRM + drm fixes
 ApplyPatch drm-modesetting-radeon.patch
-ApplyPatch linux-2.6-drm-radeon-module-device-table.patch
-
-#ApplyPatch linux-2.6-drm-git-mm.patch
-#ApplyPatch nouveau-drm.patch
-#ApplyPatch nouveau-drm-update.patch
-#ApplyPatch linux-2.6-drm-i915-modeset.patch
-#ApplyPatch linux-2.6-drm-radeon-fix-oops.patch
-#ApplyPatch linux-2.6-drm-radeon-fix-oops2.patch
-#ApplyPatch linux-2.6-drm-modesetting-oops-fixes.patch
-#ApplyPatch linux-2.6-drm-fix-master-perm.patch
+ApplyPatch drm-radeon-pre-r300-no-kms.patch
 
 # linux1394 git patches
 ApplyPatch linux-2.6-firewire-git-update.patch
@@ -1764,6 +1745,10 @@
 %kernel_variant_files -k vmlinux %{with_kdump} kdump
 
 %changelog
+* Thu Aug 14 2008 Dave Airlie <airlied at redhat.com>
+- Update radeon modesetting code - include text cli option
+- support r300 cards and up - could in theory support r100/r200
+
 * Wed Aug 13 2008 Roland McGrath <roland at redhat.com>
 - enable kernel-doc, include htmldocs
 - utrace kerneldoc typo fixes


--- linux-2.6-drm-add-i915-radeon-mdt.patch DELETED ---


--- linux-2.6-drm-fix-master-perm.patch DELETED ---


--- linux-2.6-drm-git-mm.patch DELETED ---


--- linux-2.6-drm-i915-modeset.patch DELETED ---


--- linux-2.6-drm-modesetting-oops-fixes.patch DELETED ---


--- linux-2.6-drm-radeon-fix-oops.patch DELETED ---


--- linux-2.6-drm-radeon-fix-oops2.patch DELETED ---


--- linux-2.6-drm-radeon-module-device-table.patch DELETED ---




More information about the fedora-extras-commits mailing list