From mboxrd@z Thu Jan 1 00:00:00 1970 From: Emil Velikov Date: Fri, 19 Dec 2014 19:03:49 +0000 Subject: Re: [PATCH v2 3/7] drm_modes: add videomode_from_drm_display_mode Message-Id: <54947695.3020108@gmail.com> List-Id: References: <1418954426-21909-1-git-send-email-steve_longerbeam@mentor.com> <1418954426-21909-4-git-send-email-steve_longerbeam@mentor.com> <1418986984.3165.64.camel@pengutronix.de> In-Reply-To: <1418986984.3165.64.camel@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Philipp Zabel , Steve Longerbeam Cc: Fabio Estevam , linux-fbdev@vger.kernel.org, Steve Longerbeam , emil.l.velikov@gmail.com, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Denis Carikli , Tomi Valkeinen , Russell King , Jean-Christophe Plagniol-Villard On 19/12/14 11:03, Philipp Zabel wrote: > Am Donnerstag, den 18.12.2014, 18:00 -0800 schrieb Steve Longerbeam: >> Add conversion from drm_display_mode to videomode. >> >> Signed-off-by: Steve Longerbeam >> --- >> drivers/gpu/drm/drm_modes.c | 40 ++++++++++++++++++++++++++++++++++++++++ >> include/drm/drm_modes.h | 2 ++ >> 2 files changed, 42 insertions(+) >> >> diff --git a/drivers/gpu/drm/drm_modes.c b/drivers/gpu/drm/drm_modes.c >> index 6d8b941..583a391 100644 >> --- a/drivers/gpu/drm/drm_modes.c >> +++ b/drivers/gpu/drm/drm_modes.c >> @@ -615,6 +615,46 @@ void drm_display_mode_from_videomode(const struct videomode *vm, >> } >> EXPORT_SYMBOL_GPL(drm_display_mode_from_videomode); >> >> +/** >> + * videomode_from_drm_display_mode - fill in @vm using @dmode, >> + * @dmode: drm_display_mode structure to use as source >> + * @vm: videomode structure to use as destination >> + * >> + * Fills out @vm using the display mode specified in @dmode. >> + */ >> +void videomode_from_drm_display_mode(const struct drm_display_mode *dmode, >> + struct videomode *vm) >> +{ >> + vm->hactive = dmode->hdisplay; >> + vm->hfront_porch = dmode->hsync_start - dmode->hdisplay; >> + vm->hsync_len = dmode->hsync_end - dmode->hsync_start; >> + vm->hback_porch = dmode->htotal - dmode->hsync_end; >> + >> + vm->vactive = dmode->vdisplay; >> + vm->vfront_porch = dmode->vsync_start - dmode->vdisplay; >> + vm->vsync_len = dmode->vsync_end - dmode->vsync_start; >> + vm->vback_porch = dmode->vtotal - dmode->vsync_end; >> + >> + vm->pixelclock = dmode->clock * 1000; >> + >> + vm->flags = 0; >> + if (dmode->flags & DRM_MODE_FLAG_PHSYNC) >> + vm->flags |= DISPLAY_FLAGS_HSYNC_HIGH; >> + else if (dmode->flags & DRM_MODE_FLAG_NHSYNC) >> + vm->flags |= DISPLAY_FLAGS_HSYNC_LOW; >> + if (dmode->flags & DRM_MODE_FLAG_PVSYNC) >> + vm->flags |= DISPLAY_FLAGS_VSYNC_HIGH; >> + else if (dmode->flags & DRM_MODE_FLAG_NVSYNC) >> + vm->flags |= DISPLAY_FLAGS_VSYNC_LOW; >> + if (dmode->flags & DRM_MODE_FLAG_INTERLACE) >> + vm->flags |= DISPLAY_FLAGS_INTERLACED; >> + if (dmode->flags & DRM_MODE_FLAG_DBLSCAN) >> + vm->flags |= DISPLAY_FLAGS_DOUBLESCAN; >> + if (dmode->flags & DRM_MODE_FLAG_DBLCLK) >> + vm->flags |= DISPLAY_FLAGS_DOUBLECLK; >> +} >> +EXPORT_SYMBOL_GPL(videomode_from_drm_display_mode); > > Is it ok for drm_modes to export a function that doesn't start with > drm_ ? We could just rename this to drm_display_mode_to_videomode if > necessary. I can fix it up as I apply it, but I'd like to know which is > preferred. > Non-native English speaker here, and drm_display_mode_to_videomode sounds better. Plus I think that *to* functions are more common than *from* ones. I'm not a drm dev, so just my 2c :) Cheers, Emil From mboxrd@z Thu Jan 1 00:00:00 1970 From: Emil Velikov Subject: Re: [PATCH v2 3/7] drm_modes: add videomode_from_drm_display_mode Date: Fri, 19 Dec 2014 19:03:49 +0000 Message-ID: <54947695.3020108@gmail.com> References: <1418954426-21909-1-git-send-email-steve_longerbeam@mentor.com> <1418954426-21909-4-git-send-email-steve_longerbeam@mentor.com> <1418986984.3165.64.camel@pengutronix.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wg0-f47.google.com (mail-wg0-f47.google.com [74.125.82.47]) by gabe.freedesktop.org (Postfix) with ESMTP id 9BA926E2B4 for ; Fri, 19 Dec 2014 11:03:04 -0800 (PST) Received: by mail-wg0-f47.google.com with SMTP id n12so2112144wgh.34 for ; Fri, 19 Dec 2014 11:03:03 -0800 (PST) In-Reply-To: <1418986984.3165.64.camel@pengutronix.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Philipp Zabel , Steve Longerbeam Cc: Fabio Estevam , linux-fbdev@vger.kernel.org, Steve Longerbeam , emil.l.velikov@gmail.com, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Denis Carikli , Tomi Valkeinen , Russell King , Jean-Christophe Plagniol-Villard List-Id: dri-devel@lists.freedesktop.org T24gMTkvMTIvMTQgMTE6MDMsIFBoaWxpcHAgWmFiZWwgd3JvdGU6Cj4gQW0gRG9ubmVyc3RhZywg ZGVuIDE4LjEyLjIwMTQsIDE4OjAwIC0wODAwIHNjaHJpZWIgU3RldmUgTG9uZ2VyYmVhbToKPj4g QWRkIGNvbnZlcnNpb24gZnJvbSBkcm1fZGlzcGxheV9tb2RlIHRvIHZpZGVvbW9kZS4KPj4KPj4g U2lnbmVkLW9mZi1ieTogU3RldmUgTG9uZ2VyYmVhbSA8c3RldmVfbG9uZ2VyYmVhbUBtZW50b3Iu Y29tPgo+PiAtLS0KPj4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fbW9kZXMuYyB8ICAgNDAgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+PiAgaW5jbHVkZS9kcm0vZHJtX21v ZGVzLmggICAgIHwgICAgMiArKwo+PiAgMiBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCsp Cj4+Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX21vZGVzLmMgYi9kcml2ZXJz L2dwdS9kcm0vZHJtX21vZGVzLmMKPj4gaW5kZXggNmQ4Yjk0MS4uNTgzYTM5MSAxMDA2NDQKPj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9tb2Rlcy5jCj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9kcm1fbW9kZXMuYwo+PiBAQCAtNjE1LDYgKzYxNSw0NiBAQCB2b2lkIGRybV9kaXNwbGF5X21v ZGVfZnJvbV92aWRlb21vZGUoY29uc3Qgc3RydWN0IHZpZGVvbW9kZSAqdm0sCj4+ICB9Cj4+ICBF WFBPUlRfU1lNQk9MX0dQTChkcm1fZGlzcGxheV9tb2RlX2Zyb21fdmlkZW9tb2RlKTsKPj4gIAo+ PiArLyoqCj4+ICsgKiB2aWRlb21vZGVfZnJvbV9kcm1fZGlzcGxheV9tb2RlIC0gZmlsbCBpbiBA dm0gdXNpbmcgQGRtb2RlLAo+PiArICogQGRtb2RlOiBkcm1fZGlzcGxheV9tb2RlIHN0cnVjdHVy ZSB0byB1c2UgYXMgc291cmNlCj4+ICsgKiBAdm06IHZpZGVvbW9kZSBzdHJ1Y3R1cmUgdG8gdXNl IGFzIGRlc3RpbmF0aW9uCj4+ICsgKgo+PiArICogRmlsbHMgb3V0IEB2bSB1c2luZyB0aGUgZGlz cGxheSBtb2RlIHNwZWNpZmllZCBpbiBAZG1vZGUuCj4+ICsgKi8KPj4gK3ZvaWQgdmlkZW9tb2Rl X2Zyb21fZHJtX2Rpc3BsYXlfbW9kZShjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqZG1v ZGUsCj4+ICsJCQkJICAgICBzdHJ1Y3QgdmlkZW9tb2RlICp2bSkKPj4gK3sKPj4gKwl2bS0+aGFj dGl2ZSA9IGRtb2RlLT5oZGlzcGxheTsKPj4gKwl2bS0+aGZyb250X3BvcmNoID0gZG1vZGUtPmhz eW5jX3N0YXJ0IC0gZG1vZGUtPmhkaXNwbGF5Owo+PiArCXZtLT5oc3luY19sZW4gPSBkbW9kZS0+ aHN5bmNfZW5kIC0gZG1vZGUtPmhzeW5jX3N0YXJ0Owo+PiArCXZtLT5oYmFja19wb3JjaCA9IGRt b2RlLT5odG90YWwgLSBkbW9kZS0+aHN5bmNfZW5kOwo+PiArCj4+ICsJdm0tPnZhY3RpdmUgPSBk bW9kZS0+dmRpc3BsYXk7Cj4+ICsJdm0tPnZmcm9udF9wb3JjaCA9IGRtb2RlLT52c3luY19zdGFy dCAtIGRtb2RlLT52ZGlzcGxheTsKPj4gKwl2bS0+dnN5bmNfbGVuID0gZG1vZGUtPnZzeW5jX2Vu ZCAtIGRtb2RlLT52c3luY19zdGFydDsKPj4gKwl2bS0+dmJhY2tfcG9yY2ggPSBkbW9kZS0+dnRv dGFsIC0gZG1vZGUtPnZzeW5jX2VuZDsKPj4gKwo+PiArCXZtLT5waXhlbGNsb2NrID0gZG1vZGUt PmNsb2NrICogMTAwMDsKPj4gKwo+PiArCXZtLT5mbGFncyA9IDA7Cj4+ICsJaWYgKGRtb2RlLT5m bGFncyAmIERSTV9NT0RFX0ZMQUdfUEhTWU5DKQo+PiArCQl2bS0+ZmxhZ3MgfD0gRElTUExBWV9G TEFHU19IU1lOQ19ISUdIOwo+PiArCWVsc2UgaWYgKGRtb2RlLT5mbGFncyAmIERSTV9NT0RFX0ZM QUdfTkhTWU5DKQo+PiArCQl2bS0+ZmxhZ3MgfD0gRElTUExBWV9GTEFHU19IU1lOQ19MT1c7Cj4+ ICsJaWYgKGRtb2RlLT5mbGFncyAmIERSTV9NT0RFX0ZMQUdfUFZTWU5DKQo+PiArCQl2bS0+Zmxh Z3MgfD0gRElTUExBWV9GTEFHU19WU1lOQ19ISUdIOwo+PiArCWVsc2UgaWYgKGRtb2RlLT5mbGFn cyAmIERSTV9NT0RFX0ZMQUdfTlZTWU5DKQo+PiArCQl2bS0+ZmxhZ3MgfD0gRElTUExBWV9GTEFH U19WU1lOQ19MT1c7Cj4+ICsJaWYgKGRtb2RlLT5mbGFncyAmIERSTV9NT0RFX0ZMQUdfSU5URVJM QUNFKQo+PiArCQl2bS0+ZmxhZ3MgfD0gRElTUExBWV9GTEFHU19JTlRFUkxBQ0VEOwo+PiArCWlm IChkbW9kZS0+ZmxhZ3MgJiBEUk1fTU9ERV9GTEFHX0RCTFNDQU4pCj4+ICsJCXZtLT5mbGFncyB8 PSBESVNQTEFZX0ZMQUdTX0RPVUJMRVNDQU47Cj4+ICsJaWYgKGRtb2RlLT5mbGFncyAmIERSTV9N T0RFX0ZMQUdfREJMQ0xLKQo+PiArCQl2bS0+ZmxhZ3MgfD0gRElTUExBWV9GTEFHU19ET1VCTEVD TEs7Cj4+ICt9Cj4+ICtFWFBPUlRfU1lNQk9MX0dQTCh2aWRlb21vZGVfZnJvbV9kcm1fZGlzcGxh eV9tb2RlKTsKPiAKPiBJcyBpdCBvayBmb3IgZHJtX21vZGVzIHRvIGV4cG9ydCBhIGZ1bmN0aW9u IHRoYXQgZG9lc24ndCBzdGFydCB3aXRoCj4gZHJtXyA/IFdlIGNvdWxkIGp1c3QgcmVuYW1lIHRo aXMgdG8gZHJtX2Rpc3BsYXlfbW9kZV90b192aWRlb21vZGUgaWYKPiBuZWNlc3NhcnkuIEkgY2Fu IGZpeCBpdCB1cCBhcyBJIGFwcGx5IGl0LCBidXQgSSdkIGxpa2UgdG8ga25vdyB3aGljaCBpcwo+ IHByZWZlcnJlZC4KPiAKTm9uLW5hdGl2ZSBFbmdsaXNoIHNwZWFrZXIgaGVyZSwgYW5kIGRybV9k aXNwbGF5X21vZGVfdG9fdmlkZW9tb2RlCnNvdW5kcyBiZXR0ZXIuIFBsdXMgSSB0aGluayB0aGF0 ICp0byogZnVuY3Rpb25zIGFyZSBtb3JlIGNvbW1vbiB0aGFuCipmcm9tKiBvbmVzLgoKSSdtIG5v dCBhIGRybSBkZXYsIHNvIGp1c3QgbXkgMmMgOikKCkNoZWVycywKRW1pbAoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlz dApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752487AbaLSTDH (ORCPT ); Fri, 19 Dec 2014 14:03:07 -0500 Received: from mail-wg0-f50.google.com ([74.125.82.50]:56742 "EHLO mail-wg0-f50.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751384AbaLSTDE (ORCPT ); Fri, 19 Dec 2014 14:03:04 -0500 Message-ID: <54947695.3020108@gmail.com> Date: Fri, 19 Dec 2014 19:03:49 +0000 From: Emil Velikov User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.2.0 MIME-Version: 1.0 To: Philipp Zabel , Steve Longerbeam CC: emil.l.velikov@gmail.com, Fabio Estevam , linux-fbdev@vger.kernel.org, Steve Longerbeam , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Denis Carikli , Tomi Valkeinen , Russell King , Jean-Christophe Plagniol-Villard Subject: Re: [PATCH v2 3/7] drm_modes: add videomode_from_drm_display_mode References: <1418954426-21909-1-git-send-email-steve_longerbeam@mentor.com> <1418954426-21909-4-git-send-email-steve_longerbeam@mentor.com> <1418986984.3165.64.camel@pengutronix.de> In-Reply-To: <1418986984.3165.64.camel@pengutronix.de> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 19/12/14 11:03, Philipp Zabel wrote: > Am Donnerstag, den 18.12.2014, 18:00 -0800 schrieb Steve Longerbeam: >> Add conversion from drm_display_mode to videomode. >> >> Signed-off-by: Steve Longerbeam >> --- >> drivers/gpu/drm/drm_modes.c | 40 ++++++++++++++++++++++++++++++++++++++++ >> include/drm/drm_modes.h | 2 ++ >> 2 files changed, 42 insertions(+) >> >> diff --git a/drivers/gpu/drm/drm_modes.c b/drivers/gpu/drm/drm_modes.c >> index 6d8b941..583a391 100644 >> --- a/drivers/gpu/drm/drm_modes.c >> +++ b/drivers/gpu/drm/drm_modes.c >> @@ -615,6 +615,46 @@ void drm_display_mode_from_videomode(const struct videomode *vm, >> } >> EXPORT_SYMBOL_GPL(drm_display_mode_from_videomode); >> >> +/** >> + * videomode_from_drm_display_mode - fill in @vm using @dmode, >> + * @dmode: drm_display_mode structure to use as source >> + * @vm: videomode structure to use as destination >> + * >> + * Fills out @vm using the display mode specified in @dmode. >> + */ >> +void videomode_from_drm_display_mode(const struct drm_display_mode *dmode, >> + struct videomode *vm) >> +{ >> + vm->hactive = dmode->hdisplay; >> + vm->hfront_porch = dmode->hsync_start - dmode->hdisplay; >> + vm->hsync_len = dmode->hsync_end - dmode->hsync_start; >> + vm->hback_porch = dmode->htotal - dmode->hsync_end; >> + >> + vm->vactive = dmode->vdisplay; >> + vm->vfront_porch = dmode->vsync_start - dmode->vdisplay; >> + vm->vsync_len = dmode->vsync_end - dmode->vsync_start; >> + vm->vback_porch = dmode->vtotal - dmode->vsync_end; >> + >> + vm->pixelclock = dmode->clock * 1000; >> + >> + vm->flags = 0; >> + if (dmode->flags & DRM_MODE_FLAG_PHSYNC) >> + vm->flags |= DISPLAY_FLAGS_HSYNC_HIGH; >> + else if (dmode->flags & DRM_MODE_FLAG_NHSYNC) >> + vm->flags |= DISPLAY_FLAGS_HSYNC_LOW; >> + if (dmode->flags & DRM_MODE_FLAG_PVSYNC) >> + vm->flags |= DISPLAY_FLAGS_VSYNC_HIGH; >> + else if (dmode->flags & DRM_MODE_FLAG_NVSYNC) >> + vm->flags |= DISPLAY_FLAGS_VSYNC_LOW; >> + if (dmode->flags & DRM_MODE_FLAG_INTERLACE) >> + vm->flags |= DISPLAY_FLAGS_INTERLACED; >> + if (dmode->flags & DRM_MODE_FLAG_DBLSCAN) >> + vm->flags |= DISPLAY_FLAGS_DOUBLESCAN; >> + if (dmode->flags & DRM_MODE_FLAG_DBLCLK) >> + vm->flags |= DISPLAY_FLAGS_DOUBLECLK; >> +} >> +EXPORT_SYMBOL_GPL(videomode_from_drm_display_mode); > > Is it ok for drm_modes to export a function that doesn't start with > drm_ ? We could just rename this to drm_display_mode_to_videomode if > necessary. I can fix it up as I apply it, but I'd like to know which is > preferred. > Non-native English speaker here, and drm_display_mode_to_videomode sounds better. Plus I think that *to* functions are more common than *from* ones. I'm not a drm dev, so just my 2c :) Cheers, Emil