diff options
Diffstat (limited to 'drivers/gpu/drm/i915/intel_display.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_display.c | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 1204d26b50db..67d06fd29d8c 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c | |||
@@ -751,6 +751,7 @@ static void intel_crtc_mode_set(struct drm_crtc *crtc, | |||
751 | is_lvds = true; | 751 | is_lvds = true; |
752 | break; | 752 | break; |
753 | case INTEL_OUTPUT_SDVO: | 753 | case INTEL_OUTPUT_SDVO: |
754 | case INTEL_OUTPUT_HDMI: | ||
754 | is_sdvo = true; | 755 | is_sdvo = true; |
755 | break; | 756 | break; |
756 | case INTEL_OUTPUT_DVO: | 757 | case INTEL_OUTPUT_DVO: |
@@ -1443,8 +1444,15 @@ static void intel_setup_outputs(struct drm_device *dev) | |||
1443 | intel_lvds_init(dev); | 1444 | intel_lvds_init(dev); |
1444 | 1445 | ||
1445 | if (IS_I9XX(dev)) { | 1446 | if (IS_I9XX(dev)) { |
1446 | intel_sdvo_init(dev, SDVOB); | 1447 | int found; |
1447 | intel_sdvo_init(dev, SDVOC); | 1448 | |
1449 | found = intel_sdvo_init(dev, SDVOB); | ||
1450 | if (!found && SUPPORTS_INTEGRATED_HDMI(dev)) | ||
1451 | intel_hdmi_init(dev, SDVOB); | ||
1452 | |||
1453 | found = intel_sdvo_init(dev, SDVOC); | ||
1454 | if (!found && SUPPORTS_INTEGRATED_HDMI(dev)) | ||
1455 | intel_hdmi_init(dev, SDVOC); | ||
1448 | } else | 1456 | } else |
1449 | intel_dvo_init(dev); | 1457 | intel_dvo_init(dev); |
1450 | 1458 | ||
@@ -1458,6 +1466,11 @@ static void intel_setup_outputs(struct drm_device *dev) | |||
1458 | 1466 | ||
1459 | /* valid crtcs */ | 1467 | /* valid crtcs */ |
1460 | switch(intel_output->type) { | 1468 | switch(intel_output->type) { |
1469 | case INTEL_OUTPUT_HDMI: | ||
1470 | crtc_mask = ((1 << 0)| | ||
1471 | (1 << 1)); | ||
1472 | clone_mask = ((1 << INTEL_OUTPUT_HDMI)); | ||
1473 | break; | ||
1461 | case INTEL_OUTPUT_DVO: | 1474 | case INTEL_OUTPUT_DVO: |
1462 | case INTEL_OUTPUT_SDVO: | 1475 | case INTEL_OUTPUT_SDVO: |
1463 | crtc_mask = ((1 << 0)| | 1476 | crtc_mask = ((1 << 0)| |