From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH] drm: add drm_format_alpha_bits Date: Fri, 12 Jan 2018 16:28:34 +0200 Message-ID: <20180112142834.GB10981@intel.com> References: <1515766876-14231-1-git-send-email-ayan.halder@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id BF37B6E7E7 for ; Fri, 12 Jan 2018 14:28:39 +0000 (UTC) Content-Disposition: inline In-Reply-To: <1515766876-14231-1-git-send-email-ayan.halder@arm.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Ayan Halder Cc: airlied@linux.ie, liviu.dudau@arm.com, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, daniel.vetter@intel.com, nd@arm.com List-Id: dri-devel@lists.freedesktop.org T24gRnJpLCBKYW4gMTIsIDIwMTggYXQgMDI6MjE6MTZQTSArMDAwMCwgQXlhbiBIYWxkZXIgd3Jv dGU6Cj4gZHJtX2Zvcm1hdF9pbmZvIGRvZXMgbm90IGRlc2NyaWJlIHRoZSBudW1iZXIgb2YgYml0 cyB1c2VkIGZvciB0aGUgYWxwaGEKPiBjaGFubmVsLiBUaGF0IGluZm9ybWF0aW9uIGlzIHVzZWZ1 bCBpbiBhIGNlbnRyYWwgcGxhY2UgbGlrZSBkcm1fZm91cmNjLmMKPiB3aGVyZSBpdCBjYW4gYmUg cXVlcmllZCBieSB0aGUgZHJpdmVycyB0aGF0IHdhbnQgdG8gZGV0ZXJtaW5lIGlmICdhbHBoYQo+ IGJsZW5kaW5nJyBpcyB0byBiZSBlbmFibGVkIG9yIG5vdC4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBB eWFuIEt1bWFyIEhhbGRlciA8YXlhbi5oYWxkZXJAYXJtLmNvbT4KPiBSZXZpZXdlZC1ieTogTGl2 aXUgRHVkYXUgPGxpdml1LmR1ZGF1QGFybS5jb20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9k cm1fZm91cmNjLmMgfCAxNTQgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0t LS0tLQo+ICBpbmNsdWRlL2RybS9kcm1fZm91cmNjLmggICAgIHwgICAzICsKPiAgMiBmaWxlcyBj aGFuZ2VkLCA4OSBpbnNlcnRpb25zKCspLCA2OCBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2RybV9mb3VyY2MuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZm91 cmNjLmMKPiBpbmRleCA5YzAxNTJkLi4wNzMwMDFiIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9kcm1fZm91cmNjLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZvdXJjYy5jCjxz bmlwPgo+IEBAIC0zNDgsMyArMzQ4LDIxIEBAIGludCBkcm1fZm9ybWF0X3BsYW5lX2hlaWdodChp bnQgaGVpZ2h0LCB1aW50MzJfdCBmb3JtYXQsIGludCBwbGFuZSkKPiAgCXJldHVybiBoZWlnaHQg LyBpbmZvLT52c3ViOwo+ICB9Cj4gIEVYUE9SVF9TWU1CT0woZHJtX2Zvcm1hdF9wbGFuZV9oZWln aHQpOwo+ICsKPiArLyoqCj4gKyAqIGRybV9mb3JtYXRfYWxwaGFfYml0cyAtIGdldCB0aGUgbnVt YmVyIG9mIGJpdHMgcGVyIHBpeGVsCj4gKyAqIHJlcHJlc2VudGluZyBhbHBoYSBmb3IgZm9ybWF0 Cj4gKyAqIEBmb3JtYXQ6IHBpeGVsIGZvcm1hdCAoRFJNX0ZPUk1BVF8qKQo+ICsgKgo+ICsgKiBS ZXR1cm5zOgo+ICsgKiBUaGUgbnVtYmVyIG9mIGJpdHMgcGVyIHBpeGVsIHJlcHJlc2VudGluZyBh bHBoYSB1c2VkIGJ5IHRoZQo+ICsgKiBzcGVjaWZpZWQgcGl4ZWwgZm9ybWF0Lgo+ICsgKi8KPiAr aW50IGRybV9mb3JtYXRfYWxwaGFfYml0cyh1aW50MzJfdCBmb3JtYXQpCj4gK3sKPiArCWNvbnN0 IHN0cnVjdCBkcm1fZm9ybWF0X2luZm8gKmluZm87Cj4gKwo+ICsJaW5mbyA9IGRybV9mb3JtYXRf aW5mbyhmb3JtYXQpOwo+ICsJcmV0dXJuIGluZm8gPyBpbmZvLT5hbHBoYSA6IDA7Cj4gK30KPiAr RVhQT1JUX1NZTUJPTChkcm1fZm9ybWF0X2FscGhhX2JpdHMpOwoKRG8geW91IGhhdmUgYW4gYWN0 dWFsIHVzZSBmb3IgdGhpcyBmdW5jdGlvbiBzb21ld2hlcmU/Cgo+IGRpZmYgLS1naXQgYS9pbmNs dWRlL2RybS9kcm1fZm91cmNjLmggYi9pbmNsdWRlL2RybS9kcm1fZm91cmNjLmgKPiBpbmRleCA2 OTQyZTg0Li41NTEzNTEwIDEwMDY0NAo+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9mb3VyY2MuaAo+ ICsrKyBiL2luY2x1ZGUvZHJtL2RybV9mb3VyY2MuaAo+IEBAIC0zOCw2ICszOCw3IEBAIHN0cnVj dCBkcm1fbW9kZV9mYl9jbWQyOwo+ICAgKiBAY3BwOiBOdW1iZXIgb2YgYnl0ZXMgcGVyIHBpeGVs IChwZXIgcGxhbmUpCj4gICAqIEBoc3ViOiBIb3Jpem9udGFsIGNocm9tYSBzdWJzYW1wbGluZyBm YWN0b3IKPiAgICogQHZzdWI6IFZlcnRpY2FsIGNocm9tYSBzdWJzYW1wbGluZyBmYWN0b3IKPiAr ICogQGFscGhhOiBOdW1iZXIgb2YgYml0cyBwZXIgcGl4ZWwgcmVwcmVzZW50aW5nIGFscGhhCj4g ICAqLwo+ICBzdHJ1Y3QgZHJtX2Zvcm1hdF9pbmZvIHsKPiAgCXUzMiBmb3JtYXQ7Cj4gQEAgLTQ2 LDYgKzQ3LDcgQEAgc3RydWN0IGRybV9mb3JtYXRfaW5mbyB7Cj4gIAl1OCBjcHBbM107Cj4gIAl1 OCBoc3ViOwo+ICAJdTggdnN1YjsKPiArCXU4IGFscGhhOwo+ICB9Owo+ICAKPiAgLyoqCj4gQEAg LTU3LDYgKzU5LDcgQEAgc3RydWN0IGRybV9mb3JtYXRfbmFtZV9idWYgewo+ICB9Owo+ICAKPiAg Y29uc3Qgc3RydWN0IGRybV9mb3JtYXRfaW5mbyAqX19kcm1fZm9ybWF0X2luZm8odTMyIGZvcm1h dCk7Cj4gK2ludCBkcm1fZm9ybWF0X2FscGhhX2JpdHModTMyIGZvcm1hdCk7Cj4gIGNvbnN0IHN0 cnVjdCBkcm1fZm9ybWF0X2luZm8gKmRybV9mb3JtYXRfaW5mbyh1MzIgZm9ybWF0KTsKPiAgY29u c3Qgc3RydWN0IGRybV9mb3JtYXRfaW5mbyAqCj4gIGRybV9nZXRfZm9ybWF0X2luZm8oc3RydWN0 IGRybV9kZXZpY2UgKmRldiwKPiAtLSAKPiAyLjcuNAo+IAo+IF9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gZHJpLWRldmVsIG1haWxpbmcgbGlzdAo+IGRy aS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAoKLS0gClZpbGxlIFN5cmrDpGzDpApJbnRl bCBPVEMKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJp LWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S964828AbeALO2m (ORCPT + 1 other); Fri, 12 Jan 2018 09:28:42 -0500 Received: from mga11.intel.com ([192.55.52.93]:20661 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933868AbeALO2k (ORCPT ); Fri, 12 Jan 2018 09:28:40 -0500 X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.46,349,1511856000"; d="scan'208";a="18700252" Date: Fri, 12 Jan 2018 16:28:34 +0200 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= To: Ayan Halder Cc: liviu.dudau@arm.com, brian.starkey@arm.com, daniel.vetter@intel.com, jani.nikula@linux.intel.com, seanpaul@chromium.org, airlied@linux.ie, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, nd@arm.com Subject: Re: [PATCH] drm: add drm_format_alpha_bits Message-ID: <20180112142834.GB10981@intel.com> References: <1515766876-14231-1-git-send-email-ayan.halder@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <1515766876-14231-1-git-send-email-ayan.halder@arm.com> User-Agent: Mutt/1.7.2 (2016-11-26) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Return-Path: On Fri, Jan 12, 2018 at 02:21:16PM +0000, Ayan Halder wrote: > drm_format_info does not describe the number of bits used for the alpha > channel. That information is useful in a central place like drm_fourcc.c > where it can be queried by the drivers that want to determine if 'alpha > blending' is to be enabled or not. > > Signed-off-by: Ayan Kumar Halder > Reviewed-by: Liviu Dudau > --- > drivers/gpu/drm/drm_fourcc.c | 154 ++++++++++++++++++++++++------------------- > include/drm/drm_fourcc.h | 3 + > 2 files changed, 89 insertions(+), 68 deletions(-) > > diff --git a/drivers/gpu/drm/drm_fourcc.c b/drivers/gpu/drm/drm_fourcc.c > index 9c0152d..073001b 100644 > --- a/drivers/gpu/drm/drm_fourcc.c > +++ b/drivers/gpu/drm/drm_fourcc.c > @@ -348,3 +348,21 @@ int drm_format_plane_height(int height, uint32_t format, int plane) > return height / info->vsub; > } > EXPORT_SYMBOL(drm_format_plane_height); > + > +/** > + * drm_format_alpha_bits - get the number of bits per pixel > + * representing alpha for format > + * @format: pixel format (DRM_FORMAT_*) > + * > + * Returns: > + * The number of bits per pixel representing alpha used by the > + * specified pixel format. > + */ > +int drm_format_alpha_bits(uint32_t format) > +{ > + const struct drm_format_info *info; > + > + info = drm_format_info(format); > + return info ? info->alpha : 0; > +} > +EXPORT_SYMBOL(drm_format_alpha_bits); Do you have an actual use for this function somewhere? > diff --git a/include/drm/drm_fourcc.h b/include/drm/drm_fourcc.h > index 6942e84..5513510 100644 > --- a/include/drm/drm_fourcc.h > +++ b/include/drm/drm_fourcc.h > @@ -38,6 +38,7 @@ struct drm_mode_fb_cmd2; > * @cpp: Number of bytes per pixel (per plane) > * @hsub: Horizontal chroma subsampling factor > * @vsub: Vertical chroma subsampling factor > + * @alpha: Number of bits per pixel representing alpha > */ > struct drm_format_info { > u32 format; > @@ -46,6 +47,7 @@ struct drm_format_info { > u8 cpp[3]; > u8 hsub; > u8 vsub; > + u8 alpha; > }; > > /** > @@ -57,6 +59,7 @@ struct drm_format_name_buf { > }; > > const struct drm_format_info *__drm_format_info(u32 format); > +int drm_format_alpha_bits(u32 format); > const struct drm_format_info *drm_format_info(u32 format); > const struct drm_format_info * > drm_get_format_info(struct drm_device *dev, > -- > 2.7.4 > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel -- Ville Syrjälä Intel OTC