rpms/kernel/F-12 drm-upgrayedd.patch, NONE, 1.1 kernel.spec, 1.1973, 1.1974 drm-intel-pm.patch, 1.5, NONE drm-nouveau.patch, 1.74, NONE drm-page-flip.patch, 1.10, NONE drm-radeon-dp-support.patch, 1.1, NONE drm-radeon-fixes.patch, 1.3, NONE

Dave Airlie airlied at fedoraproject.org
Mon Jan 11 23:43:08 UTC 2010


Author: airlied

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

Modified Files:
	kernel.spec 
Added Files:
	drm-upgrayedd.patch 
Removed Files:
	drm-intel-pm.patch drm-nouveau.patch drm-page-flip.patch 
	drm-radeon-dp-support.patch drm-radeon-fixes.patch 
Log Message:
* Mon Jan 11 2010 Dave Airlie <airlied at redhat.com> 2.6.32.3-14
- drm-upgrayedd.patch: rebase to present 2.6.33 (drm-linus)
- nouveau TODO - comment out no-tv-hp for now, leave patch
- we can readd if all the upstream goodness didn't fix it


drm-upgrayedd.patch:
 b/drivers/char/agp/Kconfig                        |    3 
 b/drivers/char/agp/amd64-agp.c                    |    9 
 b/drivers/char/agp/frontend.c                     |   28 
 b/drivers/char/agp/intel-agp.c                    |  103 
 b/drivers/char/agp/uninorth-agp.c                 |   77 
 b/drivers/gpu/drm/Makefile                        |    5 
 b/drivers/gpu/drm/ati_pcigart.c                   |   10 
 b/drivers/gpu/drm/drm_bufs.c                      |    4 
 b/drivers/gpu/drm/drm_crtc.c                      |  181 
 b/drivers/gpu/drm/drm_crtc_helper.c               |   28 
 b/drivers/gpu/drm/drm_dp_i2c_helper.c             |  209 
 b/drivers/gpu/drm/drm_drv.c                       |   55 
 b/drivers/gpu/drm/drm_edid.c                      |  332 -
 b/drivers/gpu/drm/drm_fb_helper.c                 |   34 
 b/drivers/gpu/drm/drm_fops.c                      |  112 
 b/drivers/gpu/drm/drm_ioc32.c                     |   89 
 b/drivers/gpu/drm/drm_irq.c                       |  101 
 b/drivers/gpu/drm/drm_mm.c                        |  112 
 b/drivers/gpu/drm/drm_modes.c                     |   28 
 b/drivers/gpu/drm/drm_pci.c                       |    8 
 b/drivers/gpu/drm/drm_stub.c                      |   15 
 b/drivers/gpu/drm/i2c/Makefile                    |    4 
 b/drivers/gpu/drm/i2c/ch7006_drv.c                |  536 +
 b/drivers/gpu/drm/i2c/ch7006_mode.c               |  468 +
 b/drivers/gpu/drm/i2c/ch7006_priv.h               |  344 +
 b/drivers/gpu/drm/i810/i810_dma.c                 |    2 
 b/drivers/gpu/drm/i810/i810_drv.c                 |    2 
 b/drivers/gpu/drm/i830/i830_dma.c                 |    2 
 b/drivers/gpu/drm/i830/i830_drv.c                 |    2 
 b/drivers/gpu/drm/i915/Makefile                   |    2 
 b/drivers/gpu/drm/i915/dvo_ch7017.c               |    9 
 b/drivers/gpu/drm/i915/dvo_ch7xxx.c               |   16 
 b/drivers/gpu/drm/i915/dvo_ivch.c                 |   37 
 b/drivers/gpu/drm/i915/dvo_sil164.c               |   20 
 b/drivers/gpu/drm/i915/dvo_tfp410.c               |   34 
 b/drivers/gpu/drm/i915/i915_debugfs.c             |  141 
 b/drivers/gpu/drm/i915/i915_dma.c                 |   68 
 b/drivers/gpu/drm/i915/i915_drv.c                 |  177 
 b/drivers/gpu/drm/i915/i915_drv.h                 |  183 
 b/drivers/gpu/drm/i915/i915_gem.c                 |  364 +
 b/drivers/gpu/drm/i915/i915_gem_tiling.c          |   52 
 b/drivers/gpu/drm/i915/i915_ioc32.c               |   23 
 b/drivers/gpu/drm/i915/i915_irq.c                 |  195 
 b/drivers/gpu/drm/i915/i915_opregion.c            |   92 
 b/drivers/gpu/drm/i915/i915_reg.h                 |   82 
 b/drivers/gpu/drm/i915/i915_suspend.c             |   86 
 b/drivers/gpu/drm/i915/intel_bios.c               |  137 
 b/drivers/gpu/drm/i915/intel_bios.h               |   17 
 b/drivers/gpu/drm/i915/intel_crt.c                |   52 
 b/drivers/gpu/drm/i915/intel_display.c            | 1293 ++--
 b/drivers/gpu/drm/i915/intel_dp.c                 |  162 
 b/drivers/gpu/drm/i915/intel_drv.h                |   44 
 b/drivers/gpu/drm/i915/intel_fb.c                 |    9 
 b/drivers/gpu/drm/i915/intel_hdmi.c               |   60 
 b/drivers/gpu/drm/i915/intel_i2c.c                |   21 
 b/drivers/gpu/drm/i915/intel_lvds.c               |  185 
 b/drivers/gpu/drm/i915/intel_overlay.c            | 1416 +++++
 b/drivers/gpu/drm/i915/intel_sdvo.c               |   19 
 b/drivers/gpu/drm/i915/intel_tv.c                 |   49 
 b/drivers/gpu/drm/mga/mga_drv.c                   |    2 
 b/drivers/gpu/drm/mga/mga_ioc32.c                 |   13 
 b/drivers/gpu/drm/nouveau/Kconfig                 |   44 
 b/drivers/gpu/drm/nouveau/Makefile                |   32 
 b/drivers/gpu/drm/nouveau/nouveau_acpi.c          |  125 
 b/drivers/gpu/drm/nouveau/nouveau_backlight.c     |  155 
 b/drivers/gpu/drm/nouveau/nouveau_bios.c          | 6078 ++++++++++++++++++++++
 b/drivers/gpu/drm/nouveau/nouveau_bios.h          |  290 +
 b/drivers/gpu/drm/nouveau/nouveau_bo.c            |  771 ++
 b/drivers/gpu/drm/nouveau/nouveau_calc.c          |  478 +
 b/drivers/gpu/drm/nouveau/nouveau_channel.c       |  431 +
 b/drivers/gpu/drm/nouveau/nouveau_connector.c     |  824 ++
 b/drivers/gpu/drm/nouveau/nouveau_connector.h     |   54 
 b/drivers/gpu/drm/nouveau/nouveau_crtc.h          |   95 
 b/drivers/gpu/drm/nouveau/nouveau_debugfs.c       |  155 
 b/drivers/gpu/drm/nouveau/nouveau_display.c       |  115 
 b/drivers/gpu/drm/nouveau/nouveau_dma.c           |  226 
 b/drivers/gpu/drm/nouveau/nouveau_dma.h           |  159 
 b/drivers/gpu/drm/nouveau/nouveau_dp.c            |  569 ++
 b/drivers/gpu/drm/nouveau/nouveau_drv.c           |  409 +
 b/drivers/gpu/drm/nouveau/nouveau_drv.h           | 1345 ++++
 b/drivers/gpu/drm/nouveau/nouveau_encoder.h       |   91 
 b/drivers/gpu/drm/nouveau/nouveau_fb.h            |   47 
 b/drivers/gpu/drm/nouveau/nouveau_fbcon.c         |  389 +
 b/drivers/gpu/drm/nouveau/nouveau_fbcon.h         |   48 
 b/drivers/gpu/drm/nouveau/nouveau_fence.c         |  262 
 b/drivers/gpu/drm/nouveau/nouveau_gem.c           |  978 +++
 b/drivers/gpu/drm/nouveau/nouveau_grctx.c         |  161 
 b/drivers/gpu/drm/nouveau/nouveau_grctx.h         |  133 
 b/drivers/gpu/drm/nouveau/nouveau_hw.c            | 1080 +++
 b/drivers/gpu/drm/nouveau/nouveau_hw.h            |  455 +
 b/drivers/gpu/drm/nouveau/nouveau_i2c.c           |  269 
 b/drivers/gpu/drm/nouveau/nouveau_i2c.h           |   52 
 b/drivers/gpu/drm/nouveau/nouveau_ioc32.c         |   70 
 b/drivers/gpu/drm/nouveau/nouveau_irq.c           |  703 ++
 b/drivers/gpu/drm/nouveau/nouveau_mem.c           |  659 ++
 b/drivers/gpu/drm/nouveau/nouveau_notifier.c      |  196 
 b/drivers/gpu/drm/nouveau/nouveau_object.c        | 1294 ++++
 b/drivers/gpu/drm/nouveau/nouveau_reg.h           |  836 +++
 b/drivers/gpu/drm/nouveau/nouveau_sgdma.c         |  321 +
 b/drivers/gpu/drm/nouveau/nouveau_state.c         |  871 +++
 b/drivers/gpu/drm/nouveau/nouveau_ttm.c           |  103 
 b/drivers/gpu/drm/nouveau/nv04_crtc.c             | 1002 +++
 b/drivers/gpu/drm/nouveau/nv04_cursor.c           |   70 
 b/drivers/gpu/drm/nouveau/nv04_dac.c              |  527 +
 b/drivers/gpu/drm/nouveau/nv04_dfp.c              |  623 ++
 b/drivers/gpu/drm/nouveau/nv04_display.c          |  287 +
 b/drivers/gpu/drm/nouveau/nv04_fb.c               |   21 
 b/drivers/gpu/drm/nouveau/nv04_fbcon.c            |  315 +
 b/drivers/gpu/drm/nouveau/nv04_fifo.c             |  305 +
 b/drivers/gpu/drm/nouveau/nv04_graph.c            |  584 ++
 b/drivers/gpu/drm/nouveau/nv04_instmem.c          |  208 
 b/drivers/gpu/drm/nouveau/nv04_mc.c               |   20 
 b/drivers/gpu/drm/nouveau/nv04_timer.c            |   51 
 b/drivers/gpu/drm/nouveau/nv04_tv.c               |  305 +
 b/drivers/gpu/drm/nouveau/nv10_fb.c               |   44 
 b/drivers/gpu/drm/nouveau/nv10_fifo.c             |  260 
 b/drivers/gpu/drm/nouveau/nv10_graph.c            | 1009 +++
 b/drivers/gpu/drm/nouveau/nv17_gpio.c             |   92 
 b/drivers/gpu/drm/nouveau/nv17_tv.c               |  776 ++
 b/drivers/gpu/drm/nouveau/nv17_tv.h               |  156 
 b/drivers/gpu/drm/nouveau/nv17_tv_modes.c         |  583 ++
 b/drivers/gpu/drm/nouveau/nv20_graph.c            |  775 ++
 b/drivers/gpu/drm/nouveau/nv40_fb.c               |   75 
 b/drivers/gpu/drm/nouveau/nv40_fifo.c             |  314 +
 b/drivers/gpu/drm/nouveau/nv40_graph.c            |  406 +
 b/drivers/gpu/drm/nouveau/nv40_grctx.c            |  678 ++
 b/drivers/gpu/drm/nouveau/nv40_mc.c               |   38 
 b/drivers/gpu/drm/nouveau/nv50_crtc.c             |  769 ++
 b/drivers/gpu/drm/nouveau/nv50_cursor.c           |  156 
 b/drivers/gpu/drm/nouveau/nv50_dac.c              |  304 +
 b/drivers/gpu/drm/nouveau/nv50_display.c          | 1032 +++
 b/drivers/gpu/drm/nouveau/nv50_display.h          |   46 
 b/drivers/gpu/drm/nouveau/nv50_evo.h              |  113 
 b/drivers/gpu/drm/nouveau/nv50_fbcon.c            |  270 
 b/drivers/gpu/drm/nouveau/nv50_fifo.c             |  492 +
 b/drivers/gpu/drm/nouveau/nv50_graph.c            |  389 +
 b/drivers/gpu/drm/nouveau/nv50_instmem.c          |  509 +
 b/drivers/gpu/drm/nouveau/nv50_mc.c               |   40 
 b/drivers/gpu/drm/nouveau/nv50_sor.c              |  309 +
 b/drivers/gpu/drm/nouveau/nvreg.h                 |  535 +
 b/drivers/gpu/drm/r128/r128_drv.c                 |    2 
 b/drivers/gpu/drm/r128/r128_ioc32.c               |   16 
 b/drivers/gpu/drm/radeon/Makefile                 |    7 
 b/drivers/gpu/drm/radeon/ObjectID.h               |  801 +-
 b/drivers/gpu/drm/radeon/atom.c                   |   45 
 b/drivers/gpu/drm/radeon/atom.h                   |    3 
 b/drivers/gpu/drm/radeon/atombios.h               |  217 
 b/drivers/gpu/drm/radeon/atombios_crtc.c          |   57 
 b/drivers/gpu/drm/radeon/atombios_dp.c            |  792 ++
 b/drivers/gpu/drm/radeon/mkregtable.c             |    4 
 b/drivers/gpu/drm/radeon/r100.c                   |  308 -
 b/drivers/gpu/drm/radeon/r100_track.h             |   19 
 b/drivers/gpu/drm/radeon/r200.c                   |   10 
 b/drivers/gpu/drm/radeon/r300.c                   |  104 
 b/drivers/gpu/drm/radeon/r300_cmdbuf.c            |    6 
 b/drivers/gpu/drm/radeon/r300_reg.h               |    1 
 b/drivers/gpu/drm/radeon/r420.c                   |   66 
 b/drivers/gpu/drm/radeon/r500_reg.h               |    2 
 b/drivers/gpu/drm/radeon/r520.c                   |    9 
 b/drivers/gpu/drm/radeon/r600.c                   | 1177 +++-
 b/drivers/gpu/drm/radeon/r600_audio.c             |  267 
 b/drivers/gpu/drm/radeon/r600_blit_kms.c          |   34 
 b/drivers/gpu/drm/radeon/r600_cs.c                |    4 
 b/drivers/gpu/drm/radeon/r600_hdmi.c              |  506 +
 b/drivers/gpu/drm/radeon/r600_reg.h               |   74 
 b/drivers/gpu/drm/radeon/r600d.h                  |  212 
 b/drivers/gpu/drm/radeon/radeon.h                 |  197 
 b/drivers/gpu/drm/radeon/radeon_agp.c             |    6 
 b/drivers/gpu/drm/radeon/radeon_asic.h            |   65 
 b/drivers/gpu/drm/radeon/radeon_atombios.c        |  468 +
 b/drivers/gpu/drm/radeon/radeon_benchmark.c       |   36 
 b/drivers/gpu/drm/radeon/radeon_clocks.c          |   25 
 b/drivers/gpu/drm/radeon/radeon_combios.c         |  761 ++
 b/drivers/gpu/drm/radeon/radeon_connectors.c      |  221 
 b/drivers/gpu/drm/radeon/radeon_cp.c              |   46 
 b/drivers/gpu/drm/radeon/radeon_cs.c              |   13 
 b/drivers/gpu/drm/radeon/radeon_device.c          |  148 
 b/drivers/gpu/drm/radeon/radeon_display.c         |  157 
 b/drivers/gpu/drm/radeon/radeon_drv.c             |   12 
 b/drivers/gpu/drm/radeon/radeon_drv.h             |    1 
 b/drivers/gpu/drm/radeon/radeon_encoders.c        |  322 -
 b/drivers/gpu/drm/radeon/radeon_fb.c              |   74 
 b/drivers/gpu/drm/radeon/radeon_fence.c           |   65 
 b/drivers/gpu/drm/radeon/radeon_fixed.h           |   17 
 b/drivers/gpu/drm/radeon/radeon_gart.c            |   42 
 b/drivers/gpu/drm/radeon/radeon_gem.c             |  108 
 b/drivers/gpu/drm/radeon/radeon_i2c.c             |  182 
 b/drivers/gpu/drm/radeon/radeon_ioc32.c           |   38 
 b/drivers/gpu/drm/radeon/radeon_irq.c             |   10 
 b/drivers/gpu/drm/radeon/radeon_irq_kms.c         |   71 
 b/drivers/gpu/drm/radeon/radeon_kms.c             |   42 
 b/drivers/gpu/drm/radeon/radeon_legacy_crtc.c     |  102 
 b/drivers/gpu/drm/radeon/radeon_legacy_encoders.c |  127 
 b/drivers/gpu/drm/radeon/radeon_legacy_tv.c       |   14 
 b/drivers/gpu/drm/radeon/radeon_mode.h            |  184 
 b/drivers/gpu/drm/radeon/radeon_object.c          |  579 --
 b/drivers/gpu/drm/radeon/radeon_object.h          |  151 
 b/drivers/gpu/drm/radeon/radeon_pm.c              |    9 
 b/drivers/gpu/drm/radeon/radeon_reg.h             |   60 
 b/drivers/gpu/drm/radeon/radeon_ring.c            |   67 
 b/drivers/gpu/drm/radeon/radeon_state.c           |    2 
 b/drivers/gpu/drm/radeon/radeon_test.c            |   55 
 b/drivers/gpu/drm/radeon/radeon_ttm.c             |  110 
 b/drivers/gpu/drm/radeon/reg_srcs/r420            |  795 ++
 b/drivers/gpu/drm/radeon/reg_srcs/rs600           |   68 
 b/drivers/gpu/drm/radeon/reg_srcs/rv515           |    6 
 b/drivers/gpu/drm/radeon/rs400.c                  |   21 
 b/drivers/gpu/drm/radeon/rs600.c                  |  233 
 b/drivers/gpu/drm/radeon/rs600d.h                 |  112 
 b/drivers/gpu/drm/radeon/rs690.c                  |   40 
 b/drivers/gpu/drm/radeon/rv515.c                  |   25 
 b/drivers/gpu/drm/radeon/rv770.c                  |   94 
 b/drivers/gpu/drm/savage/savage_drv.c             |    2 
 b/drivers/gpu/drm/sis/sis_drv.c                   |    2 
 b/drivers/gpu/drm/tdfx/tdfx_drv.c                 |    2 
 b/drivers/gpu/drm/ttm/Makefile                    |    3 
 b/drivers/gpu/drm/ttm/ttm_bo.c                    |  674 +-
 b/drivers/gpu/drm/ttm/ttm_bo_util.c               |    3 
 b/drivers/gpu/drm/ttm/ttm_bo_vm.c                 |    9 
 b/drivers/gpu/drm/ttm/ttm_execbuf_util.c          |  117 
 b/drivers/gpu/drm/ttm/ttm_lock.c                  |  311 +
 b/drivers/gpu/drm/ttm/ttm_memory.c                |   16 
 b/drivers/gpu/drm/ttm/ttm_object.c                |  452 +
 b/drivers/gpu/drm/ttm/ttm_tt.c                    |    1 
 b/drivers/gpu/drm/via/via_drv.c                   |    2 
 b/drivers/gpu/drm/vmwgfx/Kconfig                  |   13 
 b/drivers/gpu/drm/vmwgfx/Makefile                 |    9 
 b/drivers/gpu/drm/vmwgfx/svga3d_reg.h             | 1793 ++++++
 b/drivers/gpu/drm/vmwgfx/svga_escape.h            |   89 
 b/drivers/gpu/drm/vmwgfx/svga_overlay.h           |  201 
 b/drivers/gpu/drm/vmwgfx/svga_reg.h               | 1346 ++++
 b/drivers/gpu/drm/vmwgfx/svga_types.h             |   45 
 b/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c          |  229 
 b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c             |  726 ++
 b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h             |  513 +
 b/drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c         |  621 ++
 b/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c              |  742 ++
 b/drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c            |  519 +
 b/drivers/gpu/drm/vmwgfx/vmwgfx_gmr.c             |  213 
 b/drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c           |   81 
 b/drivers/gpu/drm/vmwgfx/vmwgfx_irq.c             |  293 +
 b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c             |  872 +++
 b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.h             |  102 
 b/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c             |  516 +
 b/drivers/gpu/drm/vmwgfx/vmwgfx_overlay.c         |  634 ++
 b/drivers/gpu/drm/vmwgfx/vmwgfx_reg.h             |   57 
 b/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c        | 1183 ++++
 b/drivers/gpu/drm/vmwgfx/vmwgfx_ttm_glue.c        |   99 
 b/include/drm/Kbuild                              |    2 
 b/include/drm/drm.h                               |   65 
 b/include/drm/drmP.h                              |   93 
 b/include/drm/drm_crtc.h                          |   47 
 b/include/drm/drm_dp_helper.h                     |  180 
 b/include/drm/drm_edid.h                          |    8 
 b/include/drm/drm_mm.h                            |   35 
 b/include/drm/drm_mode.h                          |   81 
 b/include/drm/drm_os_linux.h                      |    2 
 b/include/drm/i2c/ch7006.h                        |   86 
 b/include/drm/i915_drm.h                          |  132 
 b/include/drm/mga_drm.h                           |    2 
 b/include/drm/nouveau_drm.h                       |  220 
 b/include/drm/radeon_drm.h                        |    2 
 b/include/drm/ttm/ttm_bo_api.h                    |  115 
 b/include/drm/ttm/ttm_bo_driver.h                 |   37 
 b/include/drm/ttm/ttm_execbuf_util.h              |  107 
 b/include/drm/ttm/ttm_lock.h                      |  247 
 b/include/drm/ttm/ttm_object.h                    |  271 
 b/include/drm/via_drm.h                           |    2 
 b/include/drm/vmwgfx_drm.h                        |  574 ++
 drivers/gpu/drm/i915/intel_dp.h                   |  144 
 drivers/gpu/drm/i915/intel_dp_i2c.c               |  273 
 271 files changed, 65200 insertions(+), 4563 deletions(-)

--- NEW FILE drm-upgrayedd.patch ---
diff --git a/drivers/char/agp/Kconfig b/drivers/char/agp/Kconfig
index ccb1fa8..2fb3a48 100644
--- a/drivers/char/agp/Kconfig
+++ b/drivers/char/agp/Kconfig
@@ -56,9 +56,8 @@ config AGP_AMD
 	  X on AMD Irongate, 761, and 762 chipsets.
 
 config AGP_AMD64
-	tristate "AMD Opteron/Athlon64 on-CPU GART support" if !GART_IOMMU
+	tristate "AMD Opteron/Athlon64 on-CPU GART support"
 	depends on AGP && X86
-	default y if GART_IOMMU
 	help
 	  This option gives you AGP support for the GLX component of
 	  X using the on-CPU northbridge of the AMD Athlon64/Opteron CPUs.
diff --git a/drivers/char/agp/amd64-agp.c b/drivers/char/agp/amd64-agp.c
index 2fb2e6c..5aa7a58 100644
--- a/drivers/char/agp/amd64-agp.c
+++ b/drivers/char/agp/amd64-agp.c
@@ -725,9 +725,14 @@ static struct pci_driver agp_amd64_pci_driver = {
 int __init agp_amd64_init(void)
 {
 	int err = 0;
+	static int done = 0;
 
 	if (agp_off)
 		return -EINVAL;
+
+	if (done++)
+		return agp_bridges_found ? 0 : -ENODEV;
+
 	err = pci_register_driver(&agp_amd64_pci_driver);
 	if (err < 0)
 		return err;
@@ -771,12 +776,8 @@ static void __exit agp_amd64_cleanup(void)
 	pci_unregister_driver(&agp_amd64_pci_driver);
 }
 
-/* On AMD64 the PCI driver needs to initialize this driver early
-   for the IOMMU, so it has to be called via a backdoor. */
-#ifndef CONFIG_GART_IOMMU
 module_init(agp_amd64_init);
 module_exit(agp_amd64_cleanup);
-#endif
 
 MODULE_AUTHOR("Dave Jones <davej at redhat.com>, Andi Kleen");
 module_param(agp_try_unsupported, bool, 0);
diff --git a/drivers/char/agp/frontend.c b/drivers/char/agp/frontend.c
index a96f319..43412c0 100644
--- a/drivers/char/agp/frontend.c
+++ b/drivers/char/agp/frontend.c
@@ -676,25 +676,25 @@ static int agp_open(struct inode *inode, struct file *file)
 	int minor = iminor(inode);
 	struct agp_file_private *priv;
 	struct agp_client *client;
-	int rc = -ENXIO;
-
-	lock_kernel();
-	mutex_lock(&(agp_fe.agp_mutex));
 
 	if (minor != AGPGART_MINOR)
-		goto err_out;
+		return -ENXIO;
+
+	mutex_lock(&(agp_fe.agp_mutex));
 
 	priv = kzalloc(sizeof(struct agp_file_private), GFP_KERNEL);
-	if (priv == NULL)
-		goto err_out_nomem;
+	if (priv == NULL) {
+		mutex_unlock(&(agp_fe.agp_mutex));
+		return -ENOMEM;
+	}
 
 	set_bit(AGP_FF_ALLOW_CLIENT, &priv->access_flags);
 	priv->my_pid = current->pid;
 
-	if (capable(CAP_SYS_RAWIO)) {
+	if (capable(CAP_SYS_RAWIO))
 		/* Root priv, can be controller */
 		set_bit(AGP_FF_ALLOW_CONTROLLER, &priv->access_flags);
-	}
+
 	client = agp_find_client_by_pid(current->pid);
 
 	if (client != NULL) {
@@ -704,16 +704,10 @@ static int agp_open(struct inode *inode, struct file *file)
 	file->private_data = (void *) priv;
 	agp_insert_file_private(priv);
 	DBG("private=%p, client=%p", priv, client);
-	mutex_unlock(&(agp_fe.agp_mutex));
-	unlock_kernel();
-	return 0;
 
-err_out_nomem:
-	rc = -ENOMEM;
-err_out:
 	mutex_unlock(&(agp_fe.agp_mutex));
-	unlock_kernel();
-	return rc;
+
+	return 0;
 }
 
 
diff --git a/drivers/char/agp/intel-agp.c b/drivers/char/agp/intel-agp.c
index 3cb56a0..30c36ac 100644
--- a/drivers/char/agp/intel-agp.c
+++ b/drivers/char/agp/intel-agp.c
@@ -36,10 +36,10 @@
 #define PCI_DEVICE_ID_INTEL_82965GME_IG     0x2A12
 #define PCI_DEVICE_ID_INTEL_82945GME_HB     0x27AC
 #define PCI_DEVICE_ID_INTEL_82945GME_IG     0x27AE
-#define PCI_DEVICE_ID_INTEL_IGDGM_HB        0xA010
-#define PCI_DEVICE_ID_INTEL_IGDGM_IG        0xA011
-#define PCI_DEVICE_ID_INTEL_IGDG_HB         0xA000
-#define PCI_DEVICE_ID_INTEL_IGDG_IG         0xA001
+#define PCI_DEVICE_ID_INTEL_PINEVIEW_M_HB        0xA010
+#define PCI_DEVICE_ID_INTEL_PINEVIEW_M_IG        0xA011
+#define PCI_DEVICE_ID_INTEL_PINEVIEW_HB         0xA000
+#define PCI_DEVICE_ID_INTEL_PINEVIEW_IG         0xA001
 #define PCI_DEVICE_ID_INTEL_G33_HB          0x29C0
 #define PCI_DEVICE_ID_INTEL_G33_IG          0x29C2
 #define PCI_DEVICE_ID_INTEL_Q35_HB          0x29B0
@@ -50,20 +50,20 @@
 #define PCI_DEVICE_ID_INTEL_B43_IG          0x2E42
 #define PCI_DEVICE_ID_INTEL_GM45_HB         0x2A40
 #define PCI_DEVICE_ID_INTEL_GM45_IG         0x2A42
-#define PCI_DEVICE_ID_INTEL_IGD_E_HB        0x2E00
-#define PCI_DEVICE_ID_INTEL_IGD_E_IG        0x2E02
+#define PCI_DEVICE_ID_INTEL_EAGLELAKE_HB        0x2E00
+#define PCI_DEVICE_ID_INTEL_EAGLELAKE_IG        0x2E02
 #define PCI_DEVICE_ID_INTEL_Q45_HB          0x2E10
 #define PCI_DEVICE_ID_INTEL_Q45_IG          0x2E12
 #define PCI_DEVICE_ID_INTEL_G45_HB          0x2E20
 #define PCI_DEVICE_ID_INTEL_G45_IG          0x2E22
 #define PCI_DEVICE_ID_INTEL_G41_HB          0x2E30
 #define PCI_DEVICE_ID_INTEL_G41_IG          0x2E32
-#define PCI_DEVICE_ID_INTEL_IGDNG_D_HB	    0x0040
-#define PCI_DEVICE_ID_INTEL_IGDNG_D_IG	    0x0042
-#define PCI_DEVICE_ID_INTEL_IGDNG_M_HB	    0x0044
-#define PCI_DEVICE_ID_INTEL_IGDNG_MA_HB	    0x0062
-#define PCI_DEVICE_ID_INTEL_IGDNG_MC2_HB    0x006a
-#define PCI_DEVICE_ID_INTEL_IGDNG_M_IG	    0x0046
+#define PCI_DEVICE_ID_INTEL_IRONLAKE_D_HB	    0x0040
+#define PCI_DEVICE_ID_INTEL_IRONLAKE_D_IG	    0x0042
+#define PCI_DEVICE_ID_INTEL_IRONLAKE_M_HB	    0x0044
+#define PCI_DEVICE_ID_INTEL_IRONLAKE_MA_HB	    0x0062
+#define PCI_DEVICE_ID_INTEL_IRONLAKE_MC2_HB    0x006a
+#define PCI_DEVICE_ID_INTEL_IRONLAKE_M_IG	    0x0046
 
 /* cover 915 and 945 variants */
 #define IS_I915 (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_E7221_HB || \
@@ -83,22 +83,22 @@
 #define IS_G33 (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_G33_HB || \
 		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_Q35_HB || \
 		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_Q33_HB || \
-		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDGM_HB || \
-		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDG_HB)
+		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_PINEVIEW_M_HB || \
+		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_PINEVIEW_HB)
 
-#define IS_IGD (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDGM_HB || \
-		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDG_HB)
+#define IS_PINEVIEW (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_PINEVIEW_M_HB || \
+		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_PINEVIEW_HB)
 
-#define IS_G4X (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGD_E_HB || \
+#define IS_G4X (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_EAGLELAKE_HB || \
 		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_Q45_HB || \
 		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_G45_HB || \
 		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_GM45_HB || \
 		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_G41_HB || \
 		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_B43_HB || \
-		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDNG_D_HB || \
-		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDNG_M_HB || \
-		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDNG_MA_HB || \
-		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDNG_MC2_HB)
+		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IRONLAKE_D_HB || \
+		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IRONLAKE_M_HB || \
+		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IRONLAKE_MA_HB || \
+		agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IRONLAKE_MC2_HB)
 
 extern int agp_memory_reserved;
 
@@ -178,6 +178,7 @@ static struct _intel_private {
 	 * popup and for the GTT.
 	 */
 	int gtt_entries;			/* i830+ */
+	int gtt_total_size;
 	union {
 		void __iomem *i9xx_flush_page;
 		void *i8xx_flush_page;
@@ -653,7 +654,7 @@ static void intel_i830_init_gtt_entries(void)
 			size = 512;
 		}
 		size += 4; /* add in BIOS popup space */
-	} else if (IS_G33 && !IS_IGD) {
+	} else if (IS_G33 && !IS_PINEVIEW) {
[...81608 lines suppressed...]
+ */
+
+struct drm_vmw_dmabuf_rep {
+	uint64_t map_handle;
+	uint32_t handle;
+	uint32_t cur_gmr_id;
+	uint32_t cur_gmr_offset;
+	uint32_t pad64;
+};
+
+/**
+ * union drm_vmw_dmabuf_arg
+ *
+ * @req: Input data as described above.
+ * @rep: Output data as described above.
+ *
+ * Argument to the DRM_VMW_ALLOC_DMABUF Ioctl.
+ */
+
+union drm_vmw_alloc_dmabuf_arg {
+	struct drm_vmw_alloc_dmabuf_req req;
+	struct drm_vmw_dmabuf_rep rep;
+};
+
+/*************************************************************************/
+/**
+ * DRM_VMW_UNREF_DMABUF - Free a DMA buffer.
+ *
+ */
+
+/**
+ * struct drm_vmw_unref_dmabuf_arg
+ *
+ * @handle: Handle indicating what buffer to free. Obtained from the
+ * DRM_VMW_ALLOC_DMABUF Ioctl.
+ *
+ * Argument to the DRM_VMW_UNREF_DMABUF Ioctl.
+ */
+
+struct drm_vmw_unref_dmabuf_arg {
+	uint32_t handle;
+	uint32_t pad64;
+};
+
+/*************************************************************************/
+/**
+ * DRM_VMW_FIFO_DEBUG - Get last FIFO submission.
+ *
+ * This IOCTL copies the last FIFO submission directly out of the FIFO buffer.
+ */
+
+/**
+ * struct drm_vmw_fifo_debug_arg
+ *
+ * @debug_buffer: User space address of a debug_buffer cast to an uint64_t //In
+ * @debug_buffer_size: Size in bytes of debug buffer //In
+ * @used_size: Number of bytes copied to the buffer // Out
+ * @did_not_fit: Boolean indicating that the fifo contents did not fit. //Out
+ *
+ * Argument to the DRM_VMW_FIFO_DEBUG Ioctl.
+ */
+
+struct drm_vmw_fifo_debug_arg {
+	uint64_t debug_buffer;
+	uint32_t debug_buffer_size;
+	uint32_t used_size;
+	int32_t did_not_fit;
+	uint32_t pad64;
+};
+
+struct drm_vmw_fence_wait_arg {
+	uint64_t sequence;
+	uint64_t kernel_cookie;
+	int32_t cookie_valid;
+	int32_t pad64;
+};
+
+/*************************************************************************/
+/**
+ * DRM_VMW_CONTROL_STREAM - Control overlays, aka streams.
+ *
+ * This IOCTL controls the overlay units of the svga device.
+ * The SVGA overlay units does not work like regular hardware units in
+ * that they do not automaticaly read back the contents of the given dma
+ * buffer. But instead only read back for each call to this ioctl, and
+ * at any point between this call being made and a following call that
+ * either changes the buffer or disables the stream.
+ */
+
+/**
+ * struct drm_vmw_rect
+ *
+ * Defines a rectangle. Used in the overlay ioctl to define
+ * source and destination rectangle.
+ */
+
+struct drm_vmw_rect {
+	int32_t x;
+	int32_t y;
+	uint32_t w;
+	uint32_t h;
+};
+
+/**
+ * struct drm_vmw_control_stream_arg
+ *
+ * @stream_id: Stearm to control
+ * @enabled: If false all following arguments are ignored.
+ * @handle: Handle to buffer for getting data from.
+ * @format: Format of the overlay as understood by the host.
+ * @width: Width of the overlay.
+ * @height: Height of the overlay.
+ * @size: Size of the overlay in bytes.
+ * @pitch: Array of pitches, the two last are only used for YUV12 formats.
+ * @offset: Offset from start of dma buffer to overlay.
+ * @src: Source rect, must be within the defined area above.
+ * @dst: Destination rect, x and y may be negative.
+ *
+ * Argument to the DRM_VMW_CONTROL_STREAM Ioctl.
+ */
+
+struct drm_vmw_control_stream_arg {
+	uint32_t stream_id;
+	uint32_t enabled;
+
+	uint32_t flags;
+	uint32_t color_key;
+
+	uint32_t handle;
+	uint32_t offset;
+	int32_t format;
+	uint32_t size;
+	uint32_t width;
+	uint32_t height;
+	uint32_t pitch[3];
+
+	uint32_t pad64;
+	struct drm_vmw_rect src;
+	struct drm_vmw_rect dst;
+};
+
+/*************************************************************************/
+/**
+ * DRM_VMW_CURSOR_BYPASS - Give extra information about cursor bypass.
+ *
+ */
+
+#define DRM_VMW_CURSOR_BYPASS_ALL    (1 << 0)
+#define DRM_VMW_CURSOR_BYPASS_FLAGS       (1)
+
+/**
+ * struct drm_vmw_cursor_bypass_arg
+ *
+ * @flags: Flags.
+ * @crtc_id: Crtc id, only used if DMR_CURSOR_BYPASS_ALL isn't passed.
+ * @xpos: X position of cursor.
+ * @ypos: Y position of cursor.
+ * @xhot: X hotspot.
+ * @yhot: Y hotspot.
+ *
+ * Argument to the DRM_VMW_CURSOR_BYPASS Ioctl.
+ */
+
+struct drm_vmw_cursor_bypass_arg {
+	uint32_t flags;
+	uint32_t crtc_id;
+	int32_t xpos;
+	int32_t ypos;
+	int32_t xhot;
+	int32_t yhot;
+};
+
+/*************************************************************************/
+/**
+ * DRM_VMW_CLAIM_STREAM - Claim a single stream.
+ */
+
+/**
+ * struct drm_vmw_context_arg
+ *
+ * @stream_id: Device unique context ID.
+ *
+ * Output argument to the DRM_VMW_CREATE_CONTEXT Ioctl.
+ * Input argument to the DRM_VMW_UNREF_CONTEXT Ioctl.
+ */
+
+struct drm_vmw_stream_arg {
+	uint32_t stream_id;
+	uint32_t pad64;
+};
+
+/*************************************************************************/
+/**
+ * DRM_VMW_UNREF_STREAM - Unclaim a stream.
+ *
+ * Return a single stream that was claimed by this process. Also makes
+ * sure that the stream has been stopped.
+ */
+
+#endif


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-12/kernel.spec,v
retrieving revision 1.1973
retrieving revision 1.1974
diff -u -p -r1.1973 -r1.1974
--- kernel.spec	11 Jan 2010 16:41:50 -0000	1.1973
+++ kernel.spec	11 Jan 2010 23:43:06 -0000	1.1974
@@ -685,6 +685,7 @@ Patch1551: linux-2.6-ksm-kvm.patch
 Patch1552: linux-2.6-userspace_kvmclock_offset.patch
 
 # nouveau + drm fixes
+Patch1810: drm-upgrayedd.patch
 Patch1811: drm-radeon-fixes.patch
 Patch1812: drm-radeon-dp-support.patch
 Patch1813: drm-radeon-pm.patch
@@ -696,7 +697,7 @@ Patch1821: drm-page-flip.patch
 # intel drm is all merged upstream
 Patch1824: drm-intel-next.patch
 Patch1825: drm-intel-pm.patch
-Patch1827: linux-2.6-intel-agp-clear-gtt.patch
+#Patch1827: linux-2.6-intel-agp-clear-gtt.patch
 
 # kludge to make ich9 e1000 work
 Patch2000: linux-2.6-e1000-ich9.patch
@@ -1317,20 +1318,10 @@ ApplyPatch linux-2.6-userspace_kvmclock_
 ApplyPatch linux-2.6-e1000-ich9.patch
 
 # Nouveau DRM + drm fixes
-ApplyPatch drm-radeon-fixes.patch
-ApplyPatch drm-radeon-dp-support.patch
-ApplyPatch drm-nouveau.patch
-# pm broken on my thinkpad t60p - airlied
-#ApplyPatch drm-radeon-pm.patch
-#ApplyPatch drm-i915-resume-force-mode.patch
-ApplyPatch drm-intel-big-hammer.patch
-ApplyPatch drm-intel-no-tv-hotplug.patch
-#ApplyPatch drm-page-flip.patch
+ApplyPatch drm-upgrayedd.patch
+#ApplyPatch drm-intel-big-hammer.patch
+#ApplyPatch drm-intel-no-tv-hotplug.patch
 ApplyOptionalPatch drm-intel-next.patch
-#this appears to be upstream - mjg59?
-#ApplyPatch drm-intel-pm.patch
-# Some BIOSes don't clear the whole GTT, and it causes IOMMU faults
-ApplyPatch linux-2.6-intel-agp-clear-gtt.patch
 
 # linux1394 git patches
 #ApplyPatch linux-2.6-firewire-git-update.patch
@@ -2007,6 +1998,11 @@ fi
 # and build.
 
 %changelog
+* Mon Jan 11 2010 Dave Airlie <airlied at redhat.com> 2.6.32.3-14
+- drm-upgrayedd.patch: rebase to present 2.6.33 (drm-linus)
+- nouveau TODO - comment out no-tv-hp for now, leave patch
+- we can readd if all the upstream goodness didn't fix it
+
 * Mon Jan 11 2010 Kyle McMartin <kyle at redhat.com> 2.6.32.3-13
 - drm-intel-no-tv-hotplug.patch: re-add lost patch from F-12
   2.6.31 (#522611, #544671)


--- drm-intel-pm.patch DELETED ---


--- drm-nouveau.patch DELETED ---


--- drm-page-flip.patch DELETED ---


--- drm-radeon-dp-support.patch DELETED ---


--- drm-radeon-fixes.patch DELETED ---



More information about the scm-commits mailing list