From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH v2] drm: Clean up the 1366x768 fixup codes Date: Wed, 1 Feb 2017 19:19:10 +0200 Message-ID: <20170201171910.GC31595@intel.com> References: <20170117164329.10551-1-tiwai@suse.de> <20170120194617.GI31595@intel.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 ESMTPS id 341556E881 for ; Wed, 1 Feb 2017 17:19:14 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20170120194617.GI31595@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Takashi Iwai Cc: linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gRnJpLCBKYW4gMjAsIDIwMTcgYXQgMDk6NDY6MTdQTSArMDIwMCwgVmlsbGUgU3lyasOkbMOk IHdyb3RlOgo+IE9uIFR1ZSwgSmFuIDE3LCAyMDE3IGF0IDA1OjQzOjI5UE0gKzAxMDAsIFRha2Fz aGkgSXdhaSB3cm90ZToKPiA+IFRoaXMgaXMganVzdCBhIGNsZWFudXAsIG5vIGZ1bmN0aW9uYWwg Y2hhbmdlLgo+ID4gCj4gPiBUaGUgZml4dXAgY29kZSBmb3IgMTM2Nng3NjggaW4gZHJtX21vZGVf Y3JlYXRlX2Zyb21fY21kbGluZV9tb2RlKCkgaXMKPiA+IGJhc2ljYWxseSBhIGNvcHkgb2YgdGhl IGV4aXN0aW5nIGNvZGUgaW4gZHJtX2VkaWQuYy4gIE1ha2UgdGhlIGxhdHRlcgo+ID4gY29kZSBw dWJsaWMgc28gdGhhdCBpdCBjYW4gYmUgY2FsbGVkIGZyb20gdGhlIGZvcm1lciBmdW5jdGlvbi4K PiA+IAo+ID4gU2lnbmVkLW9mZi1ieTogVGFrYXNoaSBJd2FpIDx0aXdhaUBzdXNlLmRlPgo+ID4g LS0tCj4gPiB2MS0+djI6IEZpeCB0aGUgd3JvbmcgbGluZSByZW1vdmFsIG9mIGRybV9tb2RlX3Nl dF9jcnRjaW5mbygpIGNhbGwKPiAKPiBXZSBwcmVmZXIgdG8gaW5jbHVkZSB0aGUgY2hhbmdlbG9n IGluIHRoZSBjb21taXQgbWVzc2FnZSBwcm9wZXIuCj4gQnV0IGl0IGNhbiBiZSBob2lzdGVkIHVw IGVhc2lseSBlbm91Z2ggd2hlbiBwdXNoaW5nLgo+IAo+IGxndG0KPiBSZXZpZXdlZC1ieTogVmls bGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCnNwYXJzZSB3YXNu J3QgZW50aXJlbHkgaGFwcHkgWzFdIGJ1dCBJIGZpeGVkIHRoYXQgdXAgd2hpbGUgcHVzaGluZwp0 byBkcm0tbWlzYy1uZXh0LiBUaGFua3MgZm9yIHRoZSBwYXRjaC4KClsxXSAuLi9kcml2ZXJzL2dw dS9kcm0vZHJtX2VkaWQuYzoyMTU2OjY6IHdhcm5pbmc6IHN5bWJvbAogICAgJ2RybV9tb2RlX2Zp eHVwXzEzNjZ4NzY4JyB3YXMgbm90IGRlY2xhcmVkLiBTaG91bGQgaXQgYmUgc3RhdGljPwoKPiAK PiA+IAo+ID4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fY3J0Y19pbnRlcm5hbC5oIHwgMyArKysKPiA+ ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2VkaWQuYyAgICAgICAgICB8IDYgKysrLS0tCj4gPiAgZHJp dmVycy9ncHUvZHJtL2RybV9tb2Rlcy5jICAgICAgICAgfCA4ICsrLS0tLS0tCj4gPiAgMyBmaWxl cyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCj4gPiAKPiA+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGNfaW50ZXJuYWwuaCBiL2RyaXZlcnMvZ3B1 L2RybS9kcm1fY3J0Y19pbnRlcm5hbC5oCj4gPiBpbmRleCBjZGY2ODYwYzlkMjIuLjAxYmRlNzEw M2FkNiAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fY3J0Y19pbnRlcm5hbC5o Cj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGNfaW50ZXJuYWwuaAo+ID4gQEAgLTE5 OSwzICsxOTksNiBAQCBpbnQgZHJtX21vZGVfY3Vyc29yMl9pb2N0bChzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LAo+ID4gIAkJCSAgIHZvaWQgKmRhdGEsIHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2 KTsKPiA+ICBpbnQgZHJtX21vZGVfcGFnZV9mbGlwX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsCj4gPiAgCQkJICAgICB2b2lkICpkYXRhLCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdik7 Cj4gPiArCj4gPiArLyogZHJtX2VkaWQuYyAqLwo+ID4gK3ZvaWQgZHJtX21vZGVfZml4dXBfMTM2 Nng3Njgoc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUpOwo+ID4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMKPiA+ IGluZGV4IDMzNmJlMzFmZjNkZS4uNzM5YTE5Y2IyN2Q5IDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2RybV9lZGlkLmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5j Cj4gPiBAQCAtMjE1Miw3ICsyMTUyLDcgQEAgZHJtX2RtdF9tb2Rlc19mb3JfcmFuZ2Uoc3RydWN0 IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rvciwgc3RydWN0IGVkaWQgKmVkaWQsCj4gPiAgLyogZml4 IHVwIDEzNjZ4NzY4IG1vZGUgZnJvbSAxMzY4eDc2ODsKPiA+ICAgKiBHRlQvQ1ZUIGNhbid0IGV4 cHJlc3MgMTM2NiB3aWR0aCB3aGljaCBpc24ndCBkaXZpZGFibGUgYnkgOAo+ID4gICAqLwo+ID4g LXN0YXRpYyB2b2lkIGZpeHVwX21vZGVfMTM2Nng3Njgoc3RydWN0IGRybV9kaXNwbGF5X21vZGUg Km1vZGUpCj4gPiArdm9pZCBkcm1fbW9kZV9maXh1cF8xMzY2eDc2OChzdHJ1Y3QgZHJtX2Rpc3Bs YXlfbW9kZSAqbW9kZSkKPiA+ICB7Cj4gPiAgCWlmIChtb2RlLT5oZGlzcGxheSA9PSAxMzY4ICYm IG1vZGUtPnZkaXNwbGF5ID09IDc2OCkgewo+ID4gIAkJbW9kZS0+aGRpc3BsYXkgPSAxMzY2Owo+ ID4gQEAgLTIxNzYsNyArMjE3Niw3IEBAIGRybV9ndGZfbW9kZXNfZm9yX3JhbmdlKHN0cnVjdCBk cm1fY29ubmVjdG9yICpjb25uZWN0b3IsIHN0cnVjdCBlZGlkICplZGlkLAo+ID4gIAkJaWYgKCFu ZXdtb2RlKQo+ID4gIAkJCXJldHVybiBtb2RlczsKPiA+ICAKPiA+IC0JCWZpeHVwX21vZGVfMTM2 Nng3NjgobmV3bW9kZSk7Cj4gPiArCQlkcm1fbW9kZV9maXh1cF8xMzY2eDc2OChuZXdtb2RlKTsK PiA+ICAJCWlmICghbW9kZV9pbl9yYW5nZShuZXdtb2RlLCBlZGlkLCB0aW1pbmcpIHx8Cj4gPiAg CQkgICAgIXZhbGlkX2luZmVycmVkX21vZGUoY29ubmVjdG9yLCBuZXdtb2RlKSkgewo+ID4gIAkJ CWRybV9tb2RlX2Rlc3Ryb3koZGV2LCBuZXdtb2RlKTsKPiA+IEBAIC0yMjA1LDcgKzIyMDUsNyBA QCBkcm1fY3Z0X21vZGVzX2Zvcl9yYW5nZShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9y LCBzdHJ1Y3QgZWRpZCAqZWRpZCwKPiA+ICAJCWlmICghbmV3bW9kZSkKPiA+ICAJCQlyZXR1cm4g bW9kZXM7Cj4gPiAgCj4gPiAtCQlmaXh1cF9tb2RlXzEzNjZ4NzY4KG5ld21vZGUpOwo+ID4gKwkJ ZHJtX21vZGVfZml4dXBfMTM2Nng3NjgobmV3bW9kZSk7Cj4gPiAgCQlpZiAoIW1vZGVfaW5fcmFu Z2UobmV3bW9kZSwgZWRpZCwgdGltaW5nKSB8fAo+ID4gIAkJICAgICF2YWxpZF9pbmZlcnJlZF9t b2RlKGNvbm5lY3RvciwgbmV3bW9kZSkpIHsKPiA+ICAJCQlkcm1fbW9kZV9kZXN0cm95KGRldiwg bmV3bW9kZSk7Cj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9tb2Rlcy5jIGIv ZHJpdmVycy9ncHUvZHJtL2RybV9tb2Rlcy5jCj4gPiBpbmRleCBlNmIxOWJjOTAyMWEuLjM1YmI5 OTNlYmMzOSAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fbW9kZXMuYwo+ID4g KysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9tb2Rlcy5jCj4gPiBAQCAtMTQ2MSwxMiArMTQ2MSw4 IEBAIGRybV9tb2RlX2NyZWF0ZV9mcm9tX2NtZGxpbmVfbW9kZShzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2LAo+ID4gIAo+ID4gIAltb2RlLT50eXBlIHw9IERSTV9NT0RFX1RZUEVfVVNFUkRFRjsKPiA+ ICAJLyogZml4IHVwIDEzNjh4NzY4OiBHRlQvQ1ZUIGNhbid0IGV4cHJlc3MgMTM2NiB3aWR0aCBk dWUgdG8gYWxpZ25tZW50ICovCj4gPiAtCWlmIChjbWQtPnhyZXMgPT0gMTM2NiAmJiBtb2RlLT5o ZGlzcGxheSA9PSAxMzY4KSB7Cj4gPiAtCQltb2RlLT5oZGlzcGxheSA9IDEzNjY7Cj4gPiAtCQlt b2RlLT5oc3luY19zdGFydC0tOwo+ID4gLQkJbW9kZS0+aHN5bmNfZW5kLS07Cj4gPiAtCQlkcm1f bW9kZV9zZXRfbmFtZShtb2RlKTsKPiA+IC0JfQo+ID4gKwlpZiAoY21kLT54cmVzID09IDEzNjYp Cj4gPiArCQlkcm1fbW9kZV9maXh1cF8xMzY2eDc2OChtb2RlKTsKPiA+ICAJZHJtX21vZGVfc2V0 X2NydGNpbmZvKG1vZGUsIENSVENfSU5URVJMQUNFX0hBTFZFX1YpOwo+ID4gIAlyZXR1cm4gbW9k ZTsKPiA+ICB9Cj4gPiAtLSAKPiA+IDIuMTEuMAo+IAo+IC0tIAo+IFZpbGxlIFN5cmrDpGzDpAo+ IEludGVsIE9UQwo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCj4gZHJpLWRldmVsIG1haWxpbmcgbGlzdAo+IGRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2Ry aS1kZXZlbAoKLS0gClZpbGxlIFN5cmrDpGzDpApJbnRlbCBPVEMKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmkt ZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753810AbdBARTl (ORCPT ); Wed, 1 Feb 2017 12:19:41 -0500 Received: from mga03.intel.com ([134.134.136.65]:54560 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753505AbdBARTj (ORCPT ); Wed, 1 Feb 2017 12:19:39 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.33,320,1477983600"; d="scan'208";a="1120756017" Date: Wed, 1 Feb 2017 19:19:10 +0200 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= To: Takashi Iwai Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2] drm: Clean up the 1366x768 fixup codes Message-ID: <20170201171910.GC31595@intel.com> References: <20170117164329.10551-1-tiwai@suse.de> <20170120194617.GI31595@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20170120194617.GI31595@intel.com> User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Jan 20, 2017 at 09:46:17PM +0200, Ville Syrjälä wrote: > On Tue, Jan 17, 2017 at 05:43:29PM +0100, Takashi Iwai wrote: > > This is just a cleanup, no functional change. > > > > The fixup code for 1366x768 in drm_mode_create_from_cmdline_mode() is > > basically a copy of the existing code in drm_edid.c. Make the latter > > code public so that it can be called from the former function. > > > > Signed-off-by: Takashi Iwai > > --- > > v1->v2: Fix the wrong line removal of drm_mode_set_crtcinfo() call > > We prefer to include the changelog in the commit message proper. > But it can be hoisted up easily enough when pushing. > > lgtm > Reviewed-by: Ville Syrjälä sparse wasn't entirely happy [1] but I fixed that up while pushing to drm-misc-next. Thanks for the patch. [1] ../drivers/gpu/drm/drm_edid.c:2156:6: warning: symbol 'drm_mode_fixup_1366x768' was not declared. Should it be static? > > > > > drivers/gpu/drm/drm_crtc_internal.h | 3 +++ > > drivers/gpu/drm/drm_edid.c | 6 +++--- > > drivers/gpu/drm/drm_modes.c | 8 ++------ > > 3 files changed, 8 insertions(+), 9 deletions(-) > > > > diff --git a/drivers/gpu/drm/drm_crtc_internal.h b/drivers/gpu/drm/drm_crtc_internal.h > > index cdf6860c9d22..01bde7103ad6 100644 > > --- a/drivers/gpu/drm/drm_crtc_internal.h > > +++ b/drivers/gpu/drm/drm_crtc_internal.h > > @@ -199,3 +199,6 @@ int drm_mode_cursor2_ioctl(struct drm_device *dev, > > void *data, struct drm_file *file_priv); > > int drm_mode_page_flip_ioctl(struct drm_device *dev, > > void *data, struct drm_file *file_priv); > > + > > +/* drm_edid.c */ > > +void drm_mode_fixup_1366x768(struct drm_display_mode *mode); > > diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c > > index 336be31ff3de..739a19cb27d9 100644 > > --- a/drivers/gpu/drm/drm_edid.c > > +++ b/drivers/gpu/drm/drm_edid.c > > @@ -2152,7 +2152,7 @@ drm_dmt_modes_for_range(struct drm_connector *connector, struct edid *edid, > > /* fix up 1366x768 mode from 1368x768; > > * GFT/CVT can't express 1366 width which isn't dividable by 8 > > */ > > -static void fixup_mode_1366x768(struct drm_display_mode *mode) > > +void drm_mode_fixup_1366x768(struct drm_display_mode *mode) > > { > > if (mode->hdisplay == 1368 && mode->vdisplay == 768) { > > mode->hdisplay = 1366; > > @@ -2176,7 +2176,7 @@ drm_gtf_modes_for_range(struct drm_connector *connector, struct edid *edid, > > if (!newmode) > > return modes; > > > > - fixup_mode_1366x768(newmode); > > + drm_mode_fixup_1366x768(newmode); > > if (!mode_in_range(newmode, edid, timing) || > > !valid_inferred_mode(connector, newmode)) { > > drm_mode_destroy(dev, newmode); > > @@ -2205,7 +2205,7 @@ drm_cvt_modes_for_range(struct drm_connector *connector, struct edid *edid, > > if (!newmode) > > return modes; > > > > - fixup_mode_1366x768(newmode); > > + drm_mode_fixup_1366x768(newmode); > > if (!mode_in_range(newmode, edid, timing) || > > !valid_inferred_mode(connector, newmode)) { > > drm_mode_destroy(dev, newmode); > > diff --git a/drivers/gpu/drm/drm_modes.c b/drivers/gpu/drm/drm_modes.c > > index e6b19bc9021a..35bb993ebc39 100644 > > --- a/drivers/gpu/drm/drm_modes.c > > +++ b/drivers/gpu/drm/drm_modes.c > > @@ -1461,12 +1461,8 @@ drm_mode_create_from_cmdline_mode(struct drm_device *dev, > > > > mode->type |= DRM_MODE_TYPE_USERDEF; > > /* fix up 1368x768: GFT/CVT can't express 1366 width due to alignment */ > > - if (cmd->xres == 1366 && mode->hdisplay == 1368) { > > - mode->hdisplay = 1366; > > - mode->hsync_start--; > > - mode->hsync_end--; > > - drm_mode_set_name(mode); > > - } > > + if (cmd->xres == 1366) > > + drm_mode_fixup_1366x768(mode); > > drm_mode_set_crtcinfo(mode, CRTC_INTERLACE_HALVE_V); > > return mode; > > } > > -- > > 2.11.0 > > -- > Ville Syrjälä > Intel OTC > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel -- Ville Syrjälä Intel OTC