From mboxrd@z Thu Jan 1 00:00:00 1970 From: Subject: [PATCH xf86-video-amdgpu v2 3/7] Configure color properties when creating output resources Date: Fri, 15 Jun 2018 17:04:58 -0400 Message-ID: <1529096698-22128-1-git-send-email-sunpeng.li@amd.com> References: <1527869017-9209-4-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: <1527869017-9209-4-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+CgpMaXN0IGNvbG9y IG1hbmFnZW1lbnQgcHJvcGVydGllcyBvbiBvdXRwdXRzIGlmIHRoZXJlIGlzIGtlcm5lbCBzdXBw b3J0LgpPdGhlcndpc2UsIGRvbid0IGxpc3QgdGhlbSBhdCBhbGwuCgp2MjoKLSBVc2Ugc3dpdGNo IHN0YXRlbWVudCBpbiBjb25maWd1cmVfYW5kX2NoYW5nZQotIEFsc28gY29uZmlndXJlIExVVCBz aXplcyBmb3Igb3V0cHV0cyB0aGF0IGRvbid0IGhhdmUgYW4gYXR0YWNoZWQgQ1JUQy4KICBXZSBj YW4gZG8gdGhpcyBzaW5jZSBMVVQgc2l6ZXMgYXJlIG5vdyBjYWNoZWQgb24gdGhlIGRybW1vZGUg b2JqZWN0LgoKU2lnbmVkLW9mZi1ieTogTGVvIChTdW5wZW5nKSBMaSA8c3VucGVuZy5saUBhbWQu Y29tPgotLS0KIHNyYy9kcm1tb2RlX2Rpc3BsYXkuYyB8IDEzMSArKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMSBmaWxlIGNoYW5nZWQsIDEzMSBpbnNl cnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvc3JjL2RybW1vZGVfZGlzcGxheS5jIGIvc3JjL2RybW1v ZGVfZGlzcGxheS5jCmluZGV4IGQ3NTA0MTAuLjQyZThiYTMgMTAwNjQ0Ci0tLSBhL3NyYy9kcm1t b2RlX2Rpc3BsYXkuYworKysgYi9zcmMvZHJtbW9kZV9kaXNwbGF5LmMKQEAgLTc3Nyw2ICs3Nzcs MTI3IEBAIHN0YXRpYyBCb29sIGRybW1vZGVfY21fZW5hYmxlZChkcm1tb2RlX3B0ciBkcm1tb2Rl KQogfQogCiAvKioKKyAqIENvbmZpZ3VyZSBhbmQgY2hhbmdlIGEgY29sb3IgcHJvcGVydHkgb24g YSBDUlRDLCB0aHJvdWdoIFJhbmRSLiBPbmx5IHRoZQorICogc3BlY2lmaWVkIG91dHB1dCB3aWxs IGJlIGFmZmVjdGVkLCBldmVuIGlmIHRoZSBDUlRDIGlzIGF0dGFjaGVkIHRvIG11bHRpcGxlCisg KiBvdXRwdXRzLiBOb3RlIHRoYXQgY2hhbmdlcyB3aWxsIGJlIG5vbi1wZW5kaW5nOiB0aGUgY2hh bmdlcyB3b24ndCBiZSBwdXNoZWQKKyAqIHRvIGtlcm5lbCBkcml2ZXIuCisgKgorICogQG91dHB1 dDogUmFuZFIgb3V0cHV0IHRvIHNldCB0aGUgcHJvcGVydHkgb24uCisgKiBAY3J0YzogVGhlIGRy aXZlci1wcml2YXRlIENSVEMgb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGNvbG9yIHByb3BlcnRpZXMu CisgKiAgICAgICAgSWYgdGhpcyBpcyBOVUxMLCAiZGlzYWJsZWQiIHZhbHVlcyBvZiAwIHdpbGwg YmUgdXNlZC4KKyAqIEBjbV9wcm9wX2luZGV4OiBDb2xvciBtYW5hZ2VtZW50IHByb3BlcnR5IHRv IGNvbmZpZ3VyZSBhbmQgY2hhbmdlLgorICoKKyAqIFJldHVybiAwIG9uIHN1Y2Nlc3MsIFgtZGVm aW5lZCBlcnJvciBjb2RlIG90aGVyd2lzZS4KKyAqLworc3RhdGljIGludCBycl9jb25maWd1cmVf YW5kX2NoYW5nZV9jbV9wcm9wZXJ0eSh4Zjg2T3V0cHV0UHRyIG91dHB1dCwKKwkJCQkJICAgICAg IGRybW1vZGVfY3J0Y19wcml2YXRlX3B0ciBjcnRjLAorCQkJCQkgICAgICAgZW51bSBkcm1tb2Rl X2NtX3Byb3AgY21fcHJvcF9pbmRleCkKK3sKKwlkcm1tb2RlX291dHB1dF9wcml2YXRlX3B0ciBk cm1tb2RlX291dHB1dCA9IG91dHB1dC0+ZHJpdmVyX3ByaXZhdGU7CisJZHJtbW9kZV9wdHIgZHJt bW9kZSA9IGRybW1vZGVfb3V0cHV0LT5kcm1tb2RlOworCUJvb2wgbmVlZF9jb25maWd1cmUgPSBU UlVFOworCXVuc2lnbmVkIGxvbmcgbGVuZ3RoID0gMDsKKwljb25zdCB2b2lkICpkYXRhID0gTlVM TDsKKwlpbnQgZm9ybWF0ID0gMDsKKwl1aW50MzJfdCB6ZXJvID0gMDsKKwlJTlQzMiByYW5nZVsy XTsKKwlBdG9tIGF0b207CisJaW50IGVycjsKKworCWlmIChjbV9wcm9wX2luZGV4ID09IENNX0lO VkFMSURfUFJPUCkKKwkJcmV0dXJuIEJhZE5hbWU7CisKKwlzd2l0Y2goY21fcHJvcF9pbmRleCkg eworCWNhc2UgQ01fR0FNTUFfTFVUX1NJWkU6CisJCWZvcm1hdCA9IDMyOworCQlsZW5ndGggPSAx OworCQlkYXRhID0gJmRybW1vZGUtPmdhbW1hX2x1dF9zaXplOworCQlyYW5nZVswXSA9IDA7CisJ CXJhbmdlWzFdID0gLTE7CisJCWJyZWFrOworCWNhc2UgQ01fREVHQU1NQV9MVVRfU0laRToKKwkJ Zm9ybWF0ID0gMzI7CisJCWxlbmd0aCA9IDE7CisJCWRhdGEgPSAmZHJtbW9kZS0+ZGVnYW1tYV9s dXRfc2l6ZTsKKwkJcmFuZ2VbMF0gPSAwOworCQlyYW5nZVsxXSA9IC0xOworCQlicmVhazsKKwlj YXNlIENNX0dBTU1BX0xVVDoKKwkJZm9ybWF0ID0gMTY7CisJCXJhbmdlWzBdID0gMDsKKwkJcmFu Z2VbMV0gPSAoMSA8PCAxNikgLSAxOyAvLyBNYXggMTYgYml0IHVuc2lnbmVkIGludC4KKwkJaWYg KGNydGMgJiYgY3J0Yy0+Z2FtbWFfbHV0KSB7CisJCQkvKiBDb252ZXJ0IGZyb20gOGJpdCBzaXpl IHRvIDE2Yml0IHNpemUgKi8KKwkJCWxlbmd0aCA9IHNpemVvZigqY3J0Yy0+Z2FtbWFfbHV0KSA+ PiAxOworCQkJbGVuZ3RoICo9IGRybW1vZGUtPmdhbW1hX2x1dF9zaXplOworCQkJZGF0YSA9IGNy dGMtPmdhbW1hX2x1dDsKKwkJfSBlbHNlIHsKKwkJCWxlbmd0aCA9IDE7CisJCQlkYXRhID0gJnpl cm87CisJCX0KKwkJYnJlYWs7CisJY2FzZSBDTV9ERUdBTU1BX0xVVDoKKwkJZm9ybWF0ID0gMTY7 CisJCXJhbmdlWzBdID0gMDsKKwkJcmFuZ2VbMV0gPSAoMSA8PCAxNikgLSAxOworCQlpZiAoY3J0 YyAmJiBjcnRjLT5kZWdhbW1hX2x1dCkgeworCQkJbGVuZ3RoID0gc2l6ZW9mKCpjcnRjLT5kZWdh bW1hX2x1dCkgPj4gMTsKKwkJCWxlbmd0aCAqPSBkcm1tb2RlLT5kZWdhbW1hX2x1dF9zaXplOwor CQkJZGF0YSA9IGNydGMtPmRlZ2FtbWFfbHV0OworCQl9IGVsc2UgeworCQkJbGVuZ3RoID0gMTsK KwkJCWRhdGEgPSAmemVybzsKKwkJfQorCQlicmVhazsKKwljYXNlIENNX0NUTToKKwkJLyogQ1RN IGlzIGZpeGVkLXBvaW50IFMzMS4zMiBmb3JtYXQuICovCisJCWZvcm1hdCA9IDMyOworCQluZWVk X2NvbmZpZ3VyZSA9IEZBTFNFOworCQlpZiAoY3J0YyAmJiBjcnRjLT5jdG0pIHsKKwkJCS8qIENv bnZlcnQgZnJvbSA4Yml0IHNpemUgdG8gMzJiaXQgc2l6ZSAqLworCQkJbGVuZ3RoID0gc2l6ZW9m KCpjcnRjLT5jdG0pID4+IDI7CisJCQlkYXRhID0gY3J0Yy0+Y3RtOworCQl9IGVsc2UgeworCQkJ bGVuZ3RoID0gMTsKKwkJCWRhdGEgPSAmemVybzsKKwkJfQorCQlicmVhazsKKwlkZWZhdWx0Ogor CQlyZXR1cm4gQmFkTmFtZTsKKwl9CisKKwlhdG9tID0gTWFrZUF0b20oY21fcHJvcF9uYW1lc1tj bV9wcm9wX2luZGV4XSwKKwkJCXN0cmxlbihjbV9wcm9wX25hbWVzW2NtX3Byb3BfaW5kZXhdKSwK KwkJCVRSVUUpOworCWlmICghYXRvbSkKKwkJcmV0dXJuIEJhZEFsbG9jOworCisJaWYgKG5lZWRf Y29uZmlndXJlKSB7CisJCWVyciA9IFJSQ29uZmlndXJlT3V0cHV0UHJvcGVydHkob3V0cHV0LT5y YW5kcl9vdXRwdXQsIGF0b20sCisJCQkJCQlGQUxTRSwgVFJVRSwgRkFMU0UsIDIsIHJhbmdlKTsK KwkJaWYgKGVycikgeworCQkJeGY4NkRydk1zZyhvdXRwdXQtPnNjcm4tPnNjcm5JbmRleCwgWF9F UlJPUiwKKwkJCQkgICAiQ29uZmlndXJpbmcgY29sb3IgbWFuYWdlbWVudCBwcm9wZXJ0eSAlcyBm YWlsZWQgd2l0aCAlZFxuIiwKKwkJCQkgICBjbV9wcm9wX25hbWVzW2NtX3Byb3BfaW5kZXhdLCBl cnIpOworCQkJcmV0dXJuIGVycjsKKwkJfQorCX0KKworCS8qIEFsd2F5cyBpc3N1ZSBhIG5vbi1w ZW5kaW5nIGNoYW5nZS4gV2UnbGwgcHVzaCBjbSBwcm9wZXJ0aWVzCisJICogb3Vyc2VsdmVzLgor CSAqLworCWVyciA9IFJSQ2hhbmdlT3V0cHV0UHJvcGVydHkob3V0cHV0LT5yYW5kcl9vdXRwdXQs IGF0b20sCisJCQkJICAgICBYQV9JTlRFR0VSLCBmb3JtYXQsCisJCQkJICAgICBQcm9wTW9kZVJl cGxhY2UsCisJCQkJICAgICBsZW5ndGgsIGRhdGEsIEZBTFNFLCBGQUxTRSk7CisJaWYgKGVycikK KwkJeGY4NkRydk1zZyhvdXRwdXQtPnNjcm4tPnNjcm5JbmRleCwgWF9FUlJPUiwKKwkJCSAgICJD aGFuZ2luZyBjb2xvciBtYW5hZ2VtZW50IHByb3BlcnR5ICVzIGZhaWxlZCB3aXRoICVkXG4iLAor CQkJICAgY21fcHJvcF9uYW1lc1tjbV9wcm9wX2luZGV4XSwgZXJyKTsKKwlyZXR1cm4gZXJyOwor fQorCisvKioKICAqIFB1c2ggc3RhZ2VkIGNvbG9yIG1hbmFnZW1lbnQgcHJvcGVydGllcyBvbiB0 aGUgQ1JUQyB0byBEUk0uCiAgKgogICogQGNydGM6IFRoZSBDUlRDIGNvbnRhaW5pbmcgc3RhZ2Vk IHByb3BlcnRpZXMKQEAgLTE3ODAsNiArMTkwMSw3IEBAIHN0YXRpYyB2b2lkIGRybW1vZGVfb3V0 cHV0X2NyZWF0ZV9yZXNvdXJjZXMoeGY4Nk91dHB1dFB0ciBvdXRwdXQpCiB7CiAJQU1ER1BVSW5m b1B0ciBpbmZvID0gQU1ER1BVUFRSKG91dHB1dC0+c2Nybik7CiAJZHJtbW9kZV9vdXRwdXRfcHJp dmF0ZV9wdHIgZHJtbW9kZV9vdXRwdXQgPSBvdXRwdXQtPmRyaXZlcl9wcml2YXRlOworCWRybW1v ZGVfY3J0Y19wcml2YXRlX3B0ciBkcm1tb2RlX2NydGM7CiAJZHJtTW9kZUNvbm5lY3RvclB0ciBt b2RlX291dHB1dCA9IGRybW1vZGVfb3V0cHV0LT5tb2RlX291dHB1dDsKIAlBTURHUFVFbnRQdHIg cEFNREdQVUVudCA9IEFNREdQVUVudFByaXYob3V0cHV0LT5zY3JuKTsKIAlkcm1Nb2RlUHJvcGVy dHlQdHIgZHJtbW9kZV9wcm9wLCB0ZWFyZnJlZV9wcm9wOwpAQCAtMTkwMyw2ICsyMDI1LDE1IEBA IHN0YXRpYyB2b2lkIGRybW1vZGVfb3V0cHV0X2NyZWF0ZV9yZXNvdXJjZXMoeGY4Nk91dHB1dFB0 ciBvdXRwdXQpCiAJCQl9CiAJCX0KIAl9CisKKwkvKiBEbyBub3QgY29uZmlndXJlIGNtIHByb3Bl cnRpZXMgb24gb3V0cHV0IGlmIHRoZXJlJ3Mgbm8gc3VwcG9ydC4gKi8KKwlpZiAoIWRybW1vZGVf Y21fZW5hYmxlZChkcm1tb2RlX291dHB1dC0+ZHJtbW9kZSkpCisJCXJldHVybjsKKworCWRybW1v ZGVfY3J0YyA9IG91dHB1dC0+Y3J0YyA/IG91dHB1dC0+Y3J0Yy0+ZHJpdmVyX3ByaXZhdGUgOiBO VUxMOworCisJZm9yIChpID0gMDsgaSA8IENNX05VTV9QUk9QUzsgaSsrKQorCQlycl9jb25maWd1 cmVfYW5kX2NoYW5nZV9jbV9wcm9wZXJ0eShvdXRwdXQsIGRybW1vZGVfY3J0YywgaSk7CiB9CiAK IHN0YXRpYyB2b2lkCi0tIAoyLjcuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KYW1kLWdmeCBtYWlsaW5nIGxpc3QKYW1kLWdmeEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9h bWQtZ2Z4Cg==