From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: Re: [PATCH v2 07/10] drm: rcar-du: Use __drm_atomic_helper_plane_reset instead of copying the logic Date: Thu, 26 Jul 2018 23:17:57 +0300 Message-ID: <5705422.OO4MiyceDJ@avalon> References: <20180726161756.1794-1-alexandru-cosmin.gheorghe@arm.com> <20180726161756.1794-8-alexandru-cosmin.gheorghe@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180726161756.1794-8-alexandru-cosmin.gheorghe@arm.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Alexandru Gheorghe Cc: alexandre.belloni@bootlin.com, airlied@linux.ie, liviu.dudau@arm.com, dri-devel@lists.freedesktop.org, thellstrom@vmware.com, krzk@kernel.org, maxime.ripard@bootlin.com, wens@csie.org, kgene@kernel.org, malidp@foss.arm.com, linux-graphics-maintainer@vmware.com, sunpeng.li@amd.com, boris.brezillon@bootlin.com, linux-samsung-soc@vger.kernel.org, nd@arm.com, Tony.Cheng@amd.com, linux-arm-kernel@lists.infradead.org, sw0312.kim@samsung.com, nicolas.ferre@microchip.com, shirish.s@amd.com, kyungmin.park@samsung.com, alexander.deucher@amd.com, christian.koenig@amd.com List-Id: linux-samsung-soc@vger.kernel.org SGkgQWxleGFuZHJ1LAoKVGhhbmsgeW91IGZvciB0aGUgcGF0Y2guCgpPbiBUaHVyc2RheSwgMjYg SnVseSAyMDE4IDE5OjE3OjUzIEVFU1QgQWxleGFuZHJ1IEdoZW9yZ2hlIHdyb3RlOgo+IEEgbmV3 IGhlbHBlciBmdW5jdGlvbihfX2RybV9hdG9taWNfaGVscGVyX3BsYW5lX3Jlc2V0KSBoYXMgYmVl biBhZGRlZAo+IGZvciBsaW5raW5nIGEgcGxhbmUgd2l0aCBpdHMgc3RhdGUgYW5kIHJlc2V0dGlu ZyB0aGUgY29yZQo+IHByb3BlcnRpZXMoYWxwaGEsIHJvdGF0aW9uLCBldGMuKSB0byB0aGVpciBk ZWZhdWx0IHZhbHVlcy4KPiBVc2UgdGhhdCBpbnN0ZWFkIG9mIGR1cGxpY2F0aW5nIHRoZSBsb2dp Yy4KPiAKPiBfX2RybV9hdG9taWNfaGVscGVyX3BsYW5lX3Jlc2V0IGluaXRpYWxpemVzIHRoZSBh bHBoYSBwcm9wZXJ0eSB0byBpdHMKPiBtYXggdmFsdWUsIHdoaWNoIGlzIGRlZmluZWQgYnkgdGhl IGRybSBjb3JlIGFzIERSTV9CTEVORF9BTFBIQV9PUEFRVUUsCj4gc28gbm90aGluZyBjaGFuZ2Vz IHJlZ2FyZGluZyB0aGUgYWxwaGEgdmFsdWUuCj4gCj4gU2lnbmVkLW9mZi1ieTogQWxleGFuZHJ1 IEdoZW9yZ2hlIDxhbGV4YW5kcnUtY29zbWluLmdoZW9yZ2hlQGFybS5jb20+Cj4gLS0tCj4gIGRy aXZlcnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfZHVfcGxhbmUuYyB8IDQgKy0tLQo+ICBkcml2ZXJz L2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X3ZzcC5jICAgfCA0ICstLS0KPiAgMiBmaWxlcyBjaGFu Z2VkLCAyIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfZHVfcGxhbmUuYwo+IGIvZHJpdmVycy9ncHUvZHJt L3JjYXItZHUvcmNhcl9kdV9wbGFuZS5jIGluZGV4IGMyMGY3ZWQ0OGM4ZC4uMTlhOWQ1ZjZkYjFj Cj4gMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNhcl9kdV9wbGFuZS5j Cj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNhcl9kdV9wbGFuZS5jCj4gQEAgLTY4 OSwxNSArNjg5LDEzIEBAIHN0YXRpYyB2b2lkIHJjYXJfZHVfcGxhbmVfcmVzZXQoc3RydWN0IGRy bV9wbGFuZQo+ICpwbGFuZSkKPiAJc3RhdGUgPSBremFsbG9jKHNpemVvZigqc3RhdGUpLCBHRlBf S0VSTkVMKTsKPiAgCWlmIChzdGF0ZSA9PSBOVUxMKQo+ICAJCXJldHVybjsKCkFzIEknZCBsaWtl IHlvdSB0byBmaXggdGhlIHR3byBzbWFsbCBpc3N1ZXMgYmVsb3csIGNvdWxkIHlvdSBhbHNvIGFk ZCBhIGJsYW5rIApsaW5lIGhlcmUgPwoKPiArCV9fZHJtX2F0b21pY19oZWxwZXJfcGxhbmVfcmVz ZXQocGxhbmUsICZzdGF0ZS0+c3RhdGUpOwo+IAo+ICAJc3RhdGUtPmh3aW5kZXggPSAtMTsKPiAg CXN0YXRlLT5zb3VyY2UgPSBSQ0FSX0RVX1BMQU5FX01FTU9SWTsKPiAgCXN0YXRlLT5jb2xvcmtl eSA9IFJDQVJfRFVfQ09MT1JLRVlfTk9ORTsKPiAgCXN0YXRlLT5zdGF0ZS56cG9zID0gcGxhbmUt PnR5cGUgPT0gRFJNX1BMQU5FX1RZUEVfUFJJTUFSWSA/IDAgOiAxOwo+IAoKVGhpcyBibGFuayBs aW5lIHNob3VsZCBiZSByZW1vdmVkLgoKPiAtCXBsYW5lLT5zdGF0ZSA9ICZzdGF0ZS0+c3RhdGU7 Cj4gLQlwbGFuZS0+c3RhdGUtPmFscGhhID0gRFJNX0JMRU5EX0FMUEhBX09QQVFVRTsKPiAtCXBs YW5lLT5zdGF0ZS0+cGxhbmUgPSBwbGFuZTsKPiAgfQo+IAo+ICBzdGF0aWMgaW50IHJjYXJfZHVf cGxhbmVfYXRvbWljX3NldF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNhcl9kdV92c3AuYwo+IGIvZHJpdmVy cy9ncHUvZHJtL3JjYXItZHUvcmNhcl9kdV92c3AuYyBpbmRleCA3MmVlYmVkYTUxOGUuLjBhMGFh NDkwZjgwNQo+IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfZHVf dnNwLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X3ZzcC5jCj4gQEAg LTM0NiwxMSArMzQ2LDkgQEAgc3RhdGljIHZvaWQgcmNhcl9kdV92c3BfcGxhbmVfcmVzZXQoc3Ry dWN0IGRybV9wbGFuZQo+ICpwbGFuZSkKPiAJaWYgKHN0YXRlID09IE5VTEwpCj4gIAkJcmV0dXJu Owo+IAo+IC0Jc3RhdGUtPnN0YXRlLmFscGhhID0gRFJNX0JMRU5EX0FMUEhBX09QQVFVRTsKPiAr CV9fZHJtX2F0b21pY19oZWxwZXJfcGxhbmVfcmVzZXQocGxhbmUsICZzdGF0ZS0+c3RhdGUpOwo+ ICAJc3RhdGUtPnN0YXRlLnpwb3MgPSBwbGFuZS0+dHlwZSA9PSBEUk1fUExBTkVfVFlQRV9QUklN QVJZID8gMCA6IDE7Cj4gCgpBbmQgdGhpcyBvbmUgdG9vLgoKPiAtCXBsYW5lLT5zdGF0ZSA9ICZz dGF0ZS0+c3RhdGU7Cj4gLQlwbGFuZS0+c3RhdGUtPnBsYW5lID0gcGxhbmU7Cj4gIH0KPiAKPiAg c3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fcGxhbmVfZnVuY3MgcmNhcl9kdV92c3BfcGxhbmVfZnVu Y3MgPSB7CgpBcGFydCBmcm9tIHRoYXQsCgpSZXZpZXdlZC1ieTogTGF1cmVudCBQaW5jaGFydCA8 bGF1cmVudC5waW5jaGFydEBpZGVhc29uYm9hcmQuY29tPgoKLS0gClJlZ2FyZHMsCgpMYXVyZW50 IFBpbmNoYXJ0CgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZl bAo= From mboxrd@z Thu Jan 1 00:00:00 1970 From: laurent.pinchart@ideasonboard.com (Laurent Pinchart) Date: Thu, 26 Jul 2018 23:17:57 +0300 Subject: [PATCH v2 07/10] drm: rcar-du: Use __drm_atomic_helper_plane_reset instead of copying the logic In-Reply-To: <20180726161756.1794-8-alexandru-cosmin.gheorghe@arm.com> References: <20180726161756.1794-1-alexandru-cosmin.gheorghe@arm.com> <20180726161756.1794-8-alexandru-cosmin.gheorghe@arm.com> Message-ID: <5705422.OO4MiyceDJ@avalon> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi Alexandru, Thank you for the patch. On Thursday, 26 July 2018 19:17:53 EEST Alexandru Gheorghe wrote: > A new helper function(__drm_atomic_helper_plane_reset) has been added > for linking a plane with its state and resetting the core > properties(alpha, rotation, etc.) to their default values. > Use that instead of duplicating the logic. > > __drm_atomic_helper_plane_reset initializes the alpha property to its > max value, which is defined by the drm core as DRM_BLEND_ALPHA_OPAQUE, > so nothing changes regarding the alpha value. > > Signed-off-by: Alexandru Gheorghe > --- > drivers/gpu/drm/rcar-du/rcar_du_plane.c | 4 +--- > drivers/gpu/drm/rcar-du/rcar_du_vsp.c | 4 +--- > 2 files changed, 2 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/rcar-du/rcar_du_plane.c > b/drivers/gpu/drm/rcar-du/rcar_du_plane.c index c20f7ed48c8d..19a9d5f6db1c > 100644 > --- a/drivers/gpu/drm/rcar-du/rcar_du_plane.c > +++ b/drivers/gpu/drm/rcar-du/rcar_du_plane.c > @@ -689,15 +689,13 @@ static void rcar_du_plane_reset(struct drm_plane > *plane) > state = kzalloc(sizeof(*state), GFP_KERNEL); > if (state == NULL) > return; As I'd like you to fix the two small issues below, could you also add a blank line here ? > + __drm_atomic_helper_plane_reset(plane, &state->state); > > state->hwindex = -1; > state->source = RCAR_DU_PLANE_MEMORY; > state->colorkey = RCAR_DU_COLORKEY_NONE; > state->state.zpos = plane->type == DRM_PLANE_TYPE_PRIMARY ? 0 : 1; > This blank line should be removed. > - plane->state = &state->state; > - plane->state->alpha = DRM_BLEND_ALPHA_OPAQUE; > - plane->state->plane = plane; > } > > static int rcar_du_plane_atomic_set_property(struct drm_plane *plane, > diff --git a/drivers/gpu/drm/rcar-du/rcar_du_vsp.c > b/drivers/gpu/drm/rcar-du/rcar_du_vsp.c index 72eebeda518e..0a0aa490f805 > 100644 > --- a/drivers/gpu/drm/rcar-du/rcar_du_vsp.c > +++ b/drivers/gpu/drm/rcar-du/rcar_du_vsp.c > @@ -346,11 +346,9 @@ static void rcar_du_vsp_plane_reset(struct drm_plane > *plane) > if (state == NULL) > return; > > - state->state.alpha = DRM_BLEND_ALPHA_OPAQUE; > + __drm_atomic_helper_plane_reset(plane, &state->state); > state->state.zpos = plane->type == DRM_PLANE_TYPE_PRIMARY ? 0 : 1; > And this one too. > - plane->state = &state->state; > - plane->state->plane = plane; > } > > static const struct drm_plane_funcs rcar_du_vsp_plane_funcs = { Apart from that, Reviewed-by: Laurent Pinchart -- Regards, Laurent Pinchart