From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH v2 5/6] drm/atomic: Handle encoder assignment conflicts in a separate check. Date: Wed, 24 Feb 2016 09:37:32 +0100 Message-ID: <1456303053-28806-6-git-send-email-maarten.lankhorst@linux.intel.com> References: <1456303053-28806-1-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-1-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: dri-devel@lists.freedesktop.org VGhlIGN1cnJlbnQgY2hlY2sgZG9lc24ndCBoYW5kbGUgdGhlIGNhc2Ugd2hlcmUgd2UgZG9uJ3Qg c3RlYWwgYW4KZW5jb2RlciwgYnV0IGtlZXAgaXQgb24gdGhlIGN1cnJlbnQgY29ubmVjdG9yLiBJ ZiB3ZSByZXB1cnBvc2UKZGlzYWJsZV9jb25mbGljdGluZ19lbmNvZGVycyB0byBkbyB0aGUgY2hl Y2tpbmcsIHdlIGp1c3QgaGF2ZQp0byByZWplY3QgdGhlIG9uZXMgdGhhdCBjb25mbGljdC4KClNp Z25lZC1vZmYtYnk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBsaW51eC5p bnRlbC5jb20+ClRlc3RjYXNlOiBrbXNfc2V0bW9kZS5pbnZhbGlkLWNsb25lLXNpbmdsZS1jcnRj LXN0ZWFsaW5nCi0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMgfCA1OCAr KysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMjQg aW5zZXJ0aW9ucygrKSwgMzQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2RybV9hdG9taWNfaGVscGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19oZWxw ZXIuYwppbmRleCAzNTQzYzdmY2QwNzIuLjMyYmQ1YmViZWYwYiAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9h dG9taWNfaGVscGVyLmMKQEAgLTg2LDcgKzg2LDggQEAgZHJtX2F0b21pY19oZWxwZXJfcGxhbmVf Y2hhbmdlZChzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCiAJfQogfQogCi1zdGF0aWMg aW50IGRpc2FibGVfY29uZmxpY3RpbmdfY29ubmVjdG9ycyhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0 ZSAqc3RhdGUpCitzdGF0aWMgaW50IGhhbmRsZV9jb25mbGljdGluZ19lbmNvZGVycyhzdHJ1Y3Qg ZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCisJCQkJICAgICAgIGJvb2wgZGlzYWJsZV9jb25mbGlj dGluZ19lbmNvZGVycykKIHsKIAlzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqY29ubl9zdGF0 ZTsKIAlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yOwpAQCAtMTA2LDggKzEwNywxNyBA QCBzdGF0aWMgaW50IGRpc2FibGVfY29uZmxpY3RpbmdfY29ubmVjdG9ycyhzdHJ1Y3QgZHJtX2F0 b21pY19zdGF0ZSAqc3RhdGUpCiAJCWVsc2UKIAkJCW5ld19lbmNvZGVyID0gZnVuY3MtPmJlc3Rf ZW5jb2Rlcihjb25uZWN0b3IpOwogCi0JCWlmIChuZXdfZW5jb2RlcikKKwkJaWYgKG5ld19lbmNv ZGVyKSB7CisJCQlpZiAoZW5jb2Rlcl9tYXNrICYgKDEgPDwgZHJtX2VuY29kZXJfaW5kZXgobmV3 X2VuY29kZXIpKSkgeworCQkJCURSTV9ERUJVR19BVE9NSUMoIltFTkNPREVSOiVkOiVzXSBvbiBb Q09OTkVDVE9SOiVkOiVzXSBhbHJlYWR5IGFzc2lnbmVkXG4iLAorCQkJCQluZXdfZW5jb2Rlci0+ YmFzZS5pZCwgbmV3X2VuY29kZXItPm5hbWUsCisJCQkJCWNvbm5lY3Rvci0+YmFzZS5pZCwgY29u bmVjdG9yLT5uYW1lKTsKKworCQkJCXJldHVybiAtRUlOVkFMOworCQkJfQorCiAJCQllbmNvZGVy X21hc2sgfD0gMSA8PCBkcm1fZW5jb2Rlcl9pbmRleChuZXdfZW5jb2Rlcik7CisJCX0KIAl9CiAK IAlkcm1fZm9yX2VhY2hfY29ubmVjdG9yKGNvbm5lY3Rvciwgc3RhdGUtPmRldikgewpAQCAtMTIw LDYgKzEzMCwxNSBAQCBzdGF0aWMgaW50IGRpc2FibGVfY29uZmxpY3RpbmdfY29ubmVjdG9ycyhz dHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCiAJCWlmICghZW5jb2RlciB8fCAhKGVuY29k ZXJfbWFzayAmICgxIDw8IGRybV9lbmNvZGVyX2luZGV4KGVuY29kZXIpKSkpCiAJCQljb250aW51 ZTsKIAorCQlpZiAoIWRpc2FibGVfY29uZmxpY3RpbmdfZW5jb2RlcnMpIHsKKwkJCURSTV9ERUJV R19BVE9NSUMoIltFTkNPREVSOiVkOiVzXSBpbiB1c2Ugb24gW0NSVEM6JWQ6JXNdIGJ5IFtDT05O RUNUT1I6JWQ6JXNdXG4iLAorCQkJCQkgZW5jb2Rlci0+YmFzZS5pZCwgZW5jb2Rlci0+bmFtZSwK KwkJCQkJIGNvbm5lY3Rvci0+c3RhdGUtPmNydGMtPmJhc2UuaWQsCisJCQkJCSBjb25uZWN0b3It PnN0YXRlLT5jcnRjLT5uYW1lLAorCQkJCQkgY29ubmVjdG9yLT5iYXNlLmlkLCBjb25uZWN0b3It Pm5hbWUpOworCQkJcmV0dXJuIC1FSU5WQUw7CisJCX0KKwogCQljb25uX3N0YXRlID0gZHJtX2F0 b21pY19nZXRfY29ubmVjdG9yX3N0YXRlKHN0YXRlLCBjb25uZWN0b3IpOwogCQlpZiAoSVNfRVJS KGNvbm5fc3RhdGUpKQogCQkJcmV0dXJuIFBUUl9FUlIoY29ubl9zdGF0ZSk7CkBAIC0xNDgsMjYg KzE2Nyw2IEBAIHN0YXRpYyBpbnQgZGlzYWJsZV9jb25mbGljdGluZ19jb25uZWN0b3JzKHN0cnVj dCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGJvb2wK LWNoZWNrX3BlbmRpbmdfZW5jb2Rlcl9hc3NpZ25tZW50KHN0cnVjdCBkcm1fYXRvbWljX3N0YXRl ICpzdGF0ZSwKLQkJCQkgc3RydWN0IGRybV9lbmNvZGVyICpuZXdfZW5jb2RlcikKLXsKLQlzdHJ1 Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yOwotCXN0cnVjdCBkcm1fY29ubmVjdG9yX3N0YXRl ICpjb25uX3N0YXRlOwotCWludCBpOwotCi0JZm9yX2VhY2hfY29ubmVjdG9yX2luX3N0YXRlKHN0 YXRlLCBjb25uZWN0b3IsIGNvbm5fc3RhdGUsIGkpIHsKLQkJaWYgKGNvbm5fc3RhdGUtPmJlc3Rf ZW5jb2RlciAhPSBuZXdfZW5jb2RlcikKLQkJCWNvbnRpbnVlOwotCi0JCS8qIGVuY29kZXIgYWxy ZWFkeSBhc3NpZ25lZCBhbmQgd2UncmUgdHJ5aW5nIHRvIHJlLXN0ZWFsIGl0ISAqLwotCQlpZiAo Y29ubmVjdG9yLT5zdGF0ZS0+YmVzdF9lbmNvZGVyICE9IGNvbm5fc3RhdGUtPmJlc3RfZW5jb2Rl cikKLQkJCXJldHVybiBmYWxzZTsKLQl9Ci0KLQlyZXR1cm4gdHJ1ZTsKLX0KLQogc3RhdGljIHZv aWQKIHNldF9iZXN0X2VuY29kZXIoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlLAogCQkg c3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNvbm5fc3RhdGUsCkBAIC0zMjYsMTMgKzMyNSw2 IEBAIHVwZGF0ZV9jb25uZWN0b3Jfcm91dGluZyhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3Rh dGUsCiAJCXJldHVybiAwOwogCX0KIAotCWlmICghY2hlY2tfcGVuZGluZ19lbmNvZGVyX2Fzc2ln bm1lbnQoc3RhdGUsIG5ld19lbmNvZGVyKSkgewotCQlEUk1fREVCVUdfQVRPTUlDKCJFbmNvZGVy IGZvciBbQ09OTkVDVE9SOiVkOiVzXSBhbHJlYWR5IGFzc2lnbmVkXG4iLAotCQkJCSBjb25uZWN0 b3ItPmJhc2UuaWQsCi0JCQkJIGNvbm5lY3Rvci0+bmFtZSk7Ci0JCXJldHVybiAtRUlOVkFMOwot CX0KLQogCXJldCA9IHN0ZWFsX2VuY29kZXIoc3RhdGUsIG5ld19lbmNvZGVyKTsKIAlpZiAocmV0 KSB7CiAJCURSTV9ERUJVR19BVE9NSUMoIkVuY29kZXIgc3RlYWxpbmcgZmFpbGVkIGZvciBbQ09O TkVDVE9SOiVkOiVzXVxuIiwKQEAgLTUxMSwxMSArNTAzLDkgQEAgZHJtX2F0b21pY19oZWxwZXJf Y2hlY2tfbW9kZXNldChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQl9CiAJfQogCi0JaWYgKHN0 YXRlLT5sZWdhY3lfc2V0X2NvbmZpZykgewotCQlyZXQgPSBkaXNhYmxlX2NvbmZsaWN0aW5nX2Nv bm5lY3RvcnMoc3RhdGUpOwotCQlpZiAocmV0KQotCQkJcmV0dXJuIHJldDsKLQl9CisJcmV0ID0g aGFuZGxlX2NvbmZsaWN0aW5nX2VuY29kZXJzKHN0YXRlLCBzdGF0ZS0+bGVnYWN5X3NldF9jb25m aWcpOworCWlmIChyZXQpCisJCXJldHVybiByZXQ7CiAKIAlmb3JfZWFjaF9jb25uZWN0b3JfaW5f c3RhdGUoc3RhdGUsIGNvbm5lY3RvciwgY29ubmVjdG9yX3N0YXRlLCBpKSB7CiAJCS8qCi0tIAoy LjEuMAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50 ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==