From mboxrd@z Thu Jan 1 00:00:00 1970 From: Philipp Zabel Subject: [PATCH 10/10] drm/imx: ipuv3-plane: use drm_plane_helper_check_state, clipped coordinates Date: Wed, 19 Oct 2016 12:21:17 +0200 Message-ID: <1476872477-29493-10-git-send-email-p.zabel@pengutronix.de> References: <1476872477-29493-1-git-send-email-p.zabel@pengutronix.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from metis.ext.pengutronix.de (metis.ext.pengutronix.de [IPv6:2001:67c:670:201:290:27ff:fe1d:cc33]) by gabe.freedesktop.org (Postfix) with ESMTPS id B0DD16E8C3 for ; Wed, 19 Oct 2016 10:21:25 +0000 (UTC) In-Reply-To: <1476872477-29493-1-git-send-email-p.zabel@pengutronix.de> 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 Cc: kernel@pengutronix.de List-Id: dri-devel@lists.freedesktop.org VXNlIGRybV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUgdG8gY2xpcCByYXcgdXNlciBjb29yZGlu YXRlcyB0byBjcnRjCmJvdW5kcy4gVGhpcyBjaGVja3MgZm9yIGZ1bGwgcGxhbmUgY292ZXJhZ2Ug YW5kIHNjYWxpbmcgYWxyZWFkeSwgc28Kd2UgY2FuIGRyb3Agc29tZSBjdXN0b20gY2hlY2tzLiBV c2UgdGhlIGNsaXBwZWQgY29vcmRpbmF0ZXMgZXZlcnl3aGVyZS4KClN1Z2dlc3RlZC1ieTogVmls bGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KU2lnbmVkLW9mZi1i eTogUGhpbGlwcCBaYWJlbCA8cC56YWJlbEBwZW5ndXRyb25peC5kZT4KLS0tCiBkcml2ZXJzL2dw dS9kcm0vaW14L2lwdXYzLXBsYW5lLmMgfCA3OCArKysrKysrKysrKysrKysrKystLS0tLS0tLS0t LS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAzNiBpbnNlcnRpb25zKCspLCA0MiBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaW14L2lwdXYzLXBsYW5lLmMgYi9k cml2ZXJzL2dwdS9kcm0vaW14L2lwdXYzLXBsYW5lLmMKaW5kZXggNmE5N2UzOTYuLmYwY2U4OTkg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pbXgvaXB1djMtcGxhbmUuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vaW14L2lwdXYzLXBsYW5lLmMKQEAgLTcwLDggKzcwLDggQEAgZHJtX3BsYW5l X3N0YXRlX3RvX2ViYShzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpzdGF0ZSkKIHsKIAlzdHJ1Y3Qg ZHJtX2ZyYW1lYnVmZmVyICpmYiA9IHN0YXRlLT5mYjsKIAlzdHJ1Y3QgZHJtX2dlbV9jbWFfb2Jq ZWN0ICpjbWFfb2JqOwotCWludCB4ID0gc3RhdGUtPnNyY194ID4+IDE2OwotCWludCB5ID0gc3Rh dGUtPnNyY195ID4+IDE2OworCWludCB4ID0gc3RhdGUtPnNyYy54MSA+PiAxNjsKKwlpbnQgeSA9 IHN0YXRlLT5zcmMueTEgPj4gMTY7CiAKIAljbWFfb2JqID0gZHJtX2ZiX2NtYV9nZXRfZ2VtX29i aihmYiwgMCk7CiAJQlVHX09OKCFjbWFfb2JqKTsKQEAgLTg2LDggKzg2LDggQEAgZHJtX3BsYW5l X3N0YXRlX3RvX3VibyhzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpzdGF0ZSkKIAlzdHJ1Y3QgZHJt X2ZyYW1lYnVmZmVyICpmYiA9IHN0YXRlLT5mYjsKIAlzdHJ1Y3QgZHJtX2dlbV9jbWFfb2JqZWN0 ICpjbWFfb2JqOwogCXVuc2lnbmVkIGxvbmcgZWJhID0gZHJtX3BsYW5lX3N0YXRlX3RvX2ViYShz dGF0ZSk7Ci0JaW50IHggPSBzdGF0ZS0+c3JjX3ggPj4gMTY7Ci0JaW50IHkgPSBzdGF0ZS0+c3Jj X3kgPj4gMTY7CisJaW50IHggPSBzdGF0ZS0+c3JjLngxID4+IDE2OworCWludCB5ID0gc3RhdGUt PnNyYy55MSA+PiAxNjsKIAogCWNtYV9vYmogPSBkcm1fZmJfY21hX2dldF9nZW1fb2JqKGZiLCAx KTsKIAlCVUdfT04oIWNtYV9vYmopOwpAQCAtMTA1LDggKzEwNSw4IEBAIGRybV9wbGFuZV9zdGF0 ZV90b192Ym8oc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqc3RhdGUpCiAJc3RydWN0IGRybV9mcmFt ZWJ1ZmZlciAqZmIgPSBzdGF0ZS0+ZmI7CiAJc3RydWN0IGRybV9nZW1fY21hX29iamVjdCAqY21h X29iajsKIAl1bnNpZ25lZCBsb25nIGViYSA9IGRybV9wbGFuZV9zdGF0ZV90b19lYmEoc3RhdGUp OwotCWludCB4ID0gc3RhdGUtPnNyY194ID4+IDE2OwotCWludCB5ID0gc3RhdGUtPnNyY195ID4+ IDE2OworCWludCB4ID0gc3RhdGUtPnNyYy54MSA+PiAxNjsKKwlpbnQgeSA9IHN0YXRlLT5zcmMu eTEgPj4gMTY7CiAKIAljbWFfb2JqID0gZHJtX2ZiX2NtYV9nZXRfZ2VtX29iaihmYiwgMik7CiAJ QlVHX09OKCFjbWFfb2JqKTsKQEAgLTIxOCw3ICsyMTgsMTAgQEAgc3RhdGljIGludCBpcHVfcGxh bmVfYXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAogCXN0cnVjdCBkcm1fZnJh bWVidWZmZXIgKmZiID0gc3RhdGUtPmZiOwogCXN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKm9sZF9m YiA9IG9sZF9zdGF0ZS0+ZmI7CiAJdW5zaWduZWQgbG9uZyBlYmEsIHVibywgdmJvLCBvbGRfdWJv LCBvbGRfdmJvOworCWJvb2wgY2FuX3Bvc2l0aW9uID0gKHBsYW5lLT50eXBlID09IERSTV9QTEFO RV9UWVBFX09WRVJMQVkpOworCXN0cnVjdCBkcm1fcmVjdCBjbGlwOwogCWludCBoc3ViLCB2c3Vi OworCWludCByZXQ7CiAKIAkvKiBPayB0byBkaXNhYmxlICovCiAJaWYgKCFmYikKQEAgLTIzMiw0 NCArMjM1LDM1IEBAIHN0YXRpYyBpbnQgaXB1X3BsYW5lX2F0b21pY19jaGVjayhzdHJ1Y3QgZHJt X3BsYW5lICpwbGFuZSwKIAlpZiAoV0FSTl9PTighY3J0Y19zdGF0ZSkpCiAJCXJldHVybiAtRUlO VkFMOwogCisJY2xpcC54MSA9IDA7CisJY2xpcC55MSA9IDA7CisJY2xpcC54MiA9IGNydGNfc3Rh dGUtPmFkanVzdGVkX21vZGUuaGRpc3BsYXk7CisJY2xpcC55MiA9IGNydGNfc3RhdGUtPmFkanVz dGVkX21vZGUudmRpc3BsYXk7CisJcmV0ID0gZHJtX3BsYW5lX2hlbHBlcl9jaGVja19zdGF0ZShz dGF0ZSwgJmNsaXAsCisJCQkJCSAgIERSTV9QTEFORV9IRUxQRVJfTk9fU0NBTElORywKKwkJCQkJ ICAgRFJNX1BMQU5FX0hFTFBFUl9OT19TQ0FMSU5HLAorCQkJCQkgICBjYW5fcG9zaXRpb24sIHRy dWUpOworCWlmIChyZXQpCisJCXJldHVybiByZXQ7CisKIAkvKiBDUlRDIHNob3VsZCBiZSBlbmFi bGVkICovCiAJaWYgKCFjcnRjX3N0YXRlLT5lbmFibGUpCiAJCXJldHVybiAtRUlOVkFMOwogCi0J Lyogbm8gc2NhbGluZyAqLwotCWlmIChzdGF0ZS0+c3JjX3cgPj4gMTYgIT0gc3RhdGUtPmNydGNf dyB8fAotCSAgICBzdGF0ZS0+c3JjX2ggPj4gMTYgIT0gc3RhdGUtPmNydGNfaCkKLQkJcmV0dXJu IC1FSU5WQUw7Ci0KIAlzd2l0Y2ggKHBsYW5lLT50eXBlKSB7CiAJY2FzZSBEUk1fUExBTkVfVFlQ RV9QUklNQVJZOgotCQkvKiBmdWxsIHBsYW5lIGRvZXNuJ3Qgc3VwcG9ydCBwYXJ0aWFsIG9mZiBz Y3JlZW4gKi8KLQkJaWYgKHN0YXRlLT5jcnRjX3ggfHwgc3RhdGUtPmNydGNfeSB8fAotCQkgICAg c3RhdGUtPmNydGNfdyAhPSBjcnRjX3N0YXRlLT5hZGp1c3RlZF9tb2RlLmhkaXNwbGF5IHx8Ci0J CSAgICBzdGF0ZS0+Y3J0Y19oICE9IGNydGNfc3RhdGUtPmFkanVzdGVkX21vZGUudmRpc3BsYXkp Ci0JCQlyZXR1cm4gLUVJTlZBTDsKLQogCQkvKiBmdWxsIHBsYW5lIG1pbmltdW0gd2lkdGggaXMg MTMgcGl4ZWxzICovCi0JCWlmIChzdGF0ZS0+Y3J0Y193IDwgMTMpCisJCWlmIChkcm1fcmVjdF93 aWR0aCgmc3RhdGUtPmRzdCkgPCAxMykKIAkJCXJldHVybiAtRUlOVkFMOwogCQlicmVhazsKIAlj YXNlIERSTV9QTEFORV9UWVBFX09WRVJMQVk6Ci0JCWlmIChzdGF0ZS0+Y3J0Y194IDwgMCB8fCBz dGF0ZS0+Y3J0Y195IDwgMCkKLQkJCXJldHVybiAtRUlOVkFMOwotCi0JCWlmIChzdGF0ZS0+Y3J0 Y194ICsgc3RhdGUtPmNydGNfdyA+Ci0JCSAgICBjcnRjX3N0YXRlLT5hZGp1c3RlZF9tb2RlLmhk aXNwbGF5KQotCQkJcmV0dXJuIC1FSU5WQUw7Ci0JCWlmIChzdGF0ZS0+Y3J0Y195ICsgc3RhdGUt PmNydGNfaCA+Ci0JCSAgICBjcnRjX3N0YXRlLT5hZGp1c3RlZF9tb2RlLnZkaXNwbGF5KQotCQkJ cmV0dXJuIC1FSU5WQUw7CiAJCWJyZWFrOwogCWRlZmF1bHQ6Ci0JCWRldl93YXJuKGRldiwgIlVu c3VwcG9ydGVkIHBsYW5lIHR5cGVcbiIpOworCQlkZXZfd2FybihkZXYsICJVbnN1cHBvcnRlZCBw bGFuZSB0eXBlICVkXG4iLCBwbGFuZS0+dHlwZSk7CiAJCXJldHVybiAtRUlOVkFMOwogCX0KIAot CWlmIChzdGF0ZS0+Y3J0Y19oIDwgMikKKwlpZiAoZHJtX3JlY3RfaGVpZ2h0KCZzdGF0ZS0+ZHN0 KSA8IDIpCiAJCXJldHVybiAtRUlOVkFMOwogCiAJLyoKQEAgLTI3OSw5ICsyNzMsOCBAQCBzdGF0 aWMgaW50IGlwdV9wbGFuZV9hdG9taWNfY2hlY2soc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCiAJ ICogY2FsbGJhY2suICBUaGUgcGxhbmVzIHdpbGwgYmUgcmVlbmFibGVkIGluIHBsYW5lJ3MgLT5h dG9taWNfdXBkYXRlCiAJICogY2FsbGJhY2suCiAJICovCi0JaWYgKG9sZF9mYiAmJiAoc3RhdGUt PnNyY193ICE9IG9sZF9zdGF0ZS0+c3JjX3cgfHwKLQkJCSAgICAgIHN0YXRlLT5zcmNfaCAhPSBv bGRfc3RhdGUtPnNyY19oIHx8Ci0JCQkgICAgICBmYi0+cGl4ZWxfZm9ybWF0ICE9IG9sZF9mYi0+ cGl4ZWxfZm9ybWF0KSkKKwlpZiAob2xkX2ZiICYmICghZHJtX3JlY3RfZXF1YWxzKCZzdGF0ZS0+ ZHN0LCAmb2xkX3N0YXRlLT5kc3QpIHx8CisJCSAgICAgICBmYi0+cGl4ZWxfZm9ybWF0ICE9IG9s ZF9mYi0+cGl4ZWxfZm9ybWF0KSkKIAkJY3J0Y19zdGF0ZS0+bW9kZV9jaGFuZ2VkID0gdHJ1ZTsK IAogCWViYSA9IGRybV9wbGFuZV9zdGF0ZV90b19lYmEoc3RhdGUpOwpAQCAtMzUwLDggKzM0Myw4 IEBAIHN0YXRpYyBpbnQgaXB1X3BsYW5lX2F0b21pY19jaGVjayhzdHJ1Y3QgZHJtX3BsYW5lICpw bGFuZSwKIAkJICovCiAJCWhzdWIgPSBkcm1fZm9ybWF0X2hvcnpfY2hyb21hX3N1YnNhbXBsaW5n KGZiLT5waXhlbF9mb3JtYXQpOwogCQl2c3ViID0gZHJtX2Zvcm1hdF92ZXJ0X2Nocm9tYV9zdWJz YW1wbGluZyhmYi0+cGl4ZWxfZm9ybWF0KTsKLQkJaWYgKCgoc3RhdGUtPnNyY194ID4+IDE2KSAm IChoc3ViIC0gMSkpIHx8Ci0JCSAgICAoKHN0YXRlLT5zcmNfeSA+PiAxNikgJiAodnN1YiAtIDEp KSkKKwkJaWYgKCgoc3RhdGUtPnNyYy54MSA+PiAxNikgJiAoaHN1YiAtIDEpKSB8fAorCQkgICAg KChzdGF0ZS0+c3JjLnkxID4+IDE2KSAmICh2c3ViIC0gMSkpKQogCQkJcmV0dXJuIC1FSU5WQUw7 CiAJfQogCkBAIC0zOTUsOCArMzg4LDggQEAgc3RhdGljIHZvaWQgaXB1X3BsYW5lX2F0b21pY191 cGRhdGUoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCiAJCWljcyA9IGlwdV9kcm1fZm91cmNjX3Rv X2NvbG9yc3BhY2Uoc3RhdGUtPmZiLT5waXhlbF9mb3JtYXQpOwogCQlpcHVfZHBfc2V0dXBfY2hh bm5lbChpcHVfcGxhbmUtPmRwLCBpY3MsCiAJCQkJCUlQVVYzX0NPTE9SU1BBQ0VfVU5LTk9XTik7 Ci0JCWlwdV9kcF9zZXRfd2luZG93X3BvcyhpcHVfcGxhbmUtPmRwLCBzdGF0ZS0+Y3J0Y194LAot CQkJCQlzdGF0ZS0+Y3J0Y195KTsKKwkJaXB1X2RwX3NldF93aW5kb3dfcG9zKGlwdV9wbGFuZS0+ ZHAsCisJCQkJICAgICAgc3RhdGUtPmRzdC54MSwgc3RhdGUtPmRzdC55MSk7CiAJCS8qIEVuYWJs ZSBsb2NhbCBhbHBoYSBvbiBwYXJ0aWFsIHBsYW5lICovCiAJCXN3aXRjaCAoc3RhdGUtPmZiLT5w aXhlbF9mb3JtYXQpIHsKIAkJY2FzZSBEUk1fRk9STUFUX0FSR0IxNTU1OgpAQCAtNDE2LDExICs0 MDksMTIgQEAgc3RhdGljIHZvaWQgaXB1X3BsYW5lX2F0b21pY191cGRhdGUoc3RydWN0IGRybV9w bGFuZSAqcGxhbmUsCiAJCX0KIAl9CiAKLQlpcHVfZG1mY19jb25maWdfd2FpdDRlb3QoaXB1X3Bs YW5lLT5kbWZjLCBzdGF0ZS0+Y3J0Y193KTsKKwlpcHVfZG1mY19jb25maWdfd2FpdDRlb3QoaXB1 X3BsYW5lLT5kbWZjLCBkcm1fcmVjdF93aWR0aCgmc3RhdGUtPmRzdCkpOwogCiAJaXB1X2NwbWVt X3plcm8oaXB1X3BsYW5lLT5pcHVfY2gpOwotCWlwdV9jcG1lbV9zZXRfcmVzb2x1dGlvbihpcHVf cGxhbmUtPmlwdV9jaCwgc3RhdGUtPnNyY193ID4+IDE2LAotCQkJCQlzdGF0ZS0+c3JjX2ggPj4g MTYpOworCWlwdV9jcG1lbV9zZXRfcmVzb2x1dGlvbihpcHVfcGxhbmUtPmlwdV9jaCwKKwkJCQkg ZHJtX3JlY3Rfd2lkdGgoJnN0YXRlLT5zcmMpID4+IDE2LAorCQkJCSBkcm1fcmVjdF9oZWlnaHQo JnN0YXRlLT5zcmMpID4+IDE2KTsKIAlpcHVfY3BtZW1fc2V0X2ZtdChpcHVfcGxhbmUtPmlwdV9j aCwgc3RhdGUtPmZiLT5waXhlbF9mb3JtYXQpOwogCWlwdV9jcG1lbV9zZXRfaGlnaF9wcmlvcml0 eShpcHVfcGxhbmUtPmlwdV9jaCk7CiAJaXB1X2lkbWFjX3NldF9kb3VibGVfYnVmZmVyKGlwdV9w bGFuZS0+aXB1X2NoLCAxKTsKQEAgLTQ0NCw3ICs0MzgsNyBAQCBzdGF0aWMgdm9pZCBpcHVfcGxh bmVfYXRvbWljX3VwZGF0ZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKIAogCQlkZXZfZGJnKGlw dV9wbGFuZS0+YmFzZS5kZXYtPmRldiwKIAkJCSJwaHkgPSAlbHUgJWx1ICVsdSwgeCA9ICVkLCB5 ID0gJWQiLCBlYmEsIHVibywgdmJvLAotCQkJc3RhdGUtPnNyY194ID4+IDE2LCBzdGF0ZS0+c3Jj X3kgPj4gMTYpOworCQkJc3RhdGUtPnNyYy54MSA+PiAxNiwgc3RhdGUtPnNyYy55MSA+PiAxNik7 CiAJCWJyZWFrOwogCWNhc2UgRFJNX0ZPUk1BVF9OVjEyOgogCWNhc2UgRFJNX0ZPUk1BVF9OVjE2 OgpAQCAtNDU1LDExICs0NDksMTEgQEAgc3RhdGljIHZvaWQgaXB1X3BsYW5lX2F0b21pY191cGRh dGUoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCiAKIAkJZGV2X2RiZyhpcHVfcGxhbmUtPmJhc2Uu ZGV2LT5kZXYsCiAJCQkicGh5ID0gJWx1ICVsdSwgeCA9ICVkLCB5ID0gJWQiLCBlYmEsIHVibywK LQkJCXN0YXRlLT5zcmNfeCA+PiAxNiwgc3RhdGUtPnNyY195ID4+IDE2KTsKKwkJCXN0YXRlLT5z cmMueDEgPj4gMTYsIHN0YXRlLT5zcmMueTEgPj4gMTYpOwogCQlicmVhazsKIAlkZWZhdWx0Ogog CQlkZXZfZGJnKGlwdV9wbGFuZS0+YmFzZS5kZXYtPmRldiwgInBoeXMgPSAlbHUsIHggPSAlZCwg eSA9ICVkIiwKLQkJCWViYSwgc3RhdGUtPnNyY194ID4+IDE2LCBzdGF0ZS0+c3JjX3kgPj4gMTYp OworCQkJZWJhLCBzdGF0ZS0+c3JjLngxID4+IDE2LCBzdGF0ZS0+c3JjLnkxID4+IDE2KTsKIAkJ YnJlYWs7CiAJfQogCWlwdV9jcG1lbV9zZXRfYnVmZmVyKGlwdV9wbGFuZS0+aXB1X2NoLCAwLCBl YmEpOwotLSAKMi45LjMKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1k ZXZlbAo=