aboutsummaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/i915/i915_irq.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2009-06-25 17:04:37 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2009-06-25 17:04:37 -0700
commit987fed3bf6982f2627d4fa242caa9026ef61132a (patch)
tree5f97fbf35fbd2b2868c4783ceec0cfa61990d53a /drivers/gpu/drm/i915/i915_irq.c
parented4fc720e1912eb36ca654d03c88c48845ed39b2 (diff)
parent8b169b5f1f46da8ece1ce7304cda7155fffe3892 (diff)
Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6
* 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (28 commits) drm: remove unused #include <linux/version.h>'s drm/radeon: fix driver initialization order so radeon kms can be builtin drm: Fix shifts which were miscalculated when converting from bitfields. drm/radeon: Clear surface registers at initialization time. drm/radeon: Don't initialize acceleration related fields of struct fb_info. drm/radeon: fix radeon kms framebuffer device drm/i915: initialize fence registers to zero when loading GEM drm/i915: Fix HDMI regression introduced in new chipset support drm/i915: fix LFP data fetch drm/i915: set TV detection mode when tv is already connected drm/i915: Catch up to obj_priv->page_list rename in disabled debug code. drm/i915: Fix size_t handling in off-by-default debug printfs drm/i915: Don't change the blank/sync width when calculating scaled modes drm/i915: Add support for changing LVDS panel fitting using an output property. drm/i915: correct suspend/resume ordering drm/i915: Add missing dependency on Intel AGP support. drm/i915: Generate 2MHz clock for display port aux channel I/O. Retry I/O. drm/i915: Clarify error returns from display port aux channel I/O drm/i915: Add CLKCFG register definition drm/i915: Split array of DAC limits into separate structures. ...
Diffstat (limited to 'drivers/gpu/drm/i915/i915_irq.c')
-rw-r--r--drivers/gpu/drm/i915/i915_irq.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index b86b7b7130c..228546f6eaa 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -232,7 +232,17 @@ static void i915_hotplug_work_func(struct work_struct *work)
drm_i915_private_t *dev_priv = container_of(work, drm_i915_private_t,
hotplug_work);
struct drm_device *dev = dev_priv->dev;
-
+ struct drm_mode_config *mode_config = &dev->mode_config;
+ struct drm_connector *connector;
+
+ if (mode_config->num_connector) {
+ list_for_each_entry(connector, &mode_config->connector_list, head) {
+ struct intel_output *intel_output = to_intel_output(connector);
+
+ if (intel_output->hot_plug)
+ (*intel_output->hot_plug) (intel_output);
+ }
+ }
/* Just fire off a uevent and let userspace tell us what to do */
drm_sysfs_hotplug_event(dev);
}