From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thierry Reding Subject: [PATCH v2 05/21] drm/dp: Turn link capabilities into booleans Date: Mon, 2 Sep 2019 13:31:05 +0200 Message-ID: <20190902113121.31323-6-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-wm1-x342.google.com (mail-wm1-x342.google.com [IPv6:2a00:1450:4864:20::342]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6CE6089A56 for ; Mon, 2 Sep 2019 11:31:36 +0000 (UTC) Received: by mail-wm1-x342.google.com with SMTP id o184so14222009wme.3 for ; Mon, 02 Sep 2019 04:31:36 -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 RnJvbTogVGhpZXJyeSBSZWRpbmcgPHRyZWRpbmdAbnZpZGlhLmNvbT4KClJhdGhlciB0aGFuIHN0 b3JpbmcgY2FwYWJpbGl0aWVzIGFzIGZsYWdzIGluIGFuIGludGVnZXIsIHVzZSBhIHNlcGFyYXRl CmJvb2xlYW4gcGVyIGNhcGFiaWxpdHkuIFRoaXMgc2ltcGxpZmllcyB0aGUgY29kZSB0aGF0IGNo ZWNrcyBmb3IgdGhlc2UKY2FwYWJpbGl0aWVzLgoKQ2M6IFJvYiBDbGFyayA8cm9iZGNsYXJrQGdt YWlsLmNvbT4KUmV2aWV3ZWQtYnk6IEFuZHJ6ZWogSGFqZGEgPGEuaGFqZGFAc2Ftc3VuZy5jb20+ ClNpZ25lZC1vZmYtYnk6IFRoaWVycnkgUmVkaW5nIDx0cmVkaW5nQG52aWRpYS5jb20+Ci0tLQog ZHJpdmVycy9ncHUvZHJtL2JyaWRnZS90YzM1ODc2Ny5jICB8ICA5ICsrKystLS0tLQogZHJpdmVy cy9ncHUvZHJtL2RybV9kcF9oZWxwZXIuYyAgICB8IDE5ICsrKysrKysrKysrKysrKystLS0KIGRy aXZlcnMvZ3B1L2RybS9tc20vZWRwL2VkcF9jdHJsLmMgfCAgNCArKy0tCiBkcml2ZXJzL2dwdS9k cm0vdGVncmEvc29yLmMgICAgICAgIHwgIDQgKystLQogaW5jbHVkZS9kcm0vZHJtX2RwX2hlbHBl ci5oICAgICAgICB8IDE3ICsrKysrKysrKysrKysrLS0tCiA1IGZpbGVzIGNoYW5nZWQsIDM4IGlu c2VydGlvbnMoKyksIDE1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9icmlkZ2UvdGMzNTg3NjcuYyBiL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2UvdGMzNTg3NjcuYwpp bmRleCA3MzNmY2E3ZDM4MjkuLjI0MGE5YjY5MjQ0ZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2JyaWRnZS90YzM1ODc2Ny5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2UvdGMzNTg3 NjcuYwpAQCAtNjk5LDggKzY5OSw4IEBAIHN0YXRpYyBpbnQgdGNfZ2V0X2Rpc3BsYXlfcHJvcHMo c3RydWN0IHRjX2RhdGEgKnRjKQogCQl0Yy0+bGluay5iYXNlLnJldmlzaW9uID4+IDQsIHRjLT5s aW5rLmJhc2UucmV2aXNpb24gJiAweDBmLAogCQkodGMtPmxpbmsuYmFzZS5yYXRlID09IDE2MjAw MCkgPyAiMS42MkdicHMiIDogIjIuN0dicHMiLAogCQl0Yy0+bGluay5iYXNlLmxhbmVzLAotCQko dGMtPmxpbmsuYmFzZS5jYXBhYmlsaXRpZXMgJiBEUF9MSU5LX0NBUF9FTkhBTkNFRF9GUkFNSU5H KSA/Ci0JCSJlbmhhbmNlZCIgOiAibm9uLWVuaGFuY2VkIik7CisJCXRjLT5saW5rLmJhc2UuY2Fw cy5lbmhhbmNlZF9mcmFtaW5nID8gImVuaGFuY2VkIiA6CisJCQkibm9uLWVuaGFuY2VkIik7CiAJ ZGV2X2RiZyh0Yy0+ZGV2LCAiRG93bnNwcmVhZDogJXMsIHNjcmFtYmxlcjogJXNcbiIsCiAJCXRj LT5saW5rLnNwcmVhZCA/ICIwLjUlIiA6ICIwLjAlIiwKIAkJdGMtPmxpbmsuc2NyYW1ibGVyX2Rp cyA/ICJkaXNhYmxlZCIgOiAiZW5hYmxlZCIpOwpAQCAtMTAxMyw4ICsxMDEzLDcgQEAgc3RhdGlj IGludCB0Y19tYWluX2xpbmtfZW5hYmxlKHN0cnVjdCB0Y19kYXRhICp0YykKIAogCS8qIEVuYWJs ZSBEUDAgdG8gc3RhcnQgTGluayBUcmFpbmluZyAqLwogCXJldCA9IHJlZ21hcF93cml0ZSh0Yy0+ cmVnbWFwLCBEUDBDVEwsCi0JCQkgICAoKHRjLT5saW5rLmJhc2UuY2FwYWJpbGl0aWVzICYKLQkJ CSAgICAgRFBfTElOS19DQVBfRU5IQU5DRURfRlJBTUlORykgPyBFRl9FTiA6IDApIHwKKwkJCSAg ICh0Yy0+bGluay5iYXNlLmNhcHMuZW5oYW5jZWRfZnJhbWluZyA/IEVGX0VOIDogMCkgfAogCQkJ ICAgRFBfRU4pOwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CkBAIC0xMTY1LDcgKzExNjQsNyBA QCBzdGF0aWMgaW50IHRjX3N0cmVhbV9lbmFibGUoc3RydWN0IHRjX2RhdGEgKnRjKQogCQlyZXR1 cm4gcmV0OwogCiAJdmFsdWUgPSBWSURfTU5fR0VOIHwgRFBfRU47Ci0JaWYgKHRjLT5saW5rLmJh c2UuY2FwYWJpbGl0aWVzICYgRFBfTElOS19DQVBfRU5IQU5DRURfRlJBTUlORykKKwlpZiAodGMt PmxpbmsuYmFzZS5jYXBzLmVuaGFuY2VkX2ZyYW1pbmcpCiAJCXZhbHVlIHw9IEVGX0VOOwogCXJl dCA9IHJlZ21hcF93cml0ZSh0Yy0+cmVnbWFwLCBEUDBDVEwsIHZhbHVlKTsKIAlpZiAocmV0KQpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9kcF9oZWxwZXIuYyBiL2RyaXZlcnMvZ3B1 L2RybS9kcm1fZHBfaGVscGVyLmMKaW5kZXggMzY1ZGU2M2EwMmZiLi5iZGY5OTliYjZjZmEgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZHBfaGVscGVyLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2RybV9kcF9oZWxwZXIuYwpAQCAtMzM2LDYgKzMzNiwxOCBAQCBpbnQgZHJtX2RwX2Rw Y2RfcmVhZF9saW5rX3N0YXR1cyhzdHJ1Y3QgZHJtX2RwX2F1eCAqYXV4LAogfQogRVhQT1JUX1NZ TUJPTChkcm1fZHBfZHBjZF9yZWFkX2xpbmtfc3RhdHVzKTsKIAorc3RhdGljIHZvaWQgZHJtX2Rw X2xpbmtfY2Fwc19yZXNldChzdHJ1Y3QgZHJtX2RwX2xpbmtfY2FwcyAqY2FwcykKK3sKKwljYXBz LT5lbmhhbmNlZF9mcmFtaW5nID0gZmFsc2U7Cit9CisKK3ZvaWQgZHJtX2RwX2xpbmtfY2Fwc19j b3B5KHN0cnVjdCBkcm1fZHBfbGlua19jYXBzICpkZXN0LAorCQkJICAgY29uc3Qgc3RydWN0IGRy bV9kcF9saW5rX2NhcHMgKnNyYykKK3sKKwlkZXN0LT5lbmhhbmNlZF9mcmFtaW5nID0gc3JjLT5l bmhhbmNlZF9mcmFtaW5nOworfQorRVhQT1JUX1NZTUJPTChkcm1fZHBfbGlua19jYXBzX2NvcHkp OworCiBzdGF0aWMgdm9pZCBkcm1fZHBfbGlua19yZXNldChzdHJ1Y3QgZHJtX2RwX2xpbmsgKmxp bmspCiB7CiAJaWYgKCFsaW5rKQpAQCAtMzQ0LDcgKzM1Niw4IEBAIHN0YXRpYyB2b2lkIGRybV9k cF9saW5rX3Jlc2V0KHN0cnVjdCBkcm1fZHBfbGluayAqbGluaykKIAlsaW5rLT5yZXZpc2lvbiA9 IDA7CiAJbGluay0+bWF4X3JhdGUgPSAwOwogCWxpbmstPm1heF9sYW5lcyA9IDA7Ci0JbGluay0+ Y2FwYWJpbGl0aWVzID0gMDsKKworCWRybV9kcF9saW5rX2NhcHNfcmVzZXQoJmxpbmstPmNhcHMp OwogCiAJbGluay0+cmF0ZSA9IDA7CiAJbGluay0+bGFuZXMgPSAwOwpAQCAtMzc3LDcgKzM5MCw3 IEBAIGludCBkcm1fZHBfbGlua19wcm9iZShzdHJ1Y3QgZHJtX2RwX2F1eCAqYXV4LCBzdHJ1Y3Qg ZHJtX2RwX2xpbmsgKmxpbmspCiAJbGluay0+bWF4X2xhbmVzID0gdmFsdWVzWzJdICYgRFBfTUFY X0xBTkVfQ09VTlRfTUFTSzsKIAogCWlmICh2YWx1ZXNbMl0gJiBEUF9FTkhBTkNFRF9GUkFNRV9D QVApCi0JCWxpbmstPmNhcGFiaWxpdGllcyB8PSBEUF9MSU5LX0NBUF9FTkhBTkNFRF9GUkFNSU5H OworCQlsaW5rLT5jYXBzLmVuaGFuY2VkX2ZyYW1pbmcgPSB0cnVlOwogCiAJbGluay0+cmF0ZSA9 IGxpbmstPm1heF9yYXRlOwogCWxpbmstPmxhbmVzID0gbGluay0+bWF4X2xhbmVzOwpAQCAtNDcw LDcgKzQ4Myw3IEBAIGludCBkcm1fZHBfbGlua19jb25maWd1cmUoc3RydWN0IGRybV9kcF9hdXgg KmF1eCwgc3RydWN0IGRybV9kcF9saW5rICpsaW5rKQogCXZhbHVlc1swXSA9IGRybV9kcF9saW5r X3JhdGVfdG9fYndfY29kZShsaW5rLT5yYXRlKTsKIAl2YWx1ZXNbMV0gPSBsaW5rLT5sYW5lczsK IAotCWlmIChsaW5rLT5jYXBhYmlsaXRpZXMgJiBEUF9MSU5LX0NBUF9FTkhBTkNFRF9GUkFNSU5H KQorCWlmIChsaW5rLT5jYXBzLmVuaGFuY2VkX2ZyYW1pbmcpCiAJCXZhbHVlc1sxXSB8PSBEUF9M QU5FX0NPVU5UX0VOSEFOQ0VEX0ZSQU1FX0VOOwogCiAJZXJyID0gZHJtX2RwX2RwY2Rfd3JpdGUo YXV4LCBEUF9MSU5LX0JXX1NFVCwgdmFsdWVzLCBzaXplb2YodmFsdWVzKSk7CmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vbXNtL2VkcC9lZHBfY3RybC5jIGIvZHJpdmVycy9ncHUvZHJtL21z bS9lZHAvZWRwX2N0cmwuYwppbmRleCA0YjMxYmMzMGJlMmMuLjBhNmM3N2U3OTFhYSAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9lZHAvZWRwX2N0cmwuYworKysgYi9kcml2ZXJzL2dw dS9kcm0vbXNtL2VkcC9lZHBfY3RybC5jCkBAIC00MzksNyArNDM5LDcgQEAgc3RhdGljIHZvaWQg ZWRwX2NvbmZpZ19jdHJsKHN0cnVjdCBlZHBfY3RybCAqY3RybCkKIAogCWRhdGEgPSBFRFBfQ09O RklHVVJBVElPTl9DVFJMX0xBTkVTKGN0cmwtPmxhbmVfY250IC0gMSk7CiAKLQlpZiAoY3RybC0+ ZHBfbGluay5jYXBhYmlsaXRpZXMgJiBEUF9MSU5LX0NBUF9FTkhBTkNFRF9GUkFNSU5HKQorCWlm IChjdHJsLT5kcF9saW5rLmNhcHMuZW5oYW5jZWRfZnJhbWluZykKIAkJZGF0YSB8PSBFRFBfQ09O RklHVVJBVElPTl9DVFJMX0VOSEFOQ0VEX0ZSQU1JTkc7CiAKIAlkZXB0aCA9IEVEUF82QklUOwpA QCAtNzYxLDcgKzc2MSw3IEBAIHN0YXRpYyBpbnQgZWRwX2RvX2xpbmtfdHJhaW4oc3RydWN0IGVk cF9jdHJsICpjdHJsKQogCSAqLwogCWRwX2xpbmsubGFuZXMgPSBjdHJsLT5sYW5lX2NudDsKIAlk cF9saW5rLnJhdGUgPSBkcm1fZHBfYndfY29kZV90b19saW5rX3JhdGUoY3RybC0+bGlua19yYXRl KTsKLQlkcF9saW5rLmNhcGFiaWxpdGllcyA9IGN0cmwtPmRwX2xpbmsuY2FwYWJpbGl0aWVzOwor CWRybV9kcF9saW5rX2NhcHNfY29weSgmZHBfbGluay5jYXBzLCAmY3RybC0+ZHBfbGluay5jYXBz KTsKIAlpZiAoZHJtX2RwX2xpbmtfY29uZmlndXJlKGN0cmwtPmRybV9hdXgsICZkcF9saW5rKSA8 IDApCiAJCXJldHVybiBFRFBfVFJBSU5fRkFJTDsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL3RlZ3JhL3Nvci5jIGIvZHJpdmVycy9ncHUvZHJtL3RlZ3JhL3Nvci5jCmluZGV4IGNiOTQw OTFkOThhNy4uMGIwMzNiOTY0YWMwIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vdGVncmEv c29yLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3RlZ3JhL3Nvci5jCkBAIC05NzYsNyArOTc2LDcg QEAgc3RhdGljIGludCB0ZWdyYV9zb3JfY29tcHV0ZV9jb25maWcoc3RydWN0IHRlZ3JhX3NvciAq c29yLAogCW51bSA9ICgobW9kZS0+aHRvdGFsIC0gbW9kZS0+aGRpc3BsYXkpIC0gNykgKiBsaW5r X3JhdGU7CiAJY29uZmlnLT5oYmxhbmtfc3ltYm9scyA9IGRpdl91NjQobnVtLCBwY2xrKTsKIAot CWlmIChsaW5rLT5jYXBhYmlsaXRpZXMgJiBEUF9MSU5LX0NBUF9FTkhBTkNFRF9GUkFNSU5HKQor CWlmIChsaW5rLT5jYXBzLmVuaGFuY2VkX2ZyYW1pbmcpCiAJCWNvbmZpZy0+aGJsYW5rX3N5bWJv bHMgLT0gMzsKIAogCWNvbmZpZy0+aGJsYW5rX3N5bWJvbHMgLT0gMTIgLyBsaW5rLT5sYW5lczsK QEAgLTE5MTcsNyArMTkxNyw3IEBAIHN0YXRpYyB2b2lkIHRlZ3JhX3Nvcl9lZHBfZW5hYmxlKHN0 cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlcikKIAl2YWx1ZSAmPSB+U09SX0RQX0xJTktDVExfTEFO RV9DT1VOVF9NQVNLOwogCXZhbHVlIHw9IFNPUl9EUF9MSU5LQ1RMX0xBTkVfQ09VTlQobGFuZXMp OwogCi0JaWYgKGxpbmsuY2FwYWJpbGl0aWVzICYgRFBfTElOS19DQVBfRU5IQU5DRURfRlJBTUlO RykKKwlpZiAobGluay5jYXBzLmVuaGFuY2VkX2ZyYW1pbmcpCiAJCXZhbHVlIHw9IFNPUl9EUF9M SU5LQ1RMX0VOSEFOQ0VEX0ZSQU1FOwogCiAJdGVncmFfc29yX3dyaXRlbChzb3IsIHZhbHVlLCBT T1JfRFBfTElOS0NUTDApOwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2RwX2hlbHBlci5o IGIvaW5jbHVkZS9kcm0vZHJtX2RwX2hlbHBlci5oCmluZGV4IDljNjc1YmRlMTFlOC4uMjc1OWY4 ZDdlOTBkIDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm1fZHBfaGVscGVyLmgKKysrIGIvaW5j bHVkZS9kcm0vZHJtX2RwX2hlbHBlci5oCkBAIC0xMzU2LDE0ICsxMzU2LDI0IEBAIGludCBkcm1f ZHBfZHBjZF9yZWFkX2xpbmtfc3RhdHVzKHN0cnVjdCBkcm1fZHBfYXV4ICphdXgsCiAvKgogICog RGlzcGxheVBvcnQgbGluawogICovCi0jZGVmaW5lIERQX0xJTktfQ0FQX0VOSEFOQ0VEX0ZSQU1J TkcgKDEgPDwgMCkKKworLyoqCisgKiBzdHJ1Y3QgZHJtX2RwX2xpbmtfY2FwcyAtIERQIGxpbmsg Y2FwYWJpbGl0aWVzCisgKiBAZW5oYW5jZWRfZnJhbWluZzogZW5oYW5jZWQgZnJhbWluZyBjYXBh YmlsaXR5IChtYW5kYXRvcnkgYXMgb2YgRFAgMS4yKQorICovCitzdHJ1Y3QgZHJtX2RwX2xpbmtf Y2FwcyB7CisJYm9vbCBlbmhhbmNlZF9mcmFtaW5nOworfTsKKwordm9pZCBkcm1fZHBfbGlua19j YXBzX2NvcHkoc3RydWN0IGRybV9kcF9saW5rX2NhcHMgKmRlc3QsCisJCQkgICBjb25zdCBzdHJ1 Y3QgZHJtX2RwX2xpbmtfY2FwcyAqc3JjKTsKIAogLyoqCiAgKiBzdHJ1Y3QgZHJtX2RwX2xpbmsg LSBEUCBsaW5rIGNhcGFiaWxpdGllcyBhbmQgY29uZmlndXJhdGlvbgogICogQHJldmlzaW9uOiBE UCBzcGVjaWZpY2F0aW9uIHJldmlzaW9uIHN1cHBvcnRlZCBvbiB0aGUgbGluawogICogQG1heF9y YXRlOiBtYXhpbXVtIGNsb2NrIHJhdGUgc3VwcG9ydGVkIG9uIHRoZSBsaW5rCiAgKiBAbWF4X2xh bmVzOiBtYXhpbXVtIG51bWJlciBvZiBsYW5lcyBzdXBwb3J0ZWQgb24gdGhlIGxpbmsKLSAqIEBj YXBhYmlsaXRpZXM6IGJpdG1hc2sgb2YgY2FwYWJpbGl0aWVzIHN1cHBvcnRlZCBvbiB0aGUgbGlu aworICogQGNhcHM6IGNhcGFiaWxpdGllcyBzdXBwb3J0ZWQgb24gdGhlIGxpbmsgKHNlZSAmZHJt X2RwX2xpbmtfY2FwcykKICAqIEByYXRlOiBjdXJyZW50bHkgY29uZmlndXJlZCBsaW5rIHJhdGUK ICAqIEBsYW5lczogY3VycmVudGx5IGNvbmZpZ3VyZWQgbnVtYmVyIG9mIGxhbmVzCiAgKi8KQEAg LTEzNzEsNyArMTM4MSw4IEBAIHN0cnVjdCBkcm1fZHBfbGluayB7CiAJdW5zaWduZWQgY2hhciBy ZXZpc2lvbjsKIAl1bnNpZ25lZCBpbnQgbWF4X3JhdGU7CiAJdW5zaWduZWQgaW50IG1heF9sYW5l czsKLQl1bnNpZ25lZCBsb25nIGNhcGFiaWxpdGllczsKKworCXN0cnVjdCBkcm1fZHBfbGlua19j YXBzIGNhcHM7CiAKIAl1bnNpZ25lZCBpbnQgcmF0ZTsKIAl1bnNpZ25lZCBpbnQgbGFuZXM7Ci0t IAoyLjIyLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbA==