From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lyude Paul Subject: [PATCH v7 07/20] drm/dp_mst: Restart last_connected_port_and_mstb() if topology ref fails Date: Thu, 10 Jan 2019 19:53:30 -0500 Message-ID: <20190111005343.17443-8-lyude@redhat.com> References: <20190111005343.17443-1-lyude@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190111005343.17443-1-lyude-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, intel-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: Jerry Zuo , Daniel Vetter , David Airlie , Harry Wentland , Juston Li List-Id: nouveau.vger.kernel.org V2hpbGUgdGhpcyBpc24ndCBhIGNvbXBsZXRlIGZpeCwgdGhpcyB3aWxsIGltcHJvdmUgdGhlIHJl bGlhYmlsaXR5IG9mCmRybV9kcF9nZXRfbGFzdF9jb25uZWN0ZWRfcG9ydF9hbmRfbXN0YigpIHBy ZXR0eSBzaWduaWZpY2FudGx5IGR1cmluZwpob3RwbHVnIGV2ZW50cywgc2luY2UgdGhlcmUncyBh IGNoYW5jZSB0aGF0IHRoZSBpbi1tZW1vcnkgdG9wb2xvZ3kgdHJlZQptYXkgbm90IGJlIGZ1bGx5 IHVwZGF0ZWQgd2hlbiBkcm1fZHBfZ2V0X2xhc3RfY29ubmVjdGVkX3BvcnRfYW5kX21zdGIoKQpp cyBjYWxsZWQgYW5kIHRodXMgbWlnaHQgZW5kIHVwIGNhdXNpbmcgb3VyIHNlYXJjaCB0byBmYWls IG9uIGFuIG1zdGIKd2hvc2UgdG9wb2xvZ3kgcmVmY291bnQgaGFzIHJlYWNoZWQgMCwgYnV0IGhh cyBub3QgeWV0IGJlZW4gcmVtb3ZlZCBmcm9tCml0J3MgcGFyZW50LgoKSWRlYWxseSwgd2Ugc2hv dWxkIGZ1cnRoZXIgZml4IHRoaXMgcHJvYmxlbSBieSBlbnN1cmluZyB0aGF0IHdlIGRlYWwKd2l0 aCB0aGUgcG90ZW50aWFsIGZvciByYWNpbmcgd2l0aCBhIGhvdHBsdWcgZXZlbnQsIHdoaWNoIHdv dWxkIGxvb2sKbGlrZSB0aGlzOgoKKiBkcm1fZHBfcGF5bG9hZF9zZW5kX21zZygpIHJldHJpZXZl cyB0aGUgbGFzdCBsaXZpbmcgcmVsYXRpdmUgb2YgbXN0YgogIHdpdGggZHJtX2RwX2dldF9sYXN0 X2Nvbm5lY3RlZF9wb3J0X2FuZF9tc3RiKCkKKiBkcm1fZHBfcGF5bG9hZF9zZW5kX21zZygpIHN0 YXJ0cyBidWlsZGluZyBwYXlsb2FkIG1lc3NhZ2UKICBBdCB0aGUgc2FtZSB0aW1lLCBtc3RiIGdl dHMgdW5wbHVnZ2VkIGZyb20gdGhlIHRvcG9sb2d5IGFuZCBpcyBubwogIGxvbmdlciB0aGUgYWN0 dWFsIGxhc3QgbGl2aW5nIHJlbGF0aXZlIG9mIHRoZSBvcmlnaW5hbCBtc3RiCiogZHJtX2RwX3Bh eWxvYWRfc2VuZF9tc2coKSB0cmllcyBzZW5kaW5nIHRoZSBwYXlsb2FkIG1lc3NhZ2UsIGh1YiB0 aW1lcwogIG91dAoqIEh1YiB0aW1lZCBvdXQsIHdlIGdpdmUgdXAgYW5kIHJ1biBhd2F5LXJlc3Vs dGluZyBpbiB0aGUgcGF5bG9hZCBiZWluZwogIGxlYWtlZAoKVGhpcyBjb3VsZCBiZSBmaXhlZCBi eSByZXN0YXJ0aW5nIHRoZQpkcm1fZHBfZ2V0X2xhc3RfY29ubmVjdGVkX3BvcnRfYW5kX21zdGIo KSBzZWFyY2ggd2hlbmV2ZXIgd2UgZ2V0IGEKdGltZW91dCwgc2VuZGluZyB0aGUgcGF5bG9hZCB0 byB0aGUgbmV3IG1zdGIsIHRoZW4gcmVwZWF0aW5nIHVudGlsCmVpdGhlciB0aGUgZW50aXJlIHRv cG9sb2d5IGlzIHJlbW92ZWQgZnJvbSB0aGUgc3lzdGVtIG9yCmRybV9kcF9nZXRfbGFzdF9jb25u ZWN0ZWRfcG9ydF9hbmRfbXN0YigpIGZhaWxzLiBCdXQgc2luY2UgdGhlIGFib3ZlCnJhY2UgY29u ZGl0aW9uIGlzIG5vdCB0ZXJyaWJseSBsaWtlbHksIHdlJ2xsIGFkZHJlc3MgdGhhdCBpbiBhIGxh dGVyCnBhdGNoIHNlcmllcyBvbmNlIHdlJ3ZlIGltcHJvdmVkIHRoZSByZWNvdmVyeSBoYW5kbGlu ZyBmb3IgVkNQSQphbGxvY2F0aW9ucyBpbiB0aGUgcmVzdCBvZiB0aGUgRFAgTVNUIGhlbHBlcnMu CgpDaGFuZ2VzIHNpbmNlIHYxOgoqIENvbnZlcnQga2VybmVsZG9jIGZvciBkcm1fZHBfZ2V0X2xh c3RfY29ubmVjdGVkX3BvcnRfYW5kX21zdGIgdG8KICBub3JtYWwgY29tbWVudCAtIGRhbnZldAoK U2lnbmVkLW9mZi1ieTogTHl1ZGUgUGF1bCA8bHl1ZGVAcmVkaGF0LmNvbT4KUmV2aWV3ZWQtYnk6 IEhhcnJ5IFdlbnRsYW5kIDxoYXJyeS53ZW50bGFuZEBhbWQuY29tPgpSZXZpZXdlZC1ieTogRGFu aWVsIFZldHRlciA8ZGFuaWVsQGZmd2xsLmNoPgpDYzogRGF2aWQgQWlybGllIDxhaXJsaWVkQHJl ZGhhdC5jb20+CkNjOiBKZXJyeSBadW8gPEplcnJ5Llp1b0BhbWQuY29tPgpDYzogSnVzdG9uIExp IDxqdXN0b24ubGlAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9kcm1fZHBfbXN0X3Rv cG9sb2d5LmMgfCA0NCArKysrKysrKysrKysrKysrKysrKystLS0tLS0KIDEgZmlsZSBjaGFuZ2Vk LCAzNCBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vZHJtX2RwX21zdF90b3BvbG9neS5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9kcF9t c3RfdG9wb2xvZ3kuYwppbmRleCA3OTY5ODU2MDk5MzMuLjdhMjUxOTA1YjNjNCAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2RybV9kcF9tc3RfdG9wb2xvZ3kuYworKysgYi9kcml2ZXJzL2dw dS9kcm0vZHJtX2RwX21zdF90b3BvbG9neS5jCkBAIC0yMDQ4LDI0ICsyMDQ4LDQwIEBAIHN0YXRp YyBzdHJ1Y3QgZHJtX2RwX21zdF9wb3J0ICpkcm1fZHBfZ2V0X2xhc3RfY29ubmVjdGVkX3BvcnRf dG9fbXN0YihzdHJ1Y3QgZHJtCiAJcmV0dXJuIGRybV9kcF9nZXRfbGFzdF9jb25uZWN0ZWRfcG9y dF90b19tc3RiKG1zdGItPnBvcnRfcGFyZW50LT5wYXJlbnQpOwogfQogCi1zdGF0aWMgc3RydWN0 IGRybV9kcF9tc3RfYnJhbmNoICpkcm1fZHBfZ2V0X2xhc3RfY29ubmVjdGVkX3BvcnRfYW5kX21z dGIoc3RydWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyICptZ3IsCi0JCQkJCQkJCQkgc3RydWN0 IGRybV9kcF9tc3RfYnJhbmNoICptc3RiLAotCQkJCQkJCQkJIGludCAqcG9ydF9udW0pCisvKgor ICogU2VhcmNoZXMgdXB3YXJkcyBpbiB0aGUgdG9wb2xvZ3kgc3RhcnRpbmcgZnJvbSBtc3RiIHRv IHRyeSB0byBmaW5kIHRoZQorICogY2xvc2VzdCBhdmFpbGFibGUgcGFyZW50IG9mIG1zdGIgdGhh dCdzIHN0aWxsIGNvbm5lY3RlZCB0byB0aGUgcmVzdCBvZiB0aGUKKyAqIHRvcG9sb2d5LiBUaGlz IGNhbiBiZSB1c2VkIGluIG9yZGVyIHRvIHBlcmZvcm0gb3BlcmF0aW9ucyBsaWtlIHJlbGVhc2lu ZworICogcGF5bG9hZHMsIHdoZXJlIHRoZSBicmFuY2ggZGV2aWNlIHdoaWNoIG93bmVkIHRoZSBw YXlsb2FkIG1heSBubyBsb25nZXIgYmUKKyAqIGFyb3VuZCBhbmQgdGh1cyB3b3VsZCByZXF1aXJl IHRoYXQgdGhlIHBheWxvYWQgb24gdGhlIGxhc3QgbGl2aW5nIHJlbGF0aXZlCisgKiBiZSBmcmVl ZCBpbnN0ZWFkLgorICovCitzdGF0aWMgc3RydWN0IGRybV9kcF9tc3RfYnJhbmNoICoKK2RybV9k cF9nZXRfbGFzdF9jb25uZWN0ZWRfcG9ydF9hbmRfbXN0YihzdHJ1Y3QgZHJtX2RwX21zdF90b3Bv bG9neV9tZ3IgKm1nciwKKwkJCQkJc3RydWN0IGRybV9kcF9tc3RfYnJhbmNoICptc3RiLAorCQkJ CQlpbnQgKnBvcnRfbnVtKQogewogCXN0cnVjdCBkcm1fZHBfbXN0X2JyYW5jaCAqcm1zdGIgPSBO VUxMOwogCXN0cnVjdCBkcm1fZHBfbXN0X3BvcnQgKmZvdW5kX3BvcnQ7CisKIAltdXRleF9sb2Nr KCZtZ3ItPmxvY2spOwotCWlmIChtZ3ItPm1zdF9wcmltYXJ5KSB7CisJaWYgKCFtZ3ItPm1zdF9w cmltYXJ5KQorCQlnb3RvIG91dDsKKworCWRvIHsKIAkJZm91bmRfcG9ydCA9IGRybV9kcF9nZXRf bGFzdF9jb25uZWN0ZWRfcG9ydF90b19tc3RiKG1zdGIpOworCQlpZiAoIWZvdW5kX3BvcnQpCisJ CQlicmVhazsKIAotCQlpZiAoZm91bmRfcG9ydCkgeworCQlpZiAoZHJtX2RwX21zdF90b3BvbG9n eV90cnlfZ2V0X21zdGIoZm91bmRfcG9ydC0+cGFyZW50KSkgewogCQkJcm1zdGIgPSBmb3VuZF9w b3J0LT5wYXJlbnQ7Ci0JCQlpZiAoZHJtX2RwX21zdF90b3BvbG9neV90cnlfZ2V0X21zdGIocm1z dGIpKQotCQkJCSpwb3J0X251bSA9IGZvdW5kX3BvcnQtPnBvcnRfbnVtOwotCQkJZWxzZQotCQkJ CXJtc3RiID0gTlVMTDsKKwkJCSpwb3J0X251bSA9IGZvdW5kX3BvcnQtPnBvcnRfbnVtOworCQl9 IGVsc2UgeworCQkJLyogU2VhcmNoIGFnYWluLCBzdGFydGluZyBmcm9tIHRoaXMgcGFyZW50ICov CisJCQltc3RiID0gZm91bmRfcG9ydC0+cGFyZW50OwogCQl9Ci0JfQorCX0gd2hpbGUgKCFybXN0 Yik7CitvdXQ6CiAJbXV0ZXhfdW5sb2NrKCZtZ3ItPmxvY2spOwogCXJldHVybiBybXN0YjsKIH0K QEAgLTIxMTQsNiArMjEzMCwxNCBAQCBzdGF0aWMgaW50IGRybV9kcF9wYXlsb2FkX3NlbmRfbXNn KHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdyLAogCiAJZHJtX2RwX3F1ZXVlX2Rv d25fdHgobWdyLCB0eG1zZyk7CiAKKwkvKgorCSAqIEZJWE1FOiB0aGVyZSBpcyBhIHNtYWxsIGNo YW5jZSB0aGF0IGJldHdlZW4gZ2V0dGluZyB0aGUgbGFzdAorCSAqIGNvbm5lY3RlZCBtc3RiIGFu ZCBzZW5kaW5nIHRoZSBwYXlsb2FkIG1lc3NhZ2UsIHRoZSBsYXN0IGNvbm5lY3RlZAorCSAqIG1z dGIgY291bGQgYWxzbyBiZSByZW1vdmVkIGZyb20gdGhlIHRvcG9sb2d5LiBJbiB0aGUgZnV0dXJl LCB0aGlzCisJICogbmVlZHMgdG8gYmUgZml4ZWQgYnkgcmVzdGFydGluZyB0aGUKKwkgKiBkcm1f ZHBfZ2V0X2xhc3RfY29ubmVjdGVkX3BvcnRfYW5kX21zdGIoKSBzZWFyY2ggaW4gdGhlIGV2ZW50 IG9mIGEKKwkgKiB0aW1lb3V0IGlmIHRoZSB0b3BvbG9neSBpcyBzdGlsbCBjb25uZWN0ZWQgdG8g dGhlIHN5c3RlbS4KKwkgKi8KIAlyZXQgPSBkcm1fZHBfbXN0X3dhaXRfdHhfcmVwbHkobXN0Yiwg dHhtc2cpOwogCWlmIChyZXQgPiAwKSB7CiAJCWlmICh0eG1zZy0+cmVwbHkucmVwbHlfdHlwZSA9 PSAxKQotLSAKMi4yMC4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwphbWQtZ2Z4IG1haWxpbmcgbGlzdAphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK