From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH v6 02/12] drm/atomic: Add support for custom scaling mode properties, v2 Date: Mon, 1 May 2017 15:37:54 +0200 Message-ID: <20170501133804.8116-3-maarten.lankhorst@linux.intel.com> References: <20170501133804.8116-1-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: <20170501133804.8116-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 Cc: dri-devel@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org U29tZSBjb25uZWN0b3JzIG1heSBub3QgYWxsb3cgYWxsIHNjYWxpbmcgbW9kZSBwcm9wZXJ0aWVz LCB0aGlzIGZ1bmN0aW9uIHdpbGwgYWxsb3cKY3JlYXRpbmcgdGhlIHNjYWxpbmcgbW9kZSBwcm9w ZXJ0eSB3aXRoIG9ubHkgdGhlIHN1cHBvcnRlZCBzdWJzZXQuIEl0IGFsc28gd2lyZXMgdXAKdGhp cyBzdGF0ZSBmb3IgYXRvbWljLgoKVGhpcyB3aWxsIG1ha2UgaXQgcG9zc2libGUgdG8gY29udmVy dCBpOTE1IGNvbm5lY3RvcnMgdG8gYXRvbWljLgoKQ2hhbmdlcyBzaW5jZSB2MToKIC0gQWRkIERS TV9NT0RFX1BST1BfRU5VTSBmbGFnIHRvIGRybV9wcm9wZXJ0eV9jcmVhdGUKIC0gVXNlIHRoZSBj b3JyZWN0IGluZGV4IGluIGRybV9wcm9wZXJ0eV9hZGRfZW51bS4KIC0gQWRkIERvY0Jvb2sgZm9y IGZ1bmN0aW9uIChTZWFuIFBhdWwpLgogLSBXYXJuIGlmIGxlc3MgdGhhbiAyIHZhbGlkIHNjYWxp bmcgbW9kZXMgYXJlIHBhc3NlZC4KIC0gUmVtb3ZlIGxldmVsIG9mIGluZGVudC4gKFNlYW4gUGF1 bCkKClNpZ25lZC1vZmYtYnk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBs aW51eC5pbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYyAgICB8ICA0 ICsrKwogZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYyB8IDU4ICsrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrCiBpbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmgg ICAgIHwgMTAgKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA3MiBpbnNlcnRpb25zKCspCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYyBiL2RyaXZlcnMvZ3B1L2RybS9k cm1fYXRvbWljLmMKaW5kZXggNzdiYjM2ZTk1NmRiLi5jN2Y5MWRjZWJiZTkgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9h dG9taWMuYwpAQCAtMTEyNSw2ICsxMTI1LDggQEAgaW50IGRybV9hdG9taWNfY29ubmVjdG9yX3Nl dF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAogCQkJc3RhdGUtPmxp bmtfc3RhdHVzID0gdmFsOwogCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29uZmlnLT5hc3BlY3Rf cmF0aW9fcHJvcGVydHkpIHsKIAkJc3RhdGUtPnBpY3R1cmVfYXNwZWN0X3JhdGlvID0gdmFsOwor CX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29ubmVjdG9yLT5zY2FsaW5nX21vZGVfcHJvcGVydHkp IHsKKwkJc3RhdGUtPnNjYWxpbmdfbW9kZSA9IHZhbDsKIAl9IGVsc2UgaWYgKGNvbm5lY3Rvci0+ ZnVuY3MtPmF0b21pY19zZXRfcHJvcGVydHkpIHsKIAkJcmV0dXJuIGNvbm5lY3Rvci0+ZnVuY3Mt PmF0b21pY19zZXRfcHJvcGVydHkoY29ubmVjdG9yLAogCQkJCXN0YXRlLCBwcm9wZXJ0eSwgdmFs KTsKQEAgLTEyMDMsNiArMTIwNSw4IEBAIGRybV9hdG9taWNfY29ubmVjdG9yX2dldF9wcm9wZXJ0 eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAogCQkqdmFsID0gc3RhdGUtPmxpbmtf c3RhdHVzOwogCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29uZmlnLT5hc3BlY3RfcmF0aW9fcHJv cGVydHkpIHsKIAkJKnZhbCA9IHN0YXRlLT5waWN0dXJlX2FzcGVjdF9yYXRpbzsKKwl9IGVsc2Ug aWYgKHByb3BlcnR5ID09IGNvbm5lY3Rvci0+c2NhbGluZ19tb2RlX3Byb3BlcnR5KSB7CisJCSp2 YWwgPSBzdGF0ZS0+c2NhbGluZ19tb2RlOwogCX0gZWxzZSBpZiAoY29ubmVjdG9yLT5mdW5jcy0+ YXRvbWljX2dldF9wcm9wZXJ0eSkgewogCQlyZXR1cm4gY29ubmVjdG9yLT5mdW5jcy0+YXRvbWlj X2dldF9wcm9wZXJ0eShjb25uZWN0b3IsCiAJCQkJc3RhdGUsIHByb3BlcnR5LCB2YWwpOwpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9kcm1fY29ubmVjdG9yLmMKaW5kZXggOWY4NDc2MTVhYzc0Li5iMzkxMmYyZTQ4YzYgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVjdG9yLmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2RybV9jb25uZWN0b3IuYwpAQCAtOTYxLDYgKzk2MSw2NCBAQCBpbnQgZHJtX21vZGVfY3Jl YXRlX3NjYWxpbmdfbW9kZV9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogRVhQT1JU X1NZTUJPTChkcm1fbW9kZV9jcmVhdGVfc2NhbGluZ19tb2RlX3Byb3BlcnR5KTsKIAogLyoqCisg KiBkcm1fbW9kZV9jb25uZWN0b3JfYXR0YWNoX3NjYWxpbmdfbW9kZV9wcm9wZXJ0eSAtIGF0dGFj aCBhdG9taWMgc2NhbGluZyBtb2RlIHByb3BlcnR5CisgKiBAY29ubmVjdG9yOiBjb25uZWN0b3Ig dG8gYXR0YWNoIHNjYWxpbmcgbW9kZSBwcm9wZXJ0eSBvbi4KKyAqIEBzY2FsaW5nX21vZGVfbWFz azogb3InZWQgbWFzayBvZiBCSVQoRFJNX01PREVfU0NBTEVfXCopLgorICoKKyAqIFRoaXMgaXMg dXNlZCB0byBhZGQgc3VwcG9ydCBmb3Igc2NhbGluZyBtb2RlIHRvIGF0b21pYyBkcml2ZXJzLgor ICogVGhlIHNjYWxpbmcgbW9kZSB3aWxsIGJlIHNldCB0byAmc3RydWN0IGRybV9jb25uZWN0b3Jf c3RhdGUtPnBpY3R1cmVfYXNwZWN0X3JhdGlvCisgKiBhbmQgY2FuIGJlIHVzZWQgZnJvbSAmc3Ry dWN0IGRybV9jb25uZWN0b3JfaGVscGVyX2Z1bmNzLT5hdG9taWNfY2hlY2sgZm9yIHZhbGlkYXRp b24uCisgKgorICogUmV0dXJuczoKKyAqIFplcm8gb24gc3VjY2VzcywgbmVnYXRpdmUgZXJybm8g b24gZmFpbHVyZS4KKyAqLworaW50IGRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfc2NhbGluZ19t b2RlX3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCisJCQkJCQkgICAg dTMyIHNjYWxpbmdfbW9kZV9tYXNrKQoreworCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjb25u ZWN0b3ItPmRldjsKKwlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICpzY2FsaW5nX21vZGVfcHJvcGVydHk7 CisJaW50IGksIGogPSAwOworCWNvbnN0IHVuc2lnbmVkIHZhbGlkX3NjYWxpbmdfbW9kZV9tYXNr ID0KKwkJKDFVIDw8IEFSUkFZX1NJWkUoZHJtX3NjYWxpbmdfbW9kZV9lbnVtX2xpc3QpKSAtIDE7 CisKKwlpZiAoV0FSTl9PTihod2VpZ2h0MzIoc2NhbGluZ19tb2RlX21hc2spIDwgMiB8fAorCSAg ICAgICAgICAgIHNjYWxpbmdfbW9kZV9tYXNrICYgfnZhbGlkX3NjYWxpbmdfbW9kZV9tYXNrKSkK KwkJcmV0dXJuIC1FSU5WQUw7CisKKwlzY2FsaW5nX21vZGVfcHJvcGVydHkgPQorCQlkcm1fcHJv cGVydHlfY3JlYXRlKGRldiwgRFJNX01PREVfUFJPUF9FTlVNLCAic2NhbGluZyBtb2RlIiwKKwkJ CQkgICAgaHdlaWdodDMyKHNjYWxpbmdfbW9kZV9tYXNrKSk7CisKKwlpZiAoIXNjYWxpbmdfbW9k ZV9wcm9wZXJ0eSkKKwkJcmV0dXJuIC1FTk9NRU07CisKKwlmb3IgKGkgPSAwOyBpIDwgQVJSQVlf U0laRShkcm1fc2NhbGluZ19tb2RlX2VudW1fbGlzdCk7IGkrKykgeworCQlpbnQgcmV0OworCisJ CWlmICghKEJJVChpKSAmIHNjYWxpbmdfbW9kZV9tYXNrKSkKKwkJCWNvbnRpbnVlOworCisJCXJl dCA9IGRybV9wcm9wZXJ0eV9hZGRfZW51bShzY2FsaW5nX21vZGVfcHJvcGVydHksIGorKywKKwkJ CQkJICAgIGRybV9zY2FsaW5nX21vZGVfZW51bV9saXN0W2ldLnR5cGUsCisJCQkJCSAgICBkcm1f c2NhbGluZ19tb2RlX2VudW1fbGlzdFtpXS5uYW1lKTsKKworCQlpZiAocmV0KSB7CisJCQlkcm1f cHJvcGVydHlfZGVzdHJveShkZXYsIHNjYWxpbmdfbW9kZV9wcm9wZXJ0eSk7CisKKwkJCXJldHVy biByZXQ7CisJCX0KKwl9CisKKwlkcm1fb2JqZWN0X2F0dGFjaF9wcm9wZXJ0eSgmY29ubmVjdG9y LT5iYXNlLAorCQkJCSAgIHNjYWxpbmdfbW9kZV9wcm9wZXJ0eSwgMCk7CisKKwljb25uZWN0b3It PnNjYWxpbmdfbW9kZV9wcm9wZXJ0eSA9IHNjYWxpbmdfbW9kZV9wcm9wZXJ0eTsKKworCXJldHVy biAwOworfQorRVhQT1JUX1NZTUJPTChkcm1fbW9kZV9jb25uZWN0b3JfYXR0YWNoX3NjYWxpbmdf bW9kZV9wcm9wZXJ0eSk7CisKKy8qKgogICogZHJtX21vZGVfY3JlYXRlX2FzcGVjdF9yYXRpb19w cm9wZXJ0eSAtIGNyZWF0ZSBhc3BlY3QgcmF0aW8gcHJvcGVydHkKICAqIEBkZXY6IERSTSBkZXZp Y2UKICAqCmRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmggYi9pbmNsdWRl L2RybS9kcm1fY29ubmVjdG9yLmgKaW5kZXggMWVjZjVmMjYxOWMwLi5lNzFiODk1OWMxNWYgMTAw NjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaAorKysgYi9pbmNsdWRlL2RybS9k cm1fY29ubmVjdG9yLmgKQEAgLTMzNiw2ICszMzYsMTIgQEAgc3RydWN0IGRybV9jb25uZWN0b3Jf c3RhdGUgewogCSAqIHZhbHVlcyBmb3IgJmVudW0gaGRtaV9waWN0dXJlX2FzcGVjdAogCSAqLwog CWVudW0gaGRtaV9waWN0dXJlX2FzcGVjdCBwaWN0dXJlX2FzcGVjdF9yYXRpbzsKKworCS8qKgor CSAqIEBzY2FsaW5nX21vZGU6IENvbm5lY3RvciBwcm9wZXJ0eSB0byBjb250cm9sIHRoZQorCSAq IHVwc2NhbGluZywgbW9zdGx5IHVzZWQgZm9yIGJ1aWx0LWluIHBhbmVscy4KKwkgKi8KKwl1bnNp Z25lZCBpbnQgc2NhbGluZ19tb2RlOwogfTsKIAogLyoqCkBAIC03NjQsNiArNzcwLDggQEAgc3Ry dWN0IGRybV9jb25uZWN0b3IgewogCXN0cnVjdCBkcm1fcHJvcGVydHlfYmxvYiAqZWRpZF9ibG9i X3B0cjsKIAlzdHJ1Y3QgZHJtX29iamVjdF9wcm9wZXJ0aWVzIHByb3BlcnRpZXM7CiAKKwlzdHJ1 Y3QgZHJtX3Byb3BlcnR5ICpzY2FsaW5nX21vZGVfcHJvcGVydHk7CisKIAkvKioKIAkgKiBAcGF0 aF9ibG9iX3B0cjoKIAkgKgpAQCAtOTYzLDYgKzk3MSw4IEBAIGludCBkcm1fbW9kZV9jcmVhdGVf dHZfcHJvcGVydGllcyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQkJCSAgdW5zaWduZWQgaW50 IG51bV9tb2RlcywKIAkJCQkgIGNvbnN0IGNoYXIgKiBjb25zdCBtb2Rlc1tdKTsKIGludCBkcm1f bW9kZV9jcmVhdGVfc2NhbGluZ19tb2RlX3Byb3BlcnR5KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYp OworaW50IGRybV9tb2RlX2Nvbm5lY3Rvcl9hdHRhY2hfc2NhbGluZ19tb2RlX3Byb3BlcnR5KHN0 cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCisJCQkJCQkgICAgdTMyIHNjYWxpbmdfbW9k ZV9tYXNrKTsKIGludCBkcm1fbW9kZV9jcmVhdGVfYXNwZWN0X3JhdGlvX3Byb3BlcnR5KHN0cnVj dCBkcm1fZGV2aWNlICpkZXYpOwogaW50IGRybV9tb2RlX2NyZWF0ZV9zdWdnZXN0ZWRfb2Zmc2V0 X3Byb3BlcnRpZXMoc3RydWN0IGRybV9kZXZpY2UgKmRldik7CiAKLS0gCjIuOS4zCgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGlu ZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVl ZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK