From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dhinakaran Pandiyan Subject: [PATCH 2/3] drm/i915/dp: Fix sink-crc reads. Date: Mon, 23 Apr 2018 19:56:58 -0700 Message-ID: <20180424025659.23659-2-dhinakaran.pandiyan@intel.com> References: <20180424025659.23659-1-dhinakaran.pandiyan@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id DD31E6E33B for ; Tue, 24 Apr 2018 02:57:10 +0000 (UTC) In-Reply-To: <20180424025659.23659-1-dhinakaran.pandiyan@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: Dhinakaran Pandiyan , rodrigo.vivi@intel.com List-Id: intel-gfx@lists.freedesktop.org U2luayBjcmMgaXMgY2FsY3VsYXRlZCBieSB0aGUgc2luayBmb3Igc3RhdGljIGZyYW1lcyBpcnJl c3BlY3RpdmUgb2YKd2hhdCB0aGUgZHJpdmVyIHNldHMgaW4gVEVTVF9TSU5LX1NUQVJUIGRwY2Qu IFNpbmNlIFBTUiBpcyB0aGUgb25seSB1c2UKY2FzZSBmb3Igc2luayBjcmMsIHdlIGRvbid0IHJl YWxseSBuZWVkIHRoZSBzaW5rX2NyY197c3RhcnQsIHN0b3B9IGNvZGUuCgpUaGUgc2Vjb25kIHBy b2JsZW0gd2l0aCB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiBpcyB2Ymxhbmsgd2FpdHMuCkVu YWJsaW5nIHZibGFuayBpbnRlcnJ1cHRzIHRyaWdnZXJzIFBTUiBleGl0LCB3aGljaCBtZWFucyB3 ZSBhcmVuJ3QKcmVhbGx5IHJlYWRpbmcgdGhlIGNvcnJlY3QgQ1JDIHZhbHVlcyBmb3IgUFNSIHRl c3RzLiB2Ymxhbmsgd2FpdHMgYXJlCnJlcGxhY2VkIGJ5IGRlbGF5cy4KCldpdGggdGhlIGNoYW5n ZXMgbWFkZSBpbiB0aGlzIHBhdGNoLCBzaW5rIENSQyBpcyBhdmFpbGFibGUgb25seSBmb3IKc3Rh dGljIGZyYW1lcy4gSSBoYXZlIHRlc3RlZCB0aGlzIG9uIGEgU0tMIGxhcHRvcCB3aXRoIFBTUiBw YW5lbC4KClNpZ25lZC1vZmYtYnk6IERoaW5ha2FyYW4gUGFuZGl5YW4gPGRoaW5ha2FyYW4ucGFu ZGl5YW5AaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5j IHwgICAyICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jICAgICB8IDExNCArKysr LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rydi5oICAgIHwgICAzICstCiAzIGZpbGVzIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyks IDEwNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2RlYnVnZnMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jCmluZGV4IDJm MDVmNTI2MmJiYS4uMzVmYTE0MThjYzA3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2RlYnVnZnMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMu YwpAQCAtMjc4NCw3ICsyNzg0LDcgQEAgc3RhdGljIGludCBpOTE1X3NpbmtfY3JjKHN0cnVjdCBz ZXFfZmlsZSAqbSwgdm9pZCAqZGF0YSkKIAogCQlpbnRlbF9kcCA9IGVuY190b19pbnRlbF9kcChz dGF0ZS0+YmVzdF9lbmNvZGVyKTsKIAotCQlyZXQgPSBpbnRlbF9kcF9zaW5rX2NyYyhpbnRlbF9k cCwgY3J0Y19zdGF0ZSwgY3JjKTsKKwkJcmV0ID0gaW50ZWxfZHBfc2lua19jcmMoaW50ZWxfZHAs IGNyYyk7CiAJCWlmIChyZXQpCiAJCQlnb3RvIGVycjsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHAuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMK aW5kZXggN2RjYzg3NGI3ZDhmLi43MzUyYWI2MzFlYTggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2RwLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAu YwpAQCAtMzg3NiwzMiArMzg3NiwxOCBAQCBpbnRlbF9kcF9jb25maWd1cmVfbXN0KHN0cnVjdCBp bnRlbF9kcCAqaW50ZWxfZHApCiAJCQkJCWludGVsX2RwLT5pc19tc3QpOwogfQogCi1zdGF0aWMg aW50IGludGVsX2RwX3NpbmtfY3JjX3N0b3Aoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCwKLQkJ CQkgIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLCBib29sIGRpc2FibGVfd2Ep CitpbnQgaW50ZWxfZHBfc2lua19jcmMoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCwgdTggKmNy YykKIHsKLQlzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICpkaWdfcG9ydCA9IGRwX3RvX2RpZ19w b3J0KGludGVsX2RwKTsKLQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19p OTE1KGRpZ19wb3J0LT5iYXNlLmJhc2UuZGV2KTsKLQlzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxf Y3J0YyA9IHRvX2ludGVsX2NydGMoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjKTsKLQl1OCBidWY7Ci0J aW50IHJldCA9IDA7Ci0JaW50IGNvdW50ID0gMDsKLQlpbnQgYXR0ZW1wdHMgPSAxMDsKKwlpbnQg Y291bnQgPSAwLCByZXQgPSAwLCBhdHRlbXB0czsKIAotCWlmIChkcm1fZHBfZHBjZF9yZWFkYigm aW50ZWxfZHAtPmF1eCwgRFBfVEVTVF9TSU5LLCAmYnVmKSA8IDApIHsKLQkJRFJNX0RFQlVHX0tN UygiU2luayBDUkMgY291bGRuJ3QgYmUgc3RvcHBlZCBwcm9wZXJseVxuIik7Ci0JCXJldCA9IC1F SU87Ci0JCWdvdG8gb3V0OwotCX0KKwlmb3IgKGF0dGVtcHRzID0gMDsgYXR0ZW1wdHMgPCAzICYm IGNvdW50ID09IDA7IGF0dGVtcHRzKyspIHsKKwkJdTggYnVmOwogCi0JaWYgKGRybV9kcF9kcGNk X3dyaXRlYigmaW50ZWxfZHAtPmF1eCwgRFBfVEVTVF9TSU5LLAotCQkJICAgICAgIGJ1ZiAmIH5E UF9URVNUX1NJTktfU1RBUlQpIDwgMCkgewotCQlEUk1fREVCVUdfS01TKCJTaW5rIENSQyBjb3Vs ZG4ndCBiZSBzdG9wcGVkIHByb3Blcmx5XG4iKTsKLQkJcmV0ID0gLUVJTzsKLQkJZ290byBvdXQ7 Ci0JfQotCi0JZG8gewotCQlpbnRlbF93YWl0X2Zvcl92YmxhbmsoZGV2X3ByaXYsIGludGVsX2Ny dGMtPnBpcGUpOworCQkvKiBXYWl0IGZvciBhcHByb3hpbWF0ZWx5IGhhbGYgYSBmcmFtZSwgd2Ug Y2Fubm90IHdhaXQgZm9yIGEKKwkJICogdmJsYW5rIGludGVycnVwdCBhcyBpdCB0cmlnZ2VycyBQ U1IgZXhpdC4KKwkJICovCisJCWlmIChhdHRlbXB0cykKKwkJCXVzbGVlcF9yYW5nZSg4MDAwLCA4 NTAwKTsKIAogCQlpZiAoZHJtX2RwX2RwY2RfcmVhZGIoJmludGVsX2RwLT5hdXgsCiAJCQkJICAg ICAgRFBfVEVTVF9TSU5LX01JU0MsICZidWYpIDwgMCkgewpAQCAtMzkwOSw5MyArMzg5NSwxOSBA QCBzdGF0aWMgaW50IGludGVsX2RwX3NpbmtfY3JjX3N0b3Aoc3RydWN0IGludGVsX2RwICppbnRl bF9kcCwKIAkJCWdvdG8gb3V0OwogCQl9CiAJCWNvdW50ID0gYnVmICYgRFBfVEVTVF9DT1VOVF9N QVNLOwotCX0gd2hpbGUgKC0tYXR0ZW1wdHMgJiYgY291bnQpOwotCi0JaWYgKGF0dGVtcHRzID09 IDApIHsKLQkJRFJNX0RFQlVHX0tNUygiVElNRU9VVDogU2luayBDUkMgY291bnRlciBpcyBub3Qg emVyb2VkIGFmdGVyIGNhbGN1bGF0aW9uIGlzIHN0b3BwZWRcbiIpOwotCQlyZXQgPSAtRVRJTUVE T1VUOwogCX0KIAotIG91dDoKLQlpZiAoZGlzYWJsZV93YSkKLQkJaHN3X2VuYWJsZV9pcHMoY3J0 Y19zdGF0ZSk7Ci0JcmV0dXJuIHJldDsKLX0KLQotc3RhdGljIGludCBpbnRlbF9kcF9zaW5rX2Ny Y19zdGFydChzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwLAotCQkJCSAgIHN0cnVjdCBpbnRlbF9j cnRjX3N0YXRlICpjcnRjX3N0YXRlKQotewotCXN0cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQgKmRp Z19wb3J0ID0gZHBfdG9fZGlnX3BvcnQoaW50ZWxfZHApOwotCXN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGlnX3BvcnQtPmJhc2UuYmFzZS5kZXYpOwotCXN0cnVj dCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjX3N0YXRlLT5iYXNl LmNydGMpOwotCXU4IGJ1ZjsKLQlpbnQgcmV0OwotCi0JaWYgKGRybV9kcF9kcGNkX3JlYWRiKCZp bnRlbF9kcC0+YXV4LCBEUF9URVNUX1NJTktfTUlTQywgJmJ1ZikgPCAwKQotCQlyZXR1cm4gLUVJ TzsKLQotCWlmICghKGJ1ZiAmIERQX1RFU1RfQ1JDX1NVUFBPUlRFRCkpCi0JCXJldHVybiAtRU5P VFRZOwotCi0JaWYgKGRybV9kcF9kcGNkX3JlYWRiKCZpbnRlbF9kcC0+YXV4LCBEUF9URVNUX1NJ TkssICZidWYpIDwgMCkKLQkJcmV0dXJuIC1FSU87Ci0KLQlpZiAoYnVmICYgRFBfVEVTVF9TSU5L X1NUQVJUKSB7Ci0JCXJldCA9IGludGVsX2RwX3NpbmtfY3JjX3N0b3AoaW50ZWxfZHAsIGNydGNf c3RhdGUsIGZhbHNlKTsKLQkJaWYgKHJldCkKLQkJCXJldHVybiByZXQ7Ci0JfQotCi0JaHN3X2Rp c2FibGVfaXBzKGNydGNfc3RhdGUpOwotCi0JaWYgKGRybV9kcF9kcGNkX3dyaXRlYigmaW50ZWxf ZHAtPmF1eCwgRFBfVEVTVF9TSU5LLAotCQkJICAgICAgIGJ1ZiB8IERQX1RFU1RfU0lOS19TVEFS VCkgPCAwKSB7Ci0JCWhzd19lbmFibGVfaXBzKGNydGNfc3RhdGUpOwotCQlyZXR1cm4gLUVJTzsK LQl9Ci0KLQlpbnRlbF93YWl0X2Zvcl92YmxhbmsoZGV2X3ByaXYsIGludGVsX2NydGMtPnBpcGUp OwotCXJldHVybiAwOwotfQotCi1pbnQgaW50ZWxfZHBfc2lua19jcmMoc3RydWN0IGludGVsX2Rw ICppbnRlbF9kcCwgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsIHU4ICpjcmMp Ci17Ci0Jc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqZGlnX3BvcnQgPSBkcF90b19kaWdfcG9y dChpbnRlbF9kcCk7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkx NShkaWdfcG9ydC0+YmFzZS5iYXNlLmRldik7Ci0Jc3RydWN0IGludGVsX2NydGMgKmludGVsX2Ny dGMgPSB0b19pbnRlbF9jcnRjKGNydGNfc3RhdGUtPmJhc2UuY3J0Yyk7Ci0JdTggYnVmOwotCWlu dCBjb3VudCwgcmV0OwotCWludCBhdHRlbXB0cyA9IDY7Ci0KLQlyZXQgPSBpbnRlbF9kcF9zaW5r X2NyY19zdGFydChpbnRlbF9kcCwgY3J0Y19zdGF0ZSk7Ci0JaWYgKHJldCkKLQkJcmV0dXJuIHJl dDsKLQotCWRvIHsKLQkJaW50ZWxfd2FpdF9mb3JfdmJsYW5rKGRldl9wcml2LCBpbnRlbF9jcnRj LT5waXBlKTsKLQotCQlpZiAoZHJtX2RwX2RwY2RfcmVhZGIoJmludGVsX2RwLT5hdXgsCi0JCQkJ ICAgICAgRFBfVEVTVF9TSU5LX01JU0MsICZidWYpIDwgMCkgewotCQkJcmV0ID0gLUVJTzsKLQkJ CWdvdG8gc3RvcDsKLQkJfQotCQljb3VudCA9IGJ1ZiAmIERQX1RFU1RfQ09VTlRfTUFTSzsKLQot CX0gd2hpbGUgKC0tYXR0ZW1wdHMgJiYgY291bnQgPT0gMCk7Ci0KLQlpZiAoYXR0ZW1wdHMgPT0g MCkgewotCQlEUk1fRVJST1IoIlBhbmVsIGlzIHVuYWJsZSB0byBjYWxjdWxhdGUgYW55IENSQyBh ZnRlciA2IHZibGFua3NcbiIpOworCWlmIChhdHRlbXB0cyA9PSAzKSB7CiAJCXJldCA9IC1FVElN RURPVVQ7Ci0JCWdvdG8gc3RvcDsKKwkJZ290byBvdXQ7CiAJfQogCiAJaWYgKGRybV9kcF9kcGNk X3JlYWQoJmludGVsX2RwLT5hdXgsIERQX1RFU1RfQ1JDX1JfQ1IsIGNyYywgNikgIT0gNikgewog CQlyZXQgPSAtRUlPOwotCQlnb3RvIHN0b3A7CisJCWdvdG8gb3V0OwogCX0KIAotc3RvcDoKLQlp bnRlbF9kcF9zaW5rX2NyY19zdG9wKGludGVsX2RwLCBjcnRjX3N0YXRlLCB0cnVlKTsKK291dDoK IAlyZXR1cm4gcmV0OwogfQogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCmluZGV4IDQ0ZWQyNDhm MWZlOS4uY2FjZWU5NDc0OWUyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaApAQCAtMTY0NCw4 ICsxNjQ0LDcgQEAgdm9pZCBpbnRlbF9kcF9zaW5rX2RwbXMoc3RydWN0IGludGVsX2RwICppbnRl bF9kcCwgaW50IG1vZGUpOwogdm9pZCBpbnRlbF9kcF9lbmNvZGVyX3Jlc2V0KHN0cnVjdCBkcm1f ZW5jb2RlciAqZW5jb2Rlcik7CiB2b2lkIGludGVsX2RwX2VuY29kZXJfc3VzcGVuZChzdHJ1Y3Qg aW50ZWxfZW5jb2RlciAqaW50ZWxfZW5jb2Rlcik7CiB2b2lkIGludGVsX2RwX2VuY29kZXJfZGVz dHJveShzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIpOwotaW50IGludGVsX2RwX3NpbmtfY3Jj KHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAsCi0JCSAgICAgIHN0cnVjdCBpbnRlbF9jcnRjX3N0 YXRlICpjcnRjX3N0YXRlLCB1OCAqY3JjKTsKK2ludCBpbnRlbF9kcF9zaW5rX2NyYyhzdHJ1Y3Qg aW50ZWxfZHAgKmludGVsX2RwLCB1OCAqY3JjKTsKIGJvb2wgaW50ZWxfZHBfY29tcHV0ZV9jb25m aWcoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCiAJCQkgICAgIHN0cnVjdCBpbnRlbF9j cnRjX3N0YXRlICpwaXBlX2NvbmZpZywKIAkJCSAgICAgc3RydWN0IGRybV9jb25uZWN0b3Jfc3Rh dGUgKmNvbm5fc3RhdGUpOwotLSAKMi4xNC4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0 cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9s aXN0aW5mby9pbnRlbC1nZngK