From mboxrd@z Thu Jan 1 00:00:00 1970 From: boris.brezillon@free-electrons.com (Boris Brezillon) Date: Tue, 9 Jan 2018 13:27:08 +0100 Subject: [PATCH 02/19] drm/atmel-hlcdc: Use the alpha format helper In-Reply-To: <22c5a25fbdd56193ece1de90dc17cfa8747e7136.1515494838.git-series.maxime.ripard@free-electrons.com> References: <22c5a25fbdd56193ece1de90dc17cfa8747e7136.1515494838.git-series.maxime.ripard@free-electrons.com> Message-ID: <20180109132708.2ae5e54f@bbrezillon> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On Tue, 9 Jan 2018 11:56:21 +0100 Maxime Ripard wrote: > Now that the core has a drm format helper to tell if a format embeds an > alpha component in it, let's use it. > > Cc: Boris Brezillon Acked-by: Boris Brezillon > Signed-off-by: Maxime Ripard > --- > drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c | 20 ++---------------- > 1 file changed, 3 insertions(+), 17 deletions(-) > > diff --git a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c > index 703c2d13603f..1a9318810a29 100644 > --- a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c > +++ b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c > @@ -194,20 +194,6 @@ static int atmel_hlcdc_format_to_plane_mode(u32 format, u32 *mode) > return 0; > } > > -static bool atmel_hlcdc_format_embeds_alpha(u32 format) > -{ > - int i; > - > - for (i = 0; i < sizeof(format); i++) { > - char tmp = (format >> (8 * i)) & 0xff; > - > - if (tmp == 'A') > - return true; > - } > - > - return false; > -} > - > static u32 heo_downscaling_xcoef[] = { > 0x11343311, > 0x000000f7, > @@ -395,7 +381,7 @@ atmel_hlcdc_plane_update_general_settings(struct atmel_hlcdc_plane *plane, > cfg |= ATMEL_HLCDC_LAYER_OVR | ATMEL_HLCDC_LAYER_ITER2BL | > ATMEL_HLCDC_LAYER_ITER; > > - if (atmel_hlcdc_format_embeds_alpha(format)) > + if (drm_format_has_alpha(format)) > cfg |= ATMEL_HLCDC_LAYER_LAEN; > else > cfg |= ATMEL_HLCDC_LAYER_GAEN | > @@ -566,7 +552,7 @@ atmel_hlcdc_plane_prepare_disc_area(struct drm_crtc_state *c_state) > ovl_state = drm_plane_state_to_atmel_hlcdc_plane_state(ovl_s); > > if (!ovl_s->fb || > - atmel_hlcdc_format_embeds_alpha(ovl_s->fb->format->format) || > + drm_format_has_alpha(ovl_s->fb->format->format) || > ovl_state->alpha != 255) > continue; > > @@ -769,7 +755,7 @@ static int atmel_hlcdc_plane_atomic_check(struct drm_plane *p, > > if ((state->crtc_h != state->src_h || state->crtc_w != state->src_w) && > (!desc->layout.memsize || > - atmel_hlcdc_format_embeds_alpha(state->base.fb->format->format))) > + drm_format_has_alpha(state->base.fb->format->format))) > return -EINVAL; > > if (state->crtc_x < 0 || state->crtc_y < 0) From mboxrd@z Thu Jan 1 00:00:00 1970 From: Boris Brezillon Subject: Re: [PATCH 02/19] drm/atmel-hlcdc: Use the alpha format helper Date: Tue, 9 Jan 2018 13:27:08 +0100 Message-ID: <20180109132708.2ae5e54f@bbrezillon> References: <22c5a25fbdd56193ece1de90dc17cfa8747e7136.1515494838.git-series.maxime.ripard@free-electrons.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail.free-electrons.com (mail.free-electrons.com [62.4.15.54]) by gabe.freedesktop.org (Postfix) with ESMTP id C20C889F2E for ; Tue, 9 Jan 2018 12:27:19 +0000 (UTC) In-Reply-To: <22c5a25fbdd56193ece1de90dc17cfa8747e7136.1515494838.git-series.maxime.ripard@free-electrons.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Maxime Ripard Cc: Thomas Petazzoni , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Chen-Yu Tsai , Daniel Vetter , linux-arm-kernel@lists.infradead.org, thomas@vitsch.nl List-Id: dri-devel@lists.freedesktop.org T24gVHVlLCAgOSBKYW4gMjAxOCAxMTo1NjoyMSArMDEwMApNYXhpbWUgUmlwYXJkIDxtYXhpbWUu cmlwYXJkQGZyZWUtZWxlY3Ryb25zLmNvbT4gd3JvdGU6Cgo+IE5vdyB0aGF0IHRoZSBjb3JlIGhh cyBhIGRybSBmb3JtYXQgaGVscGVyIHRvIHRlbGwgaWYgYSBmb3JtYXQgZW1iZWRzIGFuCj4gYWxw aGEgY29tcG9uZW50IGluIGl0LCBsZXQncyB1c2UgaXQuCj4gCj4gQ2M6IEJvcmlzIEJyZXppbGxv biA8Ym9yaXMuYnJlemlsbG9uQGZyZWUtZWxlY3Ryb25zLmNvbT4KCkFja2VkLWJ5OiBCb3JpcyBC cmV6aWxsb24gPGJvcmlzLmJyZXppbGxvbkBmcmVlLWVsZWN0cm9ucy5jb20+Cgo+IFNpZ25lZC1v ZmYtYnk6IE1heGltZSBSaXBhcmQgPG1heGltZS5yaXBhcmRAZnJlZS1lbGVjdHJvbnMuY29tPgo+ IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vYXRtZWwtaGxjZGMvYXRtZWxfaGxjZGNfcGxhbmUuYyB8 IDIwICsrLS0tLS0tLS0tLS0tLS0tLQo+ICAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCsp LCAxNyBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2F0bWVs LWhsY2RjL2F0bWVsX2hsY2RjX3BsYW5lLmMgYi9kcml2ZXJzL2dwdS9kcm0vYXRtZWwtaGxjZGMv YXRtZWxfaGxjZGNfcGxhbmUuYwo+IGluZGV4IDcwM2MyZDEzNjAzZi4uMWE5MzE4ODEwYTI5IDEw MDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hdG1lbC1obGNkYy9hdG1lbF9obGNkY19wbGFu ZS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2F0bWVsLWhsY2RjL2F0bWVsX2hsY2RjX3BsYW5l LmMKPiBAQCAtMTk0LDIwICsxOTQsNiBAQCBzdGF0aWMgaW50IGF0bWVsX2hsY2RjX2Zvcm1hdF90 b19wbGFuZV9tb2RlKHUzMiBmb3JtYXQsIHUzMiAqbW9kZSkKPiAgCXJldHVybiAwOwo+ICB9Cj4g IAo+IC1zdGF0aWMgYm9vbCBhdG1lbF9obGNkY19mb3JtYXRfZW1iZWRzX2FscGhhKHUzMiBmb3Jt YXQpCj4gLXsKPiAtCWludCBpOwo+IC0KPiAtCWZvciAoaSA9IDA7IGkgPCBzaXplb2YoZm9ybWF0 KTsgaSsrKSB7Cj4gLQkJY2hhciB0bXAgPSAoZm9ybWF0ID4+ICg4ICogaSkpICYgMHhmZjsKPiAt Cj4gLQkJaWYgKHRtcCA9PSAnQScpCj4gLQkJCXJldHVybiB0cnVlOwo+IC0JfQo+IC0KPiAtCXJl dHVybiBmYWxzZTsKPiAtfQo+IC0KPiAgc3RhdGljIHUzMiBoZW9fZG93bnNjYWxpbmdfeGNvZWZb XSA9IHsKPiAgCTB4MTEzNDMzMTEsCj4gIAkweDAwMDAwMGY3LAo+IEBAIC0zOTUsNyArMzgxLDcg QEAgYXRtZWxfaGxjZGNfcGxhbmVfdXBkYXRlX2dlbmVyYWxfc2V0dGluZ3Moc3RydWN0IGF0bWVs X2hsY2RjX3BsYW5lICpwbGFuZSwKPiAgCQljZmcgfD0gQVRNRUxfSExDRENfTEFZRVJfT1ZSIHwg QVRNRUxfSExDRENfTEFZRVJfSVRFUjJCTCB8Cj4gIAkJICAgICAgIEFUTUVMX0hMQ0RDX0xBWUVS X0lURVI7Cj4gIAo+IC0JCWlmIChhdG1lbF9obGNkY19mb3JtYXRfZW1iZWRzX2FscGhhKGZvcm1h dCkpCj4gKwkJaWYgKGRybV9mb3JtYXRfaGFzX2FscGhhKGZvcm1hdCkpCj4gIAkJCWNmZyB8PSBB VE1FTF9ITENEQ19MQVlFUl9MQUVOOwo+ICAJCWVsc2UKPiAgCQkJY2ZnIHw9IEFUTUVMX0hMQ0RD X0xBWUVSX0dBRU4gfAo+IEBAIC01NjYsNyArNTUyLDcgQEAgYXRtZWxfaGxjZGNfcGxhbmVfcHJl cGFyZV9kaXNjX2FyZWEoc3RydWN0IGRybV9jcnRjX3N0YXRlICpjX3N0YXRlKQo+ICAJCW92bF9z dGF0ZSA9IGRybV9wbGFuZV9zdGF0ZV90b19hdG1lbF9obGNkY19wbGFuZV9zdGF0ZShvdmxfcyk7 Cj4gIAo+ICAJCWlmICghb3ZsX3MtPmZiIHx8Cj4gLQkJICAgIGF0bWVsX2hsY2RjX2Zvcm1hdF9l bWJlZHNfYWxwaGEob3ZsX3MtPmZiLT5mb3JtYXQtPmZvcm1hdCkgfHwKPiArCQkgICAgZHJtX2Zv cm1hdF9oYXNfYWxwaGEob3ZsX3MtPmZiLT5mb3JtYXQtPmZvcm1hdCkgfHwKPiAgCQkgICAgb3Zs X3N0YXRlLT5hbHBoYSAhPSAyNTUpCj4gIAkJCWNvbnRpbnVlOwo+ICAKPiBAQCAtNzY5LDcgKzc1 NSw3IEBAIHN0YXRpYyBpbnQgYXRtZWxfaGxjZGNfcGxhbmVfYXRvbWljX2NoZWNrKHN0cnVjdCBk cm1fcGxhbmUgKnAsCj4gIAo+ICAJaWYgKChzdGF0ZS0+Y3J0Y19oICE9IHN0YXRlLT5zcmNfaCB8 fCBzdGF0ZS0+Y3J0Y193ICE9IHN0YXRlLT5zcmNfdykgJiYKPiAgCSAgICAoIWRlc2MtPmxheW91 dC5tZW1zaXplIHx8Cj4gLQkgICAgIGF0bWVsX2hsY2RjX2Zvcm1hdF9lbWJlZHNfYWxwaGEoc3Rh dGUtPmJhc2UuZmItPmZvcm1hdC0+Zm9ybWF0KSkpCj4gKwkgICAgIGRybV9mb3JtYXRfaGFzX2Fs cGhhKHN0YXRlLT5iYXNlLmZiLT5mb3JtYXQtPmZvcm1hdCkpKQo+ICAJCXJldHVybiAtRUlOVkFM Owo+ICAKPiAgCWlmIChzdGF0ZS0+Y3J0Y194IDwgMCB8fCBzdGF0ZS0+Y3J0Y195IDwgMCkKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBt YWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo= From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754922AbeAIM1V (ORCPT + 1 other); Tue, 9 Jan 2018 07:27:21 -0500 Received: from mail.free-electrons.com ([62.4.15.54]:54334 "EHLO mail.free-electrons.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752117AbeAIM1U (ORCPT ); Tue, 9 Jan 2018 07:27:20 -0500 Date: Tue, 9 Jan 2018 13:27:08 +0100 From: Boris Brezillon To: Maxime Ripard Cc: Chen-Yu Tsai , Daniel Vetter , Jani Nikula , Sean Paul , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Thomas Petazzoni , thomas@vitsch.nl Subject: Re: [PATCH 02/19] drm/atmel-hlcdc: Use the alpha format helper Message-ID: <20180109132708.2ae5e54f@bbrezillon> In-Reply-To: <22c5a25fbdd56193ece1de90dc17cfa8747e7136.1515494838.git-series.maxime.ripard@free-electrons.com> References: <22c5a25fbdd56193ece1de90dc17cfa8747e7136.1515494838.git-series.maxime.ripard@free-electrons.com> X-Mailer: Claws Mail 3.14.1 (GTK+ 2.24.31; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Return-Path: On Tue, 9 Jan 2018 11:56:21 +0100 Maxime Ripard wrote: > Now that the core has a drm format helper to tell if a format embeds an > alpha component in it, let's use it. > > Cc: Boris Brezillon Acked-by: Boris Brezillon > Signed-off-by: Maxime Ripard > --- > drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c | 20 ++---------------- > 1 file changed, 3 insertions(+), 17 deletions(-) > > diff --git a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c > index 703c2d13603f..1a9318810a29 100644 > --- a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c > +++ b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c > @@ -194,20 +194,6 @@ static int atmel_hlcdc_format_to_plane_mode(u32 format, u32 *mode) > return 0; > } > > -static bool atmel_hlcdc_format_embeds_alpha(u32 format) > -{ > - int i; > - > - for (i = 0; i < sizeof(format); i++) { > - char tmp = (format >> (8 * i)) & 0xff; > - > - if (tmp == 'A') > - return true; > - } > - > - return false; > -} > - > static u32 heo_downscaling_xcoef[] = { > 0x11343311, > 0x000000f7, > @@ -395,7 +381,7 @@ atmel_hlcdc_plane_update_general_settings(struct atmel_hlcdc_plane *plane, > cfg |= ATMEL_HLCDC_LAYER_OVR | ATMEL_HLCDC_LAYER_ITER2BL | > ATMEL_HLCDC_LAYER_ITER; > > - if (atmel_hlcdc_format_embeds_alpha(format)) > + if (drm_format_has_alpha(format)) > cfg |= ATMEL_HLCDC_LAYER_LAEN; > else > cfg |= ATMEL_HLCDC_LAYER_GAEN | > @@ -566,7 +552,7 @@ atmel_hlcdc_plane_prepare_disc_area(struct drm_crtc_state *c_state) > ovl_state = drm_plane_state_to_atmel_hlcdc_plane_state(ovl_s); > > if (!ovl_s->fb || > - atmel_hlcdc_format_embeds_alpha(ovl_s->fb->format->format) || > + drm_format_has_alpha(ovl_s->fb->format->format) || > ovl_state->alpha != 255) > continue; > > @@ -769,7 +755,7 @@ static int atmel_hlcdc_plane_atomic_check(struct drm_plane *p, > > if ((state->crtc_h != state->src_h || state->crtc_w != state->src_w) && > (!desc->layout.memsize || > - atmel_hlcdc_format_embeds_alpha(state->base.fb->format->format))) > + drm_format_has_alpha(state->base.fb->format->format))) > return -EINVAL; > > if (state->crtc_x < 0 || state->crtc_y < 0)