From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH v2.1 3/6] drm/atomic: Always call steal_encoder, v2. Date: Tue, 1 Mar 2016 14:52:05 +0100 Message-ID: <56D59E85.2060205@linux.intel.com> References: <1456303053-28806-1-git-send-email-maarten.lankhorst@linux.intel.com> <1456303053-28806-4-git-send-email-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1456303053-28806-4-git-send-email-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: dri-devel@lists.freedesktop.org Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org VGhlcmUncyBubyBuZWVkIHRvIGhhdmUgYSBzZXBhcmF0ZSBmdW5jdGlvbiB0byBnZXQgdGhlIGNy dGMKd2hpY2ggaXMgc3RvbGVuLCB0aGlzIGNhbiBhbHJlYWR5IGJlIGZvdW5kIHdoZW4gYWN0dWFs bHkKc3RlYWxpbmcgdGhlIGVuY29kZXIuCgpkcm1fZm9yX2VhY2hfY29ubmVjdG9yIGFscmVhZHkg Y2hlY2tzIGZvciBjb25uZWN0aW9uX211dGV4LCBzbwp1c2UgdGhhdCBtYWNybyBub3cuCgpDaGFu Z2VzIHNpbmNlIHYxOgotIERvIG5vdCBjaGVjayBmb3IgTlVMTCBjcnRjIGluIGNvbm5lY3Rvcl9z dGF0ZSwKICB0aGlzIG1heSBoYXBwZW4gd2hlbiBhIGNydGMgaXMgZGlzYWJsZWQgYW5kIGl0cyBl bmNvZGVyIHN0b2xlbi4KLSBCZWNhdXNlIG9mIHRoaXMsIHVzZSBjb25uZWN0b3ItPnN0YXRlLT5j cnRjIGluc3RlYWQgb2YgY29ubl9zdGF0ZS0+Y3J0Yy4KClNpZ25lZC1vZmYtYnk6IE1hYXJ0ZW4g TGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+Ci0tLQpPb3BzLCB0 aGlzIHBhdGNoIGhhZCBhIFdBUk5fT04oIWNvbm5fc3RhdGUtPmNydGMpOyBpbiB2MSwKdGhpcyBi cm9rZSBEUCBNU1Qgd2hpY2ggaGFkIGEgbGVnaXRpbWF0ZSByZWFzb24gdG8gZG8gc28uCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMgYi9kcml2ZXJzL2dw dS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYwppbmRleCAzZDFmOTdhODMyZmMuLjcyY2E4NWIzMjI2 MCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMKQEAgLTEwNiwyNSArMTA2LDYgQEAg Y2hlY2tfcGVuZGluZ19lbmNvZGVyX2Fzc2lnbm1lbnQoc3RydWN0IGRybV9hdG9taWNfc3RhdGUg KnN0YXRlLAogCXJldHVybiB0cnVlOwogfQogCi1zdGF0aWMgc3RydWN0IGRybV9jcnRjICoKLWdl dF9jdXJyZW50X2NydGNfZm9yX2VuY29kZXIoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKLQkJCSAg ICAgc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyKQotewotCXN0cnVjdCBkcm1fbW9kZV9jb25m aWcgKmNvbmZpZyA9ICZkZXYtPm1vZGVfY29uZmlnOwotCXN0cnVjdCBkcm1fY29ubmVjdG9yICpj b25uZWN0b3I7Ci0KLQlXQVJOX09OKCFkcm1fbW9kZXNldF9pc19sb2NrZWQoJmNvbmZpZy0+Y29u bmVjdGlvbl9tdXRleCkpOwotCi0JZHJtX2Zvcl9lYWNoX2Nvbm5lY3Rvcihjb25uZWN0b3IsIGRl dikgewotCQlpZiAoY29ubmVjdG9yLT5zdGF0ZS0+YmVzdF9lbmNvZGVyICE9IGVuY29kZXIpCi0J CQljb250aW51ZTsKLQotCQlyZXR1cm4gY29ubmVjdG9yLT5zdGF0ZS0+Y3J0YzsKLQl9Ci0KLQly ZXR1cm4gTlVMTDsKLX0KLQogc3RhdGljIHZvaWQKIHNldF9iZXN0X2VuY29kZXIoc3RydWN0IGRy bV9hdG9taWNfc3RhdGUgKnN0YXRlLAogCQkgc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNv bm5fc3RhdGUsCkBAIC0xNjgsMzggKzE0OSwxOCBAQCBzZXRfYmVzdF9lbmNvZGVyKHN0cnVjdCBk cm1fYXRvbWljX3N0YXRlICpzdGF0ZSwKIAogc3RhdGljIGludAogc3RlYWxfZW5jb2RlcihzdHJ1 Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCi0JICAgICAgc3RydWN0IGRybV9lbmNvZGVyICpl bmNvZGVyLAotCSAgICAgIHN0cnVjdCBkcm1fY3J0YyAqZW5jb2Rlcl9jcnRjKQorCSAgICAgIHN0 cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlcikKIHsKLQlzdHJ1Y3QgZHJtX21vZGVfY29uZmlnICpj b25maWcgPSAmc3RhdGUtPmRldi0+bW9kZV9jb25maWc7CiAJc3RydWN0IGRybV9jcnRjX3N0YXRl ICpjcnRjX3N0YXRlOwogCXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3I7CiAJc3RydWN0 IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNvbm5lY3Rvcl9zdGF0ZTsKIAotCS8qCi0JICogV2UgY2Fu IG9ubHkgc3RlYWwgYW4gZW5jb2RlciBjb21pbmcgZnJvbSBhIGNvbm5lY3Rvciwgd2hpY2ggbWVh bnMgd2UKLQkgKiBtdXN0IGFscmVhZHkgaG9sZCB0aGUgY29ubmVjdGlvbl9tdXRleC4KLQkgKi8K LQlXQVJOX09OKCFkcm1fbW9kZXNldF9pc19sb2NrZWQoJmNvbmZpZy0+Y29ubmVjdGlvbl9tdXRl eCkpOwotCi0JRFJNX0RFQlVHX0FUT01JQygiW0VOQ09ERVI6JWQ6JXNdIGluIHVzZSBvbiBbQ1JU QzolZDolc10sIHN0ZWFsaW5nIGl0XG4iLAotCQkJIGVuY29kZXItPmJhc2UuaWQsIGVuY29kZXIt Pm5hbWUsCi0JCQkgZW5jb2Rlcl9jcnRjLT5iYXNlLmlkLCBlbmNvZGVyX2NydGMtPm5hbWUpOwor CWRybV9mb3JfZWFjaF9jb25uZWN0b3IoY29ubmVjdG9yLCBzdGF0ZS0+ZGV2KSB7CisJCXN0cnVj dCBkcm1fY3J0YyAqZW5jb2Rlcl9jcnRjOwogCi0JY3J0Y19zdGF0ZSA9IGRybV9hdG9taWNfZ2V0 X2NydGNfc3RhdGUoc3RhdGUsIGVuY29kZXJfY3J0Yyk7Ci0JaWYgKElTX0VSUihjcnRjX3N0YXRl KSkKLQkJcmV0dXJuIFBUUl9FUlIoY3J0Y19zdGF0ZSk7Ci0KLQljcnRjX3N0YXRlLT5jb25uZWN0 b3JzX2NoYW5nZWQgPSB0cnVlOwotCi0JbGlzdF9mb3JfZWFjaF9lbnRyeShjb25uZWN0b3IsICZj b25maWctPmNvbm5lY3Rvcl9saXN0LCBoZWFkKSB7CiAJCWlmIChjb25uZWN0b3ItPnN0YXRlLT5i ZXN0X2VuY29kZXIgIT0gZW5jb2RlcikKIAkJCWNvbnRpbnVlOwogCi0JCURSTV9ERUJVR19BVE9N SUMoIlN0ZWFsaW5nIGVuY29kZXIgZnJvbSBbQ09OTkVDVE9SOiVkOiVzXVxuIiwKLQkJCQkgY29u bmVjdG9yLT5iYXNlLmlkLAotCQkJCSBjb25uZWN0b3ItPm5hbWUpOwotCiAJCWNvbm5lY3Rvcl9z dGF0ZSA9IGRybV9hdG9taWNfZ2V0X2Nvbm5lY3Rvcl9zdGF0ZShzdGF0ZSwKIAkJCQkJCQkJIGNv bm5lY3Rvcik7CiAJCWlmIChJU19FUlIoY29ubmVjdG9yX3N0YXRlKSkKQEAgLTIwOCw3ICsxNjks MTggQEAgc3RlYWxfZW5jb2RlcihzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCiAJCWlm IChjb25uZWN0b3Jfc3RhdGUtPmJlc3RfZW5jb2RlciAhPSBlbmNvZGVyKQogCQkJY29udGludWU7 CiAKKwkJZW5jb2Rlcl9jcnRjID0gY29ubmVjdG9yLT5zdGF0ZS0+Y3J0YzsKKworCQlEUk1fREVC VUdfQVRPTUlDKCJbRU5DT0RFUjolZDolc10gaW4gdXNlIG9uIFtDUlRDOiVkOiVzXSwgc3RlYWxp bmcgaXRcbiIsCisJCQkJIGVuY29kZXItPmJhc2UuaWQsIGVuY29kZXItPm5hbWUsCisJCQkJIGVu Y29kZXJfY3J0Yy0+YmFzZS5pZCwgZW5jb2Rlcl9jcnRjLT5uYW1lKTsKKwogCQlzZXRfYmVzdF9l bmNvZGVyKHN0YXRlLCBjb25uZWN0b3Jfc3RhdGUsIE5VTEwpOworCisJCWNydGNfc3RhdGUgPSBk cm1fYXRvbWljX2dldF9leGlzdGluZ19jcnRjX3N0YXRlKHN0YXRlLCBlbmNvZGVyX2NydGMpOwor CQljcnRjX3N0YXRlLT5jb25uZWN0b3JzX2NoYW5nZWQgPSB0cnVlOworCisJCXJldHVybiAwOwog CX0KIAogCXJldHVybiAwOwpAQCAtMjIxLDcgKzE5Myw2IEBAIHVwZGF0ZV9jb25uZWN0b3Jfcm91 dGluZyhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCiB7CiAJY29uc3Qgc3RydWN0IGRy bV9jb25uZWN0b3JfaGVscGVyX2Z1bmNzICpmdW5jczsKIAlzdHJ1Y3QgZHJtX2VuY29kZXIgKm5l d19lbmNvZGVyOwotCXN0cnVjdCBkcm1fY3J0YyAqZW5jb2Rlcl9jcnRjOwogCXN0cnVjdCBkcm1f Y3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZTsKIAlpbnQgaWR4LCByZXQ7CiAKQEAgLTI5OSwxNyArMjcw LDEyIEBAIHVwZGF0ZV9jb25uZWN0b3Jfcm91dGluZyhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAq c3RhdGUsCiAJCXJldHVybiAtRUlOVkFMOwogCX0KIAotCWVuY29kZXJfY3J0YyA9IGdldF9jdXJy ZW50X2NydGNfZm9yX2VuY29kZXIoc3RhdGUtPmRldiwKLQkJCQkJCSAgICBuZXdfZW5jb2Rlcik7 Ci0KLQlpZiAoZW5jb2Rlcl9jcnRjKSB7Ci0JCXJldCA9IHN0ZWFsX2VuY29kZXIoc3RhdGUsIG5l d19lbmNvZGVyLCBlbmNvZGVyX2NydGMpOwotCQlpZiAocmV0KSB7Ci0JCQlEUk1fREVCVUdfQVRP TUlDKCJFbmNvZGVyIHN0ZWFsaW5nIGZhaWxlZCBmb3IgW0NPTk5FQ1RPUjolZDolc11cbiIsCi0J CQkJCSBjb25uZWN0b3ItPmJhc2UuaWQsCi0JCQkJCSBjb25uZWN0b3ItPm5hbWUpOwotCQkJcmV0 dXJuIHJldDsKLQkJfQorCXJldCA9IHN0ZWFsX2VuY29kZXIoc3RhdGUsIG5ld19lbmNvZGVyKTsK KwlpZiAocmV0KSB7CisJCURSTV9ERUJVR19BVE9NSUMoIkVuY29kZXIgc3RlYWxpbmcgZmFpbGVk IGZvciBbQ09OTkVDVE9SOiVkOiVzXVxuIiwKKwkJCQkgY29ubmVjdG9yLT5iYXNlLmlkLAorCQkJ CSBjb25uZWN0b3ItPm5hbWUpOworCQlyZXR1cm4gcmV0OwogCX0KIAogCWlmIChXQVJOX09OKCFj b25uZWN0b3Jfc3RhdGUtPmNydGMpKQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vaW50ZWwtZ2Z4Cg==