From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH i-g-t v2 05/14] lib/igt_kms: Allow setting any output property through the !atomic paths Date: Thu, 12 Oct 2017 13:54:26 +0200 Message-ID: <20171012115435.18880-6-maarten.lankhorst@linux.intel.com> References: <20171012115435.18880-1-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mblankhorst.nl (mblankhorst.nl [IPv6:2a02:2308::216:3eff:fe92:dfa3]) by gabe.freedesktop.org (Postfix) with ESMTPS id C697A6E7F9 for ; Thu, 12 Oct 2017 11:54:41 +0000 (UTC) In-Reply-To: <20171012115435.18880-1-maarten.lankhorst@linux.intel.com> 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 List-Id: intel-gfx@lists.freedesktop.org RXZlcnl0aGluZyBleGNlcHQgQ1JUQ19JRCBjYW4gYmUgc2V0IGluIHRoZSBsZWdhY3kgcGF0aHMs CndlIGV2ZW4gaGF2ZSAyLCB0aGUgbGVnYWN5IGFuZCB1bml2ZXJzYWwgcGF0aC4gRXhjZXJjaXNl IGJvdGguIDpECgpTaWduZWQtb2ZmLWJ5OiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5r aG9yc3RAbGludXguaW50ZWwuY29tPgotLS0KIGxpYi9pZ3Rfa21zLmMgfCA1MyArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5n ZWQsIDM3IGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYi9p Z3Rfa21zLmMgYi9saWIvaWd0X2ttcy5jCmluZGV4IGJlODk2MzI1NDdlNS4uZTdiOWZiYWJhNzA5 IDEwMDY0NAotLS0gYS9saWIvaWd0X2ttcy5jCisrKyBiL2xpYi9pZ3Rfa21zLmMKQEAgLTI0MTMs NiArMjQxMywzNiBAQCBzdGF0aWMgaW50IGlndF9waXBlX2NvbW1pdChpZ3RfcGlwZV90ICpwaXBl LAogCXJldHVybiAwOwogfQogCitzdGF0aWMgaW50IGlndF9vdXRwdXRfY29tbWl0KGlndF9vdXRw dXRfdCAqb3V0cHV0LAorCQkJICAgICBlbnVtIGlndF9jb21taXRfc3R5bGUgcywKKwkJCSAgICAg Ym9vbCBmYWlsX29uX2Vycm9yKQoreworCWludCBpLCByZXQ7CisKKwlmb3IgKGkgPSAwOyBpIDwg SUdUX05VTV9DT05ORUNUT1JfUFJPUFM7IGkrKykgeworCQlpZiAoIWlndF9vdXRwdXRfaXNfcHJv cF9jaGFuZ2VkKG91dHB1dCwgaSkpCisJCQljb250aW51ZTsKKworCQkvKiBDUlRDX0lEIGlzIHNl dCBieSBjYWxsaW5nIGRybU1vZGVTZXRDcnRjIGluIHRoZSBsZWdhY3kgcGF0aC4gKi8KKwkJaWYg KGkgPT0gSUdUX0NPTk5FQ1RPUl9DUlRDX0lEKQorCQkJY29udGludWU7CisKKwkJaWd0X2Fzc2Vy dChvdXRwdXQtPnByb3BzW2ldKTsKKworCQlpZiAocyA9PSBDT01NSVRfTEVHQUNZKQorCQkJcmV0 ID0gZHJtTW9kZUNvbm5lY3RvclNldFByb3BlcnR5KG91dHB1dC0+ZGlzcGxheS0+ZHJtX2ZkLCBv dXRwdXQtPmlkLAorCQkJCQkJCSAgb3V0cHV0LT5wcm9wc1tpXSwgb3V0cHV0LT52YWx1ZXNbaV0p OworCQllbHNlCisJCQlyZXQgPSBkcm1Nb2RlT2JqZWN0U2V0UHJvcGVydHkob3V0cHV0LT5kaXNw bGF5LT5kcm1fZmQsIG91dHB1dC0+aWQsCisJCQkJCQkgICAgICAgRFJNX01PREVfT0JKRUNUX0NP Tk5FQ1RPUiwKKwkJCQkJCSAgICAgICBvdXRwdXQtPnByb3BzW2ldLCBvdXRwdXQtPnZhbHVlc1tp XSk7CisKKwkJQ0hFQ0tfUkVUVVJOKHJldCwgZmFpbF9vbl9lcnJvcik7CisJfQorCisJcmV0dXJu IDA7Cit9CisKIHN0YXRpYyB2b2lkCiBpZ3RfcGlwZV9yZXBsYWNlX2Jsb2IoaWd0X3BpcGVfdCAq cGlwZSwgZW51bSBpZ3RfYXRvbWljX2NydGNfcHJvcGVydGllcyBwcm9wLCB2b2lkICpwdHIsIHNp emVfdCBsZW5ndGgpCiB7CkBAIC0yNTkwLDEwICsyNjIwLDExIEBAIGRpc3BsYXlfY29tbWl0X2No YW5nZWQoaWd0X2Rpc3BsYXlfdCAqZGlzcGxheSwgZW51bSBpZ3RfY29tbWl0X3N0eWxlIHMpCiAJ Zm9yIChpID0gMDsgaSA8IGRpc3BsYXktPm5fb3V0cHV0czsgaSsrKSB7CiAJCWlndF9vdXRwdXRf dCAqb3V0cHV0ID0gJmRpc3BsYXktPm91dHB1dHNbaV07CiAKLQkJaWYgKHMgPT0gQ09NTUlUX0FU T01JQykKKwkJaWYgKHMgIT0gQ09NTUlUX1VOSVZFUlNBTCkKIAkJCW91dHB1dC0+Y2hhbmdlZCA9 IDA7Ci0JCWVsc2UgaWYgKHMgIT0gQ09NTUlUX1VOSVZFUlNBTCkKLQkJCWlndF9vdXRwdXRfY2xl YXJfcHJvcF9jaGFuZ2VkKG91dHB1dCwgSUdUX0NPTk5FQ1RPUl9DUlRDX0lEKTsKKwkJZWxzZQor CQkJLyogbm8gbW9kZXNldCBpbiB1bml2ZXJzYWwgY29tbWl0LCBubyBjaGFuZ2UgdG8gY3J0Yy4g Ki8KKwkJCW91dHB1dC0+Y2hhbmdlZCAmPSAxIDw8IElHVF9DT05ORUNUT1JfQ1JUQ19JRDsKIAl9 CiB9CiAKQEAgLTI2MTAsNyArMjY0MSw3IEBAIHN0YXRpYyBpbnQgZG9fZGlzcGxheV9jb21taXQo aWd0X2Rpc3BsYXlfdCAqZGlzcGxheSwKIAkJCSAgICAgZW51bSBpZ3RfY29tbWl0X3N0eWxlIHMs CiAJCQkgICAgIGJvb2wgZmFpbF9vbl9lcnJvcikKIHsKLQlpbnQgcmV0OworCWludCBpLCByZXQg PSAwOwogCWVudW0gcGlwZSBwaXBlOwogCUxPR19JTkRFTlQoZGlzcGxheSwgImNvbW1pdCIpOwog CkBAIC0yNjE5LDI4ICsyNjUwLDE4IEBAIHN0YXRpYyBpbnQgZG9fZGlzcGxheV9jb21taXQoaWd0 X2Rpc3BsYXlfdCAqZGlzcGxheSwKIAlpZiAocyA9PSBDT01NSVRfQVRPTUlDKSB7CiAJCXJldCA9 IGlndF9hdG9taWNfY29tbWl0KGRpc3BsYXksIERSTV9NT0RFX0FUT01JQ19BTExPV19NT0RFU0VU LCBOVUxMKTsKIAl9IGVsc2UgewotCQlpbnQgdmFsaWRfb3V0cyA9IDA7Ci0KIAkJZm9yX2VhY2hf cGlwZShkaXNwbGF5LCBwaXBlKSB7CiAJCQlpZ3RfcGlwZV90ICpwaXBlX29iaiA9ICZkaXNwbGF5 LT5waXBlc1twaXBlXTsKLQkJCWlndF9vdXRwdXRfdCAqb3V0cHV0ID0gaWd0X3BpcGVfZ2V0X291 dHB1dChwaXBlX29iaik7Ci0KLQkJCWlmIChvdXRwdXQpCi0JCQkJdmFsaWRfb3V0cysrOwogCiAJ CQlyZXQgPSBpZ3RfcGlwZV9jb21taXQocGlwZV9vYmosIHMsIGZhaWxfb25fZXJyb3IpOwogCQkJ aWYgKHJldCkKIAkJCQlicmVhazsKIAkJfQogCi0JCWlmICh2YWxpZF9vdXRzID09IDApIHsKLQkJ CUxPR19VTklOREVOVChkaXNwbGF5KTsKLQotCQkJcmV0dXJuIC0xOwotCQl9CisJCWZvciAoaSA9 IDA7ICFyZXQgJiYgaSA8IGRpc3BsYXktPm5fb3V0cHV0czsgaSsrKQorCQkJcmV0ID0gaWd0X291 dHB1dF9jb21taXQoJmRpc3BsYXktPm91dHB1dHNbaV0sIHMsIGZhaWxfb25fZXJyb3IpOwogCX0K IAotCiAJTE9HX1VOSU5ERU5UKGRpc3BsYXkpOwogCUNIRUNLX1JFVFVSTihyZXQsIGZhaWxfb25f ZXJyb3IpOwogCi0tIAoyLjE0LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ludGVsLWdmeAo=