From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH 2/3] drm/i915: Move rotated geometry calculations into the fill helper Date: Tue, 23 Jun 2015 12:57:42 +0100 Message-ID: <1435060663-13621-2-git-send-email-tvrtko.ursulin@linux.intel.com> References: <1435060663-13621-1-git-send-email-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id 693FD7A10A for ; Tue, 23 Jun 2015 04:57:47 -0700 (PDT) In-Reply-To: <1435060663-13621-1-git-send-email-tvrtko.ursulin@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 List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KClRoaXMgd2F5 IGRhdGEgaXMgYXZhaWxhYmxlIGFzIHNvb24gYXMgdGhlIHZpZXcgaXMgcGFzc2VkIGludG8gdGhl IGNhbGwgY2hhaW4uCgp2MjogU3RvcmUgc2l6ZSBpbiBieXRlcyBpbnN0ZWFkIG9mIHBhZ2VzIHVu ZGVyIHRoZSBhcHByb3ByaWF0ZSBuYW1lLiAoQ2hyaXMgV2lsc29uKQoKU2lnbmVkLW9mZi1ieTog VHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KQ2M6IEpvb25hcyBMYWh0 aW5lbiA8am9vbmFzLmxhaHRpbmVuQGxpbnV4LmludGVsLmNvbT4KQ2M6IENocmlzIFdpbHNvbiA8 Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgotLS0KVGhpcyB3aWxsIGJlIG5lZWRlZCBpbiB0aGUg Zm9sbG93aW5nIHBhdGNoIHdoaWNoIGZpeGVzIGk5MTVfZ2d0dF92aWV3X3NpemUuCi0tLQogZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMgIHwgMzYgKysrKysrKysrKysrKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuaCAg fCAgMiArKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIHwgIDggKysrKysr KysKIDMgZmlsZXMgY2hhbmdlZCwgMjMgaW5zZXJ0aW9ucygrKSwgMjMgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYwppbmRleCBjMWMxNmIwLi45Nzc3ZWY0IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYwpAQCAtMjcwMCwyOSArMjcwMCwxNyBAQCBzdGF0 aWMgc3RydWN0IHNnX3RhYmxlICoKIGludGVsX3JvdGF0ZV9mYl9vYmpfcGFnZXMoc3RydWN0IGk5 MTVfZ2d0dF92aWV3ICpnZ3R0X3ZpZXcsCiAJCQkgIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0 ICpvYmopCiB7Ci0Jc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IG9iai0+YmFzZS5kZXY7CiAJc3Ry dWN0IGludGVsX3JvdGF0aW9uX2luZm8gKnJvdF9pbmZvID0gJmdndHRfdmlldy0+cm90YXRpb25f aW5mbzsKLQl1bnNpZ25lZCBsb25nIHBhZ2VzLCByb3RfcGFnZXM7CisJdW5zaWduZWQgaW50IHNp emVfcGFnZXMgPSByb3RfaW5mby0+c2l6ZSA+PiBQQUdFX1NISUZUOwogCXN0cnVjdCBzZ19wYWdl X2l0ZXIgc2dfaXRlcjsKIAl1bnNpZ25lZCBsb25nIGk7CiAJZG1hX2FkZHJfdCAqcGFnZV9hZGRy X2xpc3Q7CiAJc3RydWN0IHNnX3RhYmxlICpzdDsKLQl1bnNpZ25lZCBpbnQgdGlsZV9waXRjaCwg dGlsZV9oZWlnaHQ7Ci0JdW5zaWduZWQgaW50IHdpZHRoX3BhZ2VzLCBoZWlnaHRfcGFnZXM7CiAJ aW50IHJldCA9IC1FTk9NRU07CiAKLQlwYWdlcyA9IG9iai0+YmFzZS5zaXplIC8gUEFHRV9TSVpF OwotCi0JLyogQ2FsY3VsYXRlIHRpbGluZyBnZW9tZXRyeS4gKi8KLQl0aWxlX2hlaWdodCA9IGlu dGVsX3RpbGVfaGVpZ2h0KGRldiwgcm90X2luZm8tPnBpeGVsX2Zvcm1hdCwKLQkJCQkJcm90X2lu Zm8tPmZiX21vZGlmaWVyKTsKLQl0aWxlX3BpdGNoID0gUEFHRV9TSVpFIC8gdGlsZV9oZWlnaHQ7 Ci0Jd2lkdGhfcGFnZXMgPSBESVZfUk9VTkRfVVAocm90X2luZm8tPnBpdGNoLCB0aWxlX3BpdGNo KTsKLQloZWlnaHRfcGFnZXMgPSBESVZfUk9VTkRfVVAocm90X2luZm8tPmhlaWdodCwgdGlsZV9o ZWlnaHQpOwotCXJvdF9wYWdlcyA9IHdpZHRoX3BhZ2VzICogaGVpZ2h0X3BhZ2VzOwotCiAJLyog QWxsb2NhdGUgYSB0ZW1wb3JhcnkgbGlzdCBvZiBzb3VyY2UgcGFnZXMgZm9yIHJhbmRvbSBhY2Nl c3MuICovCi0JcGFnZV9hZGRyX2xpc3QgPSBkcm1fbWFsbG9jX2FiKHBhZ2VzLCBzaXplb2YoZG1h X2FkZHJfdCkpOworCXBhZ2VfYWRkcl9saXN0ID0gZHJtX21hbGxvY19hYihvYmotPmJhc2Uuc2l6 ZSAvIFBBR0VfU0laRSwKKwkJCQkgICAgICAgc2l6ZW9mKGRtYV9hZGRyX3QpKTsKIAlpZiAoIXBh Z2VfYWRkcl9saXN0KQogCQlyZXR1cm4gRVJSX1BUUihyZXQpOwogCkBAIC0yNzMxLDcgKzI3MTks NyBAQCBpbnRlbF9yb3RhdGVfZmJfb2JqX3BhZ2VzKHN0cnVjdCBpOTE1X2dndHRfdmlldyAqZ2d0 dF92aWV3LAogCWlmICghc3QpCiAJCWdvdG8gZXJyX3N0X2FsbG9jOwogCi0JcmV0ID0gc2dfYWxs b2NfdGFibGUoc3QsIHJvdF9wYWdlcywgR0ZQX0tFUk5FTCk7CisJcmV0ID0gc2dfYWxsb2NfdGFi bGUoc3QsIHNpemVfcGFnZXMsIEdGUF9LRVJORUwpOwogCWlmIChyZXQpCiAJCWdvdG8gZXJyX3Nn X2FsbG9jOwogCkBAIC0yNzQzLDEzICsyNzMxLDE1IEBAIGludGVsX3JvdGF0ZV9mYl9vYmpfcGFn ZXMoc3RydWN0IGk5MTVfZ2d0dF92aWV3ICpnZ3R0X3ZpZXcsCiAJfQogCiAJLyogUm90YXRlIHRo ZSBwYWdlcy4gKi8KLQlyb3RhdGVfcGFnZXMocGFnZV9hZGRyX2xpc3QsIHdpZHRoX3BhZ2VzLCBo ZWlnaHRfcGFnZXMsIHN0KTsKKwlyb3RhdGVfcGFnZXMocGFnZV9hZGRyX2xpc3QsCisJCSAgICAg cm90X2luZm8tPndpZHRoX3BhZ2VzLCByb3RfaW5mby0+aGVpZ2h0X3BhZ2VzLAorCQkgICAgIHN0 KTsKIAogCURSTV9ERUJVR19LTVMoCi0JCSAgICAgICJDcmVhdGVkIHJvdGF0ZWQgcGFnZSBtYXBw aW5nIGZvciBvYmplY3Qgc2l6ZSAlbHUgKHBpdGNoPSV1LCBoZWlnaHQ9JXUsIHBpeGVsX2Zvcm1h dD0weCV4LCAldXgldSB0aWxlcywgJWx1IHBhZ2VzKS5cbiIsCisJCSAgICAgICJDcmVhdGVkIHJv dGF0ZWQgcGFnZSBtYXBwaW5nIGZvciBvYmplY3Qgc2l6ZSAlbHUgKHBpdGNoPSV1LCBoZWlnaHQ9 JXUsIHBpeGVsX2Zvcm1hdD0weCV4LCAldXgldSB0aWxlcywgJXUgcGFnZXMpLlxuIiwKIAkJICAg ICAgb2JqLT5iYXNlLnNpemUsIHJvdF9pbmZvLT5waXRjaCwgcm90X2luZm8tPmhlaWdodCwKLQkJ ICAgICAgcm90X2luZm8tPnBpeGVsX2Zvcm1hdCwgd2lkdGhfcGFnZXMsIGhlaWdodF9wYWdlcywK LQkJICAgICAgcm90X3BhZ2VzKTsKKwkJICAgICAgcm90X2luZm8tPnBpeGVsX2Zvcm1hdCwgcm90 X2luZm8tPndpZHRoX3BhZ2VzLAorCQkgICAgICByb3RfaW5mby0+aGVpZ2h0X3BhZ2VzLCBzaXpl X3BhZ2VzKTsKIAogCWRybV9mcmVlX2xhcmdlKHBhZ2VfYWRkcl9saXN0KTsKIApAQCAtMjc2MSwx MCArMjc1MSwxMCBAQCBlcnJfc3RfYWxsb2M6CiAJZHJtX2ZyZWVfbGFyZ2UocGFnZV9hZGRyX2xp c3QpOwogCiAJRFJNX0RFQlVHX0tNUygKLQkJICAgICAgIkZhaWxlZCB0byBjcmVhdGUgcm90YXRl ZCBtYXBwaW5nIGZvciBvYmplY3Qgc2l6ZSAlbHUhICglZCkgKHBpdGNoPSV1LCBoZWlnaHQ9JXUs IHBpeGVsX2Zvcm1hdD0weCV4LCAldXgldSB0aWxlcywgJWx1IHBhZ2VzKVxuIiwKKwkJICAgICAg IkZhaWxlZCB0byBjcmVhdGUgcm90YXRlZCBtYXBwaW5nIGZvciBvYmplY3Qgc2l6ZSAlbHUhICgl ZCkgKHBpdGNoPSV1LCBoZWlnaHQ9JXUsIHBpeGVsX2Zvcm1hdD0weCV4LCAldXgldSB0aWxlcywg JXUgcGFnZXMpXG4iLAogCQkgICAgICBvYmotPmJhc2Uuc2l6ZSwgcmV0LCByb3RfaW5mby0+cGl0 Y2gsIHJvdF9pbmZvLT5oZWlnaHQsCi0JCSAgICAgIHJvdF9pbmZvLT5waXhlbF9mb3JtYXQsIHdp ZHRoX3BhZ2VzLCBoZWlnaHRfcGFnZXMsCi0JCSAgICAgIHJvdF9wYWdlcyk7CisJCSAgICAgIHJv dF9pbmZvLT5waXhlbF9mb3JtYXQsIHJvdF9pbmZvLT53aWR0aF9wYWdlcywKKwkJICAgICAgcm90 X2luZm8tPmhlaWdodF9wYWdlcywgc2l6ZV9wYWdlcyk7CiAJcmV0dXJuIEVSUl9QVFIocmV0KTsK IH0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmggYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuaAppbmRleCA3MzVmMTE5Li4zZjlmYzE3 IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuaAorKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuaApAQCAtMTI2LDYgKzEyNiw4IEBAIHN0 cnVjdCBpbnRlbF9yb3RhdGlvbl9pbmZvIHsKIAl1bnNpZ25lZCBpbnQgcGl0Y2g7CiAJdWludDMy X3QgcGl4ZWxfZm9ybWF0OwogCXVpbnQ2NF90IGZiX21vZGlmaWVyOworCXVuc2lnbmVkIGludCB3 aWR0aF9wYWdlcywgaGVpZ2h0X3BhZ2VzOworCXNpemVfdCBzaXplOwogfTsKIAogc3RydWN0IGk5 MTVfZ2d0dF92aWV3IHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rp c3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwppbmRleCAxYmMy MTdhLi41NDMxNWFhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNw bGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCkBAIC0yMjY4 LDYgKzIyNjgsNyBAQCBpbnRlbF9maWxsX2ZiX2dndHRfdmlldyhzdHJ1Y3QgaTkxNV9nZ3R0X3Zp ZXcgKnZpZXcsIHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiLAogCQkJY29uc3Qgc3RydWN0IGRy bV9wbGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGUpCiB7CiAJc3RydWN0IGludGVsX3JvdGF0aW9uX2lu Zm8gKmluZm8gPSAmdmlldy0+cm90YXRpb25faW5mbzsKKwl1bnNpZ25lZCBpbnQgdGlsZV9oZWln aHQsIHRpbGVfcGl0Y2g7CiAKIAkqdmlldyA9IGk5MTVfZ2d0dF92aWV3X25vcm1hbDsKIApAQCAt MjI4NCw2ICsyMjg1LDEzIEBAIGludGVsX2ZpbGxfZmJfZ2d0dF92aWV3KHN0cnVjdCBpOTE1X2dn dHRfdmlldyAqdmlldywgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsCiAJaW5mby0+cGl0Y2gg PSBmYi0+cGl0Y2hlc1swXTsKIAlpbmZvLT5mYl9tb2RpZmllciA9IGZiLT5tb2RpZmllclswXTsK IAorCXRpbGVfaGVpZ2h0ID0gaW50ZWxfdGlsZV9oZWlnaHQoZmItPmRldiwgZmItPnBpeGVsX2Zv cm1hdCwKKwkJCQkJZmItPm1vZGlmaWVyWzBdKTsKKwl0aWxlX3BpdGNoID0gUEFHRV9TSVpFIC8g dGlsZV9oZWlnaHQ7CisJaW5mby0+d2lkdGhfcGFnZXMgPSBESVZfUk9VTkRfVVAoZmItPnBpdGNo ZXNbMF0sIHRpbGVfcGl0Y2gpOworCWluZm8tPmhlaWdodF9wYWdlcyA9IERJVl9ST1VORF9VUChm Yi0+aGVpZ2h0LCB0aWxlX2hlaWdodCk7CisJaW5mby0+c2l6ZSA9IGluZm8tPndpZHRoX3BhZ2Vz ICogaW5mby0+aGVpZ2h0X3BhZ2VzICogUEFHRV9TSVpFOworCiAJcmV0dXJuIDA7CiB9CiAKLS0g CjIuNC4yCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=