From mboxrd@z Thu Jan 1 00:00:00 1970 From: Imre Deak Subject: [PATCH 3/5] drm/i915/cnl+: Verify combo PHY HW state during PHY uninit Date: Fri, 2 Nov 2018 20:07:04 +0200 Message-ID: <20181102180706.16582-4-imre.deak@intel.com> References: <20181102180706.16582-1-imre.deak@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0E91B6E5BD for ; Fri, 2 Nov 2018 18:07:19 +0000 (UTC) In-Reply-To: <20181102180706.16582-1-imre.deak@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: Paulo Zanoni , Rodrigo Vivi List-Id: intel-gfx@lists.freedesktop.org VmVyaWZ5IG9uIENOTCwgSUNMIHRoYXQgdGhlIGNvbWJvIFBIWSBIVyBzdGF0ZSBzdGF5ZWQgaW50 YWN0IGFmdGVyIFBIWQppbml0aWFsaXphdGlvbi4KCkNjOiBQYXVsbyBaYW5vbmkgPHBhdWxvLnIu emFub25pQGludGVsLmNvbT4KQ2M6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51 eC5pbnRlbC5jb20+CkNjOiBKb3PDqSBSb2JlcnRvIGRlIFNvdXphIDxqb3NlLnNvdXphQGludGVs LmNvbT4KQ2M6IFJvZHJpZ28gVml2aSA8cm9kcmlnby52aXZpQGludGVsLmNvbT4KU2lnbmVkLW9m Zi1ieTogSW1yZSBEZWFrIDxpbXJlLmRlYWtAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2NvbWJvX3BoeS5jIHwgMTAzICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrLQogMSBmaWxlIGNoYW5nZWQsIDEwMSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NvbWJvX3BoeS5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29tYm9fcGh5LmMKaW5kZXggMTMxODRhZTVhMjE3 Li4xNTIyZTJhMjUzOTAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Nv bWJvX3BoeS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NvbWJvX3BoeS5jCkBA IC01Miw4ICs1Miw4IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgY25sX3Byb2Ntb24gewogICogcmVn aXN0ZXJzLCB0aGF0J3Mgd2h5IHdlIGNhbGwgdGhlIElDTCBtYWNyb3MgZXZlbiB0aG91Z2ggdGhl IGZ1bmN0aW9uIGhhcyBDTkwKICAqIG9uIGl0cyBuYW1lLgogICovCi1zdGF0aWMgdm9pZCBjbmxf c2V0X3Byb2Ntb25fcmVmX3ZhbHVlcyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYs Ci0JCQkJICAgICAgIGVudW0gcG9ydCBwb3J0KQorc3RhdGljIGNvbnN0IHN0cnVjdCBjbmxfcHJv Y21vbiAqCitjbmxfZ2V0X3Byb2Ntb25fcmVmX3ZhbHVlcyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYsIGVudW0gcG9ydCBwb3J0KQogewogCWNvbnN0IHN0cnVjdCBjbmxfcHJvY21v biAqcHJvY21vbjsKIAl1MzIgdmFsOwpAQCAtODAsNiArODAsMTcgQEAgc3RhdGljIHZvaWQgY25s X3NldF9wcm9jbW9uX3JlZl92YWx1ZXMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 LAogCQlicmVhazsKIAl9CiAKKwlyZXR1cm4gcHJvY21vbjsKK30KKworc3RhdGljIHZvaWQgY25s X3NldF9wcm9jbW9uX3JlZl92YWx1ZXMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 LAorCQkJCSAgICAgICBlbnVtIHBvcnQgcG9ydCkKK3sKKwljb25zdCBzdHJ1Y3QgY25sX3Byb2Nt b24gKnByb2Ntb247CisJdTMyIHZhbDsKKworCXByb2Ntb24gPSBjbmxfZ2V0X3Byb2Ntb25fcmVm X3ZhbHVlcyhkZXZfcHJpdiwgcG9ydCk7CisKIAl2YWwgPSBJOTE1X1JFQUQoSUNMX1BPUlRfQ09N UF9EVzEocG9ydCkpOwogCXZhbCAmPSB+KCgweGZmIDw8IDE2KSB8IDB4ZmYpOwogCXZhbCB8PSBw cm9jbW9uLT5kdzE7CkBAIC04OSw2ICsxMDAsNjMgQEAgc3RhdGljIHZvaWQgY25sX3NldF9wcm9j bW9uX3JlZl92YWx1ZXMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCUk5MTVf V1JJVEUoSUNMX1BPUlRfQ09NUF9EVzEwKHBvcnQpLCBwcm9jbW9uLT5kdzEwKTsKIH0KIAorc3Rh dGljIGJvb2wgY2hlY2tfcGh5X3JlZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYs CisJCQkgIGVudW0gcG9ydCBwb3J0LCBpOTE1X3JlZ190IHJlZywgdTMyIG1hc2ssCisJCQkgIHUz MiBleHBlY3RlZF92YWwpCit7CisJdTMyIHZhbCA9IEk5MTVfUkVBRChyZWcpOworCisJaWYgKCh2 YWwgJiBtYXNrKSAhPSBleHBlY3RlZF92YWwpIHsKKwkJRFJNX0RFQlVHX0RSSVZFUigiUG9ydC0l YyBjb21ibyBQSFkgcmVnICUwOHggc3RhdGUgbWlzbWF0Y2g6ICIKKwkJCQkgImN1cnJlbnQgJTA4 eCBtYXNrICUwOHggZXhwZWN0ZWQgJTA4eFxuIiwKKwkJCQkgcG9ydF9uYW1lKHBvcnQpLAorCQkJ CSByZWcucmVnLCB2YWwsIG1hc2ssIGV4cGVjdGVkX3ZhbCk7CisJCXJldHVybiBmYWxzZTsKKwl9 CisKKwlyZXR1cm4gdHJ1ZTsKK30KKworc3RhdGljIGJvb2wgY25sX3ZlcmlmeV9wcm9jbW9uX3Jl Zl92YWx1ZXMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAorCQkJCQkgIGVudW0g cG9ydCBwb3J0KQoreworCWNvbnN0IHN0cnVjdCBjbmxfcHJvY21vbiAqcHJvY21vbjsKKwlib29s IHJldDsKKworCXByb2Ntb24gPSBjbmxfZ2V0X3Byb2Ntb25fcmVmX3ZhbHVlcyhkZXZfcHJpdiwg cG9ydCk7CisKKwlyZXQgPSBjaGVja19waHlfcmVnKGRldl9wcml2LCBwb3J0LCBJQ0xfUE9SVF9D T01QX0RXMShwb3J0KSwKKwkJCSAgICAoMHhmZiA8PCAxNikgfCAweGZmLCBwcm9jbW9uLT5kdzEp OworCXJldCAmPSBjaGVja19waHlfcmVnKGRldl9wcml2LCBwb3J0LCBJQ0xfUE9SVF9DT01QX0RX OShwb3J0KSwKKwkJCSAgICAgLTFVLCBwcm9jbW9uLT5kdzkpOworCXJldCAmPSBjaGVja19waHlf cmVnKGRldl9wcml2LCBwb3J0LCBJQ0xfUE9SVF9DT01QX0RXMTAocG9ydCksCisJCQkgICAgIC0x VSwgcHJvY21vbi0+ZHcxMCk7CisKKwlyZXR1cm4gcmV0OworfQorCitzdGF0aWMgYm9vbCBjbmxf Y29tYm9fcGh5X2VuYWJsZWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQorewor CXJldHVybiAhKEk5MTVfUkVBRChDSElDS0VOX01JU0NfMikgJiBDTkxfQ09NUF9QV1JfRE9XTikg JiYKKwkJKEk5MTVfUkVBRChDTkxfUE9SVF9DT01QX0RXMCkgJiBDT01QX0lOSVQpOworfQorCitz dGF0aWMgYm9vbCBjbmxfY29tYm9fcGh5X3ZlcmlmeV9zdGF0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYpCit7CisJZW51bSBwb3J0IHBvcnQgPSBQT1JUX0E7CisJYm9vbCByZXQ7 CisKKwlpZiAoIWNubF9jb21ib19waHlfZW5hYmxlZChkZXZfcHJpdikpCisJCXJldHVybiBmYWxz ZTsKKworCXJldCA9IGNubF92ZXJpZnlfcHJvY21vbl9yZWZfdmFsdWVzKGRldl9wcml2LCBwb3J0 KTsKKworCXJldCAmPSBjaGVja19waHlfcmVnKGRldl9wcml2LCBwb3J0LCBDTkxfUE9SVF9DTDFD TV9EVzUsCisJCQkgICAgIENMX1BPV0VSX0RPV05fRU5BQkxFLCBDTF9QT1dFUl9ET1dOX0VOQUJM RSk7CisKKwlyZXR1cm4gcmV0OworfQorCiB2b2lkIGNubF9jb21ib19waHlzX2luaXQoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogewogCXUzMiB2YWw7CkBAIC0xMTMsMTEgKzE4 MSwzOCBAQCB2b2lkIGNubF9jb21ib19waHlzX3VuaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYpCiB7CiAJdTMyIHZhbDsKIAorCWlmICghY25sX2NvbWJvX3BoeV92ZXJpZnlf c3RhdGUoZGV2X3ByaXYpKQorCQlEUk1fV0FSTigiQ29tYm8gUEhZIEhXIHN0YXRlIGNoYW5nZWQg dW5leHBlY3RlZGx5LlxuIik7CisKIAl2YWwgPSBJOTE1X1JFQUQoQ0hJQ0tFTl9NSVNDXzIpOwog CXZhbCB8PSBDTkxfQ09NUF9QV1JfRE9XTjsKIAlJOTE1X1dSSVRFKENISUNLRU5fTUlTQ18yLCB2 YWwpOwogfQogCitzdGF0aWMgYm9vbCBpY2xfY29tYm9fcGh5X2VuYWJsZWQoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2LAorCQkJCSAgZW51bSBwb3J0IHBvcnQpCit7CisJcmV0dXJu ICEoSTkxNV9SRUFEKElDTF9QSFlfTUlTQyhwb3J0KSkgJgorCQkgSUNMX1BIWV9NSVNDX0RFX0lP X0NPTVBfUFdSX0RPV04pICYmCisJCShJOTE1X1JFQUQoSUNMX1BPUlRfQ09NUF9EVzAocG9ydCkp ICYgQ09NUF9JTklUKTsKK30KKworc3RhdGljIGJvb2wgaWNsX2NvbWJvX3BoeV92ZXJpZnlfc3Rh dGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAorCQkJCSAgICAgICBlbnVtIHBv cnQgcG9ydCkKK3sKKwlib29sIHJldDsKKworCWlmICghaWNsX2NvbWJvX3BoeV9lbmFibGVkKGRl dl9wcml2LCBwb3J0KSkKKwkJcmV0dXJuIGZhbHNlOworCisJcmV0ID0gY25sX3ZlcmlmeV9wcm9j bW9uX3JlZl92YWx1ZXMoZGV2X3ByaXYsIHBvcnQpOworCisJcmV0ICY9IGNoZWNrX3BoeV9yZWco ZGV2X3ByaXYsIHBvcnQsIElDTF9QT1JUX0NMX0RXNShwb3J0KSwKKwkJCSAgICAgQ0xfUE9XRVJf RE9XTl9FTkFCTEUsIENMX1BPV0VSX0RPV05fRU5BQkxFKTsKKworCXJldHVybiByZXQ7Cit9CisK IHZvaWQgaWNsX2NvbWJvX3BoeXNfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYpCiB7CiAJZW51bSBwb3J0IHBvcnQ7CkBAIC0xNDgsNiArMjQzLDEwIEBAIHZvaWQgaWNsX2Nv bWJvX3BoeXNfdW5pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAlmb3Ig KHBvcnQgPSBQT1JUX0E7IHBvcnQgPD0gUE9SVF9COyBwb3J0KyspIHsKIAkJdTMyIHZhbDsKIAor CQlpZiAoIWljbF9jb21ib19waHlfdmVyaWZ5X3N0YXRlKGRldl9wcml2LCBwb3J0KSkKKwkJCURS TV9XQVJOKCJQb3J0LSVjIGNvbWJvIFBIWSBIVyBzdGF0ZSBjaGFuZ2VkIHVuZXhwZWN0ZWRseVxu IiwKKwkJCQkgcG9ydF9uYW1lKHBvcnQpKTsKKwogCQl2YWwgPSBJOTE1X1JFQUQoSUNMX1BIWV9N SVNDKHBvcnQpKTsKIAkJdmFsIHw9IElDTF9QSFlfTUlTQ19ERV9JT19DT01QX1BXUl9ET1dOOwog CQlJOTE1X1dSSVRFKElDTF9QSFlfTUlTQyhwb3J0KSwgdmFsKTsKLS0gCjIuMTMuMgoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxp bmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==