From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thierry Reding Subject: [PATCH v2 13/21] drm/dp: Do not busy-loop during link training Date: Mon, 2 Sep 2019 13:31:13 +0200 Message-ID: <20190902113121.31323-14-thierry.reding@gmail.com> References: <20190902113121.31323-1-thierry.reding@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wr1-x441.google.com (mail-wr1-x441.google.com [IPv6:2a00:1450:4864:20::441]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6289B89C14 for ; Mon, 2 Sep 2019 11:31:52 +0000 (UTC) Received: by mail-wr1-x441.google.com with SMTP id c3so13648530wrd.7 for ; Mon, 02 Sep 2019 04:31:52 -0700 (PDT) In-Reply-To: <20190902113121.31323-1-thierry.reding@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org RnJvbTogVGhpZXJyeSBSZWRpbmcgPHRyZWRpbmdAbnZpZGlhLmNvbT4KClVzZSBtaWNyb3NlY29u ZCBzbGVlcHMgZm9yIHRoZSBjbG9jayByZWNvdmVyeSBhbmQgY2hhbm5lbCBlcXVhbGl6YXRpb24K ZGVsYXlzIGR1cmluZyBsaW5rIHRyYWluaW5nLiBUaGUgZHVyYXRpb24gb2YgdGhlc2UgZGVsYXlz IGNhbiBiZSBmcm9tCjEwMCB1cyB1cCB0byAxNiBtcy4gSXQgaXMgcnVkZSB0byBidXN5LWxvb3Ag Zm9yIHRoYXQgYW1vdW50IG9mIHRpbWUuCgpXaGlsZSBhdCBpdCwgYWxzbyBjb252ZXJ0IHRvIHN0 YW5kYXJkIGNvZGluZyBzdHlsZSBieSBwdXR0aW5nIHRoZQpvcGVuaW5nIGJyYWNlcyBpbiBhIGZ1 bmN0aW9uIGRlZmluaXRpb24gb24gYSBuZXcgbGluZS4KCnYyOiB1c2UgY29ycmVjdCBtdWx0aXBs aWVyIGZvciB0cmFpbmluZyBkZWxheXMgKFBoaWxpcHAgWmFiZWwpCgpTaWduZWQtb2ZmLWJ5OiBU aGllcnJ5IFJlZGluZyA8dHJlZGluZ0BudmlkaWEuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9k cm1fZHBfaGVscGVyLmMgfCAzMCArKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0KIDEgZmls ZSBjaGFuZ2VkLCAxOCBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vZHJtX2RwX2hlbHBlci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9k cF9oZWxwZXIuYwppbmRleCA0MTEyNTcwZGJlNjcuLjY4MWQyODk4ODc3NiAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2RybV9kcF9oZWxwZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJt X2RwX2hlbHBlci5jCkBAIC0xMjAsMzMgKzEyMCwzOSBAQCB1OCBkcm1fZHBfZ2V0X2FkanVzdF9y ZXF1ZXN0X3ByZV9lbXBoYXNpcyhjb25zdCB1OCBsaW5rX3N0YXR1c1tEUF9MSU5LX1NUQVRVU19T SQogfQogRVhQT1JUX1NZTUJPTChkcm1fZHBfZ2V0X2FkanVzdF9yZXF1ZXN0X3ByZV9lbXBoYXNp cyk7CiAKLXZvaWQgZHJtX2RwX2xpbmtfdHJhaW5fY2xvY2tfcmVjb3ZlcnlfZGVsYXkoY29uc3Qg dTggZHBjZFtEUF9SRUNFSVZFUl9DQVBfU0laRV0pIHsKLQlpbnQgcmRfaW50ZXJ2YWwgPSBkcGNk W0RQX1RSQUlOSU5HX0FVWF9SRF9JTlRFUlZBTF0gJgotCQkJICBEUF9UUkFJTklOR19BVVhfUkRf TUFTSzsKK3ZvaWQgZHJtX2RwX2xpbmtfdHJhaW5fY2xvY2tfcmVjb3ZlcnlfZGVsYXkoY29uc3Qg dTggZHBjZFtEUF9SRUNFSVZFUl9DQVBfU0laRV0pCit7CisJdW5zaWduZWQgaW50IHJkX2ludGVy dmFsID0gZHBjZFtEUF9UUkFJTklOR19BVVhfUkRfSU5URVJWQUxdICYKKwkJCQkJRFBfVFJBSU5J TkdfQVVYX1JEX01BU0s7CiAKIAlpZiAocmRfaW50ZXJ2YWwgPiA0KQotCQlEUk1fREVCVUdfS01T KCJBVVggaW50ZXJ2YWwgJWQsIG91dCBvZiByYW5nZSAobWF4IDQpXG4iLAorCQlEUk1fREVCVUdf S01TKCJBVVggaW50ZXJ2YWwgJXUsIG91dCBvZiByYW5nZSAobWF4IDQpXG4iLAogCQkJICAgICAg cmRfaW50ZXJ2YWwpOwogCiAJaWYgKHJkX2ludGVydmFsID09IDAgfHwgZHBjZFtEUF9EUENEX1JF Vl0gPj0gRFBfRFBDRF9SRVZfMTQpCi0JCXVkZWxheSgxMDApOworCQlyZF9pbnRlcnZhbCA9IDEw MDsKIAllbHNlCi0JCW1kZWxheShyZF9pbnRlcnZhbCAqIDQpOworCQlyZF9pbnRlcnZhbCAqPSA0 ICogVVNFQ19QRVJfTVNFQzsKKworCXVzbGVlcF9yYW5nZShyZF9pbnRlcnZhbCwgcmRfaW50ZXJ2 YWwgKiAyKTsKIH0KIEVYUE9SVF9TWU1CT0woZHJtX2RwX2xpbmtfdHJhaW5fY2xvY2tfcmVjb3Zl cnlfZGVsYXkpOwogCi12b2lkIGRybV9kcF9saW5rX3RyYWluX2NoYW5uZWxfZXFfZGVsYXkoY29u c3QgdTggZHBjZFtEUF9SRUNFSVZFUl9DQVBfU0laRV0pIHsKLQlpbnQgcmRfaW50ZXJ2YWwgPSBk cGNkW0RQX1RSQUlOSU5HX0FVWF9SRF9JTlRFUlZBTF0gJgotCQkJICBEUF9UUkFJTklOR19BVVhf UkRfTUFTSzsKK3ZvaWQgZHJtX2RwX2xpbmtfdHJhaW5fY2hhbm5lbF9lcV9kZWxheShjb25zdCB1 OCBkcGNkW0RQX1JFQ0VJVkVSX0NBUF9TSVpFXSkKK3sKKwl1bnNpZ25lZCBpbnQgcmRfaW50ZXJ2 YWwgPSBkcGNkW0RQX1RSQUlOSU5HX0FVWF9SRF9JTlRFUlZBTF0gJgorCQkJCQlEUF9UUkFJTklO R19BVVhfUkRfTUFTSzsKIAogCWlmIChyZF9pbnRlcnZhbCA+IDQpCi0JCURSTV9ERUJVR19LTVMo IkFVWCBpbnRlcnZhbCAlZCwgb3V0IG9mIHJhbmdlIChtYXggNClcbiIsCisJCURSTV9ERUJVR19L TVMoIkFVWCBpbnRlcnZhbCAldSwgb3V0IG9mIHJhbmdlIChtYXggNClcbiIsCiAJCQkgICAgICBy ZF9pbnRlcnZhbCk7CiAKIAlpZiAocmRfaW50ZXJ2YWwgPT0gMCkKLQkJdWRlbGF5KDQwMCk7CisJ CXJkX2ludGVydmFsID0gNDAwOwogCWVsc2UKLQkJbWRlbGF5KHJkX2ludGVydmFsICogNCk7CisJ CXJkX2ludGVydmFsICo9IDQgKiBVU0VDX1BFUl9NU0VDOworCisJdXNsZWVwX3JhbmdlKHJkX2lu dGVydmFsLCByZF9pbnRlcnZhbCAqIDIpOwogfQogRVhQT1JUX1NZTUJPTChkcm1fZHBfbGlua190 cmFpbl9jaGFubmVsX2VxX2RlbGF5KTsKIAotLSAKMi4yMi4wCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1k ZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWw=