From mboxrd@z Thu Jan 1 00:00:00 1970 From: Benjamin Gaignard Subject: [PATCH 3/4] drm/exynos: use generic code for managing zpos plane property Date: Wed, 11 May 2016 12:25:07 +0200 Message-ID: <1462962308-13410-3-git-send-email-benjamin.gaignard@linaro.org> References: <1462962308-13410-1-git-send-email-benjamin.gaignard@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1462962308-13410-1-git-send-email-benjamin.gaignard@linaro.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org, linux-samsung-soc@vger.kernel.org, daniel@ffwll.ch Cc: Krzysztof Kozlowski , Bartlomiej Zolnierkiewicz , Seung-Woo Kim , fabien.dessenne@st.com, Andrzej Hajda , Tobias Jakobi , Laurent Pinchart , Benjamin Gaignard , vincent.abriou@st.com, Marek Szyprowski List-Id: linux-samsung-soc@vger.kernel.org VGhpcyBwYXRjaCByZXBsYWNlcyB6cG9zIHByb3BlcnR5IGhhbmRsaW5nIGN1c3RvbSBjb2RlIGlu IEV4eW5vcyBEUk0KZHJpdmVyIHdpdGggY2FsbHMgdG8gZ2VuZXJpYyBEUk0gY29kZS4KClNpZ25l ZC1vZmYtYnk6IE1hcmVrIFN6eXByb3dza2kgPG0uc3p5cHJvd3NraUBzYW1zdW5nLmNvbT4KCkNj OiBJbmtpIERhZSA8aW5raS5kYWVAc2Ftc3VuZy5jb20+CkNjOiBEYW5pZWwgVmV0dGVyIDxkYW5p ZWxAZmZ3bGwuY2g+CkNjOiBWaWxsZSBTeXJqYWxhIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVs LmNvbT4KQ2M6IEpvb255b3VuZyBTaGltIDxqeTA5MjIuc2hpbUBzYW1zdW5nLmNvbT4KQ2M6IFNl dW5nLVdvbyBLaW0gPHN3MDMxMi5raW1Ac2Ftc3VuZy5jb20+CkNjOiBBbmRyemVqIEhhamRhIDxh LmhhamRhQHNhbXN1bmcuY29tPgpDYzogS3J6eXN6dG9mIEtvemxvd3NraSA8ay5rb3psb3dza2lA c2Ftc3VuZy5jb20+CkNjOiBCYXJ0bG9taWVqIFpvbG5pZXJraWV3aWN6IDxiLnpvbG5pZXJraWVA c2Ftc3VuZy5jb20+CkNjOiBUb2JpYXMgSmFrb2JpIDx0amFrb2JpQG1hdGgudW5pLWJpZWxlZmVs ZC5kZT4KQ2M6IEd1c3Rhdm8gUGFkb3ZhbiA8Z3VzdGF2b0BwYWRvdmFuLm9yZz4KQ2M6IHZpbmNl bnQuYWJyaW91QHN0LmNvbQpDYzogZmFiaWVuLmRlc3Nlbm5lQHN0LmNvbQpDYzogTGF1cmVudCBQ aW5jaGFydCA8bGF1cmVudC5waW5jaGFydEBpZGVhc29uYm9hcmQuY29tPgotLS0KIGRyaXZlcnMv Z3B1L2RybS9leHlub3MvZXh5bm9zX2RybV9kcnYuaCAgIHwgIDIgLQogZHJpdmVycy9ncHUvZHJt L2V4eW5vcy9leHlub3NfZHJtX3BsYW5lLmMgfCA2NyArKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19taXhlci5jICAgICB8ICA2ICsr LQogMyBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCA2MiBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fZHJ2LmggYi9kcml2 ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fZHJ2LmgKaW5kZXggY2MzM2VjOS4uYjM0YTdi OSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfZHJtX2Rydi5oCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RybV9kcnYuaApAQCAtNjQsNyArNjQs NiBAQCBzdHJ1Y3QgZXh5bm9zX2RybV9wbGFuZV9zdGF0ZSB7CiAJc3RydWN0IGV4eW5vc19kcm1f cmVjdCBzcmM7CiAJdW5zaWduZWQgaW50IGhfcmF0aW87CiAJdW5zaWduZWQgaW50IHZfcmF0aW87 Ci0JdW5zaWduZWQgaW50IHpwb3M7CiB9OwogCiBzdGF0aWMgaW5saW5lIHN0cnVjdCBleHlub3Nf ZHJtX3BsYW5lX3N0YXRlICoKQEAgLTIyMSw3ICsyMjAsNiBAQCBzdHJ1Y3QgZXh5bm9zX2RybV9w cml2YXRlIHsKIAkgKiB0aGlzIGFycmF5IGlzIHVzZWQgdG8gYmUgYXdhcmUgb2Ygd2hpY2ggY3J0 YyBkaWQgaXQgcmVxdWVzdCB2YmxhbmsuCiAJICovCiAJc3RydWN0IGRybV9jcnRjICpjcnRjW01B WF9DUlRDXTsKLQlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICpwbGFuZV96cG9zX3Byb3BlcnR5OwogCiAJ c3RydWN0IGRldmljZSAqZG1hX2RldjsKIAl1bnNpZ25lZCBsb25nIGRhX3N0YXJ0OwpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfZHJtX3BsYW5lLmMgYi9kcml2ZXJz L2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fcGxhbmUuYwppbmRleCA1MDE4NWFjLi5iYmFmNmQz IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fcGxhbmUuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fcGxhbmUuYwpAQCAtMTM5LDkg KzEzOSw5IEBAIHN0YXRpYyB2b2lkIGV4eW5vc19kcm1fcGxhbmVfcmVzZXQoc3RydWN0IGRybV9w bGFuZSAqcGxhbmUpCiAKIAlleHlub3Nfc3RhdGUgPSBremFsbG9jKHNpemVvZigqZXh5bm9zX3N0 YXRlKSwgR0ZQX0tFUk5FTCk7CiAJaWYgKGV4eW5vc19zdGF0ZSkgewotCQlleHlub3Nfc3RhdGUt Pnpwb3MgPSBleHlub3NfcGxhbmUtPmNvbmZpZy0+enBvczsKIAkJcGxhbmUtPnN0YXRlID0gJmV4 eW5vc19zdGF0ZS0+YmFzZTsKIAkJcGxhbmUtPnN0YXRlLT5wbGFuZSA9IHBsYW5lOworCQlwbGFu ZS0+c3RhdGUtPnpwb3MgPSBleHlub3NfcGxhbmUtPmNvbmZpZy0+enBvczsKIAl9CiB9CiAKQEAg LTE1Nyw3ICsxNTcsNiBAQCBleHlub3NfZHJtX3BsYW5lX2R1cGxpY2F0ZV9zdGF0ZShzdHJ1Y3Qg ZHJtX3BsYW5lICpwbGFuZSkKIAkJcmV0dXJuIE5VTEw7CiAKIAlfX2RybV9hdG9taWNfaGVscGVy X3BsYW5lX2R1cGxpY2F0ZV9zdGF0ZShwbGFuZSwgJmNvcHktPmJhc2UpOwotCWNvcHktPnpwb3Mg PSBleHlub3Nfc3RhdGUtPnpwb3M7CiAJcmV0dXJuICZjb3B5LT5iYXNlOwogfQogCkBAIC0xNzAs NDMgKzE2OSw2IEBAIHN0YXRpYyB2b2lkIGV4eW5vc19kcm1fcGxhbmVfZGVzdHJveV9zdGF0ZShz dHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKIAlrZnJlZShvbGRfZXh5bm9zX3N0YXRlKTsKIH0KIAot c3RhdGljIGludCBleHlub3NfZHJtX3BsYW5lX2F0b21pY19zZXRfcHJvcGVydHkoc3RydWN0IGRy bV9wbGFuZSAqcGxhbmUsCi0JCQkJCQlzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpzdGF0ZSwKLQkJ CQkJCXN0cnVjdCBkcm1fcHJvcGVydHkgKnByb3BlcnR5LAotCQkJCQkJdWludDY0X3QgdmFsKQot ewotCXN0cnVjdCBleHlub3NfZHJtX3BsYW5lICpleHlub3NfcGxhbmUgPSB0b19leHlub3NfcGxh bmUocGxhbmUpOwotCXN0cnVjdCBleHlub3NfZHJtX3BsYW5lX3N0YXRlICpleHlub3Nfc3RhdGUg PQotCQkJCQl0b19leHlub3NfcGxhbmVfc3RhdGUoc3RhdGUpOwotCXN0cnVjdCBleHlub3NfZHJt X3ByaXZhdGUgKmRldl9wcml2ID0gcGxhbmUtPmRldi0+ZGV2X3ByaXZhdGU7Ci0JY29uc3Qgc3Ry dWN0IGV4eW5vc19kcm1fcGxhbmVfY29uZmlnICpjb25maWcgPSBleHlub3NfcGxhbmUtPmNvbmZp ZzsKLQotCWlmIChwcm9wZXJ0eSA9PSBkZXZfcHJpdi0+cGxhbmVfenBvc19wcm9wZXJ0eSAmJgot CSAgICAoY29uZmlnLT5jYXBhYmlsaXRpZXMgJiBFWFlOT1NfRFJNX1BMQU5FX0NBUF9aUE9TKSkK LQkJZXh5bm9zX3N0YXRlLT56cG9zID0gdmFsOwotCWVsc2UKLQkJcmV0dXJuIC1FSU5WQUw7Ci0K LQlyZXR1cm4gMDsKLX0KLQotc3RhdGljIGludCBleHlub3NfZHJtX3BsYW5lX2F0b21pY19nZXRf cHJvcGVydHkoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCi0JCQkJCSAgY29uc3Qgc3RydWN0IGRy bV9wbGFuZV9zdGF0ZSAqc3RhdGUsCi0JCQkJCSAgc3RydWN0IGRybV9wcm9wZXJ0eSAqcHJvcGVy dHksCi0JCQkJCSAgdWludDY0X3QgKnZhbCkKLXsKLQljb25zdCBzdHJ1Y3QgZXh5bm9zX2RybV9w bGFuZV9zdGF0ZSAqZXh5bm9zX3N0YXRlID0KLQkJY29udGFpbmVyX29mKHN0YXRlLCBjb25zdCBz dHJ1Y3QgZXh5bm9zX2RybV9wbGFuZV9zdGF0ZSwgYmFzZSk7Ci0Jc3RydWN0IGV4eW5vc19kcm1f cHJpdmF0ZSAqZGV2X3ByaXYgPSBwbGFuZS0+ZGV2LT5kZXZfcHJpdmF0ZTsKLQotCWlmIChwcm9w ZXJ0eSA9PSBkZXZfcHJpdi0+cGxhbmVfenBvc19wcm9wZXJ0eSkKLQkJKnZhbCA9IGV4eW5vc19z dGF0ZS0+enBvczsKLQllbHNlCi0JCXJldHVybiAtRUlOVkFMOwotCi0JcmV0dXJuIDA7Ci19Ci0K IHN0YXRpYyBzdHJ1Y3QgZHJtX3BsYW5lX2Z1bmNzIGV4eW5vc19wbGFuZV9mdW5jcyA9IHsKIAku dXBkYXRlX3BsYW5lCT0gZHJtX2F0b21pY19oZWxwZXJfdXBkYXRlX3BsYW5lLAogCS5kaXNhYmxl X3BsYW5lCT0gZHJtX2F0b21pY19oZWxwZXJfZGlzYWJsZV9wbGFuZSwKQEAgLTIxNSw4ICsxNzcs NiBAQCBzdGF0aWMgc3RydWN0IGRybV9wbGFuZV9mdW5jcyBleHlub3NfcGxhbmVfZnVuY3MgPSB7 CiAJLnJlc2V0CQk9IGV4eW5vc19kcm1fcGxhbmVfcmVzZXQsCiAJLmF0b21pY19kdXBsaWNhdGVf c3RhdGUgPSBleHlub3NfZHJtX3BsYW5lX2R1cGxpY2F0ZV9zdGF0ZSwKIAkuYXRvbWljX2Rlc3Ry b3lfc3RhdGUgPSBleHlub3NfZHJtX3BsYW5lX2Rlc3Ryb3lfc3RhdGUsCi0JLmF0b21pY19zZXRf cHJvcGVydHkgPSBleHlub3NfZHJtX3BsYW5lX2F0b21pY19zZXRfcHJvcGVydHksCi0JLmF0b21p Y19nZXRfcHJvcGVydHkgPSBleHlub3NfZHJtX3BsYW5lX2F0b21pY19nZXRfcHJvcGVydHksCiB9 OwogCiBzdGF0aWMgaW50CkBAIC0zMDQsMjMgKzI2NCwxMyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0 IGRybV9wbGFuZV9oZWxwZXJfZnVuY3MgcGxhbmVfaGVscGVyX2Z1bmNzID0gewogfTsKIAogc3Rh dGljIHZvaWQgZXh5bm9zX3BsYW5lX2F0dGFjaF96cG9zX3Byb3BlcnR5KHN0cnVjdCBkcm1fcGxh bmUgKnBsYW5lLAotCQkJCQkgICAgICB1bnNpZ25lZCBpbnQgenBvcykKKwkJCQkJICAgICAgYm9v bCBpbW11dGFibGUpCiB7Ci0Jc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IHBsYW5lLT5kZXY7Ci0J c3RydWN0IGV4eW5vc19kcm1fcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwot CXN0cnVjdCBkcm1fcHJvcGVydHkgKnByb3A7Ci0KLQlwcm9wID0gZGV2X3ByaXYtPnBsYW5lX3pw b3NfcHJvcGVydHk7Ci0JaWYgKCFwcm9wKSB7Ci0JCXByb3AgPSBkcm1fcHJvcGVydHlfY3JlYXRl X3JhbmdlKGRldiwgMCwgInpwb3MiLAotCQkJCQkJIDAsIE1BWF9QTEFORSAtIDEpOwotCQlpZiAo IXByb3ApCi0JCQlyZXR1cm47Ci0KLQkJZGV2X3ByaXYtPnBsYW5lX3pwb3NfcHJvcGVydHkgPSBw cm9wOwotCX0KLQotCWRybV9vYmplY3RfYXR0YWNoX3Byb3BlcnR5KCZwbGFuZS0+YmFzZSwgcHJv cCwgenBvcyk7CisJaWYgKGltbXV0YWJsZSkKKwkJZHJtX3BsYW5lX2NyZWF0ZV96cG9zX2ltbXV0 YWJsZV9wcm9wZXJ0eShwbGFuZSwKKwkJCQkJCQkgMCwgTUFYX1BMQU5FIC0gMSk7CisJZWxzZQor CQlkcm1fcGxhbmVfY3JlYXRlX3pwb3NfcHJvcGVydHkocGxhbmUsIDAsIE1BWF9QTEFORSAtIDEp OwogfQogCiBpbnQgZXh5bm9zX3BsYW5lX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKQEAg LTM0Niw3ICsyOTYsOCBAQCBpbnQgZXh5bm9zX3BsYW5lX2luaXQoc3RydWN0IGRybV9kZXZpY2Ug KmRldiwKIAlleHlub3NfcGxhbmUtPmluZGV4ID0gaW5kZXg7CiAJZXh5bm9zX3BsYW5lLT5jb25m aWcgPSBjb25maWc7CiAKLQlleHlub3NfcGxhbmVfYXR0YWNoX3pwb3NfcHJvcGVydHkoJmV4eW5v c19wbGFuZS0+YmFzZSwgY29uZmlnLT56cG9zKTsKKwlleHlub3NfcGxhbmVfYXR0YWNoX3pwb3Nf cHJvcGVydHkoJmV4eW5vc19wbGFuZS0+YmFzZSwKKwkJCSAgICEoY29uZmlnLT5jYXBhYmlsaXRp ZXMgJiBFWFlOT1NfRFJNX1BMQU5FX0NBUF9aUE9TKSk7CiAKIAlyZXR1cm4gMDsKIH0KZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX21peGVyLmMgYi9kcml2ZXJzL2dw dS9kcm0vZXh5bm9zL2V4eW5vc19taXhlci5jCmluZGV4IDc0YTQyNjkuLmUxZDQ3ZjkgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX21peGVyLmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2V4eW5vcy9leHlub3NfbWl4ZXIuYwpAQCAtNDc3LDYgKzQ3Nyw3IEBAIHN0YXRp YyB2b2lkIHZwX3ZpZGVvX2J1ZmZlcihzdHJ1Y3QgbWl4ZXJfY29udGV4dCAqY3R4LAogCXN0cnVj dCBkcm1fZGlzcGxheV9tb2RlICptb2RlID0gJnN0YXRlLT5iYXNlLmNydGMtPnN0YXRlLT5hZGp1 c3RlZF9tb2RlOwogCXN0cnVjdCBtaXhlcl9yZXNvdXJjZXMgKnJlcyA9ICZjdHgtPm1peGVyX3Jl czsKIAlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiA9IHN0YXRlLT5iYXNlLmZiOworCXVuc2ln bmVkIGludCBwcmlvcml0eSA9IHN0YXRlLT5iYXNlLm5vcm1hbGl6ZWRfenBvcyArIDE7CiAJdW5z aWduZWQgbG9uZyBmbGFnczsKIAlkbWFfYWRkcl90IGx1bWFfYWRkclsyXSwgY2hyb21hX2FkZHJb Ml07CiAJYm9vbCB0aWxlZF9tb2RlID0gZmFsc2U7CkBAIC01NjEsNyArNTYyLDcgQEAgc3RhdGlj IHZvaWQgdnBfdmlkZW9fYnVmZmVyKHN0cnVjdCBtaXhlcl9jb250ZXh0ICpjdHgsCiAKIAltaXhl cl9jZmdfc2NhbihjdHgsIG1vZGUtPnZkaXNwbGF5KTsKIAltaXhlcl9jZmdfcmdiX2ZtdChjdHgs IG1vZGUtPnZkaXNwbGF5KTsKLQltaXhlcl9jZmdfbGF5ZXIoY3R4LCBwbGFuZS0+aW5kZXgsIHN0 YXRlLT56cG9zICsgMSwgdHJ1ZSk7CisJbWl4ZXJfY2ZnX2xheWVyKGN0eCwgcGxhbmUtPmluZGV4 LCBwcmlvcml0eSwgdHJ1ZSk7CiAJbWl4ZXJfY2ZnX3ZwX2JsZW5kKGN0eCk7CiAJbWl4ZXJfcnVu KGN0eCk7CiAKQEAgLTU4Niw2ICs1ODcsNyBAQCBzdGF0aWMgdm9pZCBtaXhlcl9ncmFwaF9idWZm ZXIoc3RydWN0IG1peGVyX2NvbnRleHQgKmN0eCwKIAlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAq bW9kZSA9ICZzdGF0ZS0+YmFzZS5jcnRjLT5zdGF0ZS0+YWRqdXN0ZWRfbW9kZTsKIAlzdHJ1Y3Qg bWl4ZXJfcmVzb3VyY2VzICpyZXMgPSAmY3R4LT5taXhlcl9yZXM7CiAJc3RydWN0IGRybV9mcmFt ZWJ1ZmZlciAqZmIgPSBzdGF0ZS0+YmFzZS5mYjsKKwl1bnNpZ25lZCBpbnQgcHJpb3JpdHkgPSBz dGF0ZS0+YmFzZS5ub3JtYWxpemVkX3pwb3MgKyAxOwogCXVuc2lnbmVkIGxvbmcgZmxhZ3M7CiAJ dW5zaWduZWQgaW50IHdpbiA9IHBsYW5lLT5pbmRleDsKIAl1bnNpZ25lZCBpbnQgeF9yYXRpbyA9 IDAsIHlfcmF0aW8gPSAwOwpAQCAtNjc3LDcgKzY3OSw3IEBAIHN0YXRpYyB2b2lkIG1peGVyX2dy YXBoX2J1ZmZlcihzdHJ1Y3QgbWl4ZXJfY29udGV4dCAqY3R4LAogCiAJbWl4ZXJfY2ZnX3NjYW4o Y3R4LCBtb2RlLT52ZGlzcGxheSk7CiAJbWl4ZXJfY2ZnX3JnYl9mbXQoY3R4LCBtb2RlLT52ZGlz cGxheSk7Ci0JbWl4ZXJfY2ZnX2xheWVyKGN0eCwgd2luLCBzdGF0ZS0+enBvcyArIDEsIHRydWUp OworCW1peGVyX2NmZ19sYXllcihjdHgsIHdpbiwgcHJpb3JpdHksIHRydWUpOwogCW1peGVyX2Nm Z19nZnhfYmxlbmQoY3R4LCB3aW4sIGlzX2FscGhhX2Zvcm1hdChmYi0+cGl4ZWxfZm9ybWF0KSk7 CiAKIAkvKiBsYXllciB1cGRhdGUgbWFuZGF0b3J5IGZvciBtaXhlciAxNi4wLjMzLjAgKi8KLS0g CjEuOS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpk cmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK