From mboxrd@z Thu Jan 1 00:00:00 1970 From: Radhakrishna Sripada Subject: [PATCH v13 1/2] drm: Add connector property to limit max bpc Date: Fri, 12 Oct 2018 00:25:31 -0700 Message-ID: <20181012072532.25260-1-radhakrishna.sripada@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: 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 Cc: Sunpeng Li , Daniel Vetter , Kishore Kadiyala , dri-devel@lists.freedesktop.org, Rodrigo Vivi List-Id: dri-devel@lists.freedesktop.org QXQgdGltZXMgMTJicGMgSERNSSBjYW5ub3QgYmUgZHJpdmVuIGR1ZSB0byBmYXVsdHkgY2FibGVz LCBkb25nbGVzCmxldmVsIHNoaWZ0ZXJzIGV0Yy4gVG8gd29ya2Fyb3VuZCB0aGVtIHdlIG1heSBu ZWVkIHRvIGRyaXZlIHRoZSBvdXRwdXQKYXQgYSBsb3dlciBicGMuIEN1cnJlbnRseSB0aGUgdXNl ciBzcGFjZSBkb2VzIG5vdCBoYXZlIGEgd2F5IHRvIGxpbWl0CnRoZSBicGMuIFRoZSBkZWZhdWx0 IGJwYyB0byBiZSBwcm9ncmFtbWVkIGlzIGRlY2lkZWQgYnkgdGhlIGRyaXZlciBhbmQKaXMgcnVu IGFnYWluc3QgY29ubmVjdG9yIGxpbWl0YXRpb25zLgoKQ3JlYXRpbmcgYSBuZXcgY29ubmVjdG9y IHByb3BlcnR5ICJtYXggYnBjIiBpbiBvcmRlciB0byBsaW1pdCB0aGUgYnBjLgp4cmFuZHIgY2Fu IG1ha2UgdXNlIG9mIHRoaXMgY29ubmVjdG9yIHByb3BlcnR5IHRvIG1ha2Ugc3VyZSB0aGF0IGJw YyBkb2VzCm5vdCBleGNlZWQgdGhlIGNvbmZpZ3VyZWQgdmFsdWUuIFRoaXMgcHJvcGVydHkgY2Fu IGJlIHVzZWQgYnkgdXNlcnNwYWNlIHRvCnNldCB0aGUgYnBjLgoKVjI6IEluaXRpYWxpemUgbWF4 X2JwYyB0byBzYXRpc2Z5IGttc19wcm9wZXJ0aWVzClYzOiBNb3ZlIHRoZSBwcm9wZXJ0eSB0byBk cm1fY29ubmVjdG9yClY0OiBTcGxpdCBkcm0gYW5kIGk5MTUgY29tcG9uZW50cyhWaWxsZSkKVjU6 IE1ha2UgdGhlIHByb3BlcnR5IHBlciBjb25uZWN0b3IoVmlsbGUpClY2OiBDb21wYXJlIHRoZSBy ZXF1ZXN0ZWQgYnBjIHRvIGNvbm5lY3RvciBicGMoRGFuaWVsKQogICAgTW92ZSB0aGUgYXR0YWNo X3Byb3BlcnR5IGZ1bmN0aW9uIHRvIGNvcmUoVmlsbGUpClY3OiBGaXggY2hlY2twYXRjaCB3YXJu aW5ncwpWODogU2ltcGxpZnkgdGhlIGNvbm5lY3RvciBjaGVjayBjb2RlKFZpbGxlKQpWOTogQ29u c3QgZGlzcGxheV9pbmZvKFZpbGxlKQpWMTAsVjExOiBGaXggQ0kgaXNzdWVzLgpWMTI6IEFkZCB0 aGUgS2VybmVsIGRvY3VtZW50YXRpb24oRGFuaWVsKQoKQ2M6IFZpbGxlIFN5cmrDpGzDpCA8dmls bGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+CkNjOiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0 dGVyQGZmd2xsLmNoPgpDYzogS2lzaG9yZSBLYWRpeWFsYSA8a2lzaG9yZS5rYWRpeWFsYUBpbnRl bC5jb20+CkNjOiBSb2RyaWdvIFZpdmkgPHJvZHJpZ28udml2aUBpbnRlbC5jb20+CkNjOiBNYW5h c2kgTmF2YXJlIDxtYW5hc2kuZC5uYXZhcmVAaW50ZWwuY29tPgpDYzogU3RhbmlzbGF2IExpc292 c2tpeSA8c3RhbmlzbGF2Lmxpc292c2tpeUBpbnRlbC5jb20+CkNjOiBTdW5wZW5nIExpIDxzdW5w ZW5nLmxpQGFtZC5jb20+CkFja2VkLWJ5OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZm d2xsLmNoPgpTaWduZWQtb2ZmLWJ5OiBSYWRoYWtyaXNobmEgU3JpcGFkYSA8cmFkaGFrcmlzaG5h LnNyaXBhZGFAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMgICAg ICAgIHwgIDUgKysrKysKIGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jIHwgIDQg KysrKwogZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfdWFwaS5jICAgfCAgNCArKysrCiBkcml2 ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jICAgICB8IDM5ICsrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysKIGluY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaCAgICAgICAgIHwg MjAgKysrKysrKysrKysrKysrKysrKwogNSBmaWxlcyBjaGFuZ2VkLCA3MiBpbnNlcnRpb25zKCsp CgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYyBiL2RyaXZlcnMvZ3B1 L2RybS9kcm1fYXRvbWljLmMKaW5kZXggMjg3MGFlMjA1MjM3Li5jZDgzNjJkYzRmNzQgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2RybV9hdG9taWMuYwpAQCAtMzkwLDYgKzM5MCwxMSBAQCBzdGF0aWMgaW50IGRybV9hdG9taWNf Y29ubmVjdG9yX2NoZWNrKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiB7CiAJc3Ry dWN0IGRybV9jcnRjX3N0YXRlICpjcnRjX3N0YXRlOwogCXN0cnVjdCBkcm1fd3JpdGViYWNrX2pv YiAqd3JpdGViYWNrX2pvYiA9IHN0YXRlLT53cml0ZWJhY2tfam9iOworCWNvbnN0IHN0cnVjdCBk cm1fZGlzcGxheV9pbmZvICppbmZvID0gJmNvbm5lY3Rvci0+ZGlzcGxheV9pbmZvOworCisJc3Rh dGUtPm1heF9icGMgPSBpbmZvLT5icGMgPyBpbmZvLT5icGMgOiA4OworCWlmIChjb25uZWN0b3It Pm1heF9icGNfcHJvcGVydHkpCisJCXN0YXRlLT5tYXhfYnBjID0gbWluKHN0YXRlLT5tYXhfYnBj LCBzdGF0ZS0+bWF4X3JlcXVlc3RlZF9icGMpOwogCiAJaWYgKChjb25uZWN0b3ItPmNvbm5lY3Rv cl90eXBlICE9IERSTV9NT0RFX0NPTk5FQ1RPUl9XUklURUJBQ0spIHx8ICF3cml0ZWJhY2tfam9i KQogCQlyZXR1cm4gMDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hl bHBlci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMKaW5kZXggNmY2Njc3 N2RjYTRiLi5kNjFhNzRiMjU0ZjUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRv bWljX2hlbHBlci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jCkBA IC02NTAsNiArNjUwLDEwIEBAIGRybV9hdG9taWNfaGVscGVyX2NoZWNrX21vZGVzZXQoc3RydWN0 IGRybV9kZXZpY2UgKmRldiwKIAkJCWlmIChvbGRfY29ubmVjdG9yX3N0YXRlLT5saW5rX3N0YXR1 cyAhPQogCQkJICAgIG5ld19jb25uZWN0b3Jfc3RhdGUtPmxpbmtfc3RhdHVzKQogCQkJCW5ld19j cnRjX3N0YXRlLT5jb25uZWN0b3JzX2NoYW5nZWQgPSB0cnVlOworCisJCQlpZiAob2xkX2Nvbm5l Y3Rvcl9zdGF0ZS0+bWF4X3JlcXVlc3RlZF9icGMgIT0KKwkJCSAgICBuZXdfY29ubmVjdG9yX3N0 YXRlLT5tYXhfcmVxdWVzdGVkX2JwYykKKwkJCQluZXdfY3J0Y19zdGF0ZS0+Y29ubmVjdG9yc19j aGFuZ2VkID0gdHJ1ZTsKIAkJfQogCiAJCWlmIChmdW5jcy0+YXRvbWljX2NoZWNrKQpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfdWFwaS5jIGIvZHJpdmVycy9ncHUvZHJt L2RybV9hdG9taWNfdWFwaS5jCmluZGV4IGEyMmQ2ZjI2OWIwNy4uNzQ5MjgxOWM4MWNlIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY191YXBpLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2RybV9hdG9taWNfdWFwaS5jCkBAIC03NjEsNiArNzYxLDggQEAgc3RhdGljIGludCBk cm1fYXRvbWljX2Nvbm5lY3Rvcl9zZXRfcHJvcGVydHkoc3RydWN0IGRybV9jb25uZWN0b3IgKmNv bm5lY3RvciwKIAogCQlyZXR1cm4gc2V0X291dF9mZW5jZV9mb3JfY29ubmVjdG9yKHN0YXRlLT5z dGF0ZSwgY29ubmVjdG9yLAogCQkJCQkJICAgZmVuY2VfcHRyKTsKKwl9IGVsc2UgaWYgKHByb3Bl cnR5ID09IGNvbm5lY3Rvci0+bWF4X2JwY19wcm9wZXJ0eSkgeworCQlzdGF0ZS0+bWF4X3JlcXVl c3RlZF9icGMgPSB2YWw7CiAJfSBlbHNlIGlmIChjb25uZWN0b3ItPmZ1bmNzLT5hdG9taWNfc2V0 X3Byb3BlcnR5KSB7CiAJCXJldHVybiBjb25uZWN0b3ItPmZ1bmNzLT5hdG9taWNfc2V0X3Byb3Bl cnR5KGNvbm5lY3RvciwKIAkJCQlzdGF0ZSwgcHJvcGVydHksIHZhbCk7CkBAIC04MjUsNiArODI3 LDggQEAgZHJtX2F0b21pY19jb25uZWN0b3JfZ2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVj dG9yICpjb25uZWN0b3IsCiAJCSp2YWwgPSAwOwogCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29u ZmlnLT53cml0ZWJhY2tfb3V0X2ZlbmNlX3B0cl9wcm9wZXJ0eSkgewogCQkqdmFsID0gMDsKKwl9 IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbm5lY3Rvci0+bWF4X2JwY19wcm9wZXJ0eSkgeworCQkq dmFsID0gc3RhdGUtPm1heF9yZXF1ZXN0ZWRfYnBjOwogCX0gZWxzZSBpZiAoY29ubmVjdG9yLT5m dW5jcy0+YXRvbWljX2dldF9wcm9wZXJ0eSkgewogCQlyZXR1cm4gY29ubmVjdG9yLT5mdW5jcy0+ YXRvbWljX2dldF9wcm9wZXJ0eShjb25uZWN0b3IsCiAJCQkJc3RhdGUsIHByb3BlcnR5LCB2YWwp OwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYyBiL2RyaXZlcnMv Z3B1L2RybS9kcm1fY29ubmVjdG9yLmMKaW5kZXggNWQwMTQxNGVjOWY3Li5hMzQ2MDA0YTFjNGYg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVjdG9yLmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYwpAQCAtOTMyLDYgKzkzMiwxMSBAQCBEUk1fRU5VTV9O QU1FX0ZOKGRybV9nZXRfY29udGVudF9wcm90ZWN0aW9uX25hbWUsIGRybV9jcF9lbnVtX2xpc3Qp CiAgKgkgIGlzIG5vIGxvbmdlciBwcm90ZWN0ZWQgYW5kIHVzZXJzcGFjZSBzaG91bGQgdGFrZSBh cHByb3ByaWF0ZSBhY3Rpb24KICAqCSAgKHdoYXRldmVyIHRoYXQgbWlnaHQgYmUpLgogICoKKyAq IG1heCBicGM6CisgKglUaGlzIHJhbmdlIHByb3BlcnR5IGlzIHVzZWQgYnkgdXNlcnNwYWNlIHRv IGxpbWl0IHRoZSBiaXQgZGVwdGguIFdoZW4KKyAqCXVzZWQgdGhlIGRyaXZlciB3b3VsZCBsaW1p dCB0aGUgYnBjIGluIGFjY29yZGFuY2Ugd2l0aCB0aGUgdmFsaWQgcmFuZ2UKKyAqCXN1cHBvcnRl ZCBieSB0aGUgaGFyZHdhcmUgYW5kIHNpbmsuCisgKgogICogQ29ubmVjdG9ycyBhbHNvIGhhdmUg b25lIHN0YW5kYXJkaXplZCBhdG9taWMgcHJvcGVydHk6CiAgKgogICogQ1JUQ19JRDoKQEAgLTE2 MDAsNiArMTYwNSw0MCBAQCB2b2lkIGRybV9jb25uZWN0b3Jfc2V0X2xpbmtfc3RhdHVzX3Byb3Bl cnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiBFWFBPUlRfU1lNQk9MKGRybV9j b25uZWN0b3Jfc2V0X2xpbmtfc3RhdHVzX3Byb3BlcnR5KTsKIAogLyoqCisgKiBkcm1fY29ubmVj dG9yX2F0dGFjaF9tYXhfYnBjX3Byb3BlcnR5IC0gYXR0YWNoICJtYXggYnBjIiBwcm9wZXJ0eQor ICogQGNvbm5lY3RvcjogY29ubmVjdG9yIHRvIGF0dGFjaCBtYXggYnBjIHByb3BlcnR5IG9uLgor ICogQG1pbjogVGhlIG1pbmltdW0gYml0IGRlcHRoIHN1cHBvcnRlZCBieSB0aGUgY29ubmVjdG9y LgorICogQG1heDogVGhlIG1heGltdW0gYml0IGRlcHRoIHN1cHBvcnRlZCBieSB0aGUgY29ubmVj dG9yLgorICoKKyAqIFRoaXMgaXMgdXNlZCB0byBhZGQgc3VwcG9ydCBmb3IgbGltaXRpbmcgdGhl IGJpdCBkZXB0aCBvbiBhIGNvbm5lY3Rvci4KKyAqCisgKiBSZXR1cm5zOgorICogWmVybyBvbiBz dWNjZXNzLCBuZWdhdGl2ZSBlcnJubyBvbiBmYWlsdXJlLgorICovCitpbnQgZHJtX2Nvbm5lY3Rv cl9hdHRhY2hfbWF4X2JwY19wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9y LAorCQkJCQkgIGludCBtaW4sIGludCBtYXgpCit7CisJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9 IGNvbm5lY3Rvci0+ZGV2OworCXN0cnVjdCBkcm1fcHJvcGVydHkgKnByb3A7CisKKwlwcm9wID0g Y29ubmVjdG9yLT5tYXhfYnBjX3Byb3BlcnR5OworCWlmICghcHJvcCkgeworCQlwcm9wID0gZHJt X3Byb3BlcnR5X2NyZWF0ZV9yYW5nZShkZXYsIDAsICJtYXggYnBjIiwgbWluLCBtYXgpOworCQlp ZiAoIXByb3ApCisJCQlyZXR1cm4gLUVOT01FTTsKKworCQljb25uZWN0b3ItPm1heF9icGNfcHJv cGVydHkgPSBwcm9wOworCX0KKworCWRybV9vYmplY3RfYXR0YWNoX3Byb3BlcnR5KCZjb25uZWN0 b3ItPmJhc2UsIHByb3AsIG1heCk7CisJY29ubmVjdG9yLT5zdGF0ZS0+bWF4X3JlcXVlc3RlZF9i cGMgPSBtYXg7CisJY29ubmVjdG9yLT5zdGF0ZS0+bWF4X2JwYyA9IG1heDsKKworCXJldHVybiAw OworfQorRVhQT1JUX1NZTUJPTChkcm1fY29ubmVjdG9yX2F0dGFjaF9tYXhfYnBjX3Byb3BlcnR5 KTsKKworLyoqCiAgKiBkcm1fY29ubmVjdG9yX2luaXRfcGFuZWxfb3JpZW50YXRpb25fcHJvcGVy dHkgLQogICoJaW5pdGlhbGl6ZSB0aGUgY29ubmVjdGVycyBwYW5lbF9vcmllbnRhdGlvbiBwcm9w ZXJ0eQogICogQGNvbm5lY3RvcjogY29ubmVjdG9yIGZvciB3aGljaCB0byBpbml0IHRoZSBwYW5l bC1vcmllbnRhdGlvbiBwcm9wZXJ0eS4KZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9jb25u ZWN0b3IuaCBiL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaAppbmRleCA1YjNjZjkwOWZkNWUu LmE0MDJkMTY0MjdhMSAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCisr KyBiL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaApAQCAtNDYxLDYgKzQ2MSwxOCBAQCBzdHJ1 Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSB7CiAJICogZHJtX3dyaXRlYmFja19zaWduYWxfY29tcGxl dGlvbigpCiAJICovCiAJc3RydWN0IGRybV93cml0ZWJhY2tfam9iICp3cml0ZWJhY2tfam9iOwor CisJLyoqCisJICogQG1heF9yZXF1ZXN0ZWRfYnBjOiBDb25uZWN0b3IgcHJvcGVydHkgdG8gbGlt aXQgdGhlIG1heGltdW0gYml0CisJICogZGVwdGggb2YgdGhlIHBpeGVscy4KKwkgKi8KKwl1OCBt YXhfcmVxdWVzdGVkX2JwYzsKKworCS8qKgorCSAqIEBtYXhfYnBjOiBDb25uZWN0b3IgbWF4X2Jw YyBiYXNlZCBvbiB0aGUgcmVxdWVzdGVkIG1heF9icGMgcHJvcGVydHkKKwkgKiBhbmQgdGhlIGNv bm5lY3RvciBicGMgbGltaXRhdGlvbnMgb2J0YWluZWQgZnJvbSBlZGlkLgorCSAqLworCXU4IG1h eF9icGM7CiB9OwogCiAvKioKQEAgLTkyNCw2ICs5MzYsMTIgQEAgc3RydWN0IGRybV9jb25uZWN0 b3IgewogCSAqLwogCXN0cnVjdCBkcm1fcHJvcGVydHlfYmxvYiAqcGF0aF9ibG9iX3B0cjsKIAor CS8qKgorCSAqIEBtYXhfYnBjX3Byb3BlcnR5OiBEZWZhdWx0IGNvbm5lY3RvciBwcm9wZXJ0eSBm b3IgdGhlIG1heCBicGMgdG8gYmUKKwkgKiBkcml2ZW4gb3V0IG9mIHRoZSBjb25uZWN0b3IuCisJ ICovCisJc3RydWN0IGRybV9wcm9wZXJ0eSAqbWF4X2JwY19wcm9wZXJ0eTsKKwogI2RlZmluZSBE Uk1fQ09OTkVDVE9SX1BPTExfSFBEICgxIDw8IDApCiAjZGVmaW5lIERSTV9DT05ORUNUT1JfUE9M TF9DT05ORUNUICgxIDw8IDEpCiAjZGVmaW5lIERSTV9DT05ORUNUT1JfUE9MTF9ESVNDT05ORUNU ICgxIDw8IDIpCkBAIC0xMjAyLDYgKzEyMjAsOCBAQCB2b2lkIGRybV9jb25uZWN0b3Jfc2V0X2xp bmtfc3RhdHVzX3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiAJCQkJ CSAgICB1aW50NjRfdCBsaW5rX3N0YXR1cyk7CiBpbnQgZHJtX2Nvbm5lY3Rvcl9pbml0X3BhbmVs X29yaWVudGF0aW9uX3Byb3BlcnR5KAogCXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3Is IGludCB3aWR0aCwgaW50IGhlaWdodCk7CitpbnQgZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfbWF4X2Jw Y19wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAorCQkJCQkgIGludCBt aW4sIGludCBtYXgpOwogCiAvKioKICAqIHN0cnVjdCBkcm1fdGlsZV9ncm91cCAtIFRpbGUgZ3Jv dXAgbWV0YWRhdGEKLS0gCjIuOS4zCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9pbnRlbC1nZngK