From mboxrd@z Thu Jan 1 00:00:00 1970 From: ville.syrjala@linux.intel.com Subject: [PATCH v2 03/15] drm: Add support for optional per-plane rotation property Date: Fri, 22 Jul 2016 16:43:04 +0300 Message-ID: <1469194996-1899-4-git-send-email-ville.syrjala@linux.intel.com> References: <1469194996-1899-1-git-send-email-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1469194996-1899-1-git-send-email-ville.syrjala@linux.intel.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 Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCk5v dCBhbGwgcGxhbmVzIG9uIHRoZSBzc3l0ZW0gbWF5IHN1cHBvcnQgdGhlIHNhbWUgcm90YXRpb25z L3JlZmxlY3Rpb25zLApzbyBtYWtlIGl0IHBvc3NpYmxlIHRvIGNyZWF0ZSBhIHNlcGFyYXRlIHBy b3BlcnR5IGZvciBlYWNoIHBsYW5lLgpUaGlzIHdheSB1c2Vyc3BhY2UgZ2V0cyB0b2xkIGV4YWN0 bHkgd2hpY2ggcm90YXRpb25zL3JlZmxlY3Rpb25zIGFyZQpwb3NzaWJsZSBmb3IgZWFjaCBwbGFu ZS4KCnYyOiBBZGQgZHJtX3BsYW5lX2NyZWF0ZV9yb3RhdGlvbl9wcm9wZXJ0eSgpIGhlbHBlcgoK U2lnbmVkLW9mZi1ieTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVs LmNvbT4KUmV2aWV3ZWQtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVr PiAodjEpCi0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYyAgICB8ICA2ICsrKystLQog ZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMgICAgICB8IDMzICsrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKwogZHJpdmVycy9ncHUvZHJtL2RybV9mYl9oZWxwZXIuYyB8ICA2ICsrKysr LQogaW5jbHVkZS9kcm0vZHJtX2NydGMuaCAgICAgICAgICB8IDEwICsrKysrKysrKy0KIDQgZmls ZXMgY2hhbmdlZCwgNTEgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9t aWMuYwppbmRleCBjNDI1YmQzOWEyMTAuLjExNmY5NDBhOTI2NyAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2RybV9hdG9taWMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5j CkBAIC03MDksNyArNzA5LDggQEAgaW50IGRybV9hdG9taWNfcGxhbmVfc2V0X3Byb3BlcnR5KHN0 cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAogCQlzdGF0ZS0+c3JjX3cgPSB2YWw7CiAJfSBlbHNlIGlm IChwcm9wZXJ0eSA9PSBjb25maWctPnByb3Bfc3JjX2gpIHsKIAkJc3RhdGUtPnNyY19oID0gdmFs OwotCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29uZmlnLT5yb3RhdGlvbl9wcm9wZXJ0eSkgewor CX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29uZmlnLT5yb3RhdGlvbl9wcm9wZXJ0eSB8fAorCQkg ICBwcm9wZXJ0eSA9PSBwbGFuZS0+cm90YXRpb25fcHJvcGVydHkpIHsKIAkJaWYgKCFpc19wb3dl cl9vZl8yKHZhbCAmIERSTV9ST1RBVEVfTUFTSykpCiAJCQlyZXR1cm4gLUVJTlZBTDsKIAkJc3Rh dGUtPnJvdGF0aW9uID0gdmFsOwpAQCAtNzY3LDcgKzc2OCw4IEBAIGRybV9hdG9taWNfcGxhbmVf Z2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAogCQkqdmFsID0gc3RhdGUtPnNy Y193OwogCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29uZmlnLT5wcm9wX3NyY19oKSB7CiAJCSp2 YWwgPSBzdGF0ZS0+c3JjX2g7Ci0JfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25maWctPnJvdGF0 aW9uX3Byb3BlcnR5KSB7CisJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25maWctPnJvdGF0aW9u X3Byb3BlcnR5IHx8CisJCSAgIHByb3BlcnR5ID09IHBsYW5lLT5yb3RhdGlvbl9wcm9wZXJ0eSkg ewogCQkqdmFsID0gc3RhdGUtPnJvdGF0aW9uOwogCX0gZWxzZSBpZiAocGxhbmUtPmZ1bmNzLT5h dG9taWNfZ2V0X3Byb3BlcnR5KSB7CiAJCXJldHVybiBwbGFuZS0+ZnVuY3MtPmF0b21pY19nZXRf cHJvcGVydHkocGxhbmUsIHN0YXRlLCBwcm9wZXJ0eSwgdmFsKTsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fY3J0Yy5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMKaW5kZXgg OTg2ZGUxODBlNmMyLi45ZTIwYTUyZWNlN2MgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9k cm1fY3J0Yy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fY3J0Yy5jCkBAIC01ODAxLDYgKzU4 MDEsMzkgQEAgc3RydWN0IGRybV9wcm9wZXJ0eSAqZHJtX21vZGVfY3JlYXRlX3JvdGF0aW9uX3By b3BlcnR5KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiB9CiBFWFBPUlRfU1lNQk9MKGRybV9tb2Rl X2NyZWF0ZV9yb3RhdGlvbl9wcm9wZXJ0eSk7CiAKK2ludCBkcm1fcGxhbmVfY3JlYXRlX3JvdGF0 aW9uX3Byb3BlcnR5KHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAorCQkJCSAgICAgICB1bnNpZ25l ZCBpbnQgcm90YXRpb24sCisJCQkJICAgICAgIHVuc2lnbmVkIGludCBzdXBwb3J0ZWRfcm90YXRp b25zKQoreworCXN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX3Byb3BfZW51bV9saXN0IHByb3BzW10g PSB7CisJCXsgRFJNX1JPVEFURV8wLCAgICJyb3RhdGUtMCIgfSwKKwkJeyBEUk1fUk9UQVRFXzkw LCAgInJvdGF0ZS05MCIgfSwKKwkJeyBEUk1fUk9UQVRFXzE4MCwgInJvdGF0ZS0xODAiIH0sCisJ CXsgRFJNX1JPVEFURV8yNzAsICJyb3RhdGUtMjcwIiB9LAorCQl7IERSTV9SRUZMRUNUX1gsICAi cmVmbGVjdC14IiB9LAorCQl7IERSTV9SRUZMRUNUX1ksICAicmVmbGVjdC15IiB9LAorCX07CisJ c3RydWN0IGRybV9wcm9wZXJ0eSAqcHJvcDsKKworCVdBUk5fT04oKHN1cHBvcnRlZF9yb3RhdGlv bnMgJiByb3RhdGlvbikgPT0gMCk7CisKKwlwcm9wID0gZHJtX3Byb3BlcnR5X2NyZWF0ZV9iaXRt YXNrKHBsYW5lLT5kZXYsIDAsICJyb3RhdGlvbiIsCisJCQkJCSAgIHByb3BzLCBBUlJBWV9TSVpF KHByb3BzKSwKKwkJCQkJICAgc3VwcG9ydGVkX3JvdGF0aW9ucyk7CisJaWYgKCFwcm9wKQorCQly ZXR1cm4gLUVOT01FTTsKKworCWRybV9vYmplY3RfYXR0YWNoX3Byb3BlcnR5KCZwbGFuZS0+YmFz ZSwgcHJvcCwgcm90YXRpb24pOworCisJaWYgKHBsYW5lLT5zdGF0ZSkKKwkJcGxhbmUtPnN0YXRl LT5yb3RhdGlvbiA9IHJvdGF0aW9uOworCisJcGxhbmUtPnJvdGF0aW9uX3Byb3BlcnR5ID0gcHJv cDsKKworCXJldHVybiAwOworfQorRVhQT1JUX1NZTUJPTChkcm1fcGxhbmVfY3JlYXRlX3JvdGF0 aW9uX3Byb3BlcnR5KTsKKwogLyoqCiAgKiBET0M6IFRpbGUgZ3JvdXAKICAqCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBlci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9m Yl9oZWxwZXIuYwppbmRleCBjZTU0ZTk4NWQ5MWIuLmNlNTM2YzA1NTNlNSAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2RybV9mYl9oZWxwZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJt X2ZiX2hlbHBlci5jCkBAIC0zOTIsNyArMzkyLDExIEBAIHN0YXRpYyBpbnQgcmVzdG9yZV9mYmRl dl9tb2RlKHN0cnVjdCBkcm1fZmJfaGVscGVyICpmYl9oZWxwZXIpCiAJCWlmIChwbGFuZS0+dHlw ZSAhPSBEUk1fUExBTkVfVFlQRV9QUklNQVJZKQogCQkJZHJtX3BsYW5lX2ZvcmNlX2Rpc2FibGUo cGxhbmUpOwogCi0JCWlmIChkZXYtPm1vZGVfY29uZmlnLnJvdGF0aW9uX3Byb3BlcnR5KSB7CisJ CWlmIChwbGFuZS0+cm90YXRpb25fcHJvcGVydHkpIHsKKwkJCWRybV9tb2RlX3BsYW5lX3NldF9v YmpfcHJvcChwbGFuZSwKKwkJCQkJCSAgICBwbGFuZS0+cm90YXRpb25fcHJvcGVydHksCisJCQkJ CQkgICAgQklUKERSTV9ST1RBVEVfMCkpOworCQl9IGVsc2UgaWYgKGRldi0+bW9kZV9jb25maWcu cm90YXRpb25fcHJvcGVydHkpIHsKIAkJCWRybV9tb2RlX3BsYW5lX3NldF9vYmpfcHJvcChwbGFu ZSwKIAkJCQkJCSAgICBkZXYtPm1vZGVfY29uZmlnLnJvdGF0aW9uX3Byb3BlcnR5LAogCQkJCQkJ ICAgIEJJVChEUk1fUk9UQVRFXzApKTsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9jcnRj LmggYi9pbmNsdWRlL2RybS9kcm1fY3J0Yy5oCmluZGV4IGI3YWM3ZGNmNTJkYi4uMDFjZjA2NzNm NmM4IDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm1fY3J0Yy5oCisrKyBiL2luY2x1ZGUvZHJt L2RybV9jcnRjLmgKQEAgLTE3MzcsNiArMTczNywxMSBAQCBzdHJ1Y3QgZHJtX3BsYW5lIHsKIAlj b25zdCBzdHJ1Y3QgZHJtX3BsYW5lX2hlbHBlcl9mdW5jcyAqaGVscGVyX3ByaXZhdGU7CiAKIAlz dHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpzdGF0ZTsKKworCS8qKgorCSAqIEByb3RhdGlvbl9wcm9w ZXJ0eTogT3B0aW9uYWwgcHJvcGVydHkgZm9yIHBsYW5lcyB0byBzcGVjaWZ5IHJvdGF0aW9uLgor CSAqLworCXN0cnVjdCBkcm1fcHJvcGVydHkgKnJvdGF0aW9uX3Byb3BlcnR5OwogfTsKIAogLyoq CkBAIC0yNDc1LDcgKzI0ODAsNyBAQCBzdHJ1Y3QgZHJtX21vZGVfY29uZmlnIHsKIAkgKi8KIAlz dHJ1Y3QgZHJtX3Byb3BlcnR5ICpwbGFuZV90eXBlX3Byb3BlcnR5OwogCS8qKgotCSAqIEByb3Rh dGlvbl9wcm9wZXJ0eTogT3B0aW9uYWwgcHJvcGVydHkgZm9yIHBsYW5lcyBvciBDUlRDcyB0byBz cGVjaWZpeQorCSAqIEByb3RhdGlvbl9wcm9wZXJ0eTogT3B0aW9uYWwgcHJvcGVydHkgZm9yIHBs YW5lcyBvciBDUlRDcyB0byBzcGVjaWZ5CiAJICogcm90YXRpb24uCiAJICovCiAJc3RydWN0IGRy bV9wcm9wZXJ0eSAqcm90YXRpb25fcHJvcGVydHk7CkBAIC0yOTU3LDYgKzI5NjIsOSBAQCBleHRl cm4gaW50IGRybV9tb2RlX3BsYW5lX3NldF9vYmpfcHJvcChzdHJ1Y3QgZHJtX3BsYW5lICpwbGFu ZSwKIAogZXh0ZXJuIHN0cnVjdCBkcm1fcHJvcGVydHkgKmRybV9tb2RlX2NyZWF0ZV9yb3RhdGlv bl9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQkJCQkJCSAgICAgIHVuc2lnbmVk IGludCBzdXBwb3J0ZWRfcm90YXRpb25zKTsKK2V4dGVybiBpbnQgZHJtX3BsYW5lX2NyZWF0ZV9y b3RhdGlvbl9wcm9wZXJ0eShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKKwkJCQkJICAgICAgdW5z aWduZWQgaW50IHJvdGF0aW9uLAorCQkJCQkgICAgICB1bnNpZ25lZCBpbnQgc3VwcG9ydGVkX3Jv dGF0aW9ucyk7CiBleHRlcm4gdW5zaWduZWQgaW50IGRybV9yb3RhdGlvbl9zaW1wbGlmeSh1bnNp Z25lZCBpbnQgcm90YXRpb24sCiAJCQkJCSAgdW5zaWduZWQgaW50IHN1cHBvcnRlZF9yb3RhdGlv bnMpOwogZXh0ZXJuIHZvaWQgZHJtX2NydGNfZW5hYmxlX2NvbG9yX21nbXQoc3RydWN0IGRybV9j cnRjICpjcnRjLAotLSAKMi43LjQKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2RyaS1kZXZlbAo=