From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: Re: [PATCH v4] drm/omap: plane zpos/zorder management improvements Date: Fri, 05 Jan 2018 16:04:41 +0200 Message-ID: <2980208.DszUEri1M6@avalon> References: <20180105113037.28653-1-peter.ujfalusi@ti.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from galahad.ideasonboard.com (galahad.ideasonboard.com [185.26.127.97]) by gabe.freedesktop.org (Postfix) with ESMTPS id C0CE46E36E for ; Fri, 5 Jan 2018 14:04:17 +0000 (UTC) In-Reply-To: <20180105113037.28653-1-peter.ujfalusi@ti.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Peter Ujfalusi Cc: tomi.valkeinen@ti.com, jsarha@ti.com, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org SGkgUGV0ZXIsCgpUaGFuayB5b3UgZm9yIHRoZSBwYXRjaCBhbmQgc29ycnkgZm9yIHRoZSBsYXRl IHJldmlldy4KCk9uIEZyaWRheSwgNSBKYW51YXJ5IDIwMTggMTM6MzA6MzcgRUVUIFBldGVyIFVq ZmFsdXNpIHdyb3RlOgo+IFVzZSB0aGUgcGxhbmUgaW5kZXggYXMgZGVmYXVsdCB6cG9zIGZvciBh bGwgcGxhbmVzLiBFdmVuIGlmIHRoZQo+IGFwcGxpY2F0aW9uIGlzIG5vdCBzZXR0aW5nIHpwb3Mv em9yZGVyIGV4cGxpY2l0bHkgd2Ugd2lsbCBoYXZlIHVuaXF1ZSB6cG9zCj4gZm9yIGVhY2ggcGxh bmUuCj4gCj4gRW5mb3JjZSB0aGF0IGFsbCBwbGFuZXMgbXVzdCBoYXZlIHVuaXF1ZSB6cG9zIG9u IHRoZSBnaXZlbiBjcnRjLgoKQ291bGQgeW91IGV4cGxhaW4gdGhlIHJhdGlvbmFsZSBmb3IgdGhh dCBpbiB0aGUgY29tbWl0IG1lc3NhZ2UsIHdoYXQncyB3cm9uZyAKd2l0aCBkdXBsaWNhdGUgenBv cyB2YWx1ZXMgPwoKSXNuJ3QgdGhlcmUgYSByaXNrIG9mIGJyZWFraW5nIHRoZSBub24tYXRvbWlj IHVzZXJzcGFjZSB3aXRoIHRoaXMgPyBXaXRob3V0IAphdG9taWMgY29tbWl0cyB1c2Vyc3BhY2Ug Y2FuJ3QgY2hhbmdlIHRoZSB6cG9zIG9mIG11bHRpcGxlIHBsYW5lcyBpbiBvbmUgZ28sIApzbyBp dCBtaWdodCBiZSBpbXBvc3NpYmxlIHRvIHJlb3JkZXIgcGxhbmVzIHdpdGhvdXQgZ29pbmcgdGhy b3VnaCBhIHN0YXRlIHRoYXQgCmhhcyBkdXBsaWNhdGVkIHpwb3MgdmFsdWVzLgoKPiBTaWduZWQt b2ZmLWJ5OiBQZXRlciBVamZhbHVzaSA8cGV0ZXIudWpmYWx1c2lAdGkuY29tPgo+IC0tLQo+IEhp LAo+IAo+IENoYW5nZXMgc2luY2UgdjM6Cj4gLSBVc2UgZHJtX3BsYW5lX2luZGV4KCkgaW5zdGVh ZCBvZiBzdG9yaW5nIHRoZSBzYW1lIGluZGV4IHdvdGhpbiBvbWFwX3BsYW5lCj4gICBzdHJ1Y3QK PiAtIE9wdGltaXplIHRoZSB6cG9zIHZhbGlkYXRpb24gbG9vcCBzbyB3ZSBhdm9pZCBleHRyYSBj aGVja3MuCj4gCj4gQ2hhbmdlcyBzaW5jZSB2MjoKPiAtIFRoZSBjaGVjayBmb3IgZHVwbGljYXRl IHpwb3MgaXMgbW92ZWQgdG8gb21hcF9jcnRjCj4gCj4gQ2hhbmdlcyBzaW5jZSB2MToKPiAtIERy b3BwZWQgdGhlIHpwb3Mgbm9ybWFsaXphdGlvbiByZWxhdGVkIHBhdGNoZXMKPiAtIE5ldyBwYXRj aCBiYXNlZCBvbiB0aGUgZGlzY3Vzc2lvbiwgc2VlIGNvbW1pdCBtZXNzYWdlLgo+IAo+IFJlZ2Fy ZHMsCj4gUGV0ZXIKPiAKPiAgZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vb21hcF9jcnRjLmMgIHwg MzYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCj4gIGRyaXZlcnMvZ3B1L2RybS9v bWFwZHJtL29tYXBfcGxhbmUuYyB8IDE1ICsrKystLS0tLS0tLS0tLQo+ICAyIGZpbGVzIGNoYW5n ZWQsIDM5IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX2NydGMuYwo+IGIvZHJpdmVycy9ncHUvZHJtL29t YXBkcm0vb21hcF9jcnRjLmMgaW5kZXggY2M4NWMxNmNiYzJhLi5jNjhlM2E0ZjViN2QKPiAxMDA2 NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX2NydGMuYwo+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9vbWFwZHJtL29tYXBfY3J0Yy5jCj4gQEAgLTQ1Miw2ICs0NTIsNDAgQEAg c3RhdGljIHZvaWQgb21hcF9jcnRjX21vZGVfc2V0X25vZmIoc3RydWN0IGRybV9jcnRjCj4gKmNy dGMpIH0KPiAgfQo+IAo+ICtzdGF0aWMgaW50IG9tYXBfY3J0Y192YWxpZGF0ZV96cG9zKHN0cnVj dCBkcm1fY3J0YyAqY3J0YywKPiArCQkJCSAgIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqc3RhdGUp Cj4gK3sKPiArCXN0cnVjdCBkcm1fZGV2aWNlICpkZGV2ID0gY3J0Yy0+ZGV2Owo+ICsJc3RydWN0 IGRybV9wbGFuZSAqcDE7Cj4gKwljb25zdCBzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpwc3RhdGUx Owo+ICsKPiArCS8qIENoZWNrIHRoZSBjcnRzJ3MgcGxhbmVzIGFnYWluc3QgZHVwbGljYXRlZCB6 cG9zIHZhbHVlICovCj4gKwlkcm1fYXRvbWljX2NydGNfc3RhdGVfZm9yX2VhY2hfcGxhbmVfc3Rh dGUocDEsIHBzdGF0ZTEsIHN0YXRlKSB7Cj4gKwkJc3RydWN0IGRybV9wbGFuZSAqcDIgPSBwMTsK PiArCj4gKwkJbGlzdF9mb3JfZWFjaF9lbnRyeV9jb250aW51ZShwMiwgJmRkZXYtPm1vZGVfY29u ZmlnLnBsYW5lX2xpc3QsCj4gKwkJCQkJICAgICBoZWFkKSB7Cj4gKwkJCWNvbnN0IHN0cnVjdCBk cm1fcGxhbmVfc3RhdGUgKnBzdGF0ZTI7Cj4gKwo+ICsJCQlpZiAoIShzdGF0ZS0+cGxhbmVfbWFz ayAmICgxIDw8IGRybV9wbGFuZV9pbmRleChwMikpKSkKPiArCQkJCWNvbnRpbnVlOwo+ICsKPiAr CQkJcHN0YXRlMiA9IF9fZHJtX2F0b21pY19nZXRfY3VycmVudF9wbGFuZV9zdGF0ZSgKPiArCQkJ CQkJCXN0YXRlLT5zdGF0ZSwgcDIpOwo+ICsJCQlpZiAoIXBzdGF0ZTIpCj4gKwkJCQljb250aW51 ZTsKPiArCj4gKwkJCWlmIChwc3RhdGUxLT56cG9zID09IHBzdGF0ZTItPnpwb3MpIHsKPiArCQkJ CURCRygiY3J0YyV1OiB6cG9zIG11c3QgYmUgdW5pcXVlICh6cG9zOiAldSkiLAo+ICsJCQkJY3J0 Yy0+aW5kZXgsIHBzdGF0ZTEtPnpwb3MpOwo+ICsJCQkJcmV0dXJuIC1FSU5WQUw7Cj4gKwkJCX0K PiArCQl9Cj4gKwl9CgpUaGF0IHNlZW1zIGEgYml0IGNvbXBsaWNhdGVkIHRvIG1lLiBDb3VsZG4n dCB3ZSB1c2UgYSBzaW5nbGUgbG9vcCBhbmQgYSB6cG9zIApiaXRmaWVsZCA/IFNvbWV0aGluZyBs aWtlIHRoZSBmb2xsb3dpbmcgKHVudGVzdGVkKSBjb2RlLgoKCXN0cnVjdCBkcm1fZGV2aWNlICpk ZGV2ID0gY3J0Yy0+ZGV2OwoJY29uc3Qgc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqcGxhbmVfc3Rh dGU7CglzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZTsKCXVuc2lnbmVkIGludCB6cG9zX21hc2sgPSAw OwoKCS8qIENoZWNrIHRoZSBjcnRzJ3MgcGxhbmVzIGFnYWluc3QgZHVwbGljYXRlZCB6cG9zIHZh bHVlICovCglkcm1fYXRvbWljX2NydGNfc3RhdGVfZm9yX2VhY2hfcGxhbmVfc3RhdGUocGxhbmUs IHBsYW5lX3N0YXRlLCBzdGF0ZSkgewoJCWlmICh6cG9zX21hc2sgJiBCSVQocGxhbmVfc3RhdGUt Pnpwb3MpKSB7CgkJCURCRygiY3J0YyV1OiB6cG9zIG11c3QgYmUgdW5pcXVlICh6cG9zOiAldSki LAoJCQkgICAgY3J0Yy0+aW5kZXgsIHBsYW5lX3N0YXRlLT56cG9zKTsKCQkJcmV0dXJuIC1FSU5W QUw7CgkJfQoKCQl6cG9zX21hc2sgfD0gQklUKHBsYW5lX3N0YXRlLT56cG9zKTsgCgl9CgoJcmV0 dXJuIDA7Cgo+ICsJcmV0dXJuIDA7Cj4gK30KPiArCj4gIHN0YXRpYyBpbnQgb21hcF9jcnRjX2F0 b21pY19jaGVjayhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gIAkJCQlzdHJ1Y3QgZHJtX2NydGNf c3RhdGUgKnN0YXRlKQo+ICB7Cj4gQEAgLTQ3NSw3ICs1MDksNyBAQCBzdGF0aWMgaW50IG9tYXBf Y3J0Y19hdG9taWNfY2hlY2soc3RydWN0IGRybV9jcnRjICpjcnRjLAo+IG9tYXBfY3J0Y19zdGF0 ZS0+cm90YXRpb24gPSBwcmlfc3RhdGUtPnJvdGF0aW9uOwo+ICAJfQo+IAo+IC0JcmV0dXJuIDA7 Cj4gKwlyZXR1cm4gb21hcF9jcnRjX3ZhbGlkYXRlX3pwb3MoY3J0Yywgc3RhdGUpOwo+ICB9Cj4g Cj4gIHN0YXRpYyB2b2lkIG9tYXBfY3J0Y19hdG9taWNfYmVnaW4oc3RydWN0IGRybV9jcnRjICpj cnRjLAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX3BsYW5lLmMK PiBiL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL29tYXBfcGxhbmUuYyBpbmRleCAxNWU1ZDVkMzI1 YzYuLmQwMDU3YTIzYTVhYwo+IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJt L29tYXBfcGxhbmUuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL29tYXBfcGxhbmUu Ywo+IEBAIC05OSw4ICs5OSw3IEBAIHN0YXRpYyB2b2lkIG9tYXBfcGxhbmVfYXRvbWljX2Rpc2Fi bGUoc3RydWN0IGRybV9wbGFuZQo+ICpwbGFuZSwgc3RydWN0IG9tYXBfcGxhbmUgKm9tYXBfcGxh bmUgPSB0b19vbWFwX3BsYW5lKHBsYW5lKTsKPiAKPiAgCXBsYW5lLT5zdGF0ZS0+cm90YXRpb24g PSBEUk1fTU9ERV9ST1RBVEVfMDsKPiAtCXBsYW5lLT5zdGF0ZS0+enBvcyA9IHBsYW5lLT50eXBl ID09IERSTV9QTEFORV9UWVBFX1BSSU1BUlkKPiAtCQkJICAgPyAwIDogb21hcF9wbGFuZS0+aWQ7 Cj4gKwlwbGFuZS0+c3RhdGUtPnpwb3MgPSBkcm1fcGxhbmVfaW5kZXgocGxhbmUpOwo+IAo+ICAJ cHJpdi0+ZGlzcGNfb3BzLT5vdmxfZW5hYmxlKG9tYXBfcGxhbmUtPmlkLCBmYWxzZSk7Cj4gIH0K PiBAQCAtMTg2LDE4ICsxODUsMTIgQEAgdm9pZCBvbWFwX3BsYW5lX2luc3RhbGxfcHJvcGVydGll cyhzdHJ1Y3QgZHJtX3BsYW5lCj4gKnBsYW5lLAo+IAo+ICBzdGF0aWMgdm9pZCBvbWFwX3BsYW5l X3Jlc2V0KHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lKQo+ICB7Cj4gLQlzdHJ1Y3Qgb21hcF9wbGFu ZSAqb21hcF9wbGFuZSA9IHRvX29tYXBfcGxhbmUocGxhbmUpOwo+IC0KPiAgCWRybV9hdG9taWNf aGVscGVyX3BsYW5lX3Jlc2V0KHBsYW5lKTsKPiAgCWlmICghcGxhbmUtPnN0YXRlKQo+ICAJCXJl dHVybjsKPiAKPiAtCS8qCj4gLQkgKiBTZXQgdGhlIHpwb3MgZGVmYXVsdCBkZXBlbmRpbmcgb24g d2hldGhlciB3ZSBhcmUgYSBwcmltYXJ5IG9yIG92ZXJsYXkKPiAtCSAqIHBsYW5lLgo+IC0JICov Cj4gLQlwbGFuZS0+c3RhdGUtPnpwb3MgPSBwbGFuZS0+dHlwZSA9PSBEUk1fUExBTkVfVFlQRV9Q UklNQVJZCj4gLQkJCSAgID8gMCA6IG9tYXBfcGxhbmUtPmlkOwo+ICsJLyogU2V0IHRoZSB6cG9z IHRvIHRoZSBwbGFuZSBpbmRleC4gKi8KPiArCXBsYW5lLT5zdGF0ZS0+enBvcyA9IGRybV9wbGFu ZV9pbmRleChwbGFuZSk7Cj4gIH0KPiAKPiAgc3RhdGljIGludCBvbWFwX3BsYW5lX2F0b21pY19z ZXRfcHJvcGVydHkoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCj4gQEAgLTI5Nyw3ICsyOTAsNyBA QCBzdHJ1Y3QgZHJtX3BsYW5lICpvbWFwX3BsYW5lX2luaXQoc3RydWN0IGRybV9kZXZpY2UKPiAq ZGV2LCBkcm1fcGxhbmVfaGVscGVyX2FkZChwbGFuZSwgJm9tYXBfcGxhbmVfaGVscGVyX2Z1bmNz KTsKPiAKPiAgCW9tYXBfcGxhbmVfaW5zdGFsbF9wcm9wZXJ0aWVzKHBsYW5lLCAmcGxhbmUtPmJh c2UpOwo+IC0JZHJtX3BsYW5lX2NyZWF0ZV96cG9zX3Byb3BlcnR5KHBsYW5lLCAwLCAwLCBudW1f cGxhbmVzIC0gMSk7Cj4gKwlkcm1fcGxhbmVfY3JlYXRlX3pwb3NfcHJvcGVydHkocGxhbmUsIGlk eCwgMCwgbnVtX3BsYW5lcyAtIDEpOwo+IAo+ICAJcmV0dXJuIHBsYW5lOwoKLS0gClJlZ2FyZHMs CgpMYXVyZW50IFBpbmNoYXJ0CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9k cmktZGV2ZWwK