rpms/kernel/devel drm-modesetting-radeon.patch, 1.28, 1.29 kernel.spec, 1.959, 1.960

Dave Airlie airlied at fedoraproject.org
Fri Sep 19 17:13:00 UTC 2008


Author: airlied

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

Modified Files:
	drm-modesetting-radeon.patch kernel.spec 
Log Message:
- more fixes from AMD upstream for LVDS


drm-modesetting-radeon.patch:

Index: drm-modesetting-radeon.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/drm-modesetting-radeon.patch,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- drm-modesetting-radeon.patch	18 Sep 2008 23:32:41 -0000	1.28
+++ drm-modesetting-radeon.patch	19 Sep 2008 17:12:29 -0000	1.29
@@ -1,3 +1,15 @@
+commit 68d1f0df534df3cadc55a064e38c9afb4a66b875
+Author: Dave Airlie <airlied at linux.ie>
+Date:   Sat Sep 20 03:08:05 2008 +1000
+
+    radeon: rmx_fixup() fixes for legacy chips
+
+commit 59a50b92d61cdd939026d7b5bcb2584e936927b0
+Author: Dave Airlie <airlied at linux.ie>
+Date:   Sat Sep 20 01:55:27 2008 +1000
+
+    radeon: fix combios
+
 commit 6a804321a2b1220143a64a3a78d72b03770fd285
 Author: Dave Airlie <airlied at linux.ie>
 Date:   Fri Sep 19 09:17:36 2008 +1000
@@ -29060,7 +29072,7 @@
 +}
 diff --git a/drivers/gpu/drm/radeon/radeon_combios.c b/drivers/gpu/drm/radeon/radeon_combios.c
 new file mode 100644
-index 0000000..19f274c
+index 0000000..107a081
 --- /dev/null
 +++ b/drivers/gpu/drm/radeon/radeon_combios.c
 @@ -0,0 +1,1404 @@
@@ -29815,7 +29827,7 @@
 +
 +				encoder->vblank = (radeon_bios16(dev_priv, tmp + 24) -
 +						   radeon_bios16(dev_priv, tmp + 26));
-+				encoder->voverplus = ((radeon_bios16(dev_priv, tmp + 28) & 0x7fff) -
++				encoder->voverplus = ((radeon_bios16(dev_priv, tmp + 28) & 0x7ff) -
 +						      radeon_bios16(dev_priv, tmp + 26));
 +				encoder->vsync_width = ((radeon_bios16(dev_priv, tmp + 28) & 0xf800) >> 11);
 +				encoder->dotclock = radeon_bios16(dev_priv, tmp + 9) * 10;
@@ -34651,10 +34663,10 @@
  #endif				/* __RADEON_DRV_H__ */
 diff --git a/drivers/gpu/drm/radeon/radeon_encoders.c b/drivers/gpu/drm/radeon/radeon_encoders.c
 new file mode 100644
-index 0000000..f39dcc1
+index 0000000..ef417fe
 --- /dev/null
 +++ b/drivers/gpu/drm/radeon/radeon_encoders.c
-@@ -0,0 +1,1093 @@
+@@ -0,0 +1,1096 @@
 +/*
 + * Copyright 2007-8 Advanced Micro Devices, Inc.
 + * Copyright 2008 Red Hat Inc.
@@ -34692,47 +34704,50 @@
 +			   struct drm_display_mode *adjusted_mode)
 +{
 +	struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder);
++	struct drm_device *dev = encoder->dev;
++	struct drm_radeon_private *dev_priv = dev->dev_private;
++
 +	if (mode->hdisplay < radeon_encoder->panel_xres ||
 +	    mode->vdisplay < radeon_encoder->panel_yres) {
 +		radeon_encoder->flags |= RADEON_USE_RMX;
-+		adjusted_mode->hdisplay = radeon_encoder->panel_xres;
-+		adjusted_mode->vdisplay = radeon_encoder->panel_yres;
-+		adjusted_mode->htotal = radeon_encoder->panel_xres + radeon_encoder->hblank;
-+		adjusted_mode->hsync_start = radeon_encoder->panel_xres + radeon_encoder->hoverplus;
-+		adjusted_mode->hsync_end = adjusted_mode->hsync_start + radeon_encoder->hsync_width;
-+		adjusted_mode->vtotal = radeon_encoder->panel_yres + radeon_encoder->vblank;
-+		adjusted_mode->vsync_start = radeon_encoder->panel_yres + radeon_encoder->voverplus;
-+		adjusted_mode->vsync_end = adjusted_mode->vsync_start + radeon_encoder->vsync_width;
-+		/* update crtc values */
-+		drm_mode_set_crtcinfo(adjusted_mode, CRTC_INTERLACE_HALVE_V);
-+		/* adjust crtc values */
-+		adjusted_mode->crtc_hdisplay = radeon_encoder->panel_xres;
-+		adjusted_mode->crtc_vdisplay = radeon_encoder->panel_yres;
-+		adjusted_mode->crtc_htotal = adjusted_mode->crtc_hdisplay + radeon_encoder->hblank;
-+		adjusted_mode->crtc_hsync_start = adjusted_mode->crtc_hdisplay + radeon_encoder->hoverplus;
-+		adjusted_mode->crtc_hsync_end = adjusted_mode->crtc_hsync_start + radeon_encoder->hsync_width;
-+		adjusted_mode->crtc_vtotal = adjusted_mode->crtc_vdisplay + radeon_encoder->vblank;
-+		adjusted_mode->crtc_vsync_start = adjusted_mode->crtc_vdisplay + radeon_encoder->voverplus;
-+		adjusted_mode->crtc_vsync_end = adjusted_mode->crtc_vsync_start + radeon_encoder->vsync_width;
-+	} else {
-+		adjusted_mode->htotal = radeon_encoder->panel_xres + radeon_encoder->hblank;
-+		adjusted_mode->hsync_start = radeon_encoder->panel_xres + radeon_encoder->hoverplus;
-+		adjusted_mode->hsync_end = adjusted_mode->hsync_start + radeon_encoder->hsync_width;
-+		adjusted_mode->vtotal = radeon_encoder->panel_yres + radeon_encoder->vblank;
-+		adjusted_mode->vsync_start = radeon_encoder->panel_yres + radeon_encoder->voverplus;
-+		adjusted_mode->vsync_end = adjusted_mode->vsync_start + radeon_encoder->vsync_width;
-+		/* update crtc values */
-+		drm_mode_set_crtcinfo(adjusted_mode, CRTC_INTERLACE_HALVE_V);
-+		/* adjust crtc values */
-+		adjusted_mode->crtc_htotal = adjusted_mode->crtc_hdisplay + radeon_encoder->hblank;
-+		adjusted_mode->crtc_hsync_start = adjusted_mode->crtc_hdisplay + radeon_encoder->hoverplus;
-+		adjusted_mode->crtc_hsync_end = adjusted_mode->crtc_hsync_start + radeon_encoder->hsync_width;
-+		adjusted_mode->crtc_vtotal = adjusted_mode->crtc_vdisplay + radeon_encoder->vblank;
-+		adjusted_mode->crtc_vsync_start = adjusted_mode->crtc_vdisplay + radeon_encoder->voverplus;
-+		adjusted_mode->crtc_vsync_end = adjusted_mode->crtc_vsync_start + radeon_encoder->vsync_width;
++		if (radeon_is_avivo(dev_priv)) {
++			adjusted_mode->hdisplay = radeon_encoder->panel_xres;
++			adjusted_mode->vdisplay = radeon_encoder->panel_yres;
++			adjusted_mode->htotal = radeon_encoder->panel_xres + radeon_encoder->hblank;
++			adjusted_mode->hsync_start = radeon_encoder->panel_xres + radeon_encoder->hoverplus;
++			adjusted_mode->hsync_end = adjusted_mode->hsync_start + radeon_encoder->hsync_width;
++			adjusted_mode->vtotal = radeon_encoder->panel_yres + radeon_encoder->vblank;
++			adjusted_mode->vsync_start = radeon_encoder->panel_yres + radeon_encoder->voverplus;
++			adjusted_mode->vsync_end = adjusted_mode->vsync_start + radeon_encoder->vsync_width;
++			/* update crtc values */
++			drm_mode_set_crtcinfo(adjusted_mode, CRTC_INTERLACE_HALVE_V);
++			/* adjust crtc values */
++			adjusted_mode->crtc_hdisplay = radeon_encoder->panel_xres;
++			adjusted_mode->crtc_vdisplay = radeon_encoder->panel_yres;
++			adjusted_mode->crtc_htotal = adjusted_mode->crtc_hdisplay + radeon_encoder->hblank;
++			adjusted_mode->crtc_hsync_start = adjusted_mode->crtc_hdisplay + radeon_encoder->hoverplus;
++			adjusted_mode->crtc_hsync_end = adjusted_mode->crtc_hsync_start + radeon_encoder->hsync_width;
++			adjusted_mode->crtc_vtotal = adjusted_mode->crtc_vdisplay + radeon_encoder->vblank;
++			adjusted_mode->crtc_vsync_start = adjusted_mode->crtc_vdisplay + radeon_encoder->voverplus;
++			adjusted_mode->crtc_vsync_end = adjusted_mode->crtc_vsync_start + radeon_encoder->vsync_width;
++		} else {
++			adjusted_mode->htotal = radeon_encoder->panel_xres + radeon_encoder->hblank;
++			adjusted_mode->hsync_start = radeon_encoder->panel_xres + radeon_encoder->hoverplus;
++			adjusted_mode->hsync_end = adjusted_mode->hsync_start + radeon_encoder->hsync_width;
++			adjusted_mode->vtotal = radeon_encoder->panel_yres + radeon_encoder->vblank;
++			adjusted_mode->vsync_start = radeon_encoder->panel_yres + radeon_encoder->voverplus;
++			adjusted_mode->vsync_end = adjusted_mode->vsync_start + radeon_encoder->vsync_width;
++			/* update crtc values */
++			drm_mode_set_crtcinfo(adjusted_mode, CRTC_INTERLACE_HALVE_V);
++			/* adjust crtc values */
++			adjusted_mode->crtc_htotal = adjusted_mode->crtc_hdisplay + radeon_encoder->hblank;
++			adjusted_mode->crtc_hsync_start = adjusted_mode->crtc_hdisplay + radeon_encoder->hoverplus;
++			adjusted_mode->crtc_hsync_end = adjusted_mode->crtc_hsync_start + radeon_encoder->hsync_width;
++			adjusted_mode->crtc_vtotal = adjusted_mode->crtc_vdisplay + radeon_encoder->vblank;
++			adjusted_mode->crtc_vsync_start = adjusted_mode->crtc_vdisplay + radeon_encoder->voverplus;
++			adjusted_mode->crtc_vsync_end = adjusted_mode->crtc_vsync_start + radeon_encoder->vsync_width;
++		}
 +	}
-+	adjusted_mode->clock = radeon_encoder->dotclock;
-+	adjusted_mode->flags = radeon_encoder->flags;
 +}
 +
 +


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.959
retrieving revision 1.960
diff -u -r1.959 -r1.960
--- kernel.spec	18 Sep 2008 23:34:47 -0000	1.959
+++ kernel.spec	19 Sep 2008 17:12:29 -0000	1.960
@@ -1758,6 +1758,9 @@
 %kernel_variant_files -k vmlinux %{with_kdump} kdump
 
 %changelog
+* Fri Sep 19 2008 Dave Airlie <airlied at redhat.com>
+- more fixes from AMD upstream for LVDS
+
 * Thu Sep 18 2008 Dave Airlie <airlied at redhat.com>
 - Merge krh's patches + new patches from AMD
 




More information about the fedora-extras-commits mailing list