[kernel/f14/master] bomb out of edp bringout that's going to be fail anyway

Kyle McMartin kyle at fedoraproject.org
Mon Oct 18 23:28:37 UTC 2010


commit a1b8c4ed845aa83ef4309131c7f491cfb090d530
Author: Kyle McMartin <kyle at mcmartin.ca>
Date:   Mon Oct 18 19:28:12 2010 -0400

    bomb out of edp bringout that's going to be fail anyway

 dmar-disable-when-ricoh-multifunction.patch |    3 +-
 drm-i915-blacklist-lighting-edp-pipes.patch |   50 +++++++++++++++++++++++++++
 kernel.spec                                 |    9 ++++-
 3 files changed, 60 insertions(+), 2 deletions(-)
---
diff --git a/dmar-disable-when-ricoh-multifunction.patch b/dmar-disable-when-ricoh-multifunction.patch
index eb2b7ce..13b1700 100644
--- a/dmar-disable-when-ricoh-multifunction.patch
+++ b/dmar-disable-when-ricoh-multifunction.patch
@@ -11,13 +11,14 @@ diff --git a/drivers/pci/intel-iommu.c b/drivers/pci/intel-iommu.c
 index 8e499e8..076c5de 100644
 --- a/drivers/pci/intel-iommu.c
 +++ b/drivers/pci/intel-iommu.c
-@@ -3755,6 +3755,16 @@ static void __devinit quirk_iommu_rwbf(struct pci_dev *dev)
+@@ -3755,6 +3755,17 @@ static void __devinit quirk_iommu_rwbf(struct pci_dev *dev)
  
  DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x2a40, quirk_iommu_rwbf);
  
 +/* https://bugzilla.redhat.com/show_bug.cgi?id=605888 */
 +static void __devinit quirk_ricoh_multifunction(struct pci_dev *dev)
 +{
++	printk(KERN_INFO "intel_iommu: broken Ricoh device %04X detected, disabling...\n");
 +	dmar_disabled = 1;
 +}
 +DECLARE_PCI_FIXUP_HEADER(0x1180, 0xe822, quirk_ricoh_multifunction);
diff --git a/drm-i915-blacklist-lighting-edp-pipes.patch b/drm-i915-blacklist-lighting-edp-pipes.patch
new file mode 100644
index 0000000..153eb77
--- /dev/null
+++ b/drm-i915-blacklist-lighting-edp-pipes.patch
@@ -0,0 +1,50 @@
+https://bugzilla.redhat.com/show_bug.cgi?id=639146
+
+diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
+index ce8ff0e..3bbd2c4 100644
+--- a/drivers/gpu/drm/i915/i915_dma.c
++++ b/drivers/gpu/drm/i915/i915_dma.c
+@@ -1353,6 +1353,27 @@ static bool i915_switcheroo_can_switch(struct pci_dev *pdev)
+ 	return can_switch;
+ }
+ 
++/* check the VBT to see whether the eDP is on DP-D port */
++static bool intel_dpd_is_edp(struct drm_device *dev)
++{
++	struct drm_i915_private *dev_priv = dev->dev_private;
++	struct child_device_config *p_child;
++	int i;
++
++	if (!dev_priv->child_dev_num)
++		return false;
++
++	for (i = 0; i < dev_priv->child_dev_num; i++) {
++		p_child = dev_priv->child_dev + i;
++
++	if (p_child->dvo_port == PORT_IDPD &&
++		p_child->device_type == DEVICE_TYPE_eDP)
++		return true;
++	}
++
++	return false;
++}
++
+ static int i915_load_modeset_init(struct drm_device *dev,
+ 				  unsigned long prealloc_start,
+ 				  unsigned long prealloc_size,
+@@ -1409,6 +1430,15 @@ static int i915_load_modeset_init(struct drm_device *dev,
+ 	if (ret)
+ 		DRM_INFO("failed to find VBIOS tables\n");
+ 
++	/* XXX: eDP doesn't even work in git HEAD,
++ 	 * bail out and pray that text mode still works...
++ 	 */
++	if (intel_dpd_is_edp(dev)) {
++		DRM_ERROR("eDP support is currently non-functional, please boot with \"nomodeset xdriver=vesa\"\n");
++		ret = -EINVAL;
++		goto cleanup_ringbuffer;
++	}
++
+ 	/* if we have > 1 VGA cards, then disable the radeon VGA resources */
+ 	ret = vga_client_register(dev->pdev, dev, NULL, i915_vga_set_decode);
+ 	if (ret)
diff --git a/kernel.spec b/kernel.spec
index 5530ec4..50f5ac9 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -48,7 +48,7 @@ Summary: The Linux kernel
 # reset this by hand to 1 (or to 0 and then use rpmdev-bumpspec).
 # scripts/rebase.sh should be made to do that for you, actually.
 #
-%global baserelease 44
+%global baserelease 45
 %global fedora_build %{baserelease}
 
 # base_sublevel is the kernel version we're starting with and patching
@@ -2013,6 +2013,13 @@ fi
 # and build.
 
 %changelog
+* Mon Oct 18 2010 Kyle McMartin <kyle at redhat.com> 2.6.35.6-45
+- Print a useful message when disabling IOMMU when a Ricoh cardreader
+  is probed.
+- Disable eDP pipe bringup on i915 since it won't work anyway, and changes
+  away from text-mode, resulting in nothing but a backlight on a lot of
+  laptops. (rhbz#639146)
+
 * Mon Oct 18 2010 Kyle McMartin <kyle at redhat.com>
 - ima: Default it to off, pass ima=on to enable. Reduce impact of the option
   when disabled.


More information about the scm-commits mailing list