Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7c8460db authored by Zhenyu Wang's avatar Zhenyu Wang Committed by Linus Torvalds
Browse files

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: default avatarZhenyu Wang <zhenyuw@linux.intel.com>
Reported-and-tested-by: default avatarCarlos R. Mafra <crmafra2@gmail.com>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 3ff323f8
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -1263,7 +1263,7 @@ intel_dp_init(struct drm_device *dev, int output_reg)


	if (IS_eDP(intel_output)) {
	if (IS_eDP(intel_output)) {
		intel_output->crtc_mask = (1 << 1);
		intel_output->crtc_mask = (1 << 1);
		intel_output->clone_mask = (1 << INTEL_OUTPUT_EDP);
		intel_output->clone_mask = (1 << INTEL_EDP_CLONE_BIT);
	} else
	} else
		intel_output->crtc_mask = (1 << 0) | (1 << 1);
		intel_output->crtc_mask = (1 << 0) | (1 << 1);
	connector->interlace_allowed = true;
	connector->interlace_allowed = true;
+1 −0
Original line number Original line Diff line number Diff line
@@ -74,6 +74,7 @@
#define INTEL_LVDS_CLONE_BIT 14
#define INTEL_LVDS_CLONE_BIT 14
#define INTEL_DVO_TMDS_CLONE_BIT 15
#define INTEL_DVO_TMDS_CLONE_BIT 15
#define INTEL_DVO_LVDS_CLONE_BIT 16
#define INTEL_DVO_LVDS_CLONE_BIT 16
#define INTEL_EDP_CLONE_BIT 17


#define INTEL_DVO_CHIP_NONE 0
#define INTEL_DVO_CHIP_NONE 0
#define INTEL_DVO_CHIP_LVDS 1
#define INTEL_DVO_CHIP_LVDS 1
+1 −0
Original line number Original line Diff line number Diff line
@@ -1730,6 +1730,7 @@ intel_tv_init(struct drm_device *dev)
	drm_mode_connector_attach_encoder(&intel_output->base, &intel_output->enc);
	drm_mode_connector_attach_encoder(&intel_output->base, &intel_output->enc);
	tv_priv = (struct intel_tv_priv *)(intel_output + 1);
	tv_priv = (struct intel_tv_priv *)(intel_output + 1);
	intel_output->type = INTEL_OUTPUT_TVOUT;
	intel_output->type = INTEL_OUTPUT_TVOUT;
	intel_output->crtc_mask = (1 << 0) | (1 << 1);
	intel_output->clone_mask = (1 << INTEL_TV_CLONE_BIT);
	intel_output->clone_mask = (1 << INTEL_TV_CLONE_BIT);
	intel_output->enc.possible_crtcs = ((1 << 0) | (1 << 1));
	intel_output->enc.possible_crtcs = ((1 << 0) | (1 << 1));
	intel_output->enc.possible_clones = (1 << INTEL_OUTPUT_TVOUT);
	intel_output->enc.possible_clones = (1 << INTEL_OUTPUT_TVOUT);