From mboxrd@z Thu Jan 1 00:00:00 1970 From: Liu Ying Subject: [PATCH] drm/imx: Add active primary plane reconfiguration support Date: Mon, 15 Aug 2016 14:09:13 +0800 Message-ID: <1471241353-26269-1-git-send-email-gnuiyl@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from NAM01-BN3-obe.outbound.protection.outlook.com (mail-bn3nam01on0080.outbound.protection.outlook.com [104.47.33.80]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8D9986E379 for ; Mon, 15 Aug 2016 06:09:45 +0000 (UTC) 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: Daniel Vetter , Peter Senna Tschudin , Russell King List-Id: dri-devel@lists.freedesktop.org V2UgZG9uJ3Qgc3VwcG9ydCBjb25maWd1cmluZyBhY3RpdmUgcHJpbWFyeSBwbGFuZSBvbi10aGUt Zmx5IGZvciBpbXgtZHJtLgpUaGUgcmVsZXZhbnQgQ1JUQyBzaG91bGQgYmUgZGlzYWJsZWQgYmVm b3JlIHRoZSBwbGFuZSBjb25maWd1cmF0aW9uLgpPZiBjb3Vyc2UsIHRoZSBwbGFuZSBpdHNlbGYg c2hvdWxkIGJlIGRpc2FibGVkIGFzIHdlbGwuCkZvciBvdmVybGF5IHBsYW5lLCB3ZSBjdXJyZW50 bHkgcmVqZWN0IGFjdGl2ZSBwbGFuZSByZWNvbmZpZ3VyYXRpb24uClRoaXMgcGF0Y2ggYWRkcyBh Y3RpdmUgcGxhbmUgcmVjb25maWd1cmF0aW9uIHN1cHBvcnQgYnkgZm9yY2luZyBDUlRDCm1vZGUg Y2hhbmdlIGFuZCBkaXNhYmxpbmctZW5hYmxpbmcgcGxhbmUgaW4gcGxhbmUncyAtPmF0b21pY191 cGRhdGUKY2FsbGJhY2suCgpTdWdnZXN0ZWQtYnk6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0 ZXJAZmZ3bGwuY2g+CkNjOiBQaGlsaXBwIFphYmVsIDxwLnphYmVsQHBlbmd1dHJvbml4LmRlPgpD YzogRGF2aWQgQWlybGllIDxhaXJsaWVkQGxpbnV4LmllPgpDYzogUnVzc2VsbCBLaW5nIDxsaW51 eEBhcm1saW51eC5vcmcudWs+CkNjOiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xs LmNoPgpDYzogUGV0ZXIgU2VubmEgVHNjaHVkaW4gPHBldGVyLnNlbm5hQGdtYWlsLmNvbT4KU2ln bmVkLW9mZi1ieTogTGl1IFlpbmcgPGdudWl5bEBnbWFpbC5jb20+Ci0tLQogZHJpdmVycy9ncHUv ZHJtL2lteC9pbXgtZHJtLWNvcmUuYyB8IDI2ICsrKysrKysrKysrKysrKysrKysrKy0KIGRyaXZl cnMvZ3B1L2RybS9pbXgvaXB1djMtcGxhbmUuYyAgfCA0NCArKysrKysrKysrKysrKysrKysrKysr KysrKysrKy0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA1OSBpbnNlcnRpb25zKCspLCAxMSBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaW14L2lteC1kcm0tY29y ZS5jIGIvZHJpdmVycy9ncHUvZHJtL2lteC9pbXgtZHJtLWNvcmUuYwppbmRleCA2ZGMwZWY0Li5j MTBjM2VhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaW14L2lteC1kcm0tY29yZS5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9pbXgvaW14LWRybS1jb3JlLmMKQEAgLTE0NywxMCArMTQ3LDM0 IEBAIHN0YXRpYyB2b2lkIGlteF9kcm1fb3V0cHV0X3BvbGxfY2hhbmdlZChzdHJ1Y3QgZHJtX2Rl dmljZSAqZHJtKQogCWRybV9mYmRldl9jbWFfaG90cGx1Z19ldmVudChpbXhkcm0tPmZiaGVscGVy KTsKIH0KIAorc3RhdGljIGludCBpbXhfZHJtX2F0b21pY19jaGVjayhzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LAorCQkJCXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKK3sKKwlpbnQgcmV0 OworCisJcmV0ID0gZHJtX2F0b21pY19oZWxwZXJfY2hlY2tfbW9kZXNldChkZXYsIHN0YXRlKTsK KwlpZiAocmV0KQorCQlyZXR1cm4gcmV0OworCisJcmV0ID0gZHJtX2F0b21pY19oZWxwZXJfY2hl Y2tfcGxhbmVzKGRldiwgc3RhdGUpOworCWlmIChyZXQpCisJCXJldHVybiByZXQ7CisKKwkvKgor CSAqIENoZWNrIG1vZGVzZXQgYWdhaW4gaW4gY2FzZSBjcnRjX3N0YXRlLT5tb2RlX2NoYW5nZWQg aXMKKwkgKiB1cGRhdGVkIGluIHBsYW5lJ3MgLT5hdG9taWNfY2hlY2sgY2FsbGJhY2suCisJICov CisJcmV0ID0gZHJtX2F0b21pY19oZWxwZXJfY2hlY2tfbW9kZXNldChkZXYsIHN0YXRlKTsKKwlp ZiAocmV0KQorCQlyZXR1cm4gcmV0OworCisJcmV0dXJuIHJldDsKK30KKwogc3RhdGljIGNvbnN0 IHN0cnVjdCBkcm1fbW9kZV9jb25maWdfZnVuY3MgaW14X2RybV9tb2RlX2NvbmZpZ19mdW5jcyA9 IHsKIAkuZmJfY3JlYXRlID0gZHJtX2ZiX2NtYV9jcmVhdGUsCiAJLm91dHB1dF9wb2xsX2NoYW5n ZWQgPSBpbXhfZHJtX291dHB1dF9wb2xsX2NoYW5nZWQsCi0JLmF0b21pY19jaGVjayA9IGRybV9h dG9taWNfaGVscGVyX2NoZWNrLAorCS5hdG9taWNfY2hlY2sgPSBpbXhfZHJtX2F0b21pY19jaGVj aywKIAkuYXRvbWljX2NvbW1pdCA9IGRybV9hdG9taWNfaGVscGVyX2NvbW1pdCwKIH07CiAKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pbXgvaXB1djMtcGxhbmUuYyBiL2RyaXZlcnMvZ3B1 L2RybS9pbXgvaXB1djMtcGxhbmUuYwppbmRleCA0YWQ2N2QwLi5kNGRkZTRhIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaW14L2lwdXYzLXBsYW5lLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2lteC9pcHV2My1wbGFuZS5jCkBAIC0zMTksMTMgKzMxOSwyMSBAQCBzdGF0aWMgaW50IGlwdV9w bGFuZV9hdG9taWNfY2hlY2soc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCiAJCXJldHVybiAtRUlO VkFMOwogCiAJLyoKLQkgKiBzaW5jZSB3ZSBjYW5ub3QgdG91Y2ggYWN0aXZlIElETUFDIGNoYW5u ZWxzLCB3ZSBkbyBub3Qgc3VwcG9ydAotCSAqIHJlc2l6aW5nIHRoZSBlbmFibGVkIHBsYW5lIG9y IGNoYW5naW5nIGl0cyBmb3JtYXQKKwkgKiBGb3IgcHJpbWFyeSBwbGFuZSwgd2Ugc3VwcG9ydCBy ZXNpemluZyBhY3RpdmUgcGxhbmUgb3IgY2hhbmdpbmcKKwkgKiBpdHMgZm9ybWF0IGJ5IGZvcmNp bmcgQ1JUQyBtb2RlIGNoYW5nZSBhbmQgZGlzYWJsaW5nLWVuYWJsaW5nIHBsYW5lCisJICogaW4g cGxhbmUncyAtPmF0b21pY191cGRhdGUgY2FsbGJhY2suCisJICogRm9yIG92ZXJsYXkgcGxhbmUs IHdlIGN1cnJlbnRseSByZWplY3QgdGhlIGFjdGl2ZSBwbGFuZSByZXNpemluZworCSAqIG9yIGZv cm1hdCBjaGFuZ2UuCiAJICovCiAJaWYgKG9sZF9mYiAmJiAoc3RhdGUtPnNyY193ICE9IG9sZF9z dGF0ZS0+c3JjX3cgfHwKIAkJCSAgICAgIHN0YXRlLT5zcmNfaCAhPSBvbGRfc3RhdGUtPnNyY19o IHx8Ci0JCQkgICAgICBmYi0+cGl4ZWxfZm9ybWF0ICE9IG9sZF9mYi0+cGl4ZWxfZm9ybWF0KSkK LQkJcmV0dXJuIC1FSU5WQUw7CisJCQkgICAgICBmYi0+cGl4ZWxfZm9ybWF0ICE9IG9sZF9mYi0+ cGl4ZWxfZm9ybWF0KSkgeworCQlpZiAocGxhbmUtPnR5cGUgPT0gRFJNX1BMQU5FX1RZUEVfUFJJ TUFSWSkgeworCQkJY3J0Y19zdGF0ZS0+bW9kZV9jaGFuZ2VkID0gdHJ1ZTsKKwkJfSBlbHNlIHsK KwkJCXJldHVybiAtRUlOVkFMOworCQl9CisJfQogCiAJZWJhID0gZHJtX3BsYW5lX3N0YXRlX3Rv X2ViYShzdGF0ZSk7CiAKQEAgLTMzNSw4ICszNDMsMTMgQEAgc3RhdGljIGludCBpcHVfcGxhbmVf YXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAogCWlmIChmYi0+cGl0Y2hlc1sw XSA8IDEgfHwgZmItPnBpdGNoZXNbMF0gPiAxNjM4NCkKIAkJcmV0dXJuIC1FSU5WQUw7CiAKLQlp ZiAob2xkX2ZiICYmIGZiLT5waXRjaGVzWzBdICE9IG9sZF9mYi0+cGl0Y2hlc1swXSkKLQkJcmV0 dXJuIC1FSU5WQUw7CisJaWYgKG9sZF9mYiAmJiBmYi0+cGl0Y2hlc1swXSAhPSBvbGRfZmItPnBp dGNoZXNbMF0pIHsKKwkJaWYgKHBsYW5lLT50eXBlID09IERSTV9QTEFORV9UWVBFX1BSSU1BUlkp IHsKKwkJCWNydGNfc3RhdGUtPm1vZGVfY2hhbmdlZCA9IHRydWU7CisJCX0gZWxzZSB7CisJCQly ZXR1cm4gLUVJTlZBTDsKKwkJfQorCX0KIAogCXN3aXRjaCAoZmItPnBpeGVsX2Zvcm1hdCkgewog CWNhc2UgRFJNX0ZPUk1BVF9ZVVY0MjA6CkBAIC0zNzEsOCArMzg0LDEzIEBAIHN0YXRpYyBpbnQg aXB1X3BsYW5lX2F0b21pY19jaGVjayhzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKIAkJaWYgKGZi LT5waXRjaGVzWzFdIDwgMSB8fCBmYi0+cGl0Y2hlc1sxXSA+IDE2Mzg0KQogCQkJcmV0dXJuIC1F SU5WQUw7CiAKLQkJaWYgKG9sZF9mYiAmJiBvbGRfZmItPnBpdGNoZXNbMV0gIT0gZmItPnBpdGNo ZXNbMV0pCi0JCQlyZXR1cm4gLUVJTlZBTDsKKwkJaWYgKG9sZF9mYiAmJiBvbGRfZmItPnBpdGNo ZXNbMV0gIT0gZmItPnBpdGNoZXNbMV0pIHsKKwkJCWlmIChwbGFuZS0+dHlwZSA9PSBEUk1fUExB TkVfVFlQRV9QUklNQVJZKSB7CisJCQkJY3J0Y19zdGF0ZS0+bW9kZV9jaGFuZ2VkID0gdHJ1ZTsK KwkJCX0gZWxzZSB7CisJCQkJcmV0dXJuIC1FSU5WQUw7CisJCQl9CisJCX0KIAl9CiAKIAlyZXR1 cm4gMDsKQEAgLTM5Miw4ICs0MTAsMTQgQEAgc3RhdGljIHZvaWQgaXB1X3BsYW5lX2F0b21pY191 cGRhdGUoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCiAJZW51bSBpcHVfY29sb3Jfc3BhY2UgaWNz OwogCiAJaWYgKG9sZF9zdGF0ZS0+ZmIpIHsKLQkJaXB1X3BsYW5lX2F0b21pY19zZXRfYmFzZShp cHVfcGxhbmUsIG9sZF9zdGF0ZSk7Ci0JCXJldHVybjsKKwkJc3RydWN0IGRybV9jcnRjX3N0YXRl ICpjcnRjX3N0YXRlID0gc3RhdGUtPmNydGMtPnN0YXRlOworCisJCWlmICghY3J0Y19zdGF0ZS0+ bW9kZV9jaGFuZ2VkKSB7CisJCQlpcHVfcGxhbmVfYXRvbWljX3NldF9iYXNlKGlwdV9wbGFuZSwg b2xkX3N0YXRlKTsKKwkJCXJldHVybjsKKwkJfQorCisJCWlwdV9kaXNhYmxlX3BsYW5lKHBsYW5l KTsKIAl9CiAKIAlzd2l0Y2ggKGlwdV9wbGFuZS0+ZHBfZmxvdykgewotLSAKMi43LjQKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWls aW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=