From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH v2 2/2] drm/i915: Wait for pending modesets to complete before trying link training, v2. Date: Wed, 14 Jun 2017 11:08:42 +0200 Message-ID: <20170614090842.9669-2-maarten.lankhorst@linux.intel.com> References: <20170614090842.9669-1-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170614090842.9669-1-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 Cc: dri-devel@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org VGhlIG5vbmJsb2NraW5nIG1vZGVzZXQgdGVzdHMgd2VyZSBmYWlsaW5nIG9uIHN5c3RlbXMgd2l0 aCBhIERQIG91dHB1dCwKYmVjYXVzZSBsaWpuayB0cmFpbmluZyBjb3VsZCBvY2N1ciBkdXJpbmcg dGhlIG1vZGVzZXQuCgpXaXRoIG5vcm1hbCBtb2Rlc2V0cyB3ZSdyZSBwcm90ZWN0ZWQgYnkgdGhl IGNvbm5lY3Rpb25fbXV0ZXggbG9jaywKYnV0IG5vbmJsb2NraW5nIG1vZGVzZXRzIGRyb3AgbG9j a3MgYmVmb3JlIGNvbXBsZXRpbmcuIFRvIGdldCBhcm91bmQKdGhhdCwgY2hlY2sgaWYgdGhlIG1v c3QgcmVjZW50IGNydGNfc3RhdGUgaGFzIGEgbW9kZXNldCwgYW5kIGlmIHRoaXMKaXMgdGhlIGNh c2UsIHdhaXQgZm9yIGFsbCBvdXRzdGFuZGluZyBhdG9taWMgdXBkYXRlcyBvbiB0aGF0IGNydGMK dG8gY29tcGxldGUuCgpUaGlzIGZpeGVzIHRoZSBmb2xsb3dpbmcgc3BldyB3aGVuIHJ1bm5pbmcg bm9uYmxvY2tpbmcgdGVzdHM6ClsgMTA2MS42NTM3NzhdIC0tLS0tLS0tLS0tLVsgY3V0IGhlcmUg XS0tLS0tLS0tLS0tLQpbIDEwNjEuNjUzNzgxXSBXQVJOSU5HOiBDUFU6IDEgUElEOiA4MTY1IGF0 CmRyaXZlcnMvZ3B1L2RybS9kcm1faXJxLmM6MTIxNyBkcm1fd2FpdF9vbmVfdmJsYW5rKzB4MTY1 LzB4MWEwClsgMTA2MS42NTM3ODJdIHZibGFuayBub3QgYXZhaWxhYmxlIG9uIGNydGMgMCwgcmV0 PS0yMgpbIDEwNjEuNjUzNzgzXSBNb2R1bGVzIGxpbmtlZCBpbjogdmdlbSBzbmRfaGRhX2ludGVs IGk5MTUKc25kX2hkYV9jb2RlY19oZG1pIHNuZF9oZGFfY29kZWNfcmVhbHRlayBzbmRfaGRhX2Nv ZGVjX2dlbmVyaWMKeDg2X3BrZ190ZW1wX3RoZXJtYWwgaW50ZWxfcG93ZXJjbGFtcCBjb3JldGVt cCBjcmN0MTBkaWZfcGNsbXVsCmNyYzMyX3BjbG11bCBnaGFzaF9jbG11bG5pX2ludGVsIHNuZF9o ZGFfY29kZWMgc25kX2h3ZGVwIHNuZF9oZGFfY29yZQpzbmRfcGNtIG1laV9tZSBtZWkgZTEwMDBl IHB0cCBwcHNfY29yZSBpMmNfaGlkIFtsYXN0IHVubG9hZGVkOiB2Z2VtXQpbIDEwNjEuNjUzNzk2 XSBDUFU6IDEgUElEOiA4MTY1IENvbW06IGt3b3JrZXIvMTozIFRhaW50ZWQ6IEcgICAgIFUgIFcK NC4xMC4wLXJjMS1DSS1DdXN0b21fMTE0KyAjMQpbIDEwNjEuNjUzNzk3XSBIYXJkd2FyZSBuYW1l OiBHSUdBQllURSBHQi1CS2k1QS03MjAwL01GTFA1QVAtMDAsIEJJT1MgRjEKMDcvMjcvMjAxNgpb IDEwNjEuNjUzODEyXSBXb3JrcXVldWU6IGV2ZW50cyBpOTE1X2hwZF9wb2xsX2luaXRfd29yayBb aTkxNV0KWyAxMDYxLjY1MzgxM10gQ2FsbCBUcmFjZToKWyAxMDYxLjY1MzgxNl0gIGR1bXBfc3Rh Y2srMHg2Ny8weDkyClsgMTA2MS42NTM4MThdICBfX3dhcm4rMHhjNi8weGUwClsgMTA2MS42NTM4 MTldICB3YXJuX3Nsb3dwYXRoX2ZtdCsweDRhLzB4NTAKWyAxMDYxLjY1MzgyMF0gID8gZHJtX3Zi bGFua19nZXQrMHg3NC8weGMwClsgMTA2MS42NTM4MjFdICBkcm1fd2FpdF9vbmVfdmJsYW5rKzB4 MTY1LzB4MWEwClsgMTA2MS42NTM4MjNdICA/IGRybV9kcF9kcGNkX3dyaXRlKzB4MTYvMHgyMApb IDEwNjEuNjUzODM3XSAgPyBpbnRlbF9kcF9zZXRfbGlua190cmFpbisweDQ0LzB4ZTAgW2k5MTVd ClsgMTA2MS42NTM4NTFdICBpbnRlbF9kcF9jaGVja19saW5rX3N0YXR1cysweDExMy8weDFhMCBb aTkxNV0KWyAxMDYxLjY1Mzg2NF0gIGludGVsX2RwX2RldGVjdCsweDVhMS8weGE0MCBbaTkxNV0K WyAxMDYxLjY1Mzg2Nl0gIGRybV9oZWxwZXJfaHBkX2lycV9ldmVudCsweDhkLzB4MTEwClsgMTA2 MS42NTM4ODBdICBpOTE1X2hwZF9wb2xsX2luaXRfd29yaysweGFiLzB4ZDAgW2k5MTVdClsgMTA2 MS42NTM4ODJdICBwcm9jZXNzX29uZV93b3JrKzB4MWY0LzB4NmQwClsgMTA2MS42NTM4ODNdICA/ IHByb2Nlc3Nfb25lX3dvcmsrMHgxNmUvMHg2ZDAKWyAxMDYxLjY1Mzg4NV0gIHdvcmtlcl90aHJl YWQrMHg0OS8weDRhMApbIDEwNjEuNjUzODg2XSAga3RocmVhZCsweDEwNy8weDE0MApbIDEwNjEu NjUzODg4XSAgPyBwcm9jZXNzX29uZV93b3JrKzB4NmQwLzB4NmQwClsgMTA2MS42NTM4ODldICA/ IGt0aHJlYWRfY3JlYXRlX29uX25vZGUrMHg0MC8weDQwClsgMTA2MS42NTM4OTFdICByZXRfZnJv bV9mb3JrKzB4MjcvMHg0MApbIDEwNjEuNjUzODkyXSAtLS1bIGVuZCB0cmFjZSBmNjAzNzYxODY2 OGQ0Y2JjIF0tLS0KWyAxMDYxLjY1NjM1M10gW2RybTppbnRlbF9kcF9zZXRfaWRsZV9saW5rX3Ry YWluIFtpOTE1XV0gKkVSUk9SKiBUaW1lZCBvdXQgd2FpdGluZyBmb3IgRFAgaWRsZSBwYXR0ZXJu cwoKQ2hhbmdlcyBzaW5jZSB2MToKLSBpbnRlbF9kcF9kZXRlY3QoKSBub3cgaG9sZHMgY29ubmVj dGlvbl9tdXRleCBhbmQgaGFzIGFuIGFjcXVpcmVfY3R4LAogIHJld3JpdGUgcGF0Y2ggdG8gdGFr ZSBhZHZhbnRhZ2Ugb2YgaXQuCgpTaWduZWQtb2ZmLWJ5OiBNYWFydGVuIExhbmtob3JzdCA8bWFh cnRlbi5sYW5raG9yc3RAbGludXguaW50ZWwuY29tPgpCdWd6aWxsYTogaHR0cHM6Ly9idWdzLmZy ZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTkyNzIKVGVzdGNhc2U6IGttc19hdG9taWNf dHJhbnNpdGlvbnMuMXgtbW9kZXNldC10cmFuc2l0aW9ucy1ub25ibG9ja2luZwotLS0KIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMgfCA3MiArKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDYwIGluc2VydGlvbnMoKyksIDEyIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jCmluZGV4IDY0ZmE3NzRjODU1Yi4uYzdh NjY4ODNlNDUzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKQEAgLTQyNDMsMjEgKzQyNDMsMzIg QEAgc3RhdGljIHZvaWQKIGludGVsX2RwX2NoZWNrX2xpbmtfc3RhdHVzKHN0cnVjdCBpbnRlbF9k cCAqaW50ZWxfZHApCiB7CiAJc3RydWN0IGludGVsX2VuY29kZXIgKmludGVsX2VuY29kZXIgPSAm ZHBfdG9fZGlnX3BvcnQoaW50ZWxfZHApLT5iYXNlOwotCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYg PSBpbnRlbF9kcF90b19kZXYoaW50ZWxfZHApOwogCXU4IGxpbmtfc3RhdHVzW0RQX0xJTktfU1RB VFVTX1NJWkVdOworCXN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmludGVsX2Nvbm5lY3RvciA9IGlu dGVsX2RwLT5hdHRhY2hlZF9jb25uZWN0b3I7CisJc3RydWN0IGRybV9jcnRjICpjcnRjOwogCi0J V0FSTl9PTighZHJtX21vZGVzZXRfaXNfbG9ja2VkKCZkZXYtPm1vZGVfY29uZmlnLmNvbm5lY3Rp b25fbXV0ZXgpKTsKLQotCWlmICghaW50ZWxfZHBfZ2V0X2xpbmtfc3RhdHVzKGludGVsX2RwLCBs aW5rX3N0YXR1cykpIHsKLQkJRFJNX0VSUk9SKCJGYWlsZWQgdG8gZ2V0IGxpbmsgc3RhdHVzXG4i KTsKKwljcnRjID0gaW50ZWxfY29ubmVjdG9yLT5iYXNlLnN0YXRlLT5jcnRjOworCWlmICghY3J0 YykKIAkJcmV0dXJuOwotCX0KIAotCWlmICghaW50ZWxfZW5jb2Rlci0+YmFzZS5jcnRjKQorCVdB Uk5fT04oIWRybV9tb2Rlc2V0X2lzX2xvY2tlZCgmY3J0Yy0+bXV0ZXgpKTsKKworCWlmICghY3J0 Yy0+c3RhdGUtPmFjdGl2ZSkKIAkJcmV0dXJuOwogCi0JaWYgKCF0b19pbnRlbF9jcnRjKGludGVs X2VuY29kZXItPmJhc2UuY3J0YyktPmFjdGl2ZSkKKwlpZiAoZHJtX2F0b21pY19jcnRjX25lZWRz X21vZGVzZXQoY3J0Yy0+c3RhdGUpKSB7CisJCWludCByZXQ7CisKKwkJLyogd2FpdCBmb3IgYXRv bWljIG1vZGVzZXQgdG8gY29tcGxldGUgKi8KKwkJcmV0ID0gZHJtX2F0b21pY19oZWxwZXJfd2Fp dF9mb3JfaHdfZG9uZShjcnRjKTsKKwkJaWYgKHJldCA8IDApCisJCQlEUk1fRVJST1IoIldhaXRp bmcgZm9yIGh3X2RvbmUgdGltZWQgb3V0XG4iKTsKKwl9CisKKwlpZiAoIWludGVsX2RwX2dldF9s aW5rX3N0YXR1cyhpbnRlbF9kcCwgbGlua19zdGF0dXMpKSB7CisJCURSTV9FUlJPUigiRmFpbGVk IHRvIGdldCBsaW5rIHN0YXR1c1xuIik7CiAJCXJldHVybjsKKwl9CiAKIAkvKgogCSAqIFZhbGlk YXRlIHRoZSBjYWNoZWQgdmFsdWVzIG9mIGludGVsX2RwLT5saW5rX3JhdGUgYW5kCkBAIC00Mjkx LDcgKzQzMDIsNiBAQCBpbnRlbF9kcF9jaGVja19saW5rX3N0YXR1cyhzdHJ1Y3QgaW50ZWxfZHAg KmludGVsX2RwKQogc3RhdGljIGJvb2wKIGludGVsX2RwX3Nob3J0X3B1bHNlKHN0cnVjdCBpbnRl bF9kcCAqaW50ZWxfZHApCiB7Ci0Jc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGludGVsX2RwX3Rv X2RldihpbnRlbF9kcCk7CiAJc3RydWN0IGludGVsX2VuY29kZXIgKmludGVsX2VuY29kZXIgPSAm ZHBfdG9fZGlnX3BvcnQoaW50ZWxfZHApLT5iYXNlOwogCXU4IHNpbmtfaXJxX3ZlY3RvciA9IDA7 CiAJdTggb2xkX3NpbmtfY291bnQgPSBpbnRlbF9kcC0+c2lua19jb3VudDsKQEAgLTQzMzEsOSAr NDM0MSw4IEBAIGludGVsX2RwX3Nob3J0X3B1bHNlKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAp CiAJCQlEUk1fREVCVUdfRFJJVkVSKCJDUCBvciBzaW5rIHNwZWNpZmljIGlycSB1bmhhbmRsZWRc biIpOwogCX0KIAotCWRybV9tb2Rlc2V0X2xvY2soJmRldi0+bW9kZV9jb25maWcuY29ubmVjdGlv bl9tdXRleCwgTlVMTCk7CiAJaW50ZWxfZHBfY2hlY2tfbGlua19zdGF0dXMoaW50ZWxfZHApOwot CWRybV9tb2Rlc2V0X3VubG9jaygmZGV2LT5tb2RlX2NvbmZpZy5jb25uZWN0aW9uX211dGV4KTsK KwogCWlmIChpbnRlbF9kcC0+Y29tcGxpYW5jZS50ZXN0X3R5cGUgPT0gRFBfVEVTVF9MSU5LX1RS QUlOSU5HKSB7CiAJCURSTV9ERUJVR19LTVMoIkxpbmsgVHJhaW5pbmcgQ29tcGxpYW5jZSBUZXN0 IHJlcXVlc3RlZFxuIik7CiAJCS8qIFNlbmQgYSBIb3RwbHVnIFVldmVudCB0byB1c2Vyc3BhY2Ug dG8gc3RhcnQgbW9kZXNldCAqLwpAQCAtNDczNSw4ICs0NzQ0LDE5IEBAIGludGVsX2RwX2RldGVj dChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAogCQkgICAgICBjb25uZWN0b3ItPmJh c2UuaWQsIGNvbm5lY3Rvci0+bmFtZSk7CiAKIAkvKiBJZiBmdWxsIGRldGVjdCBpcyBub3QgcGVy Zm9ybWVkIHlldCwgZG8gYSBmdWxsIGRldGVjdCAqLwotCWlmICghaW50ZWxfZHAtPmRldGVjdF9k b25lKQorCWlmICghaW50ZWxfZHAtPmRldGVjdF9kb25lKSB7CisJCXN0cnVjdCBkcm1fY3J0YyAq Y3J0YzsKKwkJaW50IHJldDsKKworCQljcnRjID0gY29ubmVjdG9yLT5zdGF0ZS0+Y3J0YzsKKwkJ aWYgKGNydGMpIHsKKwkJCXJldCA9IGRybV9tb2Rlc2V0X2xvY2soJmNydGMtPm11dGV4LCBjdHgp OworCQkJaWYgKHJldCkKKwkJCQlyZXR1cm4gcmV0OworCQl9CisKIAkJc3RhdHVzID0gaW50ZWxf ZHBfbG9uZ19wdWxzZShpbnRlbF9kcC0+YXR0YWNoZWRfY29ubmVjdG9yKTsKKwl9CiAKIAlpbnRl bF9kcC0+ZGV0ZWN0X2RvbmUgPSBmYWxzZTsKIApAQCAtNTAyOCwxMCArNTA0OCwzOCBAQCBpbnRl bF9kcF9ocGRfcHVsc2Uoc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQs IGJvb2wgbG9uZ19ocGQpCiAJfQogCiAJaWYgKCFpbnRlbF9kcC0+aXNfbXN0KSB7CisJCXN0cnVj dCBkcm1fbW9kZXNldF9hY3F1aXJlX2N0eCBjdHg7CisJCXN0cnVjdCBkcm1fY29ubmVjdG9yICpj b25uZWN0b3IgPSAmaW50ZWxfZHAtPmF0dGFjaGVkX2Nvbm5lY3Rvci0+YmFzZTsKKwkJc3RydWN0 IGRybV9jcnRjICpjcnRjOworCQlpbnQgaXJldDsKKworCQlkcm1fbW9kZXNldF9hY3F1aXJlX2lu aXQoJmN0eCwgMCk7CityZXRyeToKKwkJaXJldCA9IGRybV9tb2Rlc2V0X2xvY2soJmRldi0+bW9k ZV9jb25maWcuY29ubmVjdGlvbl9tdXRleCwgJmN0eCk7CisJCWlmIChpcmV0KQorCQkJZ290byBl cnI7CisKKwkJY3J0YyA9IGNvbm5lY3Rvci0+c3RhdGUtPmNydGM7CisJCWlmIChjcnRjKSB7CisJ CQlpcmV0ID0gZHJtX21vZGVzZXRfbG9jaygmY3J0Yy0+bXV0ZXgsICZjdHgpOworCQkJaWYgKGly ZXQpCisJCQkJZ290byBlcnI7CisJCX0KKwogCQlpZiAoIWludGVsX2RwX3Nob3J0X3B1bHNlKGlu dGVsX2RwKSkgewogCQkJaW50ZWxfZHAtPmRldGVjdF9kb25lID0gZmFsc2U7CiAJCQlnb3RvIHB1 dF9wb3dlcjsKIAkJfQorCitlcnI6CisJCWlmIChpcmV0ID09IC1FREVBRExLKSB7CisJCQlkcm1f bW9kZXNldF9iYWNrb2ZmKCZjdHgpOworCQkJZ290byByZXRyeTsKKwkJfQorCisJCWRybV9tb2Rl c2V0X2Ryb3BfbG9ja3MoJmN0eCk7CisJCWRybV9tb2Rlc2V0X2FjcXVpcmVfZmluaSgmY3R4KTsK KwkJV0FSTihpcmV0LCAiQWNxdWlyaW5nIG1vZGVzZXQgbG9ja3MgZmFpbGVkIHdpdGggJWlcbiIs IGlyZXQpOwogCX0KIAogCXJldCA9IElSUV9IQU5ETEVEOwotLSAKMi4xMS4wCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBs aXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK