From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Stone Subject: [RFC PATCH 34/37] drm: atomic: Add MODE_ID property Date: Thu, 19 Mar 2015 04:33:33 +0000 Message-ID: <1426739616-10635-34-git-send-email-daniels@collabora.com> References: <1426739556-10429-1-git-send-email-daniels@collabora.com> <1426739616-10635-1-git-send-email-daniels@collabora.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [93.93.135.160]) by gabe.freedesktop.org (Postfix) with ESMTP id D29766E964 for ; Wed, 18 Mar 2015 21:34:10 -0700 (PDT) In-Reply-To: <1426739616-10635-1-git-send-email-daniels@collabora.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org QXRvbWljIG1vZGVzZXR0aW5nOiBub3cgd2l0aCBtb2Rlc2V0dGluZyBzdXBwb3J0LgoKU2lnbmVk LW9mZi1ieTogRGFuaWVsIFN0b25lIDxkYW5pZWxzQGNvbGxhYm9yYS5jb20+Ci0tLQogZHJpdmVy cy9ncHUvZHJtL2RybV9hdG9taWMuYyB8IDM1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKystCiBkcml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYyAgIHwgIDcgKysrKysrKwogaW5jbHVk ZS9kcm0vZHJtX2NydGMuaCAgICAgICB8ICAxICsKIDMgZmlsZXMgY2hhbmdlZCwgNDIgaW5zZXJ0 aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1f YXRvbWljLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5jCmluZGV4IDVkM2FiZTMuLjkw ODVlMDQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2RybV9hdG9taWMuYwpAQCAtMTc5LDYgKzE3OSwzNCBAQCB2b2lkIGRybV9h dG9taWNfc3RhdGVfZnJlZShzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCiBFWFBPUlRf U1lNQk9MKGRybV9hdG9taWNfc3RhdGVfZnJlZSk7CiAKIC8qKgorICogZHJtX2F0b21pY19zZXRf bW9kZV9mb3JfY3J0YyAtIHNldCBtb2RlIGZvciBDUlRDCisgKiBAY3J0Y19zdGF0ZTogYXRvbWlj IHN0YXRlIG9iamVjdCBmb3IgdGhlIENSVEMKKyAqIEBtb2RlOiBtb2RlIHRvIHVzZSBmb3IgdGhl IHBsYW5lCisgKgorICogQ2hhbmdpbmcgdGhlIGRpc3BsYXkgbW9kZSBmb3IgYSBDUlRDIHJlcXVp cmVzIHVzIHRvIGdyYWIgYSByZWZlcmVuY2UKKyAqIHRvIHRoZSBuZXcgbW9kZSBhbmQgZHJvcCB0 aGUgcmVmZXJlbmNlIHRvIHRoZSBvbGQgbW9kZSwgaWYgdGhlcmUgaXMgb25lLgorICogVGhpcyBm dW5jdGlvbiB0YWtlcyBjYXJlIG9mIGFsbCB0aGVzZSBkZXRhaWxzIGJlc2lkZXMgdXBkYXRpbmcg dGhlIHBvaW50ZXIKKyAqIGluIHRoZSBzdGF0ZSBvYmplY3QgaXRzZWxmLgorICovCitzdGF0aWMg dm9pZAorZHJtX2F0b21pY19zZXRfbW9kZV9mb3JfY3J0YyhzdHJ1Y3QgZHJtX2NydGNfc3RhdGUg KmNydGNfc3RhdGUsCisJCQkgICAgIHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlKQorewor CWlmIChtb2RlKQorCQlkcm1fbW9kZV9yZWZlcmVuY2UobW9kZSk7CisJaWYgKGNydGNfc3RhdGUt Pm1vZGUpCisJCWRybV9tb2RlX2Rlc3Ryb3koY3J0Y19zdGF0ZS0+Y3J0Yy0+ZGV2LCBjcnRjX3N0 YXRlLT5tb2RlKTsKKwljcnRjX3N0YXRlLT5tb2RlID0gbW9kZTsKKworCWlmIChtb2RlKQorCQlE Uk1fREVCVUdfQVRPTUlDKCJTZXQgW01PREU6JWRdIGZvciBDUlRDIHN0YXRlICVwXG4iLAorCQkJ CSBtb2RlLT5iYXNlLmlkLCBjcnRjX3N0YXRlKTsKKwllbHNlCisJCURSTV9ERUJVR19BVE9NSUMo IlNldCBbTk9NT0RFXSBmb3IgQ1JUQyBzdGF0ZSAlcFxuIiwKKwkJCQkgY3J0Y19zdGF0ZSk7Cit9 CisKKy8qKgogICogZHJtX2F0b21pY19nZXRfY3J0Y19zdGF0ZSAtIGdldCBjcnRjIHN0YXRlCiAg KiBAc3RhdGU6IGdsb2JhbCBhdG9taWMgc3RhdGUgb2JqZWN0CiAgKiBAY3J0YzogY3J0YyB0byBn ZXQgc3RhdGUgb2JqZWN0IGZvcgpAQCAtMjQ3LDkgKzI3NSwxMiBAQCBpbnQgZHJtX2F0b21pY19j cnRjX3NldF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJc3RydWN0IGRybV9kZXZp Y2UgKmRldiA9IGNydGMtPmRldjsKIAlzdHJ1Y3QgZHJtX21vZGVfY29uZmlnICpjb25maWcgPSAm ZGV2LT5tb2RlX2NvbmZpZzsKIAotCS8qIEZJWE1FOiBNb2RlIHByb3AgaXMgbWlzc2luZywgd2hp Y2ggYWxzbyBjb250cm9scyAtPmVuYWJsZS4gKi8KIAlpZiAocHJvcGVydHkgPT0gY29uZmlnLT5w cm9wX2FjdGl2ZSkKIAkJc3RhdGUtPmFjdGl2ZSA9IHZhbDsKKwllbHNlIGlmIChwcm9wZXJ0eSA9 PSBjb25maWctPnByb3BfbW9kZV9pZCkgeworCQlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9k ZSA9IGRybV9tb2RlX2ZpbmQoZGV2LCB2YWwpOworCQlkcm1fYXRvbWljX3NldF9tb2RlX2Zvcl9j cnRjKHN0YXRlLCBtb2RlKTsKKwl9CiAJZWxzZSBpZiAoY3J0Yy0+ZnVuY3MtPmF0b21pY19zZXRf cHJvcGVydHkpCiAJCXJldHVybiBjcnRjLT5mdW5jcy0+YXRvbWljX3NldF9wcm9wZXJ0eShjcnRj LCBzdGF0ZSwgcHJvcGVydHksIHZhbCk7CiAJZWxzZQpAQCAtMjc0LDYgKzMwNSw4IEBAIGludCBk cm1fYXRvbWljX2NydGNfZ2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAogCWlm IChwcm9wZXJ0eSA9PSBjb25maWctPnByb3BfYWN0aXZlKQogCQkqdmFsID0gc3RhdGUtPmFjdGl2 ZTsKKwllbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25maWctPnByb3BfbW9kZV9pZCkKKwkJKnZhbCA9 IChzdGF0ZS0+bW9kZSkgPyBzdGF0ZS0+bW9kZS0+YmFzZS5pZCA6IDA7CiAJZWxzZSBpZiAoY3J0 Yy0+ZnVuY3MtPmF0b21pY19nZXRfcHJvcGVydHkpCiAJCXJldHVybiBjcnRjLT5mdW5jcy0+YXRv bWljX2dldF9wcm9wZXJ0eShjcnRjLCBzdGF0ZSwgcHJvcGVydHksIHZhbCk7CiAJZWxzZQpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJt X2NydGMuYwppbmRleCAzZWYwMzMyLi5jMWIzODAxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vZHJtX2NydGMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYwpAQCAtNjgzLDYg KzY4Myw3IEBAIGludCBkcm1fY3J0Y19pbml0X3dpdGhfcGxhbmVzKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYsIHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAogCWlmIChkcm1fY29yZV9jaGVja19mZWF0 dXJlKGRldiwgRFJJVkVSX0FUT01JQykpIHsKIAkJZHJtX29iamVjdF9hdHRhY2hfcHJvcGVydHko JmNydGMtPmJhc2UsIGNvbmZpZy0+cHJvcF9hY3RpdmUsIDApOworCQlkcm1fb2JqZWN0X2F0dGFj aF9wcm9wZXJ0eSgmY3J0Yy0+YmFzZSwgY29uZmlnLT5wcm9wX21vZGVfaWQsIDApOwogCX0KIAog CXJldHVybiAwOwpAQCAtMTQyOSw2ICsxNDMwLDEyIEBAIHN0YXRpYyBpbnQgZHJtX21vZGVfY3Jl YXRlX3N0YW5kYXJkX3Byb3BlcnRpZXMoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAkJcmV0dXJu IC1FTk9NRU07CiAJZGV2LT5tb2RlX2NvbmZpZy5wcm9wX2FjdGl2ZSA9IHByb3A7CiAKKwlwcm9w ID0gZHJtX3Byb3BlcnR5X2NyZWF0ZV9vYmplY3QoZGV2LCBEUk1fTU9ERV9QUk9QX0FUT01JQywK KwkJCSJNT0RFX0lEIiwgRFJNX01PREVfT0JKRUNUX01PREUpOworCWlmICghcHJvcCkKKwkJcmV0 dXJuIC1FTk9NRU07CisJZGV2LT5tb2RlX2NvbmZpZy5wcm9wX21vZGVfaWQgPSBwcm9wOworCiAJ cmV0dXJuIDA7CiB9CiAKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9jcnRjLmggYi9pbmNs dWRlL2RybS9kcm1fY3J0Yy5oCmluZGV4IDNhYjcwYTcuLjVjOGNiMjUgMTAwNjQ0Ci0tLSBhL2lu Y2x1ZGUvZHJtL2RybV9jcnRjLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtX2NydGMuaApAQCAtMTEy Miw2ICsxMTIyLDcgQEAgc3RydWN0IGRybV9tb2RlX2NvbmZpZyB7CiAJc3RydWN0IGRybV9wcm9w ZXJ0eSAqcHJvcF9mYl9pZDsKIAlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICpwcm9wX2NydGNfaWQ7CiAJ c3RydWN0IGRybV9wcm9wZXJ0eSAqcHJvcF9hY3RpdmU7CisJc3RydWN0IGRybV9wcm9wZXJ0eSAq cHJvcF9tb2RlX2lkOwogCiAJLyogRFZJLUkgcHJvcGVydGllcyAqLwogCXN0cnVjdCBkcm1fcHJv cGVydHkgKmR2aV9pX3N1YmNvbm5lY3Rvcl9wcm9wZXJ0eTsKLS0gCjIuMy4yCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBs aXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=