From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thierry Reding Subject: [PATCH 05/21] drm/dp: Turn link capabilities into booleans Date: Mon, 5 Aug 2019 14:23:34 +0200 Message-ID: <20190805122350.8838-5-thierry.reding@gmail.com> References: <20190805122350.8838-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-ed1-x541.google.com (mail-ed1-x541.google.com [IPv6:2a00:1450:4864:20::541]) by gabe.freedesktop.org (Postfix) with ESMTPS id 11ED56E411 for ; Mon, 5 Aug 2019 12:24:00 +0000 (UTC) Received: by mail-ed1-x541.google.com with SMTP id w13so78528322eds.4 for ; Mon, 05 Aug 2019 05:23:59 -0700 (PDT) In-Reply-To: <20190805122350.8838-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 YWlsLmNvbT4KU2lnbmVkLW9mZi1ieTogVGhpZXJyeSBSZWRpbmcgPHRyZWRpbmdAbnZpZGlhLmNv bT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3RjMzU4NzY3LmMgIHwgIDkgKysrKy0tLS0t CiBkcml2ZXJzL2dwdS9kcm0vZHJtX2RwX2hlbHBlci5jICAgIHwgMTkgKysrKysrKysrKysrKysr Ky0tLQogZHJpdmVycy9ncHUvZHJtL21zbS9lZHAvZWRwX2N0cmwuYyB8ICA0ICsrLS0KIGRyaXZl cnMvZ3B1L2RybS90ZWdyYS9zb3IuYyAgICAgICAgfCAgNCArKy0tCiBpbmNsdWRlL2RybS9kcm1f ZHBfaGVscGVyLmggICAgICAgIHwgMTcgKysrKysrKysrKysrKystLS0KIDUgZmlsZXMgY2hhbmdl ZCwgMzggaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2JyaWRnZS90YzM1ODc2Ny5jIGIvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS90YzM1 ODc2Ny5jCmluZGV4IGEzOTAzNmU4OWNmNy4uMWJiZmNjNTUzNGFiIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vYnJpZGdlL3RjMzU4NzY3LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2JyaWRn ZS90YzM1ODc2Ny5jCkBAIC02OTksOCArNjk5LDggQEAgc3RhdGljIGludCB0Y19nZXRfZGlzcGxh eV9wcm9wcyhzdHJ1Y3QgdGNfZGF0YSAqdGMpCiAJCXRjLT5saW5rLmJhc2UucmV2aXNpb24gPj4g NCwgdGMtPmxpbmsuYmFzZS5yZXZpc2lvbiAmIDB4MGYsCiAJCSh0Yy0+bGluay5iYXNlLnJhdGUg PT0gMTYyMDAwKSA/ICIxLjYyR2JwcyIgOiAiMi43R2JwcyIsCiAJCXRjLT5saW5rLmJhc2UubGFu ZXMsCi0JCSh0Yy0+bGluay5iYXNlLmNhcGFiaWxpdGllcyAmIERQX0xJTktfQ0FQX0VOSEFOQ0VE X0ZSQU1JTkcpID8KLQkJImVuaGFuY2VkIiA6ICJub24tZW5oYW5jZWQiKTsKKwkJdGMtPmxpbmsu YmFzZS5jYXBzLmVuaGFuY2VkX2ZyYW1pbmcgPyAiZW5oYW5jZWQiIDoKKwkJCSJub24tZW5oYW5j ZWQiKTsKIAlkZXZfZGJnKHRjLT5kZXYsICJEb3duc3ByZWFkOiAlcywgc2NyYW1ibGVyOiAlc1xu IiwKIAkJdGMtPmxpbmsuc3ByZWFkID8gIjAuNSUiIDogIjAuMCUiLAogCQl0Yy0+bGluay5zY3Jh bWJsZXJfZGlzID8gImRpc2FibGVkIiA6ICJlbmFibGVkIik7CkBAIC0xMDEzLDggKzEwMTMsNyBA QCBzdGF0aWMgaW50IHRjX21haW5fbGlua19lbmFibGUoc3RydWN0IHRjX2RhdGEgKnRjKQogCiAJ LyogRW5hYmxlIERQMCB0byBzdGFydCBMaW5rIFRyYWluaW5nICovCiAJcmV0ID0gcmVnbWFwX3dy aXRlKHRjLT5yZWdtYXAsIERQMENUTCwKLQkJCSAgICgodGMtPmxpbmsuYmFzZS5jYXBhYmlsaXRp ZXMgJgotCQkJICAgICBEUF9MSU5LX0NBUF9FTkhBTkNFRF9GUkFNSU5HKSA/IEVGX0VOIDogMCkg fAorCQkJICAgKHRjLT5saW5rLmJhc2UuY2Fwcy5lbmhhbmNlZF9mcmFtaW5nID8gRUZfRU4gOiAw KSB8CiAJCQkgICBEUF9FTik7CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKQEAgLTExNjUsNyAr MTE2NCw3IEBAIHN0YXRpYyBpbnQgdGNfc3RyZWFtX2VuYWJsZShzdHJ1Y3QgdGNfZGF0YSAqdGMp CiAJCXJldHVybiByZXQ7CiAKIAl2YWx1ZSA9IFZJRF9NTl9HRU4gfCBEUF9FTjsKLQlpZiAodGMt PmxpbmsuYmFzZS5jYXBhYmlsaXRpZXMgJiBEUF9MSU5LX0NBUF9FTkhBTkNFRF9GUkFNSU5HKQor CWlmICh0Yy0+bGluay5iYXNlLmNhcHMuZW5oYW5jZWRfZnJhbWluZykKIAkJdmFsdWUgfD0gRUZf RU47CiAJcmV0ID0gcmVnbWFwX3dyaXRlKHRjLT5yZWdtYXAsIERQMENUTCwgdmFsdWUpOwogCWlm IChyZXQpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2RwX2hlbHBlci5jIGIvZHJp dmVycy9ncHUvZHJtL2RybV9kcF9oZWxwZXIuYwppbmRleCAzNjVkZTYzYTAyZmIuLmJkZjk5OWJi NmNmYSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9kcF9oZWxwZXIuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vZHJtX2RwX2hlbHBlci5jCkBAIC0zMzYsNiArMzM2LDE4IEBAIGludCBk cm1fZHBfZHBjZF9yZWFkX2xpbmtfc3RhdHVzKHN0cnVjdCBkcm1fZHBfYXV4ICphdXgsCiB9CiBF WFBPUlRfU1lNQk9MKGRybV9kcF9kcGNkX3JlYWRfbGlua19zdGF0dXMpOwogCitzdGF0aWMgdm9p ZCBkcm1fZHBfbGlua19jYXBzX3Jlc2V0KHN0cnVjdCBkcm1fZHBfbGlua19jYXBzICpjYXBzKQor eworCWNhcHMtPmVuaGFuY2VkX2ZyYW1pbmcgPSBmYWxzZTsKK30KKwordm9pZCBkcm1fZHBfbGlu a19jYXBzX2NvcHkoc3RydWN0IGRybV9kcF9saW5rX2NhcHMgKmRlc3QsCisJCQkgICBjb25zdCBz dHJ1Y3QgZHJtX2RwX2xpbmtfY2FwcyAqc3JjKQoreworCWRlc3QtPmVuaGFuY2VkX2ZyYW1pbmcg PSBzcmMtPmVuaGFuY2VkX2ZyYW1pbmc7Cit9CitFWFBPUlRfU1lNQk9MKGRybV9kcF9saW5rX2Nh cHNfY29weSk7CisKIHN0YXRpYyB2b2lkIGRybV9kcF9saW5rX3Jlc2V0KHN0cnVjdCBkcm1fZHBf bGluayAqbGluaykKIHsKIAlpZiAoIWxpbmspCkBAIC0zNDQsNyArMzU2LDggQEAgc3RhdGljIHZv aWQgZHJtX2RwX2xpbmtfcmVzZXQoc3RydWN0IGRybV9kcF9saW5rICpsaW5rKQogCWxpbmstPnJl dmlzaW9uID0gMDsKIAlsaW5rLT5tYXhfcmF0ZSA9IDA7CiAJbGluay0+bWF4X2xhbmVzID0gMDsK LQlsaW5rLT5jYXBhYmlsaXRpZXMgPSAwOworCisJZHJtX2RwX2xpbmtfY2Fwc19yZXNldCgmbGlu ay0+Y2Fwcyk7CiAKIAlsaW5rLT5yYXRlID0gMDsKIAlsaW5rLT5sYW5lcyA9IDA7CkBAIC0zNzcs NyArMzkwLDcgQEAgaW50IGRybV9kcF9saW5rX3Byb2JlKHN0cnVjdCBkcm1fZHBfYXV4ICphdXgs IHN0cnVjdCBkcm1fZHBfbGluayAqbGluaykKIAlsaW5rLT5tYXhfbGFuZXMgPSB2YWx1ZXNbMl0g JiBEUF9NQVhfTEFORV9DT1VOVF9NQVNLOwogCiAJaWYgKHZhbHVlc1syXSAmIERQX0VOSEFOQ0VE X0ZSQU1FX0NBUCkKLQkJbGluay0+Y2FwYWJpbGl0aWVzIHw9IERQX0xJTktfQ0FQX0VOSEFOQ0VE X0ZSQU1JTkc7CisJCWxpbmstPmNhcHMuZW5oYW5jZWRfZnJhbWluZyA9IHRydWU7CiAKIAlsaW5r LT5yYXRlID0gbGluay0+bWF4X3JhdGU7CiAJbGluay0+bGFuZXMgPSBsaW5rLT5tYXhfbGFuZXM7 CkBAIC00NzAsNyArNDgzLDcgQEAgaW50IGRybV9kcF9saW5rX2NvbmZpZ3VyZShzdHJ1Y3QgZHJt X2RwX2F1eCAqYXV4LCBzdHJ1Y3QgZHJtX2RwX2xpbmsgKmxpbmspCiAJdmFsdWVzWzBdID0gZHJt X2RwX2xpbmtfcmF0ZV90b19id19jb2RlKGxpbmstPnJhdGUpOwogCXZhbHVlc1sxXSA9IGxpbmst PmxhbmVzOwogCi0JaWYgKGxpbmstPmNhcGFiaWxpdGllcyAmIERQX0xJTktfQ0FQX0VOSEFOQ0VE X0ZSQU1JTkcpCisJaWYgKGxpbmstPmNhcHMuZW5oYW5jZWRfZnJhbWluZykKIAkJdmFsdWVzWzFd IHw9IERQX0xBTkVfQ09VTlRfRU5IQU5DRURfRlJBTUVfRU47CiAKIAllcnIgPSBkcm1fZHBfZHBj ZF93cml0ZShhdXgsIERQX0xJTktfQldfU0VULCB2YWx1ZXMsIHNpemVvZih2YWx1ZXMpKTsKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZWRwL2VkcF9jdHJsLmMgYi9kcml2ZXJzL2dw dS9kcm0vbXNtL2VkcC9lZHBfY3RybC5jCmluZGV4IDRiMzFiYzMwYmUyYy4uMGE2Yzc3ZTc5MWFh IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2VkcC9lZHBfY3RybC5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9tc20vZWRwL2VkcF9jdHJsLmMKQEAgLTQzOSw3ICs0MzksNyBAQCBzdGF0 aWMgdm9pZCBlZHBfY29uZmlnX2N0cmwoc3RydWN0IGVkcF9jdHJsICpjdHJsKQogCiAJZGF0YSA9 IEVEUF9DT05GSUdVUkFUSU9OX0NUUkxfTEFORVMoY3RybC0+bGFuZV9jbnQgLSAxKTsKIAotCWlm IChjdHJsLT5kcF9saW5rLmNhcGFiaWxpdGllcyAmIERQX0xJTktfQ0FQX0VOSEFOQ0VEX0ZSQU1J TkcpCisJaWYgKGN0cmwtPmRwX2xpbmsuY2Fwcy5lbmhhbmNlZF9mcmFtaW5nKQogCQlkYXRhIHw9 IEVEUF9DT05GSUdVUkFUSU9OX0NUUkxfRU5IQU5DRURfRlJBTUlORzsKIAogCWRlcHRoID0gRURQ XzZCSVQ7CkBAIC03NjEsNyArNzYxLDcgQEAgc3RhdGljIGludCBlZHBfZG9fbGlua190cmFpbihz dHJ1Y3QgZWRwX2N0cmwgKmN0cmwpCiAJICovCiAJZHBfbGluay5sYW5lcyA9IGN0cmwtPmxhbmVf Y250OwogCWRwX2xpbmsucmF0ZSA9IGRybV9kcF9id19jb2RlX3RvX2xpbmtfcmF0ZShjdHJsLT5s aW5rX3JhdGUpOwotCWRwX2xpbmsuY2FwYWJpbGl0aWVzID0gY3RybC0+ZHBfbGluay5jYXBhYmls aXRpZXM7CisJZHJtX2RwX2xpbmtfY2Fwc19jb3B5KCZkcF9saW5rLmNhcHMsICZjdHJsLT5kcF9s aW5rLmNhcHMpOwogCWlmIChkcm1fZHBfbGlua19jb25maWd1cmUoY3RybC0+ZHJtX2F1eCwgJmRw X2xpbmspIDwgMCkKIAkJcmV0dXJuIEVEUF9UUkFJTl9GQUlMOwogCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vdGVncmEvc29yLmMgYi9kcml2ZXJzL2dwdS9kcm0vdGVncmEvc29yLmMKaW5k ZXggN2I3OTUxNjJkN2IzLi5mNzk0N2UwMjM1MTQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS90ZWdyYS9zb3IuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vdGVncmEvc29yLmMKQEAgLTk3Myw3 ICs5NzMsNyBAQCBzdGF0aWMgaW50IHRlZ3JhX3Nvcl9jb21wdXRlX2NvbmZpZyhzdHJ1Y3QgdGVn cmFfc29yICpzb3IsCiAJbnVtID0gKChtb2RlLT5odG90YWwgLSBtb2RlLT5oZGlzcGxheSkgLSA3 KSAqIGxpbmtfcmF0ZTsKIAljb25maWctPmhibGFua19zeW1ib2xzID0gZGl2X3U2NChudW0sIHBj bGspOwogCi0JaWYgKGxpbmstPmNhcGFiaWxpdGllcyAmIERQX0xJTktfQ0FQX0VOSEFOQ0VEX0ZS QU1JTkcpCisJaWYgKGxpbmstPmNhcHMuZW5oYW5jZWRfZnJhbWluZykKIAkJY29uZmlnLT5oYmxh bmtfc3ltYm9scyAtPSAzOwogCiAJY29uZmlnLT5oYmxhbmtfc3ltYm9scyAtPSAxMiAvIGxpbmst PmxhbmVzOwpAQCAtMTkxNCw3ICsxOTE0LDcgQEAgc3RhdGljIHZvaWQgdGVncmFfc29yX2VkcF9l bmFibGUoc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyKQogCXZhbHVlICY9IH5TT1JfRFBfTElO S0NUTF9MQU5FX0NPVU5UX01BU0s7CiAJdmFsdWUgfD0gU09SX0RQX0xJTktDVExfTEFORV9DT1VO VChsYW5lcyk7CiAKLQlpZiAobGluay5jYXBhYmlsaXRpZXMgJiBEUF9MSU5LX0NBUF9FTkhBTkNF RF9GUkFNSU5HKQorCWlmIChsaW5rLmNhcHMuZW5oYW5jZWRfZnJhbWluZykKIAkJdmFsdWUgfD0g U09SX0RQX0xJTktDVExfRU5IQU5DRURfRlJBTUU7CiAKIAl0ZWdyYV9zb3Jfd3JpdGVsKHNvciwg dmFsdWUsIFNPUl9EUF9MSU5LQ1RMMCk7CmRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fZHBf aGVscGVyLmggYi9pbmNsdWRlL2RybS9kcm1fZHBfaGVscGVyLmgKaW5kZXggOWM2NzViZGUxMWU4 Li4yNzU5ZjhkN2U5MGQgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9kcF9oZWxwZXIuaAor KysgYi9pbmNsdWRlL2RybS9kcm1fZHBfaGVscGVyLmgKQEAgLTEzNTYsMTQgKzEzNTYsMjQgQEAg aW50IGRybV9kcF9kcGNkX3JlYWRfbGlua19zdGF0dXMoc3RydWN0IGRybV9kcF9hdXggKmF1eCwK IC8qCiAgKiBEaXNwbGF5UG9ydCBsaW5rCiAgKi8KLSNkZWZpbmUgRFBfTElOS19DQVBfRU5IQU5D RURfRlJBTUlORyAoMSA8PCAwKQorCisvKioKKyAqIHN0cnVjdCBkcm1fZHBfbGlua19jYXBzIC0g RFAgbGluayBjYXBhYmlsaXRpZXMKKyAqIEBlbmhhbmNlZF9mcmFtaW5nOiBlbmhhbmNlZCBmcmFt aW5nIGNhcGFiaWxpdHkgKG1hbmRhdG9yeSBhcyBvZiBEUCAxLjIpCisgKi8KK3N0cnVjdCBkcm1f ZHBfbGlua19jYXBzIHsKKwlib29sIGVuaGFuY2VkX2ZyYW1pbmc7Cit9OworCit2b2lkIGRybV9k cF9saW5rX2NhcHNfY29weShzdHJ1Y3QgZHJtX2RwX2xpbmtfY2FwcyAqZGVzdCwKKwkJCSAgIGNv bnN0IHN0cnVjdCBkcm1fZHBfbGlua19jYXBzICpzcmMpOwogCiAvKioKICAqIHN0cnVjdCBkcm1f ZHBfbGluayAtIERQIGxpbmsgY2FwYWJpbGl0aWVzIGFuZCBjb25maWd1cmF0aW9uCiAgKiBAcmV2 aXNpb246IERQIHNwZWNpZmljYXRpb24gcmV2aXNpb24gc3VwcG9ydGVkIG9uIHRoZSBsaW5rCiAg KiBAbWF4X3JhdGU6IG1heGltdW0gY2xvY2sgcmF0ZSBzdXBwb3J0ZWQgb24gdGhlIGxpbmsKICAq IEBtYXhfbGFuZXM6IG1heGltdW0gbnVtYmVyIG9mIGxhbmVzIHN1cHBvcnRlZCBvbiB0aGUgbGlu awotICogQGNhcGFiaWxpdGllczogYml0bWFzayBvZiBjYXBhYmlsaXRpZXMgc3VwcG9ydGVkIG9u IHRoZSBsaW5rCisgKiBAY2FwczogY2FwYWJpbGl0aWVzIHN1cHBvcnRlZCBvbiB0aGUgbGluayAo c2VlICZkcm1fZHBfbGlua19jYXBzKQogICogQHJhdGU6IGN1cnJlbnRseSBjb25maWd1cmVkIGxp bmsgcmF0ZQogICogQGxhbmVzOiBjdXJyZW50bHkgY29uZmlndXJlZCBudW1iZXIgb2YgbGFuZXMK ICAqLwpAQCAtMTM3MSw3ICsxMzgxLDggQEAgc3RydWN0IGRybV9kcF9saW5rIHsKIAl1bnNpZ25l ZCBjaGFyIHJldmlzaW9uOwogCXVuc2lnbmVkIGludCBtYXhfcmF0ZTsKIAl1bnNpZ25lZCBpbnQg bWF4X2xhbmVzOwotCXVuc2lnbmVkIGxvbmcgY2FwYWJpbGl0aWVzOworCisJc3RydWN0IGRybV9k cF9saW5rX2NhcHMgY2FwczsKIAogCXVuc2lnbmVkIGludCByYXRlOwogCXVuc2lnbmVkIGludCBs YW5lczsKLS0gCjIuMjIuMAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJp LWRldmVs