From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mario Kleiner Subject: [PATCH] drm/amd/display: Allow faking displays as VRR capable. Date: Tue, 30 Apr 2019 09:37:24 +0200 Message-ID: <20190430073724.505-1-mario.kleiner.de@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: mario.kleiner.de-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, nicholas.kazlauskas-5C7GfCeVMHo@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org QWxsb3cgdG8gZGV0ZWN0IGFueSBjb25uZWN0ZWQgZGlzcGxheSB0byBiZSBtYXJrZWQgYXMKVlJS IGNhcGFibGUuIFRoaXMgaXMgdXNlZnVsIGZvciB0ZXN0aW5nIHRoZSBiYXNpY3Mgb2YKVlJSIG1v ZGUsIGUuZy4sIHNjaGVkdWxpbmcgYW5kIHRpbWVzdGFtcGluZywgQlRSLCBhbmQKdHJhbnNpdGlv biBsb2dpYywgb24gbm9uLVZSUiBjYXBhYmxlIGRpc3BsYXlzLCBlLmcuLAp0byBwZXJmb3JtIElH VCB0ZXN0LXN1aXQga21zX3ZyciB0ZXN0IHJ1bnMuCgpUaGlzIGZha2UgVlJSIGRpc3BsYXkgbW9k ZSBpcyBlbmFibGVkIGJ5IHNldHRpbmcgdGhlCm9wdGlvbmFsIG1vZHVsZSBwYXJhbWV0ZXIgYW1k Z3B1LmZha2V2cnJkaXNwbGF5PTEuCgpJdCB3aWxsIHRyeSB0byB1c2UgVlJSIHJhbmdlIGluZm8g cGFyc2VkIGZyb20gRURJRCBvbgpEaXNwbGF5UG9ydCBkaXNwbGF5cyB3aGljaCBoYXZlIGEgY29t cGF0aWJsZSBFRElELApidXQgbm90IGNvbXBhdGlibGUgRFBDRCBjYXBzIGZvciBBZGFwdGl2ZSBT eW5jLiBFLmcuLApOVmlkaWEgRy1TeW5jIGNvbXBhdGlibGUgZGlzcGxheXMgZXhwb3NlIGEgcHJv cGVyIEVESUQsCmJ1dCBub3QgcHJvcGVyIERQQ0QgY2Fwcy4KCkl0IHdpbGwgdXNlIGEgaGFyZC1j b2RlZCBWUlIgcmFuZ2Ugb2YgMzAgSHogLSAxNDQgSHogb24Kb3RoZXIgZGlzcGxheXMgd2l0aG91 dCBzdWl0YWJsZSBFRElELCBlLmcuLCBzdGFuZGFyZApEaXNwbGF5UG9ydCwgSERNSSwgRFZJIG1v bml0b3JzLgoKU2lnbmVkLW9mZi1ieTogTWFyaW8gS2xlaW5lciA8bWFyaW8ua2xlaW5lci5kZUBn bWFpbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmggICAgICAg ICAgIHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2Rydi5jICAgICAg IHwgMTEgKysrKysrKwogLi4uL2dwdS9kcm0vYW1kL2Rpc3BsYXkvYW1kZ3B1X2RtL2FtZGdwdV9k bS5jIHwgMzAgKysrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNlcnRp b25zKCspCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1Lmgg Yi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHUuaAppbmRleCAyM2MzMzc1NjIzZDcu LjM1MWFmMzhlN2ZkMyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1k Z3B1LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmgKQEAgLTE1OSw2 ICsxNTksNyBAQCBleHRlcm4gdWludCBhbWRncHVfZGNfZmVhdHVyZV9tYXNrOwogZXh0ZXJuIHN0 cnVjdCBhbWRncHVfbWdwdV9pbmZvIG1ncHVfaW5mbzsKIGV4dGVybiBpbnQgYW1kZ3B1X3Jhc19l bmFibGU7CiBleHRlcm4gdWludCBhbWRncHVfcmFzX21hc2s7CitleHRlcm4gaW50IGFtZGdwdV9m YWtlX3Zycl9kaXNwbGF5OwogCiAjaWZkZWYgQ09ORklHX0RSTV9BTURHUFVfU0kKIGV4dGVybiBp bnQgYW1kZ3B1X3NpX3N1cHBvcnQ7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9hbWRncHVfZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZHJ2 LmMKaW5kZXggMWUyY2M5ZDY4YTA1Li4zYTlmYzBmYmM3NmUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9kcnYuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9hbWRncHVfZHJ2LmMKQEAgLTEzNCw2ICsxMzQsNyBAQCBpbnQgYW1kZ3B1X2VtdV9t b2RlID0gMDsKIHVpbnQgYW1kZ3B1X3NtdV9tZW1vcnlfcG9vbF9zaXplID0gMDsKIC8qIEZCQyAo Yml0IDApIGRpc2FibGVkIGJ5IGRlZmF1bHQqLwogdWludCBhbWRncHVfZGNfZmVhdHVyZV9tYXNr ID0gMDsKK2ludCBhbWRncHVfZmFrZV92cnJfZGlzcGxheSA9IDA7CiAKIHN0cnVjdCBhbWRncHVf bWdwdV9pbmZvIG1ncHVfaW5mbyA9IHsKIAkubXV0ZXggPSBfX01VVEVYX0lOSVRJQUxJWkVSKG1n cHVfaW5mby5tdXRleCksCkBAIC02NjUsNiArNjY2LDE2IEBAIE1PRFVMRV9QQVJNX0RFU0MoaGFs dF9pZl9od3NfaGFuZywgIkhhbHQgaWYgSFdTIGhhbmcgaXMgZGV0ZWN0ZWQgKDAgPSBvZmYgKGRl ZmF1CiBNT0RVTEVfUEFSTV9ERVNDKGRjZmVhdHVyZW1hc2ssICJhbGwgc3RhYmxlIERDIGZlYXR1 cmVzIGVuYWJsZWQgKGRlZmF1bHQpKSIpOwogbW9kdWxlX3BhcmFtX25hbWVkKGRjZmVhdHVyZW1h c2ssIGFtZGdwdV9kY19mZWF0dXJlX21hc2ssIHVpbnQsIDA0NDQpOwogCisvKioKKyAqIERPQzog ZmFrZXZycmRpc3BsYXkgKGludCkKKyAqIE92ZXJyaWRlIGRldGVjdGlvbiBvZiBWUlIgZGlzcGxh eXMgdG8gbWFyayBhbnkgZGlzcGxheSBhcyBWUlIgY2FwYWJsZSwgZXZlbgorICogaWYgaXQgaXMg bm90LiBVc2VmdWwgZm9yIGJhc2ljIHRlc3Rpbmcgb2YgVlJSIHdpdGhvdXQgbmVlZCB0byBhdHRh Y2ggc3VjaCBhCisgKiBkaXNwbGF5LCBlLmcuLCBmb3IgaWd0IHRlc3RzLgorICogU2V0dGluZyAx IGVuYWJsZXMgZmFraW5nIFZSUi4gRGVmYXVsdCB2YWx1ZSwgMCwgZG9lcyBub3JtYWwgZGV0ZWN0 aW9uLgorICovCittb2R1bGVfcGFyYW1fbmFtZWQoZmFrZXZycmRpc3BsYXksIGFtZGdwdV9mYWtl X3Zycl9kaXNwbGF5LCBpbnQsIDA2NDQpOworTU9EVUxFX1BBUk1fREVTQyhmYWtldnJyZGlzcGxh eSwgIkRldGVjdCBhbnkgZGlzcGxheSBhcyBWUlIgY2FwYWJsZSAoMCA9IG9mZiAoZGVmYXVsdCks IDEgPSBvbikiKTsKKwogc3RhdGljIGNvbnN0IHN0cnVjdCBwY2lfZGV2aWNlX2lkIHBjaWlkbGlz dFtdID0gewogI2lmZGVmICBDT05GSUdfRFJNX0FNREdQVV9TSQogCXsweDEwMDIsIDB4Njc4MCwg UENJX0FOWV9JRCwgUENJX0FOWV9JRCwgMCwgMCwgQ0hJUF9UQUhJVEl9LApkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRncHVfZG0uYyBiL2RyaXZl cnMvZ3B1L2RybS9hbWQvZGlzcGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtLmMKaW5kZXggMTg1NDUw NmUzZThmLi4xNDhlYzViYjlmYTggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlz cGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNw bGF5L2FtZGdwdV9kbS9hbWRncHVfZG0uYwpAQCAtNjkyMSw2ICs2OTIxLDE1IEBAIHZvaWQgYW1k Z3B1X2RtX3VwZGF0ZV9mcmVlc3luY19jYXBzKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0 b3IsCiAJCQllZGlkX2NoZWNrX3JlcXVpcmVkID0gaXNfZHBfY2FwYWJsZV93aXRob3V0X3RpbWlu Z19tc2EoCiAJCQkJCQlhZGV2LT5kbS5kYywKIAkJCQkJCWFtZGdwdV9kbV9jb25uZWN0b3IpOwor CisJCQkvKiBGb3JjZSBkZXRlY3Rpb24gb2Ygbm90LXF1aXRlIGFkYXB0aXZlIHN5bmMgY2FwYWJs ZQorCQkJICogZGlzcGxheXMgYXMgdnJyIGNhcGFibGUgaWYgcmVxdWVzdGVkIGJ5IG1vZHVsZXBh cmFtLgorCQkJICogV29ya3MsIGUuZy4sIHdpdGggRy1TeW5jIGRpc3BsYXlzLgorCQkJICovCisJ CQlpZiAoIWVkaWRfY2hlY2tfcmVxdWlyZWQgJiYgYW1kZ3B1X2Zha2VfdnJyX2Rpc3BsYXkpIHsK KwkJCQllZGlkX2NoZWNrX3JlcXVpcmVkID0gdHJ1ZTsKKwkJCQlEUk1fSU5GTygiYW1kZ3B1LmZh a2V2cnJkaXNwbGF5PTEgLT4gRm9yY2UgdnJyLlxuIik7CisJCQl9CiAJCX0KIAl9CiAJaWYgKGVk aWRfY2hlY2tfcmVxdWlyZWQgPT0gdHJ1ZSAmJiAoZWRpZC0+dmVyc2lvbiA+IDEgfHwKQEAgLTY5 NDgsNiArNjk1NywxMiBAQCB2b2lkIGFtZGdwdV9kbV91cGRhdGVfZnJlZXN5bmNfY2FwcyhzdHJ1 Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAogCQkJYW1kZ3B1X2RtX2Nvbm5lY3Rvci0+bWF4 X3ZmcmVxID0gcmFuZ2UtPm1heF92ZnJlcTsKIAkJCWFtZGdwdV9kbV9jb25uZWN0b3ItPnBpeGVs X2Nsb2NrX21oeiA9CiAJCQkJcmFuZ2UtPnBpeGVsX2Nsb2NrX21oeiAqIDEwOworCisJCQlEUk1f REVCVUcoImVkaWQgdnJyICVkOiAlZCAtICVkIEh6LCBjbG9jayAlZCBNaHpcbiIsCisJCQkJICBp LCBhbWRncHVfZG1fY29ubmVjdG9yLT5taW5fdmZyZXEsCisJCQkJICBhbWRncHVfZG1fY29ubmVj dG9yLT5tYXhfdmZyZXEsCisJCQkJICBhbWRncHVfZG1fY29ubmVjdG9yLT5waXhlbF9jbG9ja19t aHopOworCiAJCQlicmVhazsKIAkJfQogCkBAIC02OTU4LDYgKzY5NzMsMjEgQEAgdm9pZCBhbWRn cHVfZG1fdXBkYXRlX2ZyZWVzeW5jX2NhcHMoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rv ciwKIAkJfQogCX0KIAorCS8qIEZha2UgYSB2cnIgZGlzcGxheSB3aXRoIGhhcmQtY29kZWQgcHJv cGVydGllcyBpZiBub25lIHdhcworCSAqIGRldGVjdGVkIGFuZCBmYWtpbmcgb25lIGlzIHJlcXVl c3RlZCBieSBtb2R1bGUgcGFyYW1ldGVyLgorCSAqLworCWlmICghZnJlZXN5bmNfY2FwYWJsZSAm JiBhbWRncHVfZmFrZV92cnJfZGlzcGxheSkgeworCQlmcmVlc3luY19jYXBhYmxlID0gdHJ1ZTsK KwkJYW1kZ3B1X2RtX2Nvbm5lY3Rvci0+bWluX3ZmcmVxID0gMzA7CisJCWFtZGdwdV9kbV9jb25u ZWN0b3ItPm1heF92ZnJlcSA9IDE0NDsKKwkJYW1kZ3B1X2RtX2Nvbm5lY3Rvci0+cGl4ZWxfY2xv Y2tfbWh6ID0gNTkwOworCisJCURSTV9JTkZPKCJmYWtlIHZycjogJWQgLSAlZCBIeiwgY2xvY2sg JWQgTWh6XG4iLAorCQkJIGFtZGdwdV9kbV9jb25uZWN0b3ItPm1pbl92ZnJlcSwKKwkJCSBhbWRn cHVfZG1fY29ubmVjdG9yLT5tYXhfdmZyZXEsCisJCQkgYW1kZ3B1X2RtX2Nvbm5lY3Rvci0+cGl4 ZWxfY2xvY2tfbWh6KTsKKwl9CisKIHVwZGF0ZToKIAlpZiAoZG1fY29uX3N0YXRlKQogCQlkbV9j b25fc3RhdGUtPmZyZWVzeW5jX2NhcGFibGUgPSBmcmVlc3luY19jYXBhYmxlOwotLSAKMi4yMC4x CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwphbWQtZ2Z4 IG1haWxpbmcgbGlzdAphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZng=