From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH v3] drm/i915: Fake HDMI live status Date: Thu, 21 Apr 2016 15:14:04 +0300 Message-ID: <20160421121404.GM4329@intel.com> References: <1461237606-16491-1-git-send-email-shashank.sharma@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: QUOTED-PRINTABLE Return-path: Content-Disposition: inline In-Reply-To: <1461237606-16491-1-git-send-email-shashank.sharma@intel.com> Sender: stable-owner@vger.kernel.org To: Shashank Sharma Cc: jani.nikula@linux.intel.com, intel-gfx@lists.freedesktop.org, joseph.salisbury@canonical.com, sonika.jindal@intel.com, daniel.vetter@intel.com, stable@vger.kernel.org List-Id: intel-gfx@lists.freedesktop.org On Thu, Apr 21, 2016 at 04:48:32PM +0530, Shashank Sharma wrote: > This patch does the following: > - Fakes live status of HDMI as connected (even if that's not). > While testing certain (monitor + cable) combinations with > various intel platforms, it seems that live status register > doesn't work reliably on some older devices. So limit the > live_status check for HDMI detection, only for platforms > from gen7 onwards. >=20 > Fixes: 237ed86c693d ("drm/i915: Check live status before reading edid= ") > Cc: stable@vger.kernel.org # v4.4 >=20 > V2: restrict faking live_status to certain platforms > V3: (Ville) > - keep the debug message for !live_status case > - fix indentation of comment > - remove "warning" from the debug message >=20 > (Jani) > - Change format of fix details in the commit message >=20 > Suggested-by: Ville Syrjala > Signed-off-by: Shashank Sharma Reviewed-by: Ville Syrj=E4l=E4 > --- > drivers/gpu/drm/i915/intel_hdmi.c | 12 ++++++++++-- > 1 file changed, 10 insertions(+), 2 deletions(-) >=20 > diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915= /intel_hdmi.c > index b199ede..2cdab73 100644 > --- a/drivers/gpu/drm/i915/intel_hdmi.c > +++ b/drivers/gpu/drm/i915/intel_hdmi.c > @@ -1412,8 +1412,16 @@ intel_hdmi_detect(struct drm_connector *connec= tor, bool force) > hdmi_to_dig_port(intel_hdmi)); > } > =20 > - if (!live_status) > - DRM_DEBUG_KMS("Live status not up!"); > + if (!live_status) { > + DRM_DEBUG_KMS("HDMI live status down\n"); > + /* > + * Live status register is not reliable on all intel platforms. > + * So consider live_status only for certain platforms, for > + * others, read EDID to determine presence of sink. > + */ > + if (INTEL_INFO(dev_priv)->gen < 7 || IS_IVYBRIDGE(dev_priv)) > + live_status =3D true; > + } > =20 > intel_hdmi_unset_edid(connector); > =20 > --=20 > 1.9.1 --=20 Ville Syrj=E4l=E4 Intel OTC