From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH 02/11] drm/i915: Do not acquire crtc state to check clock during modeset. Date: Thu, 22 Oct 2015 13:56:27 +0200 Message-ID: <1445514996-18733-3-git-send-email-maarten.lankhorst@linux.intel.com> References: <1445514996-18733-1-git-send-email-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mblankhorst.nl (mblankhorst.nl [141.105.120.124]) by gabe.freedesktop.org (Postfix) with ESMTPS id 478556E2F0 for ; Thu, 22 Oct 2015 04:56:41 -0700 (PDT) In-Reply-To: <1445514996-18733-1-git-send-email-maarten.lankhorst@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org UGFyYWxsZWwgbW9kZXNldHMgYXJlIHN0aWxsIG5vdCBhbGxvd2VkLCBidXQgdGhpcyB3aWxsIGFs bG93IHVwZGF0aW5nCmEgZGlmZmVyZW50IGNydGMgZHVyaW5nIGEgbW9kZXNldCBpZiB0aGUgY2xv Y2sgaXMgbm90IGNoYW5nZWQuCgpBZGRpdGlvbmFsbHkgd2hlbiBhbGwgcGlwZXMgYXJlIERQTVMg b2ZmIHRoZSBjZGNsayB3aWxsIGJlIGxvd2VyZWQKdG8gdGhlIG1pbmltdW0gYWxsb3dlZC4KClNp Z25lZC1vZmYtYnk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBsaW51eC5p bnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIHwgOTAg KysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kcnYuaCAgICAgfCAgOSArKysrCiAyIGZpbGVzIGNoYW5nZWQsIDY0IGluc2VydGlv bnMoKyksIDM1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwpp bmRleCAwMjJlNjI4Yjg1MjAuLjA1MWExZTJiMWM1NSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2Rpc3BsYXkuYwpAQCAtNTIzNyw2ICs1MjM3LDcgQEAgc3RhdGljIHZvaWQgbW9kZXNldF9wdXRf cG93ZXJfZG9tYWlucyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAKIHN0YXRp YyB2b2lkIG1vZGVzZXRfdXBkYXRlX2NydGNfcG93ZXJfZG9tYWlucyhzdHJ1Y3QgZHJtX2F0b21p Y19zdGF0ZSAqc3RhdGUpCiB7CisJc3RydWN0IGludGVsX2F0b21pY19zdGF0ZSAqaW50ZWxfc3Rh dGUgPSB0b19pbnRlbF9hdG9taWNfc3RhdGUoc3RhdGUpOwogCXN0cnVjdCBkcm1fZGV2aWNlICpk ZXYgPSBzdGF0ZS0+ZGV2OwogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRl di0+ZGV2X3ByaXZhdGU7CiAJdW5zaWduZWQgbG9uZyBwdXRfZG9tYWluc1tJOTE1X01BWF9QSVBF U10gPSB7fTsKQEAgLTUyNDUsMTMgKzUyNDYsMjAgQEAgc3RhdGljIHZvaWQgbW9kZXNldF91cGRh dGVfY3J0Y19wb3dlcl9kb21haW5zKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKIAlp bnQgaTsKIAogCWZvcl9lYWNoX2NydGNfaW5fc3RhdGUoc3RhdGUsIGNydGMsIGNydGNfc3RhdGUs IGkpIHsKLQkJaWYgKG5lZWRzX21vZGVzZXQoY3J0Yy0+c3RhdGUpKQotCQkJcHV0X2RvbWFpbnNb dG9faW50ZWxfY3J0YyhjcnRjKS0+cGlwZV0gPQotCQkJCW1vZGVzZXRfZ2V0X2NydGNfcG93ZXJf ZG9tYWlucyhjcnRjKTsKKwkJc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMgPQorCQkJdG9f aW50ZWxfY3J0YyhjcnRjKTsKKwkJZW51bSBwaXBlIHBpcGUgPSBpbnRlbF9jcnRjLT5waXBlOwor CisJCWlmICghbmVlZHNfbW9kZXNldChjcnRjLT5zdGF0ZSkpCisJCQljb250aW51ZTsKKworCQlp bnRlbF9jcnRjLT5taW5fY2RjbGsgPSBpbnRlbF9zdGF0ZS0+cGlwZV9jZGNsa1twaXBlXTsKKwor CQlwdXRfZG9tYWluc1twaXBlXSA9IG1vZGVzZXRfZ2V0X2NydGNfcG93ZXJfZG9tYWlucyhjcnRj KTsKIAl9CiAKIAlpZiAoZGV2X3ByaXYtPmRpc3BsYXkubW9kZXNldF9jb21taXRfY2RjbGspIHsK LQkJdW5zaWduZWQgaW50IGNkY2xrID0gdG9faW50ZWxfYXRvbWljX3N0YXRlKHN0YXRlKS0+Y2Rj bGs7CisJCXVuc2lnbmVkIGludCBjZGNsayA9IGludGVsX3N0YXRlLT5jZGNsazsKIAogCQlpZiAo Y2RjbGsgIT0gZGV2X3ByaXYtPmNkY2xrX2ZyZXEgJiYKIAkJICAgICFXQVJOX09OKCFzdGF0ZS0+ YWxsb3dfbW9kZXNldCkpCkBAIC01OTE5LDcgKzU5MjcsNiBAQCBzdGF0aWMgaW50IGJyb3h0b25f Y2FsY19jZGNsayhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJLyoKIAkgKiBG SVhNRToKIAkgKiAtIHJlbW92ZSB0aGUgZ3VhcmRiYW5kLCBpdCdzIG5vdCBuZWVkZWQgb24gQlhU Ci0JICogLSBzZXQgMTkuMk1IeiBieXBhc3MgZnJlcXVlbmN5IGlmIHRoZXJlIGFyZSBubyBhY3Rp dmUgcGlwZXMKIAkgKi8KIAlpZiAobWF4X3BpeGNsayA+IDU3NjAwMCo5LzEwKQogCQlyZXR1cm4g NjI0MDAwOwpAQCAtNTkyOSw4ICs1OTM2LDEwIEBAIHN0YXRpYyBpbnQgYnJveHRvbl9jYWxjX2Nk Y2xrKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAkJcmV0dXJuIDM4NDAwMDsK IAllbHNlIGlmIChtYXhfcGl4Y2xrID4gMTQ0MDAwKjkvMTApCiAJCXJldHVybiAyODgwMDA7Ci0J ZWxzZQorCWVsc2UgaWYgKG1heF9waXhjbGspCiAJCXJldHVybiAxNDQwMDA7CisJZWxzZQorCQly ZXR1cm4gMTkyMDA7CiB9CiAKIC8qIENvbXB1dGUgdGhlIG1heCBwaXhlbCBjbG9jayBmb3IgbmV3 IGNvbmZpZ3VyYXRpb24uIFVzZXMgYXRvbWljIHN0YXRlIGlmCkBAIC01OTM5LDIyICs1OTQ4LDMx IEBAIHN0YXRpYyBpbnQgaW50ZWxfbW9kZV9tYXhfcGl4Y2xrKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsCiAJCQkJIHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKIHsKIAlzdHJ1Y3QgaW50 ZWxfY3J0YyAqaW50ZWxfY3J0YzsKLQlzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0 ZTsKLQlpbnQgbWF4X3BpeGNsayA9IDA7CisJaW50IG1heF9waXhlbF9yYXRlID0gMDsKKwlib29s IGFueV9hY3RpdmUgPSBmYWxzZTsKIAotCWZvcl9lYWNoX2ludGVsX2NydGMoZGV2LCBpbnRlbF9j cnRjKSB7Ci0JCWNydGNfc3RhdGUgPSBpbnRlbF9hdG9taWNfZ2V0X2NydGNfc3RhdGUoc3RhdGUs IGludGVsX2NydGMpOwotCQlpZiAoSVNfRVJSKGNydGNfc3RhdGUpKQotCQkJcmV0dXJuIFBUUl9F UlIoY3J0Y19zdGF0ZSk7CisJZm9yX2VhY2hfaW50ZWxfY3J0YyhzdGF0ZS0+ZGV2LCBpbnRlbF9j cnRjKSB7CisJCXN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqZHJtX2NydGNfc3RhdGU7CisJCXN0cnVj dCBkcm1fY3J0YyAqY3J0YyA9ICZpbnRlbF9jcnRjLT5iYXNlOworCQlpbnQgcGl4Y2xrID0gMDsK IAotCQlpZiAoIWNydGNfc3RhdGUtPmJhc2UuZW5hYmxlKQotCQkJY29udGludWU7CisJCWRybV9j cnRjX3N0YXRlID0gZHJtX2F0b21pY19nZXRfZXhpc3RpbmdfY3J0Y19zdGF0ZShzdGF0ZSwgY3J0 Yyk7CisJCWlmICghZHJtX2NydGNfc3RhdGUpIHsKKwkJCWFueV9hY3RpdmUgfD0gaW50ZWxfY3J0 Yy0+YWN0aXZlOworCQkJcGl4Y2xrID0gaW50ZWxfY3J0Yy0+bWluX2NkY2xrOworCQl9IGVsc2Ug aWYgKGRybV9jcnRjX3N0YXRlLT5lbmFibGUpIHsKKwkJCXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRl ICpjcnRjX3N0YXRlID0KKwkJCQl0b19pbnRlbF9jcnRjX3N0YXRlKGRybV9jcnRjX3N0YXRlKTsK KworCQkJYW55X2FjdGl2ZSB8PSBkcm1fY3J0Y19zdGF0ZS0+YWN0aXZlOworCQkJcGl4Y2xrID0g Y3J0Y19zdGF0ZS0+YmFzZS5hZGp1c3RlZF9tb2RlLmNydGNfY2xvY2s7CisJCX0KIAotCQltYXhf cGl4Y2xrID0gbWF4KG1heF9waXhjbGssCi0JCQkJIGNydGNfc3RhdGUtPmJhc2UuYWRqdXN0ZWRf bW9kZS5jcnRjX2Nsb2NrKTsKKwkJdG9faW50ZWxfYXRvbWljX3N0YXRlKHN0YXRlKS0+cGlwZV9j ZGNsa1tpbnRlbF9jcnRjLT5waXBlXSA9IHBpeGNsazsKKwkJbWF4X3BpeGVsX3JhdGUgPSBtYXgo bWF4X3BpeGVsX3JhdGUsIHBpeGNsayk7CiAJfQogCi0JcmV0dXJuIG1heF9waXhjbGs7CisJcmV0 dXJuIGFueV9hY3RpdmUgPyBtYXhfcGl4ZWxfcmF0ZSA6IDA7CiB9CiAKIHN0YXRpYyBpbnQgdmFs bGV5dmlld19tb2Rlc2V0X2NhbGNfY2RjbGsoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRl KQpAQCAtOTQ5MSwyOSArOTUwOSwzNSBAQCBzdGF0aWMgdm9pZCBicm94dG9uX21vZGVzZXRfY29t bWl0X2NkY2xrKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpvbGRfc3RhdGUpCiBzdGF0aWMgaW50 IGlsa19tYXhfcGl4ZWxfcmF0ZShzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCiB7CiAJ c3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGM7Ci0Jc3RydWN0IGludGVsX2NydGNfc3RhdGUg KmNydGNfc3RhdGU7CiAJaW50IG1heF9waXhlbF9yYXRlID0gMDsKKwlib29sIGFueV9hY3RpdmUg PSBmYWxzZTsKIAogCWZvcl9lYWNoX2ludGVsX2NydGMoc3RhdGUtPmRldiwgaW50ZWxfY3J0Yykg ewotCQlpbnQgcGl4ZWxfcmF0ZTsKLQotCQljcnRjX3N0YXRlID0gaW50ZWxfYXRvbWljX2dldF9j cnRjX3N0YXRlKHN0YXRlLCBpbnRlbF9jcnRjKTsKLQkJaWYgKElTX0VSUihjcnRjX3N0YXRlKSkK LQkJCXJldHVybiBQVFJfRVJSKGNydGNfc3RhdGUpOworCQlzdHJ1Y3QgZHJtX2NydGNfc3RhdGUg KmRybV9jcnRjX3N0YXRlOworCQlzdHJ1Y3QgZHJtX2NydGMgKmNydGMgPSAmaW50ZWxfY3J0Yy0+ YmFzZTsKKwkJaW50IHBpeGVsX3JhdGUgPSAwOwogCi0JCWlmICghY3J0Y19zdGF0ZS0+YmFzZS5l bmFibGUpCi0JCQljb250aW51ZTsKKwkJZHJtX2NydGNfc3RhdGUgPSBkcm1fYXRvbWljX2dldF9l eGlzdGluZ19jcnRjX3N0YXRlKHN0YXRlLCBjcnRjKTsKKwkJaWYgKCFkcm1fY3J0Y19zdGF0ZSkg eworCQkJYW55X2FjdGl2ZSB8PSBpbnRlbF9jcnRjLT5hY3RpdmU7CisJCQlwaXhlbF9yYXRlID0g aW50ZWxfY3J0Yy0+bWluX2NkY2xrOworCQl9IGVsc2UgaWYgKGRybV9jcnRjX3N0YXRlLT5lbmFi bGUpIHsKKwkJCXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlID0KKwkJCQl0b19p bnRlbF9jcnRjX3N0YXRlKGRybV9jcnRjX3N0YXRlKTsKIAotCQlwaXhlbF9yYXRlID0gaWxrX3Bp cGVfcGl4ZWxfcmF0ZShjcnRjX3N0YXRlKTsKKwkJCWFueV9hY3RpdmUgfD0gZHJtX2NydGNfc3Rh dGUtPmFjdGl2ZTsKKwkJCXBpeGVsX3JhdGUgPSBpbGtfcGlwZV9waXhlbF9yYXRlKGNydGNfc3Rh dGUpOwogCi0JCS8qIHBpeGVsIHJhdGUgbXVzdG4ndCBleGNlZWQgOTUlIG9mIGNkY2xrIHdpdGgg SVBTIG9uIEJEVyAqLwotCQlpZiAoSVNfQlJPQURXRUxMKHN0YXRlLT5kZXYpICYmIGNydGNfc3Rh dGUtPmlwc19lbmFibGVkKQotCQkJcGl4ZWxfcmF0ZSA9IERJVl9ST1VORF9VUChwaXhlbF9yYXRl ICogMTAwLCA5NSk7CisJCQkvKiBwaXhlbCByYXRlIG11c3RuJ3QgZXhjZWVkIDk1JSBvZiBjZGNs ayB3aXRoIElQUyBvbiBCRFcgKi8KKwkJCWlmIChJU19CUk9BRFdFTEwoc3RhdGUtPmRldikgJiYg Y3J0Y19zdGF0ZS0+aXBzX2VuYWJsZWQpCisJCQkJcGl4ZWxfcmF0ZSA9IERJVl9ST1VORF9VUChw aXhlbF9yYXRlICogMTAwLCA5NSk7CisJCX0KIAorCQl0b19pbnRlbF9hdG9taWNfc3RhdGUoc3Rh dGUpLT5waXBlX2NkY2xrW2ludGVsX2NydGMtPnBpcGVdID0gcGl4ZWxfcmF0ZTsKIAkJbWF4X3Bp eGVsX3JhdGUgPSBtYXgobWF4X3BpeGVsX3JhdGUsIHBpeGVsX3JhdGUpOwogCX0KIAotCXJldHVy biBtYXhfcGl4ZWxfcmF0ZTsKKwlyZXR1cm4gYW55X2FjdGl2ZSA/IG1heF9waXhlbF9yYXRlIDog MDsKIH0KIAogc3RhdGljIHZvaWQgYnJvYWR3ZWxsX3NldF9jZGNsayhzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LCBpbnQgY2RjbGspCkBAIC05NjEyLDE0ICs5NjM2LDEwIEBAIHN0YXRpYyBpbnQgYnJv YWR3ZWxsX21vZGVzZXRfY2FsY19jZGNsayhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUp CiAJZWxzZQogCQljZGNsayA9IDMzNzUwMDsKIAotCS8qCi0JICogRklYTUUgbW92ZSB0aGUgY2Rj bGsgY2FjbHVsYXRpb24gdG8KLQkgKiBjb21wdXRlX2NvbmZpZygpIHNvIHdlIGNhbiBmYWlsIGdy YWNlZ3VsbHkuCi0JICovCiAJaWYgKGNkY2xrID4gZGV2X3ByaXYtPm1heF9jZGNsa19mcmVxKSB7 CiAJCURSTV9FUlJPUigicmVxdWVzdGVkIGNkY2xrICglZCBrSHopIGV4Y2VlZHMgbWF4ICglZCBr SHopXG4iLAogCQkJICBjZGNsaywgZGV2X3ByaXYtPm1heF9jZGNsa19mcmVxKTsKLQkJY2RjbGsg PSBkZXZfcHJpdi0+bWF4X2NkY2xrX2ZyZXE7CisJCXJldHVybiAtRUlOVkFMOwogCX0KIAogCXRv X2ludGVsX2F0b21pY19zdGF0ZShzdGF0ZSktPmNkY2xrID0gY2RjbGs7CmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rydi5oCmluZGV4IDUxNzIyZTY1N2I5MS4uNTRhMmMwZGEyZWNlIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kcnYuaApAQCAtMjUwLDYgKzI1MCw3IEBAIHN0cnVjdCBpbnRlbF9hdG9taWNfc3Rh dGUgewogCXVuc2lnbmVkIGludCBjZGNsazsKIAlib29sIGRwbGxfc2V0OwogCXN0cnVjdCBpbnRl bF9zaGFyZWRfZHBsbF9jb25maWcgc2hhcmVkX2RwbGxbSTkxNV9OVU1fUExMU107CisJdW5zaWdu ZWQgaW50IHBpcGVfY2RjbGtbSTkxNV9NQVhfUElQRVNdOwogfTsKIAogc3RydWN0IGludGVsX3Bs YW5lX3N0YXRlIHsKQEAgLTUzNiw4ICs1MzcsMTYgQEAgc3RydWN0IGludGVsX2NydGMgewogCSAq IFdoZXRoZXIgdGhlIGNydGMgYW5kIHRoZSBjb25uZWN0ZWQgb3V0cHV0IHBpcGVsaW5lIGlzIGFj dGl2ZS4gSW1wbGllcwogCSAqIHRoYXQgY3J0Yy0+ZW5hYmxlZCBpcyBzZXQsIGkuZS4gdGhlIGN1 cnJlbnQgbW9kZSBjb25maWd1cmF0aW9uIGhhcwogCSAqIHNvbWUgb3V0cHV0cyBjb25uZWN0ZWQg dG8gdGhpcyBjcnRjLgorCSAqCisJICogUHJvdGVjdGVkIGJ5IGNydGMubXV0ZXggYW5kIGNvbm5l Y3Rpb25fbXV0ZXgKIAkgKi8KIAlib29sIGFjdGl2ZTsKKworCS8qIE1pbmltdW0gY2RjbGsgcmVx dWlyZWQgZm9yIHRoaXMgcGlwZSwKKwkgKiBwcm90ZWN0ZWQgYnkgY3J0Yy5tdXRleCBhbmQgY29u bmVjdGlvbl9tdXRleC4KKwkgKi8KKwl1bnNpZ25lZCBpbnQgbWluX2NkY2xrOworCiAJdW5zaWdu ZWQgbG9uZyBlbmFibGVkX3Bvd2VyX2RvbWFpbnM7CiAJYm9vbCBsb3dmcmVxX2F2YWlsOwogCXN0 cnVjdCBpbnRlbF9vdmVybGF5ICpvdmVybGF5OwotLSAKMi4xLjAKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50 ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==