Linux 3.2-rc6
This commit is contained in:
parent
e7b5dbf08a
commit
799841bbdd
@ -1,83 +0,0 @@
|
|||||||
From 64015d6d16d7ed5b6ffcec95dc13e8694bd2a4d6 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Chris Wilson <chris@chris-wilson.co.uk>
|
|
||||||
Date: Mon, 20 Jun 2011 22:35:24 +0100
|
|
||||||
Subject: [PATCH] drm/i915/sdvo: Include LVDS panels for the IS_DIGITAL check
|
|
||||||
|
|
||||||
We were checking whether the supplied edid matched the connector it was
|
|
||||||
read from. We do this in case a DDC read returns an EDID for another
|
|
||||||
device on a multifunction or otherwise interesting card. However, we
|
|
||||||
failed to include LVDS as a digital device and so rejecting an otherwise
|
|
||||||
valid EDID.
|
|
||||||
|
|
||||||
Fixes the detection of the secondary SDVO LVDS panel on the Libretto
|
|
||||||
W105.
|
|
||||||
|
|
||||||
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
||||||
---
|
|
||||||
drivers/gpu/drm/i915/intel_sdvo.c | 28 ++++++++++++++++++++--------
|
|
||||||
1 files changed, 20 insertions(+), 8 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/drivers/gpu/drm/i915/intel_sdvo.c b/drivers/gpu/drm/i915/intel_sdvo.c
|
|
||||||
index f96975c..26eff9f 100644
|
|
||||||
--- a/drivers/gpu/drm/i915/intel_sdvo.c
|
|
||||||
+++ b/drivers/gpu/drm/i915/intel_sdvo.c
|
|
||||||
@@ -49,6 +49,7 @@
|
|
||||||
#define IS_TMDS(c) (c->output_flag & SDVO_TMDS_MASK)
|
|
||||||
#define IS_LVDS(c) (c->output_flag & SDVO_LVDS_MASK)
|
|
||||||
#define IS_TV_OR_LVDS(c) (c->output_flag & (SDVO_TV_MASK | SDVO_LVDS_MASK))
|
|
||||||
+#define IS_DIGITAL(c) (c->output_flag & (SDVO_TMDS_MASK | SDVO_LVDS_MASK))
|
|
||||||
|
|
||||||
|
|
||||||
static const char *tv_format_names[] = {
|
|
||||||
@@ -1363,6 +1364,18 @@ intel_sdvo_hdmi_sink_detect(struct drm_connector *connector)
|
|
||||||
return status;
|
|
||||||
}
|
|
||||||
|
|
||||||
+static bool
|
|
||||||
+intel_sdvo_connector_matches_edid(struct intel_sdvo_connector *sdvo,
|
|
||||||
+ struct edid *edid)
|
|
||||||
+{
|
|
||||||
+ bool monitor_is_digital = !!(edid->input & DRM_EDID_INPUT_DIGITAL);
|
|
||||||
+ bool connector_is_digital = !!IS_DIGITAL(sdvo);
|
|
||||||
+
|
|
||||||
+ DRM_DEBUG_KMS("connector_is_digital? %d, monitor_is_digital? %d\n",
|
|
||||||
+ connector_is_digital, monitor_is_digital);
|
|
||||||
+ return connector_is_digital == monitor_is_digital;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
static enum drm_connector_status
|
|
||||||
intel_sdvo_detect(struct drm_connector *connector, bool force)
|
|
||||||
{
|
|
||||||
@@ -1407,10 +1420,12 @@ intel_sdvo_detect(struct drm_connector *connector, bool force)
|
|
||||||
if (edid == NULL)
|
|
||||||
edid = intel_sdvo_get_analog_edid(connector);
|
|
||||||
if (edid != NULL) {
|
|
||||||
- if (edid->input & DRM_EDID_INPUT_DIGITAL)
|
|
||||||
- ret = connector_status_disconnected;
|
|
||||||
- else
|
|
||||||
+ if (intel_sdvo_connector_matches_edid(intel_sdvo_connector,
|
|
||||||
+ edid))
|
|
||||||
ret = connector_status_connected;
|
|
||||||
+ else
|
|
||||||
+ ret = connector_status_disconnected;
|
|
||||||
+
|
|
||||||
connector->display_info.raw_edid = NULL;
|
|
||||||
kfree(edid);
|
|
||||||
} else
|
|
||||||
@@ -1451,11 +1466,8 @@ static void intel_sdvo_get_ddc_modes(struct drm_connector *connector)
|
|
||||||
edid = intel_sdvo_get_analog_edid(connector);
|
|
||||||
|
|
||||||
if (edid != NULL) {
|
|
||||||
- struct intel_sdvo_connector *intel_sdvo_connector = to_intel_sdvo_connector(connector);
|
|
||||||
- bool monitor_is_digital = !!(edid->input & DRM_EDID_INPUT_DIGITAL);
|
|
||||||
- bool connector_is_digital = !!IS_TMDS(intel_sdvo_connector);
|
|
||||||
-
|
|
||||||
- if (connector_is_digital == monitor_is_digital) {
|
|
||||||
+ if (intel_sdvo_connector_matches_edid(to_intel_sdvo_connector(connector),
|
|
||||||
+ edid)) {
|
|
||||||
drm_mode_connector_update_edid_property(connector, edid);
|
|
||||||
drm_add_edid_modes(connector, edid);
|
|
||||||
}
|
|
||||||
--
|
|
||||||
1.7.5.4
|
|
||||||
|
|
10
kernel.spec
10
kernel.spec
@ -85,9 +85,9 @@ Summary: The Linux kernel
|
|||||||
# The next upstream release sublevel (base_sublevel+1)
|
# The next upstream release sublevel (base_sublevel+1)
|
||||||
%define upstream_sublevel %(echo $((%{base_sublevel} + 1)))
|
%define upstream_sublevel %(echo $((%{base_sublevel} + 1)))
|
||||||
# The rc snapshot level
|
# The rc snapshot level
|
||||||
%define rcrev 5
|
%define rcrev 6
|
||||||
# The git snapshot level
|
# The git snapshot level
|
||||||
%define gitrev 4
|
%define gitrev 0
|
||||||
# Set rpm version accordingly
|
# Set rpm version accordingly
|
||||||
%define rpmversion 3.%{upstream_sublevel}.0
|
%define rpmversion 3.%{upstream_sublevel}.0
|
||||||
%endif
|
%endif
|
||||||
@ -681,8 +681,6 @@ Patch1700: drm-edid-try-harder-to-fix-up-broken-headers.patch
|
|||||||
# nouveau + drm fixes
|
# nouveau + drm fixes
|
||||||
# intel drm is all merged upstream
|
# intel drm is all merged upstream
|
||||||
Patch1824: drm-intel-next.patch
|
Patch1824: drm-intel-next.patch
|
||||||
# rhbz#729882, https://bugs.freedesktop.org/attachment.cgi?id=49069
|
|
||||||
Patch1826: drm-i915-sdvo-lvds-is-digital.patch
|
|
||||||
|
|
||||||
Patch1900: linux-2.6-intel-iommu-igfx.patch
|
Patch1900: linux-2.6-intel-iommu-igfx.patch
|
||||||
|
|
||||||
@ -1368,7 +1366,6 @@ ApplyPatch drm-edid-try-harder-to-fix-up-broken-headers.patch
|
|||||||
|
|
||||||
# Intel DRM
|
# Intel DRM
|
||||||
ApplyOptionalPatch drm-intel-next.patch
|
ApplyOptionalPatch drm-intel-next.patch
|
||||||
ApplyPatch drm-i915-sdvo-lvds-is-digital.patch
|
|
||||||
|
|
||||||
ApplyPatch linux-2.6-intel-iommu-igfx.patch
|
ApplyPatch linux-2.6-intel-iommu-igfx.patch
|
||||||
|
|
||||||
@ -2233,6 +2230,9 @@ fi
|
|||||||
# ||----w |
|
# ||----w |
|
||||||
# || ||
|
# || ||
|
||||||
%changelog
|
%changelog
|
||||||
|
* Sat Dec 17 2011 Josh Boyer <jwboyer@redhat.com> - 3.2.0-0.rc6.git0.1
|
||||||
|
- Linux 3.2-rc6
|
||||||
|
|
||||||
* Fri Dec 16 2011 Dave Jones <davej@redhat.com> - 3.2.0-0.rc5.git4.1
|
* Fri Dec 16 2011 Dave Jones <davej@redhat.com> - 3.2.0-0.rc5.git4.1
|
||||||
- Linux 3.2-rc5-git4 (6f12d2ee52dcf97dcefdadbd500e7650311eaa6a)
|
- Linux 3.2-rc5-git4 (6f12d2ee52dcf97dcefdadbd500e7650311eaa6a)
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From e13491e4c394907ffdd834aeccca279213818079 Mon Sep 17 00:00:00 2001
|
From 602e1f209dd983e40d989e871cd253e8187899b8 Mon Sep 17 00:00:00 2001
|
||||||
From: drago01 <drago01@gmail.com>
|
From: drago01 <drago01@gmail.com>
|
||||||
Date: Wed, 26 Oct 2011 13:37:27 -0400
|
Date: Wed, 26 Oct 2011 13:37:27 -0400
|
||||||
Subject: [PATCH] Default to igfx_off
|
Subject: [PATCH] Default to igfx_off
|
||||||
@ -21,10 +21,10 @@ Reviewed-by: Adam Jackson <ajax@redhat.com>
|
|||||||
2 files changed, 10 insertions(+), 10 deletions(-)
|
2 files changed, 10 insertions(+), 10 deletions(-)
|
||||||
|
|
||||||
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
|
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
|
||||||
index a8ba119..8ddc43a 100644
|
index 81c287f..ee5693b 100644
|
||||||
--- a/Documentation/kernel-parameters.txt
|
--- a/Documentation/kernel-parameters.txt
|
||||||
+++ b/Documentation/kernel-parameters.txt
|
+++ b/Documentation/kernel-parameters.txt
|
||||||
@@ -998,12 +998,11 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
|
@@ -1014,12 +1014,11 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
|
||||||
Enable intel iommu driver.
|
Enable intel iommu driver.
|
||||||
off
|
off
|
||||||
Disable intel iommu driver.
|
Disable intel iommu driver.
|
||||||
@ -43,12 +43,12 @@ index a8ba119..8ddc43a 100644
|
|||||||
With this option iommu will not optimize to look
|
With this option iommu will not optimize to look
|
||||||
for io virtual address below 32-bit forcing dual
|
for io virtual address below 32-bit forcing dual
|
||||||
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
|
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
|
||||||
index be1953c..2e23af1 100644
|
index bdc447f..240db6b 100644
|
||||||
--- a/drivers/iommu/intel-iommu.c
|
--- a/drivers/iommu/intel-iommu.c
|
||||||
+++ b/drivers/iommu/intel-iommu.c
|
+++ b/drivers/iommu/intel-iommu.c
|
||||||
@@ -404,7 +404,8 @@ int dmar_disabled = 0;
|
@@ -408,7 +408,8 @@ int dmar_disabled = 1;
|
||||||
int dmar_disabled = 1;
|
int intel_iommu_enabled = 0;
|
||||||
#endif /*CONFIG_INTEL_IOMMU_DEFAULT_ON*/
|
EXPORT_SYMBOL_GPL(intel_iommu_enabled);
|
||||||
|
|
||||||
-static int dmar_map_gfx = 1;
|
-static int dmar_map_gfx = 1;
|
||||||
+/* disabled by default; causes way too many issues */
|
+/* disabled by default; causes way too many issues */
|
||||||
@ -56,7 +56,7 @@ index be1953c..2e23af1 100644
|
|||||||
static int dmar_forcedac;
|
static int dmar_forcedac;
|
||||||
static int intel_iommu_strict;
|
static int intel_iommu_strict;
|
||||||
static int intel_iommu_superpage = 1;
|
static int intel_iommu_superpage = 1;
|
||||||
@@ -429,10 +430,10 @@ static int __init intel_iommu_setup(char *str)
|
@@ -433,10 +434,10 @@ static int __init intel_iommu_setup(char *str)
|
||||||
} else if (!strncmp(str, "off", 3)) {
|
} else if (!strncmp(str, "off", 3)) {
|
||||||
dmar_disabled = 1;
|
dmar_disabled = 1;
|
||||||
printk(KERN_INFO "Intel-IOMMU: disabled\n");
|
printk(KERN_INFO "Intel-IOMMU: disabled\n");
|
||||||
@ -71,5 +71,5 @@ index be1953c..2e23af1 100644
|
|||||||
printk(KERN_INFO
|
printk(KERN_INFO
|
||||||
"Intel-IOMMU: Forcing DAC for PCI devices\n");
|
"Intel-IOMMU: Forcing DAC for PCI devices\n");
|
||||||
--
|
--
|
||||||
1.7.6.4
|
1.7.7.4
|
||||||
|
|
||||||
|
3
sources
3
sources
@ -1,4 +1,3 @@
|
|||||||
8d43453f8159b2332ad410b19d86a931 linux-3.1.tar.bz2
|
8d43453f8159b2332ad410b19d86a931 linux-3.1.tar.bz2
|
||||||
83560f29ec67cb44535c5d66d6cf9606 patch-3.2-rc5.xz
|
020a0ea456f0f061bf8d7c52c3670421 patch-3.2-rc6.xz
|
||||||
5360f273d6b9e930675bf48f9aad33f7 compat-wireless-2011-12-01.tar.bz2
|
5360f273d6b9e930675bf48f9aad33f7 compat-wireless-2011-12-01.tar.bz2
|
||||||
e870c2d57d892783c3929ac66ed7250c patch-3.2-rc5-git4.xz
|
|
||||||
|
Loading…
Reference in New Issue
Block a user