[kernel/f19] fix nomodeset on radeon (rhbz 924507)

Dave Airlie airlied at fedoraproject.org
Wed May 15 01:35:44 UTC 2013


commit b4d48651d40c1f83169e90863ab6dd72a3fdcc7a
Author: Dave Airlie <airlied at redhat.com>
Date:   Wed May 15 11:25:42 2013 +1000

    fix nomodeset on radeon (rhbz 924507)

 drm-radeon-fix-nomodeset.patch |   52 ++++++++++++++++++++++++++++++++++++++++
 kernel.spec                    |    8 ++++++
 2 files changed, 60 insertions(+), 0 deletions(-)
---
diff --git a/drm-radeon-fix-nomodeset.patch b/drm-radeon-fix-nomodeset.patch
new file mode 100644
index 0000000..f9d60e6
--- /dev/null
+++ b/drm-radeon-fix-nomodeset.patch
@@ -0,0 +1,52 @@
+From 3cebd7639faa9b315d0c82056c518f59ed080a84 Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied at redhat.com>
+Date: Wed, 15 May 2013 11:18:17 +1000
+Subject: [PATCH] drm/radeon: restore nomodeset operation (v2)
+
+When UMS was deprecated it removed support for nomodeset commandline
+we really want this in distro land so we can debug stuff, everyone
+should fallback to vesa correctly.
+
+v2: oops -1 isn't used anymore, restore original behaviour
+-1 is default, so we can boot with nomodeset on the command line,
+then use radeon.modeset=1 to override it for debugging later.
+
+Cc: stable at vger.kernel.org
+Signed-off-by: Dave Airlie <airlied at redhat.com>
+---
+ drivers/gpu/drm/radeon/radeon_drv.c | 12 +++++++++++-
+ 1 file changed, 11 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/gpu/drm/radeon/radeon_drv.c b/drivers/gpu/drm/radeon/radeon_drv.c
+index d33f484..094e7e5 100644
+--- a/drivers/gpu/drm/radeon/radeon_drv.c
++++ b/drivers/gpu/drm/radeon/radeon_drv.c
+@@ -147,7 +147,7 @@ static inline void radeon_unregister_atpx_handler(void) {}
+ #endif
+ 
+ int radeon_no_wb;
+-int radeon_modeset = 1;
++int radeon_modeset = -1;
+ int radeon_dynclks = -1;
+ int radeon_r4xx_atom = 0;
+ int radeon_agpmode = 0;
+@@ -456,6 +456,16 @@ static struct pci_driver radeon_kms_pci_driver = {
+ 
+ static int __init radeon_init(void)
+ {
++#ifdef CONFIG_VGA_CONSOLE
++	if (vgacon_text_force() && radeon_modeset == -1) {
++		DRM_INFO("VGACON disable radeon kernel modesetting.\n");
++		radeon_modeset = 0;
++	}
++#endif
++	/* set to modesetting by default if not nomodeset */
++	if (radeon_modeset == -1)
++		radeon_modeset = 1;
++
+ 	if (radeon_modeset == 1) {
+ 		DRM_INFO("radeon kernel modesetting enabled.\n");
+ 		driver = &kms_driver;
+-- 
+1.8.1.2
+
diff --git a/kernel.spec b/kernel.spec
index f7983c6..4396cd4 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -674,6 +674,9 @@ Patch1702: drm-qxl-backport-fixes.patch
 # intel drm is all merged upstream
 Patch1824: drm-intel-next.patch
 Patch1825: drm-i915-dp-stfu.patch
+# radeon drm fix
+# 924507
+Patch1900: drm-radeon-fix-nomodeset.patch
 
 # Quiet boot fixes
 # silence the ACPI blacklist code
@@ -1397,6 +1400,8 @@ ApplyPatch drm-qxl-backport-fixes.patch
 ApplyOptionalPatch drm-intel-next.patch
 ApplyPatch drm-i915-dp-stfu.patch
 
+ApplyPatch drm-radeon-fix-nomodeset.patch
+
 # silence the ACPI blacklist code
 ApplyPatch silence-acpi-blacklist.patch
 
@@ -2284,6 +2289,9 @@ fi
 # and build.
 
 %changelog
+* Wed May 15 2013 Dave Airlie <airlied at redhat.com>
+- fix nomodeset on radeon (rhbz 924507)
+
 * Tue May 14 2013 Dave Airlie <airlied at redhat.com>
 - backport upstream qxl fixes, fixes VM crash on X exit or randr.
 


More information about the scm-commits mailing list