From mboxrd@z Thu Jan 1 00:00:00 1970 From: sonika.jindal@intel.com Subject: [PATCH 07/11] drm/i915: Add 180 degree sprite rotation support Date: Wed, 18 Jun 2014 14:27:23 +0530 Message-ID: <1403081847-4364-8-git-send-email-sonika.jindal@intel.com> References: <1403081847-4364-1-git-send-email-sonika.jindal@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id E85616E2DB for ; Wed, 18 Jun 2014 02:01:09 -0700 (PDT) In-Reply-To: <1403081847-4364-1-git-send-email-sonika.jindal@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 RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhIGF0IGxpbnV4LmludGVsLmNvbT4K ClRoZSBzcHJpdGUgcGxhbmVzIChpbiBmYWN0IGFsbCBkaXNwbGF5IHBsYW5lcyBzdGFydGluZyBm cm9tIGdlbjQpCnN1cHBvcnQgMTgwIGRlZ3JlZSByb3RhdGlvbi4gQWRkIHRoZSByZWxldmFudCBs b3cgbGV2ZWwgYml0cyB0byB0aGUKc3ByaXRlIGNvZGUgdG8gbWFrZSB1c2Ugb2YgdGhhdCBmZWF0 dXJlLgoKVGhlIHVwcGVyIGxheWVycyBhcmUgbm90IHlldCBwbHVnZ2VkIGluLgoKdjI6IEhTVyBo YW5kbGVzIHRoZSByb3RhdGVkIGJ1ZmZlciBvZmZzZXQgYXV0b21hZ2ljYWxseQoKdjM6IEJEVyBh bHNvIGhhbmRsZXMgdGhlIHJvdGF0ZWQgYnVmZmVyIG9mZnNldCBhdXRvbWFnaWNhbGx5CgpUZXN0 Y2FzZTogaWd0L2ttc19yb3RhdGlvbl9jcmMKCkNjOiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0 dGVyIGF0IGZmd2xsLmNoPgpDYzogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhIGF0IGxpbnV4Lmlu dGVsLmNvbT4KQ2M6IERhdmlkIEFpcmxpZSA8YWlybGllZCBhdCBsaW51eC5pZT4KQ2M6IGRyaS1k ZXZlbCBhdCBsaXN0cy5mcmVlZGVza3RvcC5vcmcKQ2M6IGxpbnV4LWtlcm5lbCBhdCB2Z2VyLmtl cm5lbC5vcmcKU2lnbmVkLW9mZi1ieTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhIGF0 IGxpbnV4LmludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogU2FnYXIgS2FtYmxlIDxzYWdhci5hLmth bWJsZSBhdCBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCAg ICAgfCAgICAzICsrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgfCAgICAx ICsKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Nwcml0ZS5jIHwgICAzNyArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA0MSBpbnNlcnRpb25z KCspCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKaW5kZXggMzQ4ODU2Ny4uYzcwYzgwNCAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAorKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X3JlZy5oCkBAIC00MTcxLDYgKzQxNzEsNyBAQCBlbnVtIHB1bml0X3Bvd2Vy X3dlbGwgewogI2RlZmluZSAgIERWU19ZVVZfT1JERVJfVVlWWQkoMTw8MTYpCiAjZGVmaW5lICAg RFZTX1lVVl9PUkRFUl9ZVllVCSgyPDwxNikKICNkZWZpbmUgICBEVlNfWVVWX09SREVSX1ZZVVkJ KDM8PDE2KQorI2RlZmluZSAgIERWU19ST1RBVEVfMTgwCSgxPDwxNSkKICNkZWZpbmUgICBEVlNf REVTVF9LRVkJCSgxPDwyKQogI2RlZmluZSAgIERWU19UUklDS0xFX0ZFRURfRElTQUJMRSAoMTw8 MTQpCiAjZGVmaW5lICAgRFZTX1RJTEVECQkoMTw8MTApCkBAIC00MjQxLDYgKzQyNDIsNyBAQCBl bnVtIHB1bml0X3Bvd2VyX3dlbGwgewogI2RlZmluZSAgIFNQUklURV9ZVVZfT1JERVJfVVlWWQkJ KDE8PDE2KQogI2RlZmluZSAgIFNQUklURV9ZVVZfT1JERVJfWVZZVQkJKDI8PDE2KQogI2RlZmlu ZSAgIFNQUklURV9ZVVZfT1JERVJfVllVWQkJKDM8PDE2KQorI2RlZmluZSAgIFNQUklURV9ST1RB VEVfMTgwCQkoMTw8MTUpCiAjZGVmaW5lICAgU1BSSVRFX1RSSUNLTEVfRkVFRF9ESVNBQkxFCSgx PDwxNCkKICNkZWZpbmUgICBTUFJJVEVfSU5UX0dBTU1BX0VOQUJMRQkoMTw8MTMpCiAjZGVmaW5l ICAgU1BSSVRFX1RJTEVECQkJKDE8PDEwKQpAQCAtNDMxNCw2ICs0MzE2LDcgQEAgZW51bSBwdW5p dF9wb3dlcl93ZWxsIHsKICNkZWZpbmUgICBTUF9ZVVZfT1JERVJfVVlWWQkJKDE8PDE2KQogI2Rl ZmluZSAgIFNQX1lVVl9PUkRFUl9ZVllVCQkoMjw8MTYpCiAjZGVmaW5lICAgU1BfWVVWX09SREVS X1ZZVVkJCSgzPDwxNikKKyNkZWZpbmUgICBTUF9ST1RBVEVfMTgwCQkJKDE8PDE1KQogI2RlZmlu ZSAgIFNQX1RJTEVECQkJKDE8PDEwKQogI2RlZmluZSBfU1BBTElOT0ZGCQkoVkxWX0RJU1BMQVlf QkFTRSArIDB4NzIxODQpCiAjZGVmaW5lIF9TUEFTVFJJREUJCShWTFZfRElTUExBWV9CQVNFICsg MHg3MjE4OCkKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKaW5kZXggYWI1OTYyYi4uNjdiMWM1OSAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKQEAgLTQzNyw2ICs0MzcsNyBAQCBzdHJ1Y3QgaW50 ZWxfcGxhbmUgewogCXVuc2lnbmVkIGludCBjcnRjX3csIGNydGNfaDsKIAl1aW50MzJfdCBzcmNf eCwgc3JjX3k7CiAJdWludDMyX3Qgc3JjX3csIHNyY19oOworCXVuc2lnbmVkIGludCByb3RhdGlv bjsKIAogCS8qIFNpbmNlIHdlIG5lZWQgdG8gY2hhbmdlIHRoZSB3YXRlcm1hcmtzIGJlZm9yZS9h ZnRlcgogCSAqIGVuYWJsaW5nL2Rpc2FibGluZyB0aGUgcGxhbmVzLCB3ZSBuZWVkIHRvIHN0b3Jl IHRoZSBwYXJhbWV0ZXJzIGhlcmUKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX3Nwcml0ZS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKaW5kZXgg NDA0MzM1ZC4uNTRkNDIyNCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf c3ByaXRlLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKQEAgLTE2 Myw2ICsxNjMsNyBAQCB2bHZfdXBkYXRlX3BsYW5lKHN0cnVjdCBkcm1fcGxhbmUgKmRwbGFuZSwg c3RydWN0IGRybV9jcnRjICpjcnRjLAogCXNwcmN0bCAmPSB+U1BfUElYRk9STUFUX01BU0s7CiAJ c3ByY3RsICY9IH5TUF9ZVVZfQllURV9PUkRFUl9NQVNLOwogCXNwcmN0bCAmPSB+U1BfVElMRUQ7 CisJc3ByY3RsICY9IH5TUF9ST1RBVEVfMTgwOwogCiAJc3dpdGNoIChmYi0+cGl4ZWxfZm9ybWF0 KSB7CiAJY2FzZSBEUk1fRk9STUFUX1lVWVY6CkBAIC0yMzQsNiArMjM1LDE0IEBAIHZsdl91cGRh dGVfcGxhbmUoc3RydWN0IGRybV9wbGFuZSAqZHBsYW5lLCBzdHJ1Y3QgZHJtX2NydGMgKmNydGMs CiAJCQkJCQkJZmItPnBpdGNoZXNbMF0pOwogCWxpbmVhcl9vZmZzZXQgLT0gc3Byc3VyZl9vZmZz ZXQ7CiAKKwlpZiAoaW50ZWxfcGxhbmUtPnJvdGF0aW9uID09IEJJVChEUk1fUk9UQVRFXzE4MCkp IHsKKwkJc3ByY3RsIHw9IFNQX1JPVEFURV8xODA7CisKKwkJeCArPSBzcmNfdzsKKwkJeSArPSBz cmNfaDsKKwkJbGluZWFyX29mZnNldCArPSBzcmNfaCAqIGZiLT5waXRjaGVzWzBdICsgc3JjX3cg KiBwaXhlbF9zaXplOworCX0KKwogCWF0b21pY191cGRhdGUgPSBpbnRlbF9waXBlX3VwZGF0ZV9z dGFydChpbnRlbF9jcnRjLCAmc3RhcnRfdmJsX2NvdW50KTsKIAogCWludGVsX3VwZGF0ZV9wcmlt YXJ5X3BsYW5lKGludGVsX2NydGMpOwpAQCAtMzYzLDYgKzM3Miw3IEBAIGl2Yl91cGRhdGVfcGxh bmUoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsIHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAlzcHJj dGwgJj0gflNQUklURV9SR0JfT1JERVJfUkdCWDsKIAlzcHJjdGwgJj0gflNQUklURV9ZVVZfQllU RV9PUkRFUl9NQVNLOwogCXNwcmN0bCAmPSB+U1BSSVRFX1RJTEVEOworCXNwcmN0bCAmPSB+U1BS SVRFX1JPVEFURV8xODA7CiAKIAlzd2l0Y2ggKGZiLT5waXhlbF9mb3JtYXQpIHsKIAljYXNlIERS TV9GT1JNQVRfWEJHUjg4ODg6CkBAIC00MjQsNiArNDM0LDE3IEBAIGl2Yl91cGRhdGVfcGxhbmUo c3RydWN0IGRybV9wbGFuZSAqcGxhbmUsIHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAkJCQkJICAg ICAgIHBpeGVsX3NpemUsIGZiLT5waXRjaGVzWzBdKTsKIAlsaW5lYXJfb2Zmc2V0IC09IHNwcnN1 cmZfb2Zmc2V0OwogCisJaWYgKGludGVsX3BsYW5lLT5yb3RhdGlvbiA9PSBCSVQoRFJNX1JPVEFU RV8xODApKSB7CisJCXNwcmN0bCB8PSBTUFJJVEVfUk9UQVRFXzE4MDsKKworCQkvKiBIU1cgYW5k IEJEVyBkb2VzIHRoaXMgYXV0b21hZ2ljYWxseSBpbiBoYXJkd2FyZSAqLworCQlpZiAoIUlTX0hB U1dFTEwoZGV2KSAmJiAhSVNfQlJPQURXRUxMKGRldikpIHsKKwkJCXggKz0gc3JjX3c7CisJCQl5 ICs9IHNyY19oOworCQkJbGluZWFyX29mZnNldCArPSBzcmNfaCAqIGZiLT5waXRjaGVzWzBdICsg c3JjX3cgKiBwaXhlbF9zaXplOworCQl9CisJfQorCiAJYXRvbWljX3VwZGF0ZSA9IGludGVsX3Bp cGVfdXBkYXRlX3N0YXJ0KGludGVsX2NydGMsICZzdGFydF92YmxfY291bnQpOwogCiAJaW50ZWxf dXBkYXRlX3ByaW1hcnlfcGxhbmUoaW50ZWxfY3J0Yyk7CkBAIC01NjksNiArNTkwLDcgQEAgaWxr X3VwZGF0ZV9wbGFuZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwgc3RydWN0IGRybV9jcnRjICpj cnRjLAogCWR2c2NudHIgJj0gfkRWU19SR0JfT1JERVJfWEJHUjsKIAlkdnNjbnRyICY9IH5EVlNf WVVWX0JZVEVfT1JERVJfTUFTSzsKIAlkdnNjbnRyICY9IH5EVlNfVElMRUQ7CisJZHZzY250ciAm PSB+RFZTX1JPVEFURV8xODA7CiAKIAlzd2l0Y2ggKGZiLT5waXhlbF9mb3JtYXQpIHsKIAljYXNl IERSTV9GT1JNQVRfWEJHUjg4ODg6CkBAIC02MjUsNiArNjQ3LDE0IEBAIGlsa191cGRhdGVfcGxh bmUoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsIHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAkJCQkJ ICAgICAgIHBpeGVsX3NpemUsIGZiLT5waXRjaGVzWzBdKTsKIAlsaW5lYXJfb2Zmc2V0IC09IGR2 c3N1cmZfb2Zmc2V0OwogCisJaWYgKGludGVsX3BsYW5lLT5yb3RhdGlvbiA9PSBCSVQoRFJNX1JP VEFURV8xODApKSB7CisJCWR2c2NudHIgfD0gRFZTX1JPVEFURV8xODA7CisKKwkJeCArPSBzcmNf dzsKKwkJeSArPSBzcmNfaDsKKwkJbGluZWFyX29mZnNldCArPSBzcmNfaCAqIGZiLT5waXRjaGVz WzBdICsgc3JjX3cgKiBwaXhlbF9zaXplOworCX0KKwogCWF0b21pY191cGRhdGUgPSBpbnRlbF9w aXBlX3VwZGF0ZV9zdGFydChpbnRlbF9jcnRjLCAmc3RhcnRfdmJsX2NvdW50KTsKIAogCWludGVs X3VwZGF0ZV9wcmltYXJ5X3BsYW5lKGludGVsX2NydGMpOwpAQCAtODgzLDYgKzkxMyw5IEBAIGlu dGVsX3VwZGF0ZV9wbGFuZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwgc3RydWN0IGRybV9jcnRj ICpjcnRjLAogCW1heF9zY2FsZSA9IGludGVsX3BsYW5lLT5tYXhfZG93bnNjYWxlIDw8IDE2Owog CW1pbl9zY2FsZSA9IGludGVsX3BsYW5lLT5jYW5fc2NhbGUgPyAxIDogKDEgPDwgMTYpOwogCisJ ZHJtX3JlY3Rfcm90YXRlKCZzcmMsIGZiLT53aWR0aCA8PCAxNiwgZmItPmhlaWdodCA8PCAxNiwK KwkJCWludGVsX3BsYW5lLT5yb3RhdGlvbik7CisKIAloc2NhbGUgPSBkcm1fcmVjdF9jYWxjX2hz Y2FsZV9yZWxheGVkKCZzcmMsICZkc3QsIG1pbl9zY2FsZSwgbWF4X3NjYWxlKTsKIAlCVUdfT04o aHNjYWxlIDwgMCk7CiAKQEAgLTkyMSw2ICs5NTQsOSBAQCBpbnRlbF91cGRhdGVfcGxhbmUoc3Ry dWN0IGRybV9wbGFuZSAqcGxhbmUsIHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAkJCQkgICAgIGRy bV9yZWN0X3dpZHRoKCZkc3QpICogaHNjYWxlIC0gZHJtX3JlY3Rfd2lkdGgoJnNyYyksCiAJCQkJ ICAgICBkcm1fcmVjdF9oZWlnaHQoJmRzdCkgKiB2c2NhbGUgLSBkcm1fcmVjdF9oZWlnaHQoJnNy YykpOwogCisJCWRybV9yZWN0X3JvdGF0ZV9pbnYoJnNyYywgZmItPndpZHRoIDw8IDE2LCBmYi0+ aGVpZ2h0IDw8IDE2LAorCQkJCSAgICBpbnRlbF9wbGFuZS0+cm90YXRpb24pOworCiAJCS8qIHNh bml0eSBjaGVjayB0byBtYWtlIHN1cmUgdGhlIHNyYyB2aWV3cG9ydCB3YXNuJ3QgZW5sYXJnZWQg Ki8KIAkJV0FSTl9PTihzcmMueDEgPCAoaW50KSBzcmNfeCB8fAogCQkJc3JjLnkxIDwgKGludCkg c3JjX3kgfHwKQEAgLTEyOTYsNiArMTMzMiw3IEBAIGludGVsX3BsYW5lX2luaXQoc3RydWN0IGRy bV9kZXZpY2UgKmRldiwgZW51bSBwaXBlIHBpcGUsIGludCBwbGFuZSkKIAogCWludGVsX3BsYW5l LT5waXBlID0gcGlwZTsKIAlpbnRlbF9wbGFuZS0+cGxhbmUgPSBwbGFuZTsKKwlpbnRlbF9wbGFu ZS0+cm90YXRpb24gPSBCSVQoRFJNX1JPVEFURV8wKTsKIAlwb3NzaWJsZV9jcnRjcyA9ICgxIDw8 IHBpcGUpOwogCXJldCA9IGRybV9wbGFuZV9pbml0KGRldiwgJmludGVsX3BsYW5lLT5iYXNlLCBw b3NzaWJsZV9jcnRjcywKIAkJCSAgICAgJmludGVsX3BsYW5lX2Z1bmNzLAotLSAKMS43LjEwLjQK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdm eCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==