From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 2/2] drm/edid: Add 6 bpc quirk for display AEO model 0. Date: Tue, 14 Jun 2016 13:44:49 +0300 Message-ID: <20160614104449.GS4329@intel.com> References: <1464273544-23834-1-git-send-email-mario.kleiner.de@gmail.com> <1464273544-23834-3-git-send-email-mario.kleiner.de@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id 778406E712 for ; Tue, 14 Jun 2016 10:44:53 +0000 (UTC) Content-Disposition: inline In-Reply-To: <1464273544-23834-3-git-send-email-mario.kleiner.de@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Mario Kleiner Cc: Jani Nikula , Daniel Vetter , stable@vger.kernel.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gVGh1LCBNYXkgMjYsIDIwMTYgYXQgMDQ6Mzk6MDRQTSArMDIwMCwgTWFyaW8gS2xlaW5lciB3 cm90ZToKPiBCdWd6aWxsYSBodHRwczovL2J1Z3ppbGxhLmtlcm5lbC5vcmcvc2hvd19idWcuY2dp P2lkPTEwNTMzMQo+IHJlcG9ydHMgdGhhdCB0aGUgIkFFTyBtb2RlbCAwIiBkaXNwbGF5IGlzIGRy aXZlbiB3aXRoIDggYnBjCj4gd2l0aG91dCBkaXRoZXJpbmcgYnkgZGVmYXVsdCwgd2hpY2ggbG9v a3MgYmFkIGJlY2F1c2UgdGhhdAo+IHBhbmVsIGlzIGFwcGFyZW50bHkgYSA2IGJwYyBEUCBwYW5l bCB3aXRoIGZhdWx0eSBFRElELgo+IAo+IEEgZml4IGZvciB0aGlzIHdhcyBtYWRlIGJ5IGNvbW1p dCAwMTNkZDllMDM4NzIKPiAoImRybS9pOTE1L2RwOiBmYWxsIGJhY2sgdG8gMTggYnBwIHdoZW4g c2luayBjYXBhYmlsaXR5IGlzIHVua25vd24iKS4KPiAKPiBUaGF0IGNvbW1pdCB0cmlnZ2VycyBu ZXcgcmVncmVzc2lvbnMgaW4gcHJlY2lzaW9uIGZvciBEUC0+RFZJIGFuZAo+IERQLT5WR0EgZGlz cGxheXMuIEEgcGF0Y2ggaXMgb3V0IHRvIHJldmVydCB0aGF0IGNvbW1pdCwgYnV0IGl0IHdpbGwK PiByZXZlcnQgdmlkZW8gb3V0cHV0IGZvciB0aGUgQUVPIG1vZGVsIDAgcGFuZWwgdG8gOCBicGMg d2l0aG91dAo+IGRpdGhlcmluZy4KPiAKPiBUaGUgRURJRCAxLjMgb2YgdGhhdCBwYW5lbCwgYXMg ZGVjb2RlZCBmcm9tIHRoZSB4cmFuZHIgb3V0cHV0Cj4gYXR0YWNoZWQgdG8gdGhhdCBidWd6aWxs YSBidWcgcmVwb3J0LCBpcyBzb21ld2hhdCBmYXVsdHksIGFuZCBiZXlvbmQKPiBvdGhlciBwcm9i bGVtcyBhbHNvIHNldHMgdGhlICJERlAgMS54IGNvbXBsaWFudCBUTURTIiBiaXQsIHdoaWNoCj4g YWNjb3JkaW5nIHRvIERGUCBzcGVjIG1lYW5zIHRvIGRyaXZlIHRoZSBwYW5lbCB3aXRoIDggYnBj IGFuZAo+IG5vIGRpdGhlcmluZyBpbiBhYnNlbmNlIG9mIG90aGVyIGNvbG9yaW1ldHJ5IGluZm9y bWF0aW9uLgo+IAo+IFRyeSB0byBtYWtlIHRoZSBvcmlnaW5hbCBidWcgcmVwb3J0ZXIgaGFwcHkg ZGVzcGl0ZSB0aGUKPiBmYXVsdHkgRURJRCBieSBhZGRpbmcgYSBxdWlyayB0byBtYXJrIHRoYXQg cGFuZWwgYXMgNiBicGMsCj4gc28gNiBicGMgb3V0cHV0IHdpdGggZGl0aGVyaW5nIGNyZWF0ZXMg YSBuaWNlIHBpY3R1cmUuCj4gCj4gVGVzdGVkIGJ5IGluamVjdGluZyB0aGUgZWRpZCBmcm9tIHRo ZSBmZG8gYnVnIGludG8gYSBEUCBjb25uZWN0b3IKPiB2aWEgZHJtX2ttc19oZWxwZXIuZWRpZF9m aXJtd2FyZSBhbmQgdmVyaWZ5aW5nIHRoZSA2IGJwYyArIGRpdGhlcmluZwo+IGlzIHNlbGVjdGVk Lgo+IAo+IFRoaXMgcGF0Y2ggc2hvdWxkIGJlIGJhY2twb3J0ZWQgdG8gc3RhYmxlLgo+IAo+IFNp Z25lZC1vZmYtYnk6IE1hcmlvIEtsZWluZXIgPG1hcmlvLmtsZWluZXIuZGVAZ21haWwuY29tPgo+ IENjOiBzdGFibGVAdmdlci5rZXJuZWwub3JnCj4gQ2M6IEphbmkgTmlrdWxhIDxqYW5pLm5pa3Vs YUBpbnRlbC5jb20+Cj4gQ2M6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5p bnRlbC5jb20+Cj4gQ2M6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+CgpO b3cgSSdtIGNvbmZ1c2VkLiBJIHRob3VnaHQgd2UgZGlkbid0IG5lZWQgYW55IHF1aXJrcz8KCj4g LS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5jIHwgOCArKysrKysrKwo+ICAxIGZpbGUg Y2hhbmdlZCwgOCBpbnNlcnRpb25zKCspCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9kcm1fZWRpZC5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMKPiBpbmRleCA3ZGYyNmQ0 Li4yY2I0NzJiIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5jCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMKPiBAQCAtNzQsNiArNzQsOCBAQAo+ICAjZGVm aW5lIEVESURfUVVJUktfRk9SQ0VfOEJQQwkJCSgxIDw8IDgpCj4gIC8qIEZvcmNlIDEyYnBjICov Cj4gICNkZWZpbmUgRURJRF9RVUlSS19GT1JDRV8xMkJQQwkJCSgxIDw8IDkpCj4gKy8qIEZvcmNl IDZicGMgKi8KPiArI2RlZmluZSBFRElEX1FVSVJLX0ZPUkNFXzZCUEMJCQkoMSA8PCAxMCkKPiAg Cj4gIHN0cnVjdCBkZXRhaWxlZF9tb2RlX2Nsb3N1cmUgewo+ICAJc3RydWN0IGRybV9jb25uZWN0 b3IgKmNvbm5lY3RvcjsKPiBAQCAtMTAwLDYgKzEwMiw5IEBAIHN0YXRpYyBzdHJ1Y3QgZWRpZF9x dWlyayB7Cj4gIAkvKiBVbmtub3duIEFjZXIgKi8KPiAgCXsgIkFDUiIsIDI0MjMsIEVESURfUVVJ UktfRklSU1RfREVUQUlMRURfUFJFRkVSUkVEIH0sCj4gIAo+ICsJLyogQUVPIG1vZGVsIDAgcmVw b3J0cyA4IGJwYywgYnV0IGlzIGEgNiBicGMgcGFuZWwgKi8KPiArCXsgIkFFTyIsIDAsIEVESURf UVVJUktfRk9SQ0VfNkJQQyB9LAo+ICsKPiAgCS8qIEJlbGluZWEgMTAgMTUgNTUgKi8KPiAgCXsg Ik1BWCIsIDE1MTYsIEVESURfUVVJUktfUFJFRkVSX0xBUkdFXzYwIH0sCj4gIAl7ICJNQVgiLCAw eDc3ZSwgRURJRF9RVUlSS19QUkVGRVJfTEFSR0VfNjAgfSwKPiBAQCAtNDA4Miw2ICs0MDg3LDkg QEAgaW50IGRybV9hZGRfZWRpZF9tb2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9y LCBzdHJ1Y3QgZWRpZCAqZWRpZCkKPiAgCj4gIAlkcm1fYWRkX2Rpc3BsYXlfaW5mbyhlZGlkLCAm Y29ubmVjdG9yLT5kaXNwbGF5X2luZm8sIGNvbm5lY3Rvcik7Cj4gIAo+ICsJaWYgKHF1aXJrcyAm IEVESURfUVVJUktfRk9SQ0VfNkJQQykKPiArCQljb25uZWN0b3ItPmRpc3BsYXlfaW5mby5icGMg PSA2Owo+ICsKPiAgCWlmIChxdWlya3MgJiBFRElEX1FVSVJLX0ZPUkNFXzhCUEMpCj4gIAkJY29u bmVjdG9yLT5kaXNwbGF5X2luZm8uYnBjID0gODsKPiAgCj4gLS0gCj4gMi43LjAKCi0tIApWaWxs ZSBTeXJqw6Rsw6QKSW50ZWwgT1RDCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2RyaS1kZXZlbAo= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com ([134.134.136.65]:39405 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750805AbcFNKoy (ORCPT ); Tue, 14 Jun 2016 06:44:54 -0400 Date: Tue, 14 Jun 2016 13:44:49 +0300 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= To: Mario Kleiner Cc: dri-devel@lists.freedesktop.org, stable@vger.kernel.org, Jani Nikula , Daniel Vetter Subject: Re: [PATCH 2/2] drm/edid: Add 6 bpc quirk for display AEO model 0. Message-ID: <20160614104449.GS4329@intel.com> References: <1464273544-23834-1-git-send-email-mario.kleiner.de@gmail.com> <1464273544-23834-3-git-send-email-mario.kleiner.de@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <1464273544-23834-3-git-send-email-mario.kleiner.de@gmail.com> Sender: stable-owner@vger.kernel.org List-ID: On Thu, May 26, 2016 at 04:39:04PM +0200, Mario Kleiner wrote: > Bugzilla https://bugzilla.kernel.org/show_bug.cgi?id=105331 > reports that the "AEO model 0" display is driven with 8 bpc > without dithering by default, which looks bad because that > panel is apparently a 6 bpc DP panel with faulty EDID. > > A fix for this was made by commit 013dd9e03872 > ("drm/i915/dp: fall back to 18 bpp when sink capability is unknown"). > > That commit triggers new regressions in precision for DP->DVI and > DP->VGA displays. A patch is out to revert that commit, but it will > revert video output for the AEO model 0 panel to 8 bpc without > dithering. > > The EDID 1.3 of that panel, as decoded from the xrandr output > attached to that bugzilla bug report, is somewhat faulty, and beyond > other problems also sets the "DFP 1.x compliant TMDS" bit, which > according to DFP spec means to drive the panel with 8 bpc and > no dithering in absence of other colorimetry information. > > Try to make the original bug reporter happy despite the > faulty EDID by adding a quirk to mark that panel as 6 bpc, > so 6 bpc output with dithering creates a nice picture. > > Tested by injecting the edid from the fdo bug into a DP connector > via drm_kms_helper.edid_firmware and verifying the 6 bpc + dithering > is selected. > > This patch should be backported to stable. > > Signed-off-by: Mario Kleiner > Cc: stable@vger.kernel.org > Cc: Jani Nikula > Cc: Ville Syrj�l� > Cc: Daniel Vetter Now I'm confused. I thought we didn't need any quirks? > --- > drivers/gpu/drm/drm_edid.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c > index 7df26d4..2cb472b 100644 > --- a/drivers/gpu/drm/drm_edid.c > +++ b/drivers/gpu/drm/drm_edid.c > @@ -74,6 +74,8 @@ > #define EDID_QUIRK_FORCE_8BPC (1 << 8) > /* Force 12bpc */ > #define EDID_QUIRK_FORCE_12BPC (1 << 9) > +/* Force 6bpc */ > +#define EDID_QUIRK_FORCE_6BPC (1 << 10) > > struct detailed_mode_closure { > struct drm_connector *connector; > @@ -100,6 +102,9 @@ static struct edid_quirk { > /* Unknown Acer */ > { "ACR", 2423, EDID_QUIRK_FIRST_DETAILED_PREFERRED }, > > + /* AEO model 0 reports 8 bpc, but is a 6 bpc panel */ > + { "AEO", 0, EDID_QUIRK_FORCE_6BPC }, > + > /* Belinea 10 15 55 */ > { "MAX", 1516, EDID_QUIRK_PREFER_LARGE_60 }, > { "MAX", 0x77e, EDID_QUIRK_PREFER_LARGE_60 }, > @@ -4082,6 +4087,9 @@ int drm_add_edid_modes(struct drm_connector *connector, struct edid *edid) > > drm_add_display_info(edid, &connector->display_info, connector); > > + if (quirks & EDID_QUIRK_FORCE_6BPC) > + connector->display_info.bpc = 6; > + > if (quirks & EDID_QUIRK_FORCE_8BPC) > connector->display_info.bpc = 8; > > -- > 2.7.0 -- Ville Syrj�l� Intel OTC