From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kamal Mostafa Subject: Re: [PATCH for stable 3.14 only 1/1] drm/i915: restore QUIRK_NO_PCH_PWM_ENABLE Date: Tue, 29 Apr 2014 09:32:06 -0700 Message-ID: <1398789126.9518.33.camel@fourier> References: Mime-Version: 1.0 Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-z20Bv2MOkd5UEMs7V1KD" Return-path: In-Reply-To: Sender: stable-owner@vger.kernel.org To: Jani Nikula Cc: stable@vger.kernel.org, Greg Kroah-Hartman , intel-gfx@lists.freedesktop.org, daniel@ffwll.ch, Romain Francoise List-Id: intel-gfx@lists.freedesktop.org --=-z20Bv2MOkd5UEMs7V1KD Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, 2014-04-28 at 13:10 +0300, Jani Nikula wrote: > This reverts the bisected regressing >=20 > commit bc0bb9fd1c7810407ab810d204bbaecb255fddde > Author: Jani Nikula > Date: Thu Nov 14 12:14:29 2013 +0200 >=20 > drm/i915: remove QUIRK_NO_PCH_PWM_ENABLE >=20 > restoring QUIRK_NO_PCH_PWM_ENABLE for a couple of Dell XPS models which > broke in 3.14. Confirmed: This patch (restore QUIRK_NO_PCH_PWM_ENABLE) on top of 3.14.2 does fix it again for the two affected models. Tested-by: Kamal Mostafa Thanks, Jani! -Kamal > There is no such revert upstream. We have root caused and fixed the > issue upstream, without the quirk, with: >=20 > commit 39fbc9c8f6765959b55e0b127dd5c57df5a47d67 > Author: Jani Nikula > Date: Wed Apr 9 11:22:06 2014 +0300 >=20 > drm/i915: check VBT for supported backlight type >=20 > and >=20 > commit c675949ec58ca50d5a3ae3c757892f1560f6e896 > Author: Jani Nikula > Date: Wed Apr 9 11:31:37 2014 +0300 >=20 > drm/i915: do not setup backlight if not available according to VBT >=20 > While the commits are within the stable rules otherwise, and fix more > machines than just the regressed Dell XPS models, we feel backporting > them to stable may be too risky. The revert is limited to the broken > machines, and the impact should be effectively the same as what the > upstream commits do more generally. >=20 > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=3D76276 > Reported-by: Romain Francoise > CC: Kamal Mostafa > CC: Daniel Vetter > CC: stable@vger.kernel.org (3.14 only) > Signed-off-by: Jani Nikula > --- > drivers/gpu/drm/i915/i915_drv.h | 1 + > drivers/gpu/drm/i915/intel_display.c | 16 ++++++++++++++++ > drivers/gpu/drm/i915/intel_panel.c | 4 ++++ > 3 files changed, 21 insertions(+) >=20 > diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_= drv.h > index df77e20e3c3d..697f2150a997 100644 > --- a/drivers/gpu/drm/i915/i915_drv.h > +++ b/drivers/gpu/drm/i915/i915_drv.h > @@ -734,6 +734,7 @@ enum intel_sbi_destination { > #define QUIRK_PIPEA_FORCE (1<<0) > #define QUIRK_LVDS_SSC_DISABLE (1<<1) > #define QUIRK_INVERT_BRIGHTNESS (1<<2) > +#define QUIRK_NO_PCH_PWM_ENABLE (1<<3) > =20 > struct intel_fbdev; > struct intel_fbc_work; > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/= intel_display.c > index 9b8a7c7ea7fc..963639d9049b 100644 > --- a/drivers/gpu/drm/i915/intel_display.c > +++ b/drivers/gpu/drm/i915/intel_display.c > @@ -10771,6 +10771,17 @@ static void quirk_invert_brightness(struct drm_d= evice *dev) > DRM_INFO("applying inverted panel brightness quirk\n"); > } > =20 > +/* > + * Some machines (Dell XPS13) suffer broken backlight controls if > + * BLM_PCH_PWM_ENABLE is set. > + */ > +static void quirk_no_pcm_pwm_enable(struct drm_device *dev) > +{ > + struct drm_i915_private *dev_priv =3D dev->dev_private; > + dev_priv->quirks |=3D QUIRK_NO_PCH_PWM_ENABLE; > + DRM_INFO("applying no-PCH_PWM_ENABLE quirk\n"); > +} > + > struct intel_quirk { > int device; > int subsystem_vendor; > @@ -10839,6 +10850,11 @@ static struct intel_quirk intel_quirks[] =3D { > =20 > /* Acer Aspire 4736Z */ > { 0x2a42, 0x1025, 0x0260, quirk_invert_brightness }, > + > + /* Dell XPS13 HD Sandy Bridge */ > + { 0x0116, 0x1028, 0x052e, quirk_no_pcm_pwm_enable }, > + /* Dell XPS13 HD and XPS13 FHD Ivy Bridge */ > + { 0x0166, 0x1028, 0x058b, quirk_no_pcm_pwm_enable }, > }; > =20 > static void intel_init_quirks(struct drm_device *dev) > diff --git a/drivers/gpu/drm/i915/intel_panel.c b/drivers/gpu/drm/i915/in= tel_panel.c > index 079ea38f14d9..9f1d7a9300e8 100644 > --- a/drivers/gpu/drm/i915/intel_panel.c > +++ b/drivers/gpu/drm/i915/intel_panel.c > @@ -671,6 +671,10 @@ static void pch_enable_backlight(struct intel_connec= tor *connector) > pch_ctl2 =3D panel->backlight.max << 16; > I915_WRITE(BLC_PWM_PCH_CTL2, pch_ctl2); > =20 > + /* XXX: transitional */ > + if (dev_priv->quirks & QUIRK_NO_PCH_PWM_ENABLE) > + return; > + > pch_ctl1 =3D 0; > if (panel->backlight.active_low_pwm) > pch_ctl1 |=3D BLM_PCH_POLARITY; --=-z20Bv2MOkd5UEMs7V1KD Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAABCAAGBQJTX9QGAAoJEHqwmdxYrXhZTu0QAIVgnY51Cx1DAysfubdBuB9M ivVSSmeRgmndgM7cIix9QMyonWtVw6KWW/vbUVptObunJADnvKfkzUhDaUGU2IEE aM/LZcpD2m3/9Aqv2cwu+sGTx7zcEWz5QH9mQPX5rebwvIT/YHBRDVLy3SnSyVzQ gyO+8OOpGp/gqPdPfHzFe9kSci/CUiL51k38jkq3GSe+tvXNpuQxs2yprvPyWvmX 9py/wNWmAI2T7ALvcXB3KVs3HghEA2Sww9OeZjCaVkXB+ZgdRzVpkMQN+NBqCylt SfiaATTtsNekoOQ7k5wTzxA4GMfSvdOvtIm3cPuLJyRHsAS505SEpPXpirxyenKh mf/gWz5iL9b606cZ2BN8oFQaZDSrgi02DCsuW8AdS317zLN2OTpd2Px8xI+jSMcL y3ibZ2AqREvVkm7Np/1PVu6hp+CVOV2AvFyF/GPtHC67adxR7SQXIfNN3YMlXR1F UYsvA1Hk8ygaMzSMJ0TVp5G+WGVvfZfACQkVDgaJz/mgDFi+GmtltK/NWcoBCQWI ERHtSSk5NcCij8o7KUk3nyk3n13cHQgjPIFzDstDwiIAB1ME8oDVq7P2e2MJSe7W UdTDsx95Jp/dglhdkMyLel2ahJhbuN9ExNQrfJMl/aNBawl+kZ0XCi+Q6Synmbcu TOJr9UETPaWAIVBUVtY9 =YdeG -----END PGP SIGNATURE----- --=-z20Bv2MOkd5UEMs7V1KD--