From mboxrd@z Thu Jan 1 00:00:00 1970 From: Subject: [PATCH xf86-video-amdgpu 03/13] List disabled color properties on RandR outputs without a CRTC Date: Thu, 3 May 2018 14:31:45 -0400 Message-ID: <1525372315-28462-4-git-send-email-sunpeng.li@amd.com> References: <1525372315-28462-1-git-send-email-sunpeng.li@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1525372315-28462-1-git-send-email-sunpeng.li-5C7GfCeVMHo@public.gmane.org> 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: "Leo (Sunpeng) Li" , michel-otUistvHUpPR7s880joybQ@public.gmane.org, harry.wentland-5C7GfCeVMHo@public.gmane.org RnJvbTogIkxlbyAoU3VucGVuZykgTGkiIDxzdW5wZW5nLmxpQGFtZC5jb20+CgpUaGUgcHJvcGVy dGllcyBvbiBhbiBSYW5kUiBvdXRwdXQgbmVlZHMgdG8gc3RheSBjb25zaXN0ZW50IHRocm91Z2hv dXQKaXQncyBsaWZlY3ljbGUuIEhvd2V2ZXIsIHdlIGNhbm5vdCBsaXN0IGNvbG9yIHByb3BlcnRp ZXMgb24gYW4gb3V0cHV0IGlmCnRoZXJlIGlzIG5vIENSVEMgYXR0YWNoZWQuCgpUaGVyZWZvcmUs IGNyZWF0ZSBhIGZha2UgQ1JUQywgYW5kIGluaXRpYWxpemUgImRpc2FibGVkIiBjb2xvcgpwcm9w ZXJpdGVzIG9uIG91dHB1dHMgd2l0aG91dCBhIENSVEMuCgpTaWduZWQtb2ZmLWJ5OiBMZW8gKFN1 bnBlbmcpIExpIDxzdW5wZW5nLmxpQGFtZC5jb20+Ci0tLQogc3JjL2RybW1vZGVfZGlzcGxheS5j IHwgMTU0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr CiAxIGZpbGUgY2hhbmdlZCwgMTU0IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9zcmMvZHJt bW9kZV9kaXNwbGF5LmMgYi9zcmMvZHJtbW9kZV9kaXNwbGF5LmMKaW5kZXggODVkZTAxZS4uYzI4 Nzk2YyAxMDA2NDQKLS0tIGEvc3JjL2RybW1vZGVfZGlzcGxheS5jCisrKyBiL3NyYy9kcm1tb2Rl X2Rpc3BsYXkuYwpAQCAtODY5LDYgKzg2OSwxMjQgQEAgZXJyX2FsbG9jczoKIH0KIAogLyoqCisg KiBDb25maWd1cmUgYW5kIGNoYW5nZSBhIGNvbG9yIHByb3BlcnR5IG9uIGEgQ1JUQywgdGhyb3Vn aCBSYW5kUi4gT25seSB0aGUKKyAqIHNwZWNpZmllZCBvdXRwdXQgd2lsbCBiZSBhZmZlY3RlZCwg ZXZlbiBpZiB0aGUgQ1JUQyBpcyBhdHRhY2hlZCB0byBtdWx0aXBsZQorICogb3V0cHV0cy4gSWYg dGhlIHJlcXVlc3QgaXMgcGVuZGluZywgdGhlbiB0aGUgY2hhbmdlIHdpbGwgbWFrZSBpdCdzIHdh eSBpbnRvCisgKiB0aGUga2VybmVsIERSTSBkcml2ZXIuIE90aGVyd2lzZSwgdGhlIHJlcXVlc3Qg d2lsbCBiZSBhIHVzZXItbGFuZCBvbmx5CisgKiB1cGRhdGUuCisgKgorICogQG91dHB1dDogUmFu ZFIgb3V0cHV0IHRvIHNldCB0aGUgcHJvcGVydHkgb24uCisgKiBAY3J0YzogVGhlIGRyaXZlci1w cml2YXRlIENSVEMgb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGNvbG9yIHByb3BlcnRpZXMuCisgKiBA Y21fcHJvcF9pbmRleDogQ29sb3IgbWFuYWdlbWVudCBwcm9wZXJ0eSB0byBjb25maWd1cmUgYW5k IGNoYW5nZS4KKyAqIEBwZW5kaW5nOiBXaGV0aGVyIHRoaXMgcmVxdWVzdCBpcyBwZW5kaW5nLgor ICoKKyAqIFJldHVybiAwIG9uIHN1Y2Nlc3MsIFgtZGVmaW5lZCBlcnJvciBjb2RlIG90aGVyd2lz ZS4KKyAqLworc3RhdGljIGludCBycl9jb25maWd1cmVfYW5kX2NoYW5nZV9jbV9wcm9wZXJ0eSh4 Zjg2T3V0cHV0UHRyIG91dHB1dCwKKwkJCQkJICAgICAgIGRybW1vZGVfY3J0Y19wcml2YXRlX3B0 ciBjcnRjLAorCQkJCQkgICAgICAgZW51bSBkcm1tb2RlX2NtX3Byb3AgY21fcHJvcF9pbmRleCwK KwkJCQkJICAgICAgIEJvb2wgcGVuZGluZykKK3sKKwlCb29sIG5lZWRfY29uZmlndXJlID0gVFJV RTsKKwl1bnNpZ25lZCBsb25nIGxlbmd0aCA9IDA7CisJdm9pZCAqZGF0YSA9IE5VTEw7CisJaW50 IGZvcm1hdCA9IDA7CisJdWludDE2X3QgdmFsdWU7CisJSU5UMzIgcmFuZ2VbMl07CisJQXRvbSBh dG9tOworCWludCBlcnI7CisKKwlpZiAoY21fcHJvcF9pbmRleCA9PSBDTV9JTlZBTElEX1BST1Ap CisJCXJldHVybiBCYWROYW1lOworCisJYXRvbSA9IE1ha2VBdG9tKENNX1BST1BfTkFNRVNbY21f cHJvcF9pbmRleF0sCisJCQlzdHJsZW4oQ01fUFJPUF9OQU1FU1tjbV9wcm9wX2luZGV4XSksCisJ CQlUUlVFKTsKKwlpZiAoIWF0b20pCisJCXJldHVybiBCYWRBbGxvYzsKKworCWlmIChjbV9wcm9w X2luZGV4ID09IENNX0dBTU1BX0xVVF9TSVpFKSB7CisJCWZvcm1hdCA9IDMyOworCQlsZW5ndGgg PSAxOworCQlkYXRhID0gJmNydGMtPmdhbW1hX2x1dF9zaXplOworCQlyYW5nZVswXSA9IDA7CisJ CXJhbmdlWzFdID0gLTE7CisKKwl9IGVsc2UgaWYgKGNtX3Byb3BfaW5kZXggPT0gQ01fREVHQU1N QV9MVVRfU0laRSkgeworCQlmb3JtYXQgPSAzMjsKKwkJbGVuZ3RoID0gMTsKKwkJZGF0YSA9ICZj cnRjLT5kZWdhbW1hX2x1dF9zaXplOworCQlyYW5nZVswXSA9IDA7CisJCXJhbmdlWzFdID0gLTE7 CisKKwl9IGVsc2UgaWYgKGNtX3Byb3BfaW5kZXggPT0gQ01fR0FNTUFfTFVUKSB7CisJCWZvcm1h dCA9IDE2OworCQlyYW5nZVswXSA9IDA7CisJCXJhbmdlWzFdID0gKDEgPDwgMTYpIC0gMTsgLy8g TWF4IDE2IGJpdCB1bnNpZ25lZCBpbnQuCisJCWlmIChjcnRjLT5nYW1tYV9sdXQpIHsKKwkJCS8q IENvbnZlcnQgZnJvbSA4Yml0IHNpemUgdG8gMTZiaXQgc2l6ZSAqLworCQkJbGVuZ3RoID0gc2l6 ZW9mKCpjcnRjLT5nYW1tYV9sdXQpID4+IDE7CisJCQlsZW5ndGggKj0gY3J0Yy0+Z2FtbWFfbHV0 X3NpemU7CisJCQlkYXRhID0gY3J0Yy0+Z2FtbWFfbHV0OworCQl9IGVsc2UgeworCQkJbGVuZ3Ro ID0gMTsKKwkJCXZhbHVlID0gMDsKKwkJCWRhdGEgPSAmdmFsdWU7CisJCX0KKwl9IGVsc2UgaWYg KGNtX3Byb3BfaW5kZXggPT0gQ01fREVHQU1NQV9MVVQpIHsKKwkJZm9ybWF0ID0gMTY7CisJCXJh bmdlWzBdID0gMDsKKwkJcmFuZ2VbMV0gPSAoMSA8PCAxNikgLSAxOyAvLyBNYXggMTYgYml0IHVu c2lnbmVkIGludC4KKwkJaWYgKGNydGMtPmRlZ2FtbWFfbHV0KSB7CisJCQkvKiBDb252ZXJ0IGZy b20gOGJpdCBzaXplIHRvIDE2Yml0IHNpemUgKi8KKwkJCWxlbmd0aCA9IHNpemVvZigqY3J0Yy0+ ZGVnYW1tYV9sdXQpID4+IDE7CisJCQlsZW5ndGggKj0gY3J0Yy0+ZGVnYW1tYV9sdXRfc2l6ZTsK KwkJCWRhdGEgPSBjcnRjLT5kZWdhbW1hX2x1dDsKKwkJfSBlbHNlIHsKKwkJCWxlbmd0aCA9IDE7 CisJCQl2YWx1ZSA9IDA7CisJCQlkYXRhID0gJnZhbHVlOworCQl9CisJfSBlbHNlIHsKKwkJLyog Q1RNIGlzIGZpeGVkLXBvaW50IFMzMS4zMiBmb3JtYXQuICovCisJCWZvcm1hdCA9IDE2OworCQlu ZWVkX2NvbmZpZ3VyZSA9IEZBTFNFOworCQlpZiAoY3J0Yy0+Y3RtKSB7CisJCQlsZW5ndGggPSBz aXplb2YoKmNydGMtPmN0bSkgPj4gMTsKKwkJCWRhdGEgPSBjcnRjLT5jdG07CisJCX0gZWxzZSB7 CisJCQlsZW5ndGggPSAxOworCQkJdmFsdWUgPSAwOworCQkJZGF0YSA9ICZ2YWx1ZTsKKwkJfQor CX0KKworCWlmIChuZWVkX2NvbmZpZ3VyZSkgeworCQllcnIgPSBSUkNvbmZpZ3VyZU91dHB1dFBy b3BlcnR5KG91dHB1dC0+cmFuZHJfb3V0cHV0LCBhdG9tLAorCQkJCQkJRkFMU0UsIFRSVUUsIEZB TFNFLCAyLCByYW5nZSk7CisJCWlmIChlcnIpIHsKKwkJCXhmODZEcnZNc2cob3V0cHV0LT5zY3Ju LT5zY3JuSW5kZXgsIFhfRVJST1IsCisJCQkJICAgIkNvbmZpZ3VyaW5nIGNvbG9yIG1hbmFnZW1l bnQgcHJvcGVydHkgJXMgZmFpbGVkIHdpdGggJWRcbiIsCisJCQkJICAgQ01fUFJPUF9OQU1FU1tj bV9wcm9wX2luZGV4XSwgZXJyKTsKKwkJCXJldHVybiBlcnI7CisJCX0KKwl9CisKKwllcnIgPSBS UkNoYW5nZU91dHB1dFByb3BlcnR5KG91dHB1dC0+cmFuZHJfb3V0cHV0LCBhdG9tLAorCQkJCSAg ICAgWEFfSU5URUdFUiwgZm9ybWF0LAorCQkJCSAgICAgUHJvcE1vZGVSZXBsYWNlLAorCQkJCSAg ICAgbGVuZ3RoLCBkYXRhLCBGQUxTRSwgcGVuZGluZyk7CisJaWYgKGVycikgeworCQl4Zjg2RHJ2 TXNnKG91dHB1dC0+c2Nybi0+c2NybkluZGV4LCBYX0VSUk9SLAorCQkJICAgIkNoYW5naW5nIGNv bG9yIG1hbmFnZW1lbnQgcHJvcGVydHkgJXMgZmFpbGVkIHdpdGggJWRcbiIsCisJCQkgICBDTV9Q Uk9QX05BTUVTW2NtX3Byb3BfaW5kZXhdLCBlcnIpOworCQlyZXR1cm4gZXJyOworCX0KKworCXJl dHVybiAwOworfQorCisvKioKICAqIFB1c2ggc3RhZ2VkIGNvbG9yIG1hbmFnZW1lbnQgcHJvcGVy dGllcyBvbiB0aGUgQ1JUQyB0byBEUk0uCiAgKgogICogQGNydGM6IFRoZSBDUlRDIGNvbnRhaW5p bmcgc3RhZ2VkIHByb3BlcnRpZXMKQEAgLTE4NTEsNiArMTk2OSw0MCBAQCBzdGF0aWMgQm9vbCBk cm1tb2RlX3Byb3BlcnR5X2lnbm9yZShkcm1Nb2RlUHJvcGVydHlQdHIgcHJvcCkKIAlyZXR1cm4g RkFMU0U7CiB9CiAKKy8qKgorICogVXNpbmcgYSBmYWtlIENSVEMsIGNvbmZpZ3VyZSBhbmQgY2hh bmdlIGNvbG9yIHByb3BlcnRpZXMgZm9yIHRoZSBvdXRwdXQsCisgKiB1c2luZyB0aGUgZGVmYXVs dCAoMCkgY29sb3IgcHJvcGVydGllcyBvbiB0aGUgZmFrZSBDUlRDLiBVc2UgdG8gaW5pdGlhbGl6 ZQorICogY29sb3IgbWFuYWdlbWVudCBwcm9wZXJ0aWVzIG9uIGFuIG91dHB1dCB3aGVyZSBhIENS VEMgaGFzIG5vdCB5ZXQgYmVlbgorICogYXR0YWNoZWQuCisgKi8KK3N0YXRpYyB2b2lkIGRybW1v ZGVfZGlzYWJsZWRfY3J0Y19jcmVhdGVfcmVzb3VyY2VzKHhmODZPdXRwdXRQdHIgb3V0cHV0KQor eworCWRybW1vZGVfY3J0Y19wcml2YXRlX3B0ciBmYWtlX2NydGM7CisJaW50IGksIHJldDsKKwor CS8qIENyZWF0ZSBhIGZha2UgY3J0YyAqLworCWZha2VfY3J0YyA9IGNhbGxvYygxLCBzaXplb2Yo ZHJtbW9kZV9jcnRjX3ByaXZhdGVfcmVjKSk7CisJaWYgKCFmYWtlX2NydGMpIHsKKwkJeGY4NkRy dk1zZyhvdXRwdXQtPnNjcm4tPnNjcm5JbmRleCwgWF9FUlJPUiwKKwkJCSAgICJNZW1vcnkgZXJy b3IgY3JlYXRpbmcgcmVzb3VyY2VzIGZvciBmYWtlIENSVENcbiIpOworCQlyZXR1cm47CisJfQor CisJZm9yIChpID0gMDsgaSA8IENNX05VTV9QUk9QUzsgaSsrKSB7CisJCXJldCA9IHJyX2NvbmZp Z3VyZV9hbmRfY2hhbmdlX2NtX3Byb3BlcnR5KG91dHB1dCwgZmFrZV9jcnRjLCBpLAorCQkJCQkJ CSAgRkFMU0UpOworCQlpZiAocmV0KSB7CisJCQl4Zjg2RHJ2TXNnKG91dHB1dC0+c2Nybi0+c2Ny bkluZGV4LCBYX0VSUk9SLAorCQkJCSAgICJDb25maWd1ciBhbmQgY2hhbmdlIGNtIHByb3BlcnR5 IGVycm9yICVkXG4iLAorCQkJCSAgIHJldCk7CisJCQlicmVhazsKKwkJfQorCX0KKworCWZyZWUo ZmFrZV9jcnRjKTsKKwlyZXR1cm47Cit9CisKIHN0YXRpYyB2b2lkIGRybW1vZGVfb3V0cHV0X2Ny ZWF0ZV9yZXNvdXJjZXMoeGY4Nk91dHB1dFB0ciBvdXRwdXQpCiB7CiAJQU1ER1BVSW5mb1B0ciBp bmZvID0gQU1ER1BVUFRSKG91dHB1dC0+c2Nybik7CkBAIC0xOTc4LDYgKzIxMzAsOCBAQCBzdGF0 aWMgdm9pZCBkcm1tb2RlX291dHB1dF9jcmVhdGVfcmVzb3VyY2VzKHhmODZPdXRwdXRQdHIgb3V0 cHV0KQogCQkJfQogCQl9CiAJfQorCisJZHJtbW9kZV9kaXNhYmxlZF9jcnRjX2NyZWF0ZV9yZXNv dXJjZXMob3V0cHV0KTsKIH0KIAogc3RhdGljIHZvaWQKLS0gCjIuNy40CgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwphbWQtZ2Z4IG1haWxpbmcgbGlzdAph bWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK