From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.6 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_PASS,USER_AGENT_MUTT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 90569C4360F for ; Mon, 18 Feb 2019 23:24:13 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 60C31218AD for ; Mon, 18 Feb 2019 23:24:13 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="WBk9ce/4" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730712AbfBRXYM (ORCPT ); Mon, 18 Feb 2019 18:24:12 -0500 Received: from perceval.ideasonboard.com ([213.167.242.64]:37146 "EHLO perceval.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730410AbfBRXYK (ORCPT ); Mon, 18 Feb 2019 18:24:10 -0500 Received: from pendragon.ideasonboard.com (91-152-6-44.elisa-laajakaista.fi [91.152.6.44]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 4D7A753B; Tue, 19 Feb 2019 00:24:08 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1550532248; bh=xM0dgMwcqOZ2sg5KkzgNDaEKlakZTj+dBN0Iom8enuc=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=WBk9ce/4kTm9ifQi3SdsiJ1A5/obM9VjSyY2Ri4WL9tE8k0LPa1OsOXeri3M2oXN3 YGcmPWFCTEW6MAnJB06pE95h0aqRBVjfWuB5QDktvJzgFTFAt3H2LVQNp5vEs4ajpG efI6j+XlyXI+TS7ILrUmOfso9ZEOY3aQey5lB5AM= Date: Tue, 19 Feb 2019 01:24:03 +0200 From: Laurent Pinchart To: Kieran Bingham Cc: Laurent Pinchart , linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org Subject: Re: [PATCH v4 2/7] media: vsp1: wpf: Fix partition configuration for display pipelines Message-ID: <20190218232403.GC5082@pendragon.ideasonboard.com> References: <20190217024852.23328-1-laurent.pinchart+renesas@ideasonboard.com> <20190217024852.23328-3-laurent.pinchart+renesas@ideasonboard.com> <5f5c255c-1071-78e9-e64f-8dcdfa20ea80@ideasonboard.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <5f5c255c-1071-78e9-e64f-8dcdfa20ea80@ideasonboard.com> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org Hi Kieran, On Sun, Feb 17, 2019 at 08:16:27PM +0000, Kieran Bingham wrote: > On 17/02/2019 02:48, Laurent Pinchart wrote: > > The WPF accesses partition configuration from pipe->partition in the > > partition configuration that is not used for display pipelines. > > That sentence is hard to read... Indeed. I'll rewrite it. > > Writeback support will require full configuration of the WPF while not > > providing a valid pipe->partition. Rework the configuration code to fall > > back to the full image width in that case, as is already done for the > > part of the configuration currently relevant for display pipelines. > > > > Ah yes - this is probably a better route than allocating a table for a > single partition (which is what I had locally). > > > > Signed-off-by: Laurent Pinchart > > I like that this change also simplifies the flip/rotate handling code to > make that easier to read. > > Reviewed-by: Kieran Bingham > > > --- > > drivers/media/platform/vsp1/vsp1_wpf.c | 16 +++++++++------- > > 1 file changed, 9 insertions(+), 7 deletions(-) > > > > diff --git a/drivers/media/platform/vsp1/vsp1_wpf.c b/drivers/media/platform/vsp1/vsp1_wpf.c > > index 32bb207b2007..a07c5944b598 100644 > > --- a/drivers/media/platform/vsp1/vsp1_wpf.c > > +++ b/drivers/media/platform/vsp1/vsp1_wpf.c > > @@ -362,6 +362,7 @@ static void wpf_configure_partition(struct vsp1_entity *entity, > > const struct vsp1_format_info *fmtinfo = wpf->fmtinfo; > > unsigned int width; > > unsigned int height; > > + unsigned int left; > > unsigned int offset; > > unsigned int flip; > > unsigned int i; > > @@ -371,13 +372,16 @@ static void wpf_configure_partition(struct vsp1_entity *entity, > > RWPF_PAD_SINK); > > width = sink_format->width; > > height = sink_format->height; > > + left = 0; > > > > /* > > * Cropping. The partition algorithm can split the image into > > * multiple slices. > > */ > > - if (pipe->partitions > 1) > > + if (pipe->partitions > 1) { > > width = pipe->partition->wpf.width; > > + left = pipe->partition->wpf.left; > > + } > > > > vsp1_wpf_write(wpf, dlb, VI6_WPF_HSZCLIP, VI6_WPF_SZCLIP_EN | > > (0 << VI6_WPF_SZCLIP_OFST_SHIFT) | > > @@ -408,13 +412,11 @@ static void wpf_configure_partition(struct vsp1_entity *entity, > > flip = wpf->flip.active; > > > > if (flip & BIT(WPF_CTRL_HFLIP) && !wpf->flip.rotate) > > - offset = format->width - pipe->partition->wpf.left > > - - pipe->partition->wpf.width; > > + offset = format->width - left - width; > > else if (flip & BIT(WPF_CTRL_VFLIP) && wpf->flip.rotate) > > - offset = format->height - pipe->partition->wpf.left > > - - pipe->partition->wpf.width; > > + offset = format->height - left - width; > > else > > - offset = pipe->partition->wpf.left; > > + offset = left; > > This hunk looks a lot simpler :) > > > > > > for (i = 0; i < format->num_planes; ++i) { > > unsigned int hsub = i > 0 ? fmtinfo->hsub : 1; > > @@ -436,7 +438,7 @@ static void wpf_configure_partition(struct vsp1_entity *entity, > > * image height. > > */ > > if (wpf->flip.rotate) > > - height = pipe->partition->wpf.width; > > + height = width; > > else > > height = format->height; > > > > > > -- > Regards > -- > Kieran -- Regards, Laurent Pinchart From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: Re: [PATCH v4 2/7] media: vsp1: wpf: Fix partition configuration for display pipelines Date: Tue, 19 Feb 2019 01:24:03 +0200 Message-ID: <20190218232403.GC5082@pendragon.ideasonboard.com> References: <20190217024852.23328-1-laurent.pinchart+renesas@ideasonboard.com> <20190217024852.23328-3-laurent.pinchart+renesas@ideasonboard.com> <5f5c255c-1071-78e9-e64f-8dcdfa20ea80@ideasonboard.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by gabe.freedesktop.org (Postfix) with ESMTPS id 318D189243 for ; Mon, 18 Feb 2019 23:24:10 +0000 (UTC) Content-Disposition: inline In-Reply-To: <5f5c255c-1071-78e9-e64f-8dcdfa20ea80@ideasonboard.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Kieran Bingham Cc: Laurent Pinchart , dri-devel@lists.freedesktop.org, linux-media@vger.kernel.org List-Id: dri-devel@lists.freedesktop.org SGkgS2llcmFuLAoKT24gU3VuLCBGZWIgMTcsIDIwMTkgYXQgMDg6MTY6MjdQTSArMDAwMCwgS2ll cmFuIEJpbmdoYW0gd3JvdGU6Cj4gT24gMTcvMDIvMjAxOSAwMjo0OCwgTGF1cmVudCBQaW5jaGFy dCB3cm90ZToKPiA+IFRoZSBXUEYgYWNjZXNzZXMgcGFydGl0aW9uIGNvbmZpZ3VyYXRpb24gZnJv bSBwaXBlLT5wYXJ0aXRpb24gaW4gdGhlCj4gPiBwYXJ0aXRpb24gY29uZmlndXJhdGlvbiB0aGF0 IGlzIG5vdCB1c2VkIGZvciBkaXNwbGF5IHBpcGVsaW5lcy4KPiAKPiBUaGF0IHNlbnRlbmNlIGlz IGhhcmQgdG8gcmVhZC4uLgoKSW5kZWVkLiBJJ2xsIHJld3JpdGUgaXQuCgo+ID4gV3JpdGViYWNr IHN1cHBvcnQgd2lsbCByZXF1aXJlIGZ1bGwgY29uZmlndXJhdGlvbiBvZiB0aGUgV1BGIHdoaWxl IG5vdAo+ID4gcHJvdmlkaW5nIGEgdmFsaWQgcGlwZS0+cGFydGl0aW9uLiBSZXdvcmsgdGhlIGNv bmZpZ3VyYXRpb24gY29kZSB0byBmYWxsCj4gPiBiYWNrIHRvIHRoZSBmdWxsIGltYWdlIHdpZHRo IGluIHRoYXQgY2FzZSwgYXMgaXMgYWxyZWFkeSBkb25lIGZvciB0aGUKPiA+IHBhcnQgb2YgdGhl IGNvbmZpZ3VyYXRpb24gY3VycmVudGx5IHJlbGV2YW50IGZvciBkaXNwbGF5IHBpcGVsaW5lcy4K PiA+IAo+IAo+IEFoIHllcyAtIHRoaXMgaXMgcHJvYmFibHkgYSBiZXR0ZXIgcm91dGUgdGhhbiBh bGxvY2F0aW5nIGEgdGFibGUgZm9yIGEKPiBzaW5nbGUgcGFydGl0aW9uICh3aGljaCBpcyB3aGF0 IEkgaGFkIGxvY2FsbHkpLgo+IAo+IAo+ID4gU2lnbmVkLW9mZi1ieTogTGF1cmVudCBQaW5jaGFy dCA8bGF1cmVudC5waW5jaGFydCtyZW5lc2FzQGlkZWFzb25ib2FyZC5jb20+Cj4gCj4gSSBsaWtl IHRoYXQgdGhpcyBjaGFuZ2UgYWxzbyBzaW1wbGlmaWVzIHRoZSBmbGlwL3JvdGF0ZSBoYW5kbGlu ZyBjb2RlIHRvCj4gbWFrZSB0aGF0IGVhc2llciB0byByZWFkLgo+IAo+IFJldmlld2VkLWJ5OiBL aWVyYW4gQmluZ2hhbSA8a2llcmFuLmJpbmdoYW0rcmVuZXNhc0BpZGVhc29uYm9hcmQuY29tPgo+ IAo+ID4gLS0tCj4gPiAgZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS92c3AxL3ZzcDFfd3BmLmMgfCAx NiArKysrKysrKystLS0tLS0tCj4gPiAgMSBmaWxlIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwg NyBkZWxldGlvbnMoLSkKPiA+IAo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZv cm0vdnNwMS92c3AxX3dwZi5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS92c3AxL3ZzcDFfd3Bm LmMKPiA+IGluZGV4IDMyYmIyMDdiMjAwNy4uYTA3YzU5NDRiNTk4IDEwMDY0NAo+ID4gLS0tIGEv ZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS92c3AxL3ZzcDFfd3BmLmMKPiA+ICsrKyBiL2RyaXZlcnMv bWVkaWEvcGxhdGZvcm0vdnNwMS92c3AxX3dwZi5jCj4gPiBAQCAtMzYyLDYgKzM2Miw3IEBAIHN0 YXRpYyB2b2lkIHdwZl9jb25maWd1cmVfcGFydGl0aW9uKHN0cnVjdCB2c3AxX2VudGl0eSAqZW50 aXR5LAo+ID4gIAljb25zdCBzdHJ1Y3QgdnNwMV9mb3JtYXRfaW5mbyAqZm10aW5mbyA9IHdwZi0+ Zm10aW5mbzsKPiA+ICAJdW5zaWduZWQgaW50IHdpZHRoOwo+ID4gIAl1bnNpZ25lZCBpbnQgaGVp Z2h0Owo+ID4gKwl1bnNpZ25lZCBpbnQgbGVmdDsKPiA+ICAJdW5zaWduZWQgaW50IG9mZnNldDsK PiA+ICAJdW5zaWduZWQgaW50IGZsaXA7Cj4gPiAgCXVuc2lnbmVkIGludCBpOwo+ID4gQEAgLTM3 MSwxMyArMzcyLDE2IEBAIHN0YXRpYyB2b2lkIHdwZl9jb25maWd1cmVfcGFydGl0aW9uKHN0cnVj dCB2c3AxX2VudGl0eSAqZW50aXR5LAo+ID4gIAkJCQkJCSBSV1BGX1BBRF9TSU5LKTsKPiA+ICAJ d2lkdGggPSBzaW5rX2Zvcm1hdC0+d2lkdGg7Cj4gPiAgCWhlaWdodCA9IHNpbmtfZm9ybWF0LT5o ZWlnaHQ7Cj4gPiArCWxlZnQgPSAwOwo+ID4gIAo+ID4gIAkvKgo+ID4gIAkgKiBDcm9wcGluZy4g VGhlIHBhcnRpdGlvbiBhbGdvcml0aG0gY2FuIHNwbGl0IHRoZSBpbWFnZSBpbnRvCj4gPiAgCSAq IG11bHRpcGxlIHNsaWNlcy4KPiA+ICAJICovCj4gPiAtCWlmIChwaXBlLT5wYXJ0aXRpb25zID4g MSkKPiA+ICsJaWYgKHBpcGUtPnBhcnRpdGlvbnMgPiAxKSB7Cj4gPiAgCQl3aWR0aCA9IHBpcGUt PnBhcnRpdGlvbi0+d3BmLndpZHRoOwo+ID4gKwkJbGVmdCA9IHBpcGUtPnBhcnRpdGlvbi0+d3Bm LmxlZnQ7Cj4gPiArCX0KPiA+ICAKPiA+ICAJdnNwMV93cGZfd3JpdGUod3BmLCBkbGIsIFZJNl9X UEZfSFNaQ0xJUCwgVkk2X1dQRl9TWkNMSVBfRU4gfAo+ID4gIAkJICAgICAgICgwIDw8IFZJNl9X UEZfU1pDTElQX09GU1RfU0hJRlQpIHwKPiA+IEBAIC00MDgsMTMgKzQxMiwxMSBAQCBzdGF0aWMg dm9pZCB3cGZfY29uZmlndXJlX3BhcnRpdGlvbihzdHJ1Y3QgdnNwMV9lbnRpdHkgKmVudGl0eSwK PiA+ICAJZmxpcCA9IHdwZi0+ZmxpcC5hY3RpdmU7Cj4gPiAgCj4gPiAgCWlmIChmbGlwICYgQklU KFdQRl9DVFJMX0hGTElQKSAmJiAhd3BmLT5mbGlwLnJvdGF0ZSkKPiA+IC0JCW9mZnNldCA9IGZv cm1hdC0+d2lkdGggLSBwaXBlLT5wYXJ0aXRpb24tPndwZi5sZWZ0Cj4gPiAtCQkJLSBwaXBlLT5w YXJ0aXRpb24tPndwZi53aWR0aDsKPiA+ICsJCW9mZnNldCA9IGZvcm1hdC0+d2lkdGggLSBsZWZ0 IC0gd2lkdGg7Cj4gPiAgCWVsc2UgaWYgKGZsaXAgJiBCSVQoV1BGX0NUUkxfVkZMSVApICYmIHdw Zi0+ZmxpcC5yb3RhdGUpCj4gPiAtCQlvZmZzZXQgPSBmb3JtYXQtPmhlaWdodCAtIHBpcGUtPnBh cnRpdGlvbi0+d3BmLmxlZnQKPiA+IC0JCQktIHBpcGUtPnBhcnRpdGlvbi0+d3BmLndpZHRoOwo+ ID4gKwkJb2Zmc2V0ID0gZm9ybWF0LT5oZWlnaHQgLSBsZWZ0IC0gd2lkdGg7Cj4gPiAgCWVsc2UK PiA+IC0JCW9mZnNldCA9IHBpcGUtPnBhcnRpdGlvbi0+d3BmLmxlZnQ7Cj4gPiArCQlvZmZzZXQg PSBsZWZ0Owo+IAo+IFRoaXMgaHVuayBsb29rcyBhIGxvdCBzaW1wbGVyIDopCj4gCj4gCj4gPiAg Cj4gPiAgCWZvciAoaSA9IDA7IGkgPCBmb3JtYXQtPm51bV9wbGFuZXM7ICsraSkgewo+ID4gIAkJ dW5zaWduZWQgaW50IGhzdWIgPSBpID4gMCA/IGZtdGluZm8tPmhzdWIgOiAxOwo+ID4gQEAgLTQz Niw3ICs0MzgsNyBAQCBzdGF0aWMgdm9pZCB3cGZfY29uZmlndXJlX3BhcnRpdGlvbihzdHJ1Y3Qg dnNwMV9lbnRpdHkgKmVudGl0eSwKPiA+ICAJCSAqIGltYWdlIGhlaWdodC4KPiA+ICAJCSAqLwo+ ID4gIAkJaWYgKHdwZi0+ZmxpcC5yb3RhdGUpCj4gPiAtCQkJaGVpZ2h0ID0gcGlwZS0+cGFydGl0 aW9uLT53cGYud2lkdGg7Cj4gPiArCQkJaGVpZ2h0ID0gd2lkdGg7Cj4gPiAgCQllbHNlCj4gPiAg CQkJaGVpZ2h0ID0gZm9ybWF0LT5oZWlnaHQ7Cj4gPiAgCj4gPiAKPiAKPiAtLSAKPiBSZWdhcmRz Cj4gLS0KPiBLaWVyYW4KCi0tIApSZWdhcmRzLAoKTGF1cmVudCBQaW5jaGFydApfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBs aXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWw=