Re: [PATCH 4/4] drm/i915: Allow HDMI+HDMI cloning on g4x

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Mar 05, 2014 at 07:21:58PM +0100, Daniel Vetter wrote:
> On Mon, Mar 03, 2014 at 04:15:31PM +0200, ville.syrjala@xxxxxxxxxxxxxxx wrote:
> > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
> > 
> > BSpec is a bit unclear whether HDMI+HDMI cloning should work on g4x.
> > Tests on real hardware say that it does. Since g4x can't send
> > infoframes to more than one HDMI port anyway, we don't lose anything
> > by allow it.
> > 
> > For PCH platforms BSpec explicitly forbids HDMI+HDMI cloning.
> > 
> > Whether HDMI+HDMI cloning might also work on VLV is a bit unclear, but
> > since we'd at least lose the capability of sending infoframes to more
> > than one cloned HDMI port, it doesn't seem like a good idea to allow it.
> > 
> > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=73850
> > Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
> > ---
> >  drivers/gpu/drm/i915/intel_hdmi.c | 7 +++++++
> >  1 file changed, 7 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
> > index 9dacb33..4eb30d8 100644
> > --- a/drivers/gpu/drm/i915/intel_hdmi.c
> > +++ b/drivers/gpu/drm/i915/intel_hdmi.c
> > @@ -1316,6 +1316,13 @@ void intel_hdmi_init(struct drm_device *dev, int hdmi_reg, enum port port)
> >  	intel_encoder->type = INTEL_OUTPUT_HDMI;
> >  	intel_encoder->crtc_mask = (1 << 0) | (1 << 1) | (1 << 2);
> >  	intel_encoder->cloneable = 1 << INTEL_OUTPUT_ANALOG;
> > +	/*
> > +	 * BSpec is unclear about HDMI+HDMI cloning on g4x, but it seems
> > +	 * to work on real hardware. And since g4x can send infoframes to
> > +	 * only one port anyway, nothing is lost by allowing it.
> > +	 */
> > +	if (IS_G4X(dev))
> 
> Why restrict this? The per-encoder infoframe setup should dtrt everywhere
> else I hope ...

As stated in the commit message, BSpec forbids it for PCH.

Additionally the video DIP lives is in the transcoder, and
one transcoder apparently can't send infoframes to more than
one port. I'm not sure how this stuff actually gets routed
in the hardware, but the video DIP control register ususally
has its own port selector bits which can only select one port
at a time.

-- 
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/intel-gfx





[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux