From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Jos=C3=A9=20Roberto=20de=20Souza?= Subject: [PATCH] drm/i915/icl: Delay hotplug sequence for TC ports Date: Wed, 23 Jan 2019 10:51:35 -0800 Message-ID: <20190123185135.19451-1-jose.souza@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1CDE16E530 for ; Wed, 23 Jan 2019 18:51:40 +0000 (UTC) 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 U29tZSB1bnBvd2VyZWQgVVNCIHR5cGUtYyBkb25nbGVzIHJlcXVpcmVzIHNvbWUgdGltZSB0byBw b3dlciBvbgpiZWZvcmUgYmVpbmcgYWJsZSB0byBwcm9jZXNzIGF1eCBjaGFubmVsIHRyYW5zYWN0 aW9ucy4KCkl0IHdhcyBub3QgYSBwcm9ibGVtIGZvciBvbGRlciBwbGF0Zm9ybXMgYmVjYXVzZSB0 aGVyZSB3YXMgYSBoYXJkd2FyZQpicmlkZ2UgYmV0d2VlbiBEREkvRFAgcG9ydHMgYW5kIHR5cGUt YyBjb250cm9sbGVyIGFkZGluZyBhIGltcGxpY2l0CmRlbGF5IHRoYXQgaGlkIHRoaXMgaXNzdWUg YnV0IElDTCBoYXZlIHR5cGUtYyBjb250cm9sbGVycyBpbnRlZ3JhdGVkCnRvIHRoZSBTT0MsIGNh dXNpbmcgc2lua3MgdG8gbm90IGJlIGRldGVjdGVkLgoKU28gaGVyZSBpdCB0ZXN0IGlmIERQIHR5 cGUtYyBwb3J0IGlzIHJlc3BvbnNpdmUgYmVmb3JlIHByb2NlZWQgd2l0aApob3RwbHVnIHNlcXVl bmNlLCBpdCB0cnkgNSB0aW1lcyB3aXRoIGEgMTUwbXMgb2YgZGVsYXkgYmV0d2VlbiB0cmllcwpi ZWZvcmUgZ2l2aW5nIHVwLgoKSWYgdW5wb3dlcmVkIFRCVCBkb25nbGVzIHNob3dzIHVwIGluIHRo ZSBtYXJrZXQgdGhpcyBhcHByb2FjaCBzaG91bGQKYmUgZXh0ZW5kZWQgdG8gVEJUIHBvcnRzIHRv by4KClNpZ25lZC1vZmYtYnk6IEpvc8OpIFJvYmVydG8gZGUgU291emEgPGpvc2Uuc291emFAaW50 ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggICAgICB8ICAgMSAr CiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYyAgICAgfCAgIDQgKwogZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgIHwgICAyICsKIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2hvdHBsdWcuYyB8IDEwOCArKysrKysrKysrKysrKysrKysrKysrKysrKysKIDQgZmls ZXMgY2hhbmdlZCwgMTE1IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRl eCAwM2RiMDExY2FhOGUuLjNmZDhjM2ZhNjUxNSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCkBA IC0yNjM5LDYgKzI2MzksNyBAQCBlbnVtIGhwZF9waW4gaW50ZWxfaHBkX3Bpbl9kZWZhdWx0KHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAkJCQkgICBlbnVtIHBvcnQgcG9ydCk7 CiBib29sIGludGVsX2hwZF9kaXNhYmxlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diwgZW51bSBocGRfcGluIHBpbik7CiB2b2lkIGludGVsX2hwZF9lbmFibGUoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2LCBlbnVtIGhwZF9waW4gcGluKTsKK3ZvaWQgaW50ZWxfaG90 cGx1Z190Y193YV93b3JrKHN0cnVjdCB3b3JrX3N0cnVjdCAqd29yayk7CiAKIC8qIGk5MTVfaXJx LmMgKi8KIHN0YXRpYyBpbmxpbmUgdm9pZCBpOTE1X3F1ZXVlX2hhbmdjaGVjayhzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kZGkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCmluZGV4IGIw YmI4ZGZjMmVkNS4uMmMxNDk4NDNjYWNmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kZGkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYwpAQCAt NDI1OCw2ICs0MjU4LDEwIEBAIHZvaWQgaW50ZWxfZGRpX2luaXQoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2LCBlbnVtIHBvcnQgcG9ydCkKIAkJCWdvdG8gZXJyOwogCiAJCWludGVs X2RpZ19wb3J0LT5ocGRfcHVsc2UgPSBpbnRlbF9kcF9ocGRfcHVsc2U7CisKKwkJaWYgKElTX0lD RUxBS0UoZGV2X3ByaXYpICYmIGludGVsX3BvcnRfaXNfdGMoZGV2X3ByaXYsIHBvcnQpKQorCQkJ SU5JVF9ERUxBWUVEX1dPUksoJmludGVsX2RpZ19wb3J0LT50Y193YV93b3JrLAorCQkJCQkgIGlu dGVsX2hvdHBsdWdfdGNfd2Ffd29yayk7CiAJfQogCiAJLyogSW4gdGhlb3J5IHdlIGRvbid0IG5l ZWQgdGhlIGVuY29kZXItPnR5cGUgY2hlY2ssIGJ1dCBsZWF2ZSBpdCBqdXN0IGluCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2Rydi5oCmluZGV4IDMzYjczM2QzNzcwNi4uZmJiNmY3OGNlNzMzIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kcnYuaApAQCAtMTI0Miw2ICsxMjQyLDggQEAgc3RydWN0IGludGVsX2Rp Z2l0YWxfcG9ydCB7CiAJZW51bSBpbnRlbF9kaXNwbGF5X3Bvd2VyX2RvbWFpbiBkZGlfaW9fcG93 ZXJfZG9tYWluOwogCWJvb2wgdGNfbGVnYWN5X3BvcnQ6MTsKIAllbnVtIHRjX3BvcnRfdHlwZSB0 Y190eXBlOworCXN0cnVjdCBkZWxheWVkX3dvcmsgdGNfd2Ffd29yazsKKwl1OCB0Y193YV9jb3Vu dDsKIAogCXZvaWQgKCp3cml0ZV9pbmZvZnJhbWUpKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNv ZGVyLAogCQkJCWNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLApkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaG90cGx1Zy5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfaG90cGx1Zy5jCmluZGV4IGUwMjdkMmI0YWJlNS4uOTgzOGI2MGU4 ZjYzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ob3RwbHVnLmMKKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaG90cGx1Zy5jCkBAIC0zNDIsNiArMzQyLDc0 IEBAIHN0YXRpYyB2b2lkIGk5MTVfZGlncG9ydF93b3JrX2Z1bmMoc3RydWN0IHdvcmtfc3RydWN0 ICp3b3JrKQogCX0KIH0KIAorI2RlZmluZSBUQ19XQV9ERUxBWV9NU0VDIDE1MAorI2RlZmluZSBU Q19XQV9UUklFUyA1CisKKy8qCisgKiBUZXN0IGlmIHR5cGUtYyBkb25nbGUgaXMgcmVzcG9uc2l2 ZSByZXR1cm4gdHJ1ZSBpZiBzbyBvdGhlcndpc2Ugc2NoZWR1bGUgYQorICogd29yayB0byB0cnkg YWdhaW4gYW5kIHJldHVybiBmYWxzZS4KKyAqLworc3RhdGljIGJvb2wgaW50ZWxfaG90cGx1Z190 Y193YV90ZXN0KHN0cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQgKmRpZ19wb3J0KQoreworCXN0cnVj dCBpbnRlbF9kcCAqaW50ZWxfZHAgPSAmZGlnX3BvcnQtPmRwOworCXU4IGJ1ZmZlcjsKKworCWRp Z19wb3J0LT50Y193YV9jb3VudCsrOworCisJaWYgKGRybV9kcF9kcGNkX3JlYWQoJmludGVsX2Rw LT5hdXgsIERQX0RQQ0RfUkVWLCAmYnVmZmVyLCAxKSAhPSAxKQorCQlnb3RvIG5vdF9yZXNwb25z aXZlOworCisJaWYgKCFkcm1fcHJvYmVfZGRjKCZpbnRlbF9kcC0+YXV4LmRkYykpCisJCWdvdG8g bm90X3Jlc3BvbnNpdmU7CisKKwlyZXR1cm4gdHJ1ZTsKKworbm90X3Jlc3BvbnNpdmU6CisJaWYg KGRpZ19wb3J0LT50Y193YV9jb3VudCA8IFRDX1dBX1RSSUVTKSB7CisJCWNvbnN0IHVuc2lnbmVk IGxvbmcgZGVsYXkgPSBtc2Vjc190b19qaWZmaWVzKFRDX1dBX0RFTEFZX01TRUMpOworCisJCXNj aGVkdWxlX2RlbGF5ZWRfd29yaygmZGlnX3BvcnQtPnRjX3dhX3dvcmssIGRlbGF5KTsKKwl9IGVs c2UgeworCQlEUk1fREVCVUdfS01TKCJUQyBwb3J0IG5vdCByZXNwb25zaXZlLCBnaXZpbmcgdXBc biIpOworCX0KKworCXJldHVybiBmYWxzZTsKK30KKwordm9pZCBpbnRlbF9ob3RwbHVnX3RjX3dh X3dvcmsoc3RydWN0IHdvcmtfc3RydWN0ICp3b3JrKQoreworCXN0cnVjdCBkZWxheWVkX3dvcmsg KmRlbGF5ZWRfd29yayA9IHRvX2RlbGF5ZWRfd29yayh3b3JrKTsKKwlzdHJ1Y3QgaW50ZWxfZGln aXRhbF9wb3J0ICpkaWdfcG9ydCA9IGNvbnRhaW5lcl9vZihkZWxheWVkX3dvcmssCisJCQkJCQkJ ICAgc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCwKKwkJCQkJCQkgICB0Y193YV93b3JrKTsKKwlz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRpZ19wb3J0LT5iYXNl LmJhc2UuZGV2KTsKKwlzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqaW50ZWxfZW5jb2RlciA9ICZkaWdf cG9ydC0+YmFzZTsKKwlzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwID0gJmRpZ19wb3J0LT5kcDsK KwlzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICppbnRlbF9jb25uZWN0b3IgPSBpbnRlbF9kcC0+YXR0 YWNoZWRfY29ubmVjdG9yOworCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSAmZGV2X3ByaXYtPmRy bTsKKwlpbnRlbF93YWtlcmVmX3Qgd2FrZXJlZjsKKwlib29sIHJldDsKKworCXdha2VyZWYgPSBp bnRlbF9ydW50aW1lX3BtX2dldChkZXZfcHJpdik7CisKKwlpZiAoIWludGVsX2RpZ2l0YWxfcG9y dF9jb25uZWN0ZWQoaW50ZWxfZW5jb2RlcikgfHwKKwkgICAgZGlnX3BvcnQtPnRjX3R5cGUgIT0g VENfUE9SVF9UWVBFQykgeworCQlpbnRlbF9ydW50aW1lX3BtX3B1dChkZXZfcHJpdiwgd2FrZXJl Zik7CisJCXJldHVybjsKKwl9CisKKwltdXRleF9sb2NrKCZkZXYtPm1vZGVfY29uZmlnLm11dGV4 KTsKKwlyZXQgPSBpbnRlbF9ob3RwbHVnX3RjX3dhX3Rlc3QoZGlnX3BvcnQpOworCWlmIChyZXQp CisJCXJldCA9IGludGVsX2VuY29kZXItPmhvdHBsdWcoaW50ZWxfZW5jb2RlciwgaW50ZWxfY29u bmVjdG9yKTsKKwltdXRleF91bmxvY2soJmRldi0+bW9kZV9jb25maWcubXV0ZXgpOworCisJaWYg KHJldCkKKwkJZHJtX2ttc19oZWxwZXJfaG90cGx1Z19ldmVudChkZXYpOworCisJaW50ZWxfcnVu dGltZV9wbV9wdXQoZGV2X3ByaXYsIHdha2VyZWYpOworfQorCiAvKgogICogSGFuZGxlIGhvdHBs dWcgZXZlbnRzIG91dHNpZGUgdGhlIGludGVycnVwdCBoYW5kbGVyIHByb3Blci4KICAqLwpAQCAt Mzc3LDkgKzQ0NSwzNyBAQCBzdGF0aWMgdm9pZCBpOTE1X2hvdHBsdWdfd29ya19mdW5jKHN0cnVj dCB3b3JrX3N0cnVjdCAqd29yaykKIAkJCWNvbnRpbnVlOwogCQlpbnRlbF9lbmNvZGVyID0gaW50 ZWxfY29ubmVjdG9yLT5lbmNvZGVyOwogCQlpZiAoaHBkX2V2ZW50X2JpdHMgJiAoMSA8PCBpbnRl bF9lbmNvZGVyLT5ocGRfcGluKSkgeworCQkJc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqZGln X3BvcnQgPSBlbmNfdG9fZGlnX3BvcnQoJmludGVsX2VuY29kZXItPmJhc2UpOworCiAJCQlEUk1f REVCVUdfS01TKCJDb25uZWN0b3IgJXMgKHBpbiAlaSkgcmVjZWl2ZWQgaG90cGx1ZyBldmVudC5c biIsCiAJCQkJICAgICAgY29ubmVjdG9yLT5uYW1lLCBpbnRlbF9lbmNvZGVyLT5ocGRfcGluKTsK IAorCQkJLyoKKwkJCSAqIFR5cGUtQyBkb25nbGVzIFdBOiBVbnBvd2VyZWQgdHlwZS1DIGRvbmds ZXMgY2FuIHRha2UKKwkJCSAqIHNvbWUgdGltZSB0byBiZSByZXNwb25zaWJsZSwgc28gbGV0J3Mg dHJ5IHRvIGRvIGEKKwkJCSAqIERQQ0QgcmVhZCB0byBjaGVjayBpZiBpdCBpcyByZWFkeSwgb3Ro ZXJ3aXNlIHNraXAKKwkJCSAqIHRoZSBjYWxsIHRvIHRoZSBob3RwbHVnIGNhbGxiYWNrIGFuZCBz Y2hlZHVsZSBhIHdvcmsKKwkJCSAqIHRvIHRyeSBhIERQQ0QgcmVhZCBhZ2FpbiBhZnRlciBhIGZl dyBtaWNyby1zZWNvbmRzLgorCQkJICovCisJCQlpZiAoSVNfSUNFTEFLRShkZXZfcHJpdikgJiYK KwkJCSAgICBpbnRlbF9wb3J0X2lzX3RjKGRldl9wcml2LCBpbnRlbF9lbmNvZGVyLT5wb3J0KSkg eworCQkJCWludGVsX3dha2VyZWZfdCB3YWtlcmVmOworCQkJCWJvb2wgc2tpcF9ob3RwbHVnID0g ZmFsc2U7CisKKwkJCQl3YWtlcmVmID0gaW50ZWxfcnVudGltZV9wbV9nZXQoZGV2X3ByaXYpOwor CisJCQkJaWYgKGludGVsX2RpZ2l0YWxfcG9ydF9jb25uZWN0ZWQoaW50ZWxfZW5jb2RlcikgJiYK KwkJCQkgICAgZGlnX3BvcnQtPnRjX3R5cGUgPT0gVENfUE9SVF9UWVBFQykgeworCQkJCQlkaWdf cG9ydC0+dGNfd2FfY291bnQgPSAwOworCQkJCQlza2lwX2hvdHBsdWcgPSAhaW50ZWxfaG90cGx1 Z190Y193YV90ZXN0KGRpZ19wb3J0KTsKKwkJCQl9CisKKwkJCQlpbnRlbF9ydW50aW1lX3BtX3B1 dChkZXZfcHJpdiwgd2FrZXJlZik7CisKKwkJCQlpZiAoc2tpcF9ob3RwbHVnKQorCQkJCQljb250 aW51ZTsKKwkJCX0KKwogCQkJY2hhbmdlZCB8PSBpbnRlbF9lbmNvZGVyLT5ob3RwbHVnKGludGVs X2VuY29kZXIsCiAJCQkJCQkJICBpbnRlbF9jb25uZWN0b3IpOwogCQl9CkBAIC02NDQsNiArNzQw LDggQEAgdm9pZCBpbnRlbF9ocGRfaW5pdF93b3JrKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdikKIAogdm9pZCBpbnRlbF9ocGRfY2FuY2VsX3dvcmsoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2KQogeworCXN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyOworCiAJ c3Bpbl9sb2NrX2lycSgmZGV2X3ByaXYtPmlycV9sb2NrKTsKIAogCWRldl9wcml2LT5ob3RwbHVn LmxvbmdfcG9ydF9tYXNrID0gMDsKQEAgLTY1Niw2ICs3NTQsMTYgQEAgdm9pZCBpbnRlbF9ocGRf Y2FuY2VsX3dvcmsoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCWNhbmNlbF93 b3JrX3N5bmMoJmRldl9wcml2LT5ob3RwbHVnLmhvdHBsdWdfd29yayk7CiAJY2FuY2VsX3dvcmtf c3luYygmZGV2X3ByaXYtPmhvdHBsdWcucG9sbF9pbml0X3dvcmspOwogCWNhbmNlbF9kZWxheWVk X3dvcmtfc3luYygmZGV2X3ByaXYtPmhvdHBsdWcucmVlbmFibGVfd29yayk7CisKKwlmb3JfZWFj aF9pbnRlbF9lbmNvZGVyKCZkZXZfcHJpdi0+ZHJtLCBlbmNvZGVyKSB7CisJCXN0cnVjdCBpbnRl bF9kaWdpdGFsX3BvcnQgKmRpZ19wb3J0OworCisJCWRpZ19wb3J0ID0gZW5jX3RvX2RpZ19wb3J0 KCZlbmNvZGVyLT5iYXNlKTsKKwkJLyogdGNfd2Ffd29yayBpcyBvbmx5IGluaXRpYWxpemVkIGZv ciBUQyB3aXRoIERQIHBvcnRzICovCisJCWlmIChJU19JQ0VMQUtFKGRldl9wcml2KSAmJiBkaWdf cG9ydCAmJiBkaWdfcG9ydC0+aHBkX3B1bHNlKQorCQkJY2FuY2VsX2RlbGF5ZWRfd29ya19zeW5j KCZkaWdfcG9ydC0+dGNfd2Ffd29yayk7CisJfQorCiB9CiAKIGJvb2wgaW50ZWxfaHBkX2Rpc2Fi bGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCBlbnVtIGhwZF9waW4gcGluKQot LSAKMi4yMC4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcK aHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK