From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH] drm/i915: Postpone plane readout until after encoder readout, v3. Date: Thu, 27 Aug 2015 13:47:26 +0200 Message-ID: <55DEF8CE.3060600@linux.intel.com> References: <1438347848-11293-1-git-send-email-patrik.jakobsson@linux.intel.com> <55BF7C5D.6030405@linux.intel.com> <55C1E95C.6030101@linux.intel.com> <20150826144343.GV1367@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id CD92C6E836 for ; Thu, 27 Aug 2015 04:47:29 -0700 (PDT) In-Reply-To: <20150826144343.GV1367@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Daniel Vetter Cc: Intel Graphics Development List-Id: intel-gfx@lists.freedesktop.org V2hlbiByZWFkaW5nIG91dCBodyBzdGF0ZSBmb3IgcGxhbmVzIHdlIGRpc2FibGUgaW5hY3RpdmUg cGxhbmVzIHdoaWNoIGluCnR1cm4gdHJpZ2dlcnMgYW4gdXBkYXRlIG9mIHRoZSB3YXRlcm1hcmtz LiBUaGUgdXBkYXRlIGRlcGVuZHMgb24gdGhlCmNydGNfY2xvY2sgYmVpbmcgc2V0IHdoaWNoIGlz IGRvbmUgd2hlbiByZWFkaW5nIG91dCBlbmNvZGVycy4gVGh1cwpwb3N0cG9uZSB0aGUgcGxhbmUg cmVhZG91dCB1bnRpbCBhZnRlciBlbmNvZGVyIHJlYWRvdXQuCgpUaGlzIHByZXZlbnRzIGEgd2Fy bmluZyBpbiBza2xfY29tcHV0ZV9saW5ldGltZV93bSgpIHdoZXJlIHBpeGVsX3JhdGUKYmVjb21l cyAwIHdoZW4gY3J0Y19jbG9jayBpcyAwLgoKU2lnbmVkLW9mZi1ieTogUGF0cmlrIEpha29ic3Nv biA8cGF0cmlrLmpha29ic3NvbkBsaW51eC5pbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IE1hYXJ0 ZW4gTGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+ClJlZmVyZW5j ZXM6IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTkxNDI4Ci0t LQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCmluZGV4IGUzOTIyZDk3M2RiMC4uMTE4 YjIwNWU3YmQ1IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5 LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCkBAIC0xNTAzMywz MCArMTUwMzMsNiBAQCBzdGF0aWMgYm9vbCBwcmltYXJ5X2dldF9od19zdGF0ZShzdHJ1Y3QgaW50 ZWxfY3J0YyAqY3J0YykKIAlyZXR1cm4gISEoSTkxNV9SRUFEKERTUENOVFIoY3J0Yy0+cGxhbmUp KSAmIERJU1BMQVlfUExBTkVfRU5BQkxFKTsKIH0KIAotc3RhdGljIHZvaWQgcmVhZG91dF9wbGFu ZV9zdGF0ZShzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKLQkJCQlzdHJ1Y3QgaW50ZWxfY3J0Y19z dGF0ZSAqY3J0Y19zdGF0ZSkKLXsKLQlzdHJ1Y3QgaW50ZWxfcGxhbmUgKnA7Ci0Jc3RydWN0IGlu dGVsX3BsYW5lX3N0YXRlICpwbGFuZV9zdGF0ZTsKLQlib29sIGFjdGl2ZSA9IGNydGNfc3RhdGUt PmJhc2UuYWN0aXZlOwotCi0JZm9yX2VhY2hfaW50ZWxfcGxhbmUoY3J0Yy0+YmFzZS5kZXYsIHAp IHsKLQkJaWYgKGNydGMtPnBpcGUgIT0gcC0+cGlwZSkKLQkJCWNvbnRpbnVlOwotCi0JCXBsYW5l X3N0YXRlID0gdG9faW50ZWxfcGxhbmVfc3RhdGUocC0+YmFzZS5zdGF0ZSk7Ci0KLQkJaWYgKHAt PmJhc2UudHlwZSA9PSBEUk1fUExBTkVfVFlQRV9QUklNQVJZKQotCQkJcGxhbmVfc3RhdGUtPnZp c2libGUgPSBwcmltYXJ5X2dldF9od19zdGF0ZShjcnRjKTsKLQkJZWxzZSB7Ci0JCQlpZiAoYWN0 aXZlKQotCQkJCXAtPmRpc2FibGVfcGxhbmUoJnAtPmJhc2UsICZjcnRjLT5iYXNlKTsKLQotCQkJ cGxhbmVfc3RhdGUtPnZpc2libGUgPSBmYWxzZTsKLQkJfQotCX0KLX0KLQogc3RhdGljIHZvaWQg aW50ZWxfbW9kZXNldF9yZWFkb3V0X2h3X3N0YXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiB7 CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsK QEAgLTE1MDc2LDM1ICsxNTA1Miw4IEBAIHN0YXRpYyB2b2lkIGludGVsX21vZGVzZXRfcmVhZG91 dF9od19zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCiAJCWNydGMtPmJhc2Uuc3RhdGUt PmFjdGl2ZSA9IGNydGMtPmFjdGl2ZTsKIAkJY3J0Yy0+YmFzZS5lbmFibGVkID0gY3J0Yy0+YWN0 aXZlOwotCi0JCW1lbXNldCgmY3J0Yy0+YmFzZS5tb2RlLCAwLCBzaXplb2YoY3J0Yy0+YmFzZS5t b2RlKSk7Ci0JCWlmIChjcnRjLT5iYXNlLnN0YXRlLT5hY3RpdmUpIHsKLQkJCWludGVsX21vZGVf ZnJvbV9waXBlX2NvbmZpZygmY3J0Yy0+YmFzZS5tb2RlLCBjcnRjLT5jb25maWcpOwotCQkJaW50 ZWxfbW9kZV9mcm9tX3BpcGVfY29uZmlnKCZjcnRjLT5iYXNlLnN0YXRlLT5hZGp1c3RlZF9tb2Rl LCBjcnRjLT5jb25maWcpOwotCQkJV0FSTl9PTihkcm1fYXRvbWljX3NldF9tb2RlX2Zvcl9jcnRj KGNydGMtPmJhc2Uuc3RhdGUsICZjcnRjLT5iYXNlLm1vZGUpKTsKLQotCQkJLyoKLQkJCSAqIFRo ZSBpbml0aWFsIG1vZGUgbmVlZHMgdG8gYmUgc2V0IGluIG9yZGVyIHRvIGtlZXAKLQkJCSAqIHRo ZSBhdG9taWMgY29yZSBoYXBweS4gSXQgd2FudHMgYSB2YWxpZCBtb2RlIGlmIHRoZQotCQkJICog Y3J0YydzIGVuYWJsZWQsIHNvIHdlIGRvIHRoZSBhYm92ZSBjYWxsLgotCQkJICoKLQkJCSAqIEF0 IHRoaXMgcG9pbnQgc29tZSBzdGF0ZSB1cGRhdGVkIGJ5IHRoZSBjb25uZWN0b3JzCi0JCQkgKiBp biB0aGVpciAtPmRldGVjdCgpIGNhbGxiYWNrIGhhcyBub3QgcnVuIHlldCwgc28KLQkJCSAqIG5v IHJlY2FsY3VsYXRpb24gY2FuIGJlIGRvbmUgeWV0LgotCQkJICoKLQkJCSAqIEV2ZW4gaWYgd2Ug Y291bGQgZG8gYSByZWNhbGN1bGF0aW9uIGFuZCBtb2Rlc2V0Ci0JCQkgKiByaWdodCBub3cgaXQg d291bGQgY2F1c2UgYSBkb3VibGUgbW9kZXNldCBpZgotCQkJICogZmJkZXYgb3IgdXNlcnNwYWNl IGNob29zZXMgYSBkaWZmZXJlbnQgaW5pdGlhbCBtb2RlLgotCQkJICoKLQkJCSAqIElmIHRoYXQg aGFwcGVucywgc29tZW9uZSBpbmRpY2F0ZWQgdGhleSB3YW50ZWQgYQotCQkJICogbW9kZSBjaGFu Z2UsIHdoaWNoIG1lYW5zIGl0J3Mgc2FmZSB0byBkbyBhIGZ1bGwKLQkJCSAqIHJlY2FsY3VsYXRp b24uCi0JCQkgKi8KLQkJCWNydGMtPmJhc2Uuc3RhdGUtPm1vZGUucHJpdmF0ZV9mbGFncyA9IEk5 MTVfTU9ERV9GTEFHX0lOSEVSSVRFRDsKLQkJfQotCi0JCWNydGMtPmJhc2UuaHdtb2RlID0gY3J0 Yy0+Y29uZmlnLT5iYXNlLmFkanVzdGVkX21vZGU7Ci0JCXJlYWRvdXRfcGxhbmVfc3RhdGUoY3J0 YywgdG9faW50ZWxfY3J0Y19zdGF0ZShjcnRjLT5iYXNlLnN0YXRlKSk7CisJCXRvX2ludGVsX3Bs YW5lX3N0YXRlKGNydGMtPmJhc2UucHJpbWFyeS0+c3RhdGUpLT52aXNpYmxlID0KKwkJCXByaW1h cnlfZ2V0X2h3X3N0YXRlKGNydGMpOwogCiAJCURSTV9ERUJVR19LTVMoIltDUlRDOiVkXSBodyBz dGF0ZSByZWFkb3V0OiAlc1xuIiwKIAkJCSAgICAgIGNydGMtPmJhc2UuYmFzZS5pZCwKQEAgLTE1 MTg2LDYgKzE1MTM1LDMzIEBAIGludGVsX21vZGVzZXRfc2V0dXBfaHdfc3RhdGUoc3RydWN0IGRy bV9kZXZpY2UgKmRldikKIAogCWZvcl9lYWNoX3BpcGUoZGV2X3ByaXYsIHBpcGUpIHsKIAkJY3J0 YyA9IHRvX2ludGVsX2NydGMoZGV2X3ByaXYtPnBpcGVfdG9fY3J0Y19tYXBwaW5nW3BpcGVdKTsK KwkJY3J0Yy0+YmFzZS5od21vZGUgPSBjcnRjLT5jb25maWctPmJhc2UuYWRqdXN0ZWRfbW9kZTsK KwkJbWVtc2V0KCZjcnRjLT5iYXNlLm1vZGUsIDAsIHNpemVvZihjcnRjLT5iYXNlLm1vZGUpKTsK KwkJaWYgKGNydGMtPmJhc2Uuc3RhdGUtPmFjdGl2ZSkgeworCQkJaW50ZWxfbW9kZV9mcm9tX3Bp cGVfY29uZmlnKCZjcnRjLT5iYXNlLm1vZGUsIGNydGMtPmNvbmZpZyk7CisJCQlpbnRlbF9tb2Rl X2Zyb21fcGlwZV9jb25maWcoJmNydGMtPmJhc2Uuc3RhdGUtPmFkanVzdGVkX21vZGUsIGNydGMt PmNvbmZpZyk7CisJCQlXQVJOX09OKGRybV9hdG9taWNfc2V0X21vZGVfZm9yX2NydGMoY3J0Yy0+ YmFzZS5zdGF0ZSwgJmNydGMtPmJhc2UubW9kZSkpOworCisJCQkvKgorCQkJICogVGhlIGluaXRp YWwgbW9kZSBuZWVkcyB0byBiZSBzZXQgaW4gb3JkZXIgdG8ga2VlcAorCQkJICogdGhlIGF0b21p YyBjb3JlIGhhcHB5LiBJdCB3YW50cyBhIHZhbGlkIG1vZGUgaWYgdGhlCisJCQkgKiBjcnRjJ3Mg ZW5hYmxlZCwgc28gd2UgZG8gdGhlIGFib3ZlIGNhbGwuCisJCQkgKgorCQkJICogQXQgdGhpcyBw b2ludCBzb21lIHN0YXRlIHVwZGF0ZWQgYnkgdGhlIGNvbm5lY3RvcnMKKwkJCSAqIGluIHRoZWly IC0+ZGV0ZWN0KCkgY2FsbGJhY2sgaGFzIG5vdCBydW4geWV0LCBzbworCQkJICogbm8gcmVjYWxj dWxhdGlvbiBjYW4gYmUgZG9uZSB5ZXQuCisJCQkgKgorCQkJICogRXZlbiBpZiB3ZSBjb3VsZCBk byBhIHJlY2FsY3VsYXRpb24gYW5kIG1vZGVzZXQKKwkJCSAqIHJpZ2h0IG5vdyBpdCB3b3VsZCBj YXVzZSBhIGRvdWJsZSBtb2Rlc2V0IGlmCisJCQkgKiBmYmRldiBvciB1c2Vyc3BhY2UgY2hvb3Nl cyBhIGRpZmZlcmVudCBpbml0aWFsIG1vZGUuCisJCQkgKgorCQkJICogSWYgdGhhdCBoYXBwZW5z LCBzb21lb25lIGluZGljYXRlZCB0aGV5IHdhbnRlZCBhCisJCQkgKiBtb2RlIGNoYW5nZSwgd2hp Y2ggbWVhbnMgaXQncyBzYWZlIHRvIGRvIGEgZnVsbAorCQkJICogcmVjYWxjdWxhdGlvbi4KKwkJ CSAqLworCQkJY3J0Yy0+YmFzZS5zdGF0ZS0+bW9kZS5wcml2YXRlX2ZsYWdzID0gSTkxNV9NT0RF X0ZMQUdfSU5IRVJJVEVEOworCQl9CisKIAkJaW50ZWxfc2FuaXRpemVfY3J0YyhjcnRjKTsKIAkJ aW50ZWxfZHVtcF9waXBlX2NvbmZpZyhjcnRjLCBjcnRjLT5jb25maWcsCiAJCQkJICAgICAgICJb c2V0dXBfaHdfc3RhdGVdIik7CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lu dGVsLWdmeAo=