From mboxrd@z Thu Jan 1 00:00:00 1970 From: Todd Previte Subject: [PATCH 06/12] drm/i915: Update intel_dp_hpd_pulse() for non-MST operation Date: Wed, 15 Apr 2015 10:15:56 -0700 Message-ID: <1429118156-15880-1-git-send-email-tprevite@gmail.com> References: <1429112327-7695-7-git-send-email-tprevite@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-pd0-f173.google.com (mail-pd0-f173.google.com [209.85.192.173]) by gabe.freedesktop.org (Postfix) with ESMTP id EA47F6E119 for ; Wed, 15 Apr 2015 10:16:03 -0700 (PDT) Received: by pdea3 with SMTP id a3so59259633pde.3 for ; Wed, 15 Apr 2015 10:16:03 -0700 (PDT) In-Reply-To: <1429112327-7695-7-git-send-email-tprevite@gmail.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 VXBkYXRlIHRoZSBob3QgcGx1ZyBmdW5jdGlvbiB0byBoYW5kbGUgdGhlIFNTVCBjYXNlLiBJbnN0 ZWFkIG9mIHBsYWNpbmcKdGhlIFNTVCBjYXNlIHdpdGhpbiB0aGUgbG9uZy9zaG9ydCBwdWxzZSBi bG9jaywgaXQgaXMgbm93IGhhbmRsZWQgYWZ0ZXIKZGV0ZXJtaW5pbmcgdGhhdCBNU1QgbW9kZSBp cyBub3QgaW4gdXNlLiBUaGlzIHdheSwgdGhlIHRvcG9sb2d5IG1hbmFnZW1lbnQKbGF5ZXIgY2Fu IGhhbmRsZSBhbnkgTVNULXJlbGF0ZWQgb3BlcmF0aW9ucyB3aGlsZSBTU1Qgb3BlcmF0aW9ucyBh cmUgc3RpbGwKY29ycmVjdGx5IGhhbmRsZWQgYWZ0ZXJ3YXJkcy4KClRoaXMgcGF0Y2ggYWxzbyBj b3JyZWN0cyB0aGUgcHJvYmxlbSBvZiBTU1QgbW9kZSBvbmx5IGJlaW5nIGhhbmRsZWQgaW4gdGhl CmNhc2Ugb2YgYSBzaG9ydCAoMC41bXMgLSAxLjBtcykgSFBEIHB1bHNlLiBGb3IgY29tcGxpYW5j ZSB0ZXN0aW5nIHB1cnBvc2VzCmJvdGggc2hvcnQgYW5kIGxvbmcgcHVsc2VzIGFyZSB1c2VkIGJ5 IHRoZSBkaWZmZXJlbnQgdGVzdHMsIHRodXMgYm90aCBjYXNlcwpuZWVkIHRvIGJlIGFkZHJlc3Nl ZCBmb3IgU1NULgoKVGhpcyBwYXRjaCByZXBsYWNlcyBbUEFUQ0ggMTAvMTBdIGRybS9pOTE1OiBG aXggaW50ZWxfZHBfaG90X3BsdWcoKSBpbiB0aGUKcHJldmlvdXMgY29tcGxpYW5jZSB0ZXN0aW5n IHBhdGNoIHNlcXVlbmNlLiBSZXZpZXcgZmVlZGJhY2sgb24gdGhhdCBwYXRjaAppbmRpY2F0ZWQg dGhhdCB1cGRhdGluZyBpbnRlbF9kcF9ob3RfcGx1ZygpIHdhcyBub3QgdGhlIGNvcnJlY3QgcGxh Y2UgZm9yCnRoZSB0ZXN0IGhhbmRsZXIuCgpGb3IgdGhlIFNTVCBjYXNlLCB0aGUgbWFpbiBzdHJl YW0gaXMgZGlzYWJsZWQgZm9yIGxvbmcgSFBEIHB1bHNlcyBhcyB0aGlzCmdlbmVyYWxseSBpbmRp Y2F0ZXMgZWl0aGVyIGEgY29ubmVjdC9kaXNjb25uZWN0IGV2ZW50IG9yIGxpbmsgZmFpbHVyZS4g Rm9yCmEgbnVtYmVyIG9mIGNhc2UgaW4gY29tcGxpYW5jZSB0ZXN0aW5nLCB0aGUgc291cmNlIGlz IHJlcXVpcmVkIHRvIGRpc2FibGUKdGhlIG1haW4gbGluayB1cG9uIGRldGVjdGlvbiBvZiBhIGxv bmcgSFBELgoKVjI6Ci0gTi9BClYzOgotIFBsYWNlIHRoZSBTU1QgbW9kZSBsaW5rIHN0YXR1cyBj aGVjayBpbnRvIHRoZSBtc3RfZmFpbCBjYXNlCi0gUmVtb3ZlIG9ic29sZXRlIGNvbW1lbnQgcmVn YXJkaW5nIFNTVCBtb2RlIG9wZXJhdGlvbgotIFJlbW92ZWQgYW4gZXJyb25lb3VzIGxpbmUgb2Yg Y29kZSB0aGF0IHNudWNrIGluIGR1cmluZyByZWJhc2luZwpWNDoKLSBBZGRlZCBhIGRpc2FibGUg b2YgdGhlIG1haW4gc3RyZWFtIChEUCB0cmFuc3BvcnQpIGZvciB0aGUgbG9uZyBwdWxzZSBjYXNl CiAgZm9yIFNTVCB0byBzdXBwb3J0IGNvbXBsaWFuY2UgdGVzdGluZwpWNToKLSBSZXdvcmtlZCBT U1QgaGFuZGxpbmcgdG8gc3VwcG9ydCB0ZXN0cyA0LjIuMi43IGFuZCA0LjIuMi44ClY2OgotIFJl Zm9ybWF0dGVkIGEgY29tbWVudApWNzoKLSBNb3ZlZCBhIGNvbW1lbnQgYWdhaW4gdGhhdCB3YXMg aW5hZHZlcnRlbnRseSBtb3ZlZAotIFVwZGF0ZWQgdGhlIGNvZGUgdG8gcHJvcGVybHkgaGFuZGxl IGFsbCBwZXJtdXRhdGlvbnMgb2YgTVNUL1NTVCBhbmQKICBzaG9ydC9sb25nIHB1bHNlLgotIEFk ZHMgYSBuZXcgJ2Nvbm5lY3RlZCcgZmxhZyB0aGF0IHByZXZlbnRzIHVubmVjZXNzYXJ5IG9wZXJh dGlvbnMgd2hlbgogIHRoZSBsaW5rIGlzIGRpc2Nvbm5lY3RlZC4KLSBBZGRlZCBhIGZ1bmN0aW9u IHRvIGVuY2Fwc3VsYXRlIGRldGVjdGlvbiBvZiB0aGUgSFBEIHBpbiBzdGF0dXMgaW4KICBpbiBv cmRlciB0byBkZXRlcm1pbmUgY29ubmVjdGVkIHN0YXR1cwotIFJlZm9ybWF0dGVkIHRoZSBpZi1z dGF0ZW1lbnRzIGluIHRoZSBmdW5jdGlvbiBzbyB0aGUgYnJhY2VzIGFyZQogIGNvbnNpc3RlbnQg Zm9yIHRob3NlIHdpdGggc2luZ2xlIHN0YXRlbWVudHMgYWZ0ZXIgdGhlIGlmLXN0YXRlbWVudApW ODoKLSBVcGRhdGVkIHRvIGFjY291bnQgZm9yIGxvbmdfaHBkIGZsYWcgcHJvcGFnYXRpb24KClNp Z25lZC1vZmYtYnk6IFRvZGQgUHJldml0ZSA8dHByZXZpdGVAZ21haWwuY29tPgotLS0KIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMgIHwgNTUgKysrKysrKysrKysrKysrKysrKysrKysr Ky0tLS0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggfCAgMSAr CiAyIGZpbGVzIGNoYW5nZWQsIDM1IGluc2VydGlvbnMoKyksIDIxIGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kcC5jCmluZGV4IGVlNDFlMTAuLmFhM2I4OWQgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZHAuYwpAQCAtNDc0Nyw2ICs0NzQ3LDcgQEAgaW50ZWxfZHBfaHBkX3B1bHNlKHN0cnVj dCBpbnRlbF9kaWdpdGFsX3BvcnQgKmludGVsX2RpZ19wb3J0LCBib29sIGxvbmdfaHBkKQogCXN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7CiAJZW51 bSBpbnRlbF9kaXNwbGF5X3Bvd2VyX2RvbWFpbiBwb3dlcl9kb21haW47CiAJZW51bSBpcnFyZXR1 cm4gcmV0ID0gSVJRX05PTkU7CisJYm9vbCBjb25uZWN0ZWQgPSBmYWxzZTsKIAogCWlmIChpbnRl bF9kaWdfcG9ydC0+YmFzZS50eXBlICE9IElOVEVMX09VVFBVVF9FRFApCiAJCWludGVsX2RpZ19w b3J0LT5iYXNlLnR5cGUgPSBJTlRFTF9PVVRQVVRfRElTUExBWVBPUlQ7CkBAIC00NzcwLDE5ICs0 NzcxLDE1IEBAIGludGVsX2RwX2hwZF9wdWxzZShzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICpp bnRlbF9kaWdfcG9ydCwgYm9vbCBsb25nX2hwZCkKIAlwb3dlcl9kb21haW4gPSBpbnRlbF9kaXNw bGF5X3BvcnRfcG93ZXJfZG9tYWluKGludGVsX2VuY29kZXIpOwogCWludGVsX2Rpc3BsYXlfcG93 ZXJfZ2V0KGRldl9wcml2LCBwb3dlcl9kb21haW4pOwogCisJY29ubmVjdGVkID0gaW50ZWxfZHBf ZGlnaXRhbF9wb3J0X2Nvbm5lY3RlZChpbnRlbF9kcCk7CisKIAlpZiAobG9uZ19ocGQpIHsKIAot CQlpZiAoSEFTX1BDSF9TUExJVChkZXYpKSB7Ci0JCQlpZiAoIWlieF9kaWdpdGFsX3BvcnRfY29u bmVjdGVkKGRldl9wcml2LCBpbnRlbF9kaWdfcG9ydCkpCi0JCQkJZ290byBtc3RfZmFpbDsKLQkJ fSBlbHNlIHsKLQkJCWlmIChnNHhfZGlnaXRhbF9wb3J0X2Nvbm5lY3RlZChkZXYsIGludGVsX2Rp Z19wb3J0KSAhPSAxKQotCQkJCWdvdG8gbXN0X2ZhaWw7Ci0JCX0KKwkJaWYgKCFjb25uZWN0ZWQp CisJCQlnb3RvIG1zdF9mYWlsOwogCi0JCWlmICghaW50ZWxfZHBfZ2V0X2RwY2QoaW50ZWxfZHAp KSB7CisJCWlmICghaW50ZWxfZHBfZ2V0X2RwY2QoaW50ZWxfZHApKQogCQkJZ290byBtc3RfZmFp bDsKLQkJfQogCiAJCWludGVsX2RwX3Byb2JlX291aShpbnRlbF9kcCk7CiAKQEAgLTQ3OTAsMjAg KzQ3ODcsOSBAQCBpbnRlbF9kcF9ocGRfcHVsc2Uoc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAq aW50ZWxfZGlnX3BvcnQsIGJvb2wgbG9uZ19ocGQpCiAJCQlnb3RvIG1zdF9mYWlsOwogCiAJfSBl bHNlIHsKLQkJaWYgKGludGVsX2RwLT5pc19tc3QpIHsKKwkJaWYgKGludGVsX2RwLT5pc19tc3Qp CiAJCQlpZiAoaW50ZWxfZHBfY2hlY2tfbXN0X3N0YXR1cyhpbnRlbF9kcCkgPT0gLUVJTlZBTCkK IAkJCQlnb3RvIG1zdF9mYWlsOwotCQl9Ci0KLQkJaWYgKCFpbnRlbF9kcC0+aXNfbXN0KSB7Ci0J CQkvKgotCQkJICogd2UnbGwgY2hlY2sgdGhlIGxpbmsgc3RhdHVzIHZpYSB0aGUgbm9ybWFsIGhv dCBwbHVnIHBhdGggbGF0ZXIgLQotCQkJICogYnV0IGZvciBzaG9ydCBocGRzIHdlIHNob3VsZCBj aGVjayBpdCBub3cKLQkJCSAqLwotCQkJZHJtX21vZGVzZXRfbG9jaygmZGV2LT5tb2RlX2NvbmZp Zy5jb25uZWN0aW9uX211dGV4LCBOVUxMKTsKLQkJCWludGVsX2RwX2NoZWNrX2xpbmtfc3RhdHVz KGludGVsX2RwLCBsb25nX2hwZCk7Ci0JCQlkcm1fbW9kZXNldF91bmxvY2soJmRldi0+bW9kZV9j b25maWcuY29ubmVjdGlvbl9tdXRleCk7Ci0JCX0KIAl9CiAKIAlyZXQgPSBJUlFfSEFORExFRDsK QEAgLTQ4MTcsNiArNDgwMywxNSBAQCBtc3RfZmFpbDoKIAkJZHJtX2RwX21zdF90b3BvbG9neV9t Z3Jfc2V0X21zdCgmaW50ZWxfZHAtPm1zdF9tZ3IsIGludGVsX2RwLT5pc19tc3QpOwogCX0KIHB1 dF9wb3dlcjoKKwkvKiBTU1QgbW9kZSAtIGhhbmRsZSBzaG9ydC9sb25nIHB1bHNlcyBoZXJlICov CisJaWYgKCFpbnRlbF9kcC0+aXNfbXN0KSB7CisKKwkJZHJtX21vZGVzZXRfbG9jaygmZGV2LT5t b2RlX2NvbmZpZy5jb25uZWN0aW9uX211dGV4LCBOVUxMKTsKKwkJaWYgKGNvbm5lY3RlZCkKKwkJ CWludGVsX2RwX2NoZWNrX2xpbmtfc3RhdHVzKGludGVsX2RwLCBsb25nX2hwZCk7CisJCWRybV9t b2Rlc2V0X3VubG9jaygmZGV2LT5tb2RlX2NvbmZpZy5jb25uZWN0aW9uX211dGV4KTsKKwkJcmV0 ID0gSVJRX0hBTkRMRUQ7CisJfQogCWludGVsX2Rpc3BsYXlfcG93ZXJfcHV0KGRldl9wcml2LCBw b3dlcl9kb21haW4pOwogCiAJcmV0dXJuIHJldDsKQEAgLTU4MDMsMyArNTc5OCwyMSBAQCB2b2lk IGludGVsX2RwX21zdF9yZXN1bWUoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAkJfQogCX0KIH0K KworYm9vbCBpbnRlbF9kcF9kaWdpdGFsX3BvcnRfY29ubmVjdGVkKHN0cnVjdCBpbnRlbF9kcCAq aW50ZWxfZHApCit7CisJc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQg PSBkcF90b19kaWdfcG9ydChpbnRlbF9kcCk7CisJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGlu dGVsX2RpZ19wb3J0LT5iYXNlLmJhc2UuZGV2OworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7CisJYm9vbCBjb25uZWN0ZWQgPSB0cnVlOworCisJ aWYgKEhBU19QQ0hfU1BMSVQoZGV2KSkgeworCQlpZiAoIWlieF9kaWdpdGFsX3BvcnRfY29ubmVj dGVkKGRldl9wcml2LCBpbnRlbF9kaWdfcG9ydCkpCisJCQljb25uZWN0ZWQgPSBmYWxzZTsKKwl9 IGVsc2UgeworCQlpZiAoZzR4X2RpZ2l0YWxfcG9ydF9jb25uZWN0ZWQoZGV2LCBpbnRlbF9kaWdf cG9ydCkgIT0gMSkKKwkJCWNvbm5lY3RlZCA9IGZhbHNlOworCX0KKworCXJldHVybiBjb25uZWN0 ZWQ7Cit9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCmluZGV4IGE0Njc1ZmEuLmFjY2YwOGIgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCkBAIC0xMTczLDYgKzExNzMsNyBAQCB2b2lkIGludGVs X2VkcF9kcnJzX2Rpc2FibGUoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCk7CiB2b2lkIGludGVs X2VkcF9kcnJzX2ludmFsaWRhdGUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAkJdW5zaWduZWQg ZnJvbnRidWZmZXJfYml0cyk7CiB2b2lkIGludGVsX2VkcF9kcnJzX2ZsdXNoKHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYsIHVuc2lnbmVkIGZyb250YnVmZmVyX2JpdHMpOworYm9vbCBpbnRlbF9kcF9k aWdpdGFsX3BvcnRfY29ubmVjdGVkKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApOwogCiAvKiBp bnRlbF9kcF9tc3QuYyAqLwogaW50IGludGVsX2RwX21zdF9lbmNvZGVyX2luaXQoc3RydWN0IGlu dGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQsIGludCBjb25uX2lkKTsKLS0gCjEuOS4x CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1n ZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=