diff options
author | Zhenyu Wang <zhenyuw@linux.intel.com> | 2009-09-08 02:52:25 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-09-08 13:16:20 -0400 |
commit | 7c8460db30dfd085ef3837c8fb02ecf2e718b983 (patch) | |
tree | 41e501901dc47cde4fc2c61477a6e9b63b286971 /drivers/gpu | |
parent | 3ff323f89075624b6891e7c428edb8e8a35be13c (diff) |
drm/i915: fix mask bits setting
eDP is exclusive connector too, and add missing crtc_mask
setting for TV.
This fixes
http://bugzilla.kernel.org/show_bug.cgi?id=14139
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Reported-and-tested-by: Carlos R. Mafra <crmafra2@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/i915/intel_dp.c | 2 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/intel_drv.h | 1 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/intel_tv.c | 1 |
3 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c index f2afc4af4bc9..2b914d732076 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c | |||
@@ -1263,7 +1263,7 @@ intel_dp_init(struct drm_device *dev, int output_reg) | |||
1263 | 1263 | ||
1264 | if (IS_eDP(intel_output)) { | 1264 | if (IS_eDP(intel_output)) { |
1265 | intel_output->crtc_mask = (1 << 1); | 1265 | intel_output->crtc_mask = (1 << 1); |
1266 | intel_output->clone_mask = (1 << INTEL_OUTPUT_EDP); | 1266 | intel_output->clone_mask = (1 << INTEL_EDP_CLONE_BIT); |
1267 | } else | 1267 | } else |
1268 | intel_output->crtc_mask = (1 << 0) | (1 << 1); | 1268 | intel_output->crtc_mask = (1 << 0) | (1 << 1); |
1269 | connector->interlace_allowed = true; | 1269 | connector->interlace_allowed = true; |
diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h index 25aa6facc12d..26a6227c15fe 100644 --- a/drivers/gpu/drm/i915/intel_drv.h +++ b/drivers/gpu/drm/i915/intel_drv.h | |||
@@ -74,6 +74,7 @@ | |||
74 | #define INTEL_LVDS_CLONE_BIT 14 | 74 | #define INTEL_LVDS_CLONE_BIT 14 |
75 | #define INTEL_DVO_TMDS_CLONE_BIT 15 | 75 | #define INTEL_DVO_TMDS_CLONE_BIT 15 |
76 | #define INTEL_DVO_LVDS_CLONE_BIT 16 | 76 | #define INTEL_DVO_LVDS_CLONE_BIT 16 |
77 | #define INTEL_EDP_CLONE_BIT 17 | ||
77 | 78 | ||
78 | #define INTEL_DVO_CHIP_NONE 0 | 79 | #define INTEL_DVO_CHIP_NONE 0 |
79 | #define INTEL_DVO_CHIP_LVDS 1 | 80 | #define INTEL_DVO_CHIP_LVDS 1 |
diff --git a/drivers/gpu/drm/i915/intel_tv.c b/drivers/gpu/drm/i915/intel_tv.c index 2fbe13a0de81..5b1c9e9fdba0 100644 --- a/drivers/gpu/drm/i915/intel_tv.c +++ b/drivers/gpu/drm/i915/intel_tv.c | |||
@@ -1730,6 +1730,7 @@ intel_tv_init(struct drm_device *dev) | |||
1730 | drm_mode_connector_attach_encoder(&intel_output->base, &intel_output->enc); | 1730 | drm_mode_connector_attach_encoder(&intel_output->base, &intel_output->enc); |
1731 | tv_priv = (struct intel_tv_priv *)(intel_output + 1); | 1731 | tv_priv = (struct intel_tv_priv *)(intel_output + 1); |
1732 | intel_output->type = INTEL_OUTPUT_TVOUT; | 1732 | intel_output->type = INTEL_OUTPUT_TVOUT; |
1733 | intel_output->crtc_mask = (1 << 0) | (1 << 1); | ||
1733 | intel_output->clone_mask = (1 << INTEL_TV_CLONE_BIT); | 1734 | intel_output->clone_mask = (1 << INTEL_TV_CLONE_BIT); |
1734 | intel_output->enc.possible_crtcs = ((1 << 0) | (1 << 1)); | 1735 | intel_output->enc.possible_crtcs = ((1 << 0) | (1 << 1)); |
1735 | intel_output->enc.possible_clones = (1 << INTEL_OUTPUT_TVOUT); | 1736 | intel_output->enc.possible_clones = (1 << INTEL_OUTPUT_TVOUT); |