From a1b8c4ed845aa83ef4309131c7f491cfb090d530 Mon Sep 17 00:00:00 2001 From: Kyle McMartin Date: Oct 18 2010 23:28:12 +0000 Subject: bomb out of edp bringout that's going to be fail anyway --- 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 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 - ima: Default it to off, pass ima=on to enable. Reduce impact of the option when disabled.