From mboxrd@z Thu Jan 1 00:00:00 1970 From: sagar.a.kamble@intel.com Subject: [PATCH v5 07/11] drm/i915: Add 180 degree sprite rotation support Date: Mon, 10 Feb 2014 13:06:24 +0530 Message-ID: <1392017784-6023-1-git-send-email-sagar.a.kamble@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces@lists.freedesktop.org Errors-To: intel-gfx-bounces@lists.freedesktop.org To: intel-gfx@lists.freedesktop.org Cc: David Airlie , Daniel Vetter , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KClRo ZSBzcHJpdGUgcGxhbmVzIChpbiBmYWN0IGFsbCBkaXNwbGF5IHBsYW5lcyBzdGFydGluZyBmcm9t IGdlbjQpCnN1cHBvcnQgMTgwIGRlZ3JlZSByb3RhdGlvbi4gQWRkIHRoZSByZWxldmFudCBsb3cg bGV2ZWwgYml0cyB0byB0aGUKc3ByaXRlIGNvZGUgdG8gbWFrZSB1c2Ugb2YgdGhhdCBmZWF0dXJl LgoKVGhlIHVwcGVyIGxheWVycyBhcmUgbm90IHlldCBwbHVnZ2VkIGluLgoKdjI6IEhTVyBoYW5k bGVzIHRoZSByb3RhdGVkIGJ1ZmZlciBvZmZzZXQgYXV0b21hZ2ljYWxseQoKQ2M6IERhbmllbCBW ZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+CkNjOiBKYW5pIE5pa3VsYSA8amFuaS5uaWt1 bGFAbGludXguaW50ZWwuY29tPgpDYzogRGF2aWQgQWlybGllIDxhaXJsaWVkQGxpbnV4LmllPgpD YzogZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpDYzogbGludXgta2VybmVsQHZnZXIu a2VybmVsLm9yZwpTaWduZWQtb2ZmLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFA bGludXguaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggICAg IHwgIDMgKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCAgICB8ICAxICsKIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Nwcml0ZS5jIHwgMzcgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspCgpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfcmVnLmgKaW5kZXggYWJkMThjZC4uNTc5MDZjNSAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X3JlZy5oCkBAIC0zNjM3LDYgKzM2MzcsNyBAQAogI2RlZmluZSAgIERWU19ZVVZfT1JE RVJfVVlWWQkoMTw8MTYpCiAjZGVmaW5lICAgRFZTX1lVVl9PUkRFUl9ZVllVCSgyPDwxNikKICNk ZWZpbmUgICBEVlNfWVVWX09SREVSX1ZZVVkJKDM8PDE2KQorI2RlZmluZSAgIERWU19ST1RBVEVf MTgwCSgxPDwxNSkKICNkZWZpbmUgICBEVlNfREVTVF9LRVkJCSgxPDwyKQogI2RlZmluZSAgIERW U19UUklDS0xFX0ZFRURfRElTQUJMRSAoMTw8MTQpCiAjZGVmaW5lICAgRFZTX1RJTEVECQkoMTw8 MTApCkBAIC0zNzA3LDYgKzM3MDgsNyBAQAogI2RlZmluZSAgIFNQUklURV9ZVVZfT1JERVJfVVlW WQkJKDE8PDE2KQogI2RlZmluZSAgIFNQUklURV9ZVVZfT1JERVJfWVZZVQkJKDI8PDE2KQogI2Rl ZmluZSAgIFNQUklURV9ZVVZfT1JERVJfVllVWQkJKDM8PDE2KQorI2RlZmluZSAgIFNQUklURV9S T1RBVEVfMTgwCQkoMTw8MTUpCiAjZGVmaW5lICAgU1BSSVRFX1RSSUNLTEVfRkVFRF9ESVNBQkxF CSgxPDwxNCkKICNkZWZpbmUgICBTUFJJVEVfSU5UX0dBTU1BX0VOQUJMRQkoMTw8MTMpCiAjZGVm aW5lICAgU1BSSVRFX1RJTEVECQkJKDE8PDEwKQpAQCAtMzc4MCw2ICszNzgyLDcgQEAKICNkZWZp bmUgICBTUF9ZVVZfT1JERVJfVVlWWQkJKDE8PDE2KQogI2RlZmluZSAgIFNQX1lVVl9PUkRFUl9Z VllVCQkoMjw8MTYpCiAjZGVmaW5lICAgU1BfWVVWX09SREVSX1ZZVVkJCSgzPDwxNikKKyNkZWZp bmUgICBTUF9ST1RBVEVfMTgwCQkJKDE8PDE1KQogI2RlZmluZSAgIFNQX1RJTEVECQkJKDE8PDEw KQogI2RlZmluZSBfU1BBTElOT0ZGCQkoVkxWX0RJU1BMQVlfQkFTRSArIDB4NzIxODQpCiAjZGVm aW5lIF9TUEFTVFJJREUJCShWTFZfRElTUExBWV9CQVNFICsgMHg3MjE4OCkKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZHJ2LmgKaW5kZXggNDQwNjdiYy4uODU4NjRmYyAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZHJ2LmgKQEAgLTM5Nyw2ICszOTcsNyBAQCBzdHJ1Y3QgaW50ZWxfcGxhbmUgewogCXVuc2lnbmVk IGludCBjcnRjX3csIGNydGNfaDsKIAl1aW50MzJfdCBzcmNfeCwgc3JjX3k7CiAJdWludDMyX3Qg c3JjX3csIHNyY19oOworCXVuc2lnbmVkIGludCByb3RhdGlvbjsKIAogCS8qIFNpbmNlIHdlIG5l ZWQgdG8gY2hhbmdlIHRoZSB3YXRlcm1hcmtzIGJlZm9yZS9hZnRlcgogCSAqIGVuYWJsaW5nL2Rp c2FibGluZyB0aGUgcGxhbmVzLCB3ZSBuZWVkIHRvIHN0b3JlIHRoZSBwYXJhbWV0ZXJzIGhlcmUK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Nwcml0ZS5jIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKaW5kZXggMzM2YWU2Yy4uNDc3ZDRkNyAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKQEAgLTYwLDYgKzYwLDcgQEAgdmx2X3VwZGF0 ZV9wbGFuZShzdHJ1Y3QgZHJtX3BsYW5lICpkcGxhbmUsIHN0cnVjdCBkcm1fY3J0YyAqY3J0YywK IAlzcHJjdGwgJj0gflNQX1BJWEZPUk1BVF9NQVNLOwogCXNwcmN0bCAmPSB+U1BfWVVWX0JZVEVf T1JERVJfTUFTSzsKIAlzcHJjdGwgJj0gflNQX1RJTEVEOworCXNwcmN0bCAmPSB+U1BfUk9UQVRF XzE4MDsKIAogCXN3aXRjaCAoZmItPnBpeGVsX2Zvcm1hdCkgewogCWNhc2UgRFJNX0ZPUk1BVF9Z VVlWOgpAQCAtMTMxLDYgKzEzMiwxNCBAQCB2bHZfdXBkYXRlX3BsYW5lKHN0cnVjdCBkcm1fcGxh bmUgKmRwbGFuZSwgc3RydWN0IGRybV9jcnRjICpjcnRjLAogCQkJCQkJCWZiLT5waXRjaGVzWzBd KTsKIAlsaW5lYXJfb2Zmc2V0IC09IHNwcnN1cmZfb2Zmc2V0OwogCisJaWYgKGludGVsX3BsYW5l LT5yb3RhdGlvbiA9PSBCSVQoRFJNX1JPVEFURV8xODApKSB7CisJCXNwcmN0bCB8PSBTUF9ST1RB VEVfMTgwOworCisJCXggKz0gc3JjX3c7CisJCXkgKz0gc3JjX2g7CisJCWxpbmVhcl9vZmZzZXQg Kz0gc3JjX2ggKiBmYi0+cGl0Y2hlc1swXSArIHNyY193ICogcGl4ZWxfc2l6ZTsKKwl9CisKIAlJ OTE1X1dSSVRFKFNQU1RSSURFKHBpcGUsIHBsYW5lKSwgZmItPnBpdGNoZXNbMF0pOwogCUk5MTVf V1JJVEUoU1BQT1MocGlwZSwgcGxhbmUpLCAoY3J0Y195IDw8IDE2KSB8IGNydGNfeCk7CiAKQEAg LTIzOCw2ICsyNDcsNyBAQCBpdmJfdXBkYXRlX3BsYW5lKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5l LCBzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJc3ByY3RsICY9IH5TUFJJVEVfUkdCX09SREVSX1JH Qlg7CiAJc3ByY3RsICY9IH5TUFJJVEVfWVVWX0JZVEVfT1JERVJfTUFTSzsKIAlzcHJjdGwgJj0g flNQUklURV9USUxFRDsKKwlzcHJjdGwgJj0gflNQUklURV9ST1RBVEVfMTgwOwogCiAJc3dpdGNo IChmYi0+cGl4ZWxfZm9ybWF0KSB7CiAJY2FzZSBEUk1fRk9STUFUX1hCR1I4ODg4OgpAQCAtMjk5 LDYgKzMwOSwxNyBAQCBpdmJfdXBkYXRlX3BsYW5lKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLCBz dHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJCQkJCSAgICAgICBwaXhlbF9zaXplLCBmYi0+cGl0Y2hl c1swXSk7CiAJbGluZWFyX29mZnNldCAtPSBzcHJzdXJmX29mZnNldDsKIAorCWlmIChpbnRlbF9w bGFuZS0+cm90YXRpb24gPT0gQklUKERSTV9ST1RBVEVfMTgwKSkgeworCQlzcHJjdGwgfD0gU1BS SVRFX1JPVEFURV8xODA7CisKKwkJLyogSFNXIGRvZXMgdGhpcyBhdXRvbWFnaWNhbGx5IGluIGhh cmR3YXJlICovCisJCWlmICghSVNfSEFTV0VMTChkZXYpKSB7CisJCQl4ICs9IHNyY193OworCQkJ eSArPSBzcmNfaDsKKwkJCWxpbmVhcl9vZmZzZXQgKz0gc3JjX2ggKiBmYi0+cGl0Y2hlc1swXSAr IHNyY193ICogcGl4ZWxfc2l6ZTsKKwkJfQorCX0KKwogCUk5MTVfV1JJVEUoU1BSU1RSSURFKHBp cGUpLCBmYi0+cGl0Y2hlc1swXSk7CiAJSTkxNV9XUklURShTUFJQT1MocGlwZSksIChjcnRjX3kg PDwgMTYpIHwgY3J0Y194KTsKIApAQCAtNDIyLDYgKzQ0Myw3IEBAIGlsa191cGRhdGVfcGxhbmUo c3RydWN0IGRybV9wbGFuZSAqcGxhbmUsIHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAlkdnNjbnRy ICY9IH5EVlNfUkdCX09SREVSX1hCR1I7CiAJZHZzY250ciAmPSB+RFZTX1lVVl9CWVRFX09SREVS X01BU0s7CiAJZHZzY250ciAmPSB+RFZTX1RJTEVEOworCWR2c2NudHIgJj0gfkRWU19ST1RBVEVf MTgwOwogCiAJc3dpdGNoIChmYi0+cGl4ZWxfZm9ybWF0KSB7CiAJY2FzZSBEUk1fRk9STUFUX1hC R1I4ODg4OgpAQCAtNDc4LDYgKzUwMCwxNCBAQCBpbGtfdXBkYXRlX3BsYW5lKHN0cnVjdCBkcm1f cGxhbmUgKnBsYW5lLCBzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJCQkJCSAgICAgICBwaXhlbF9z aXplLCBmYi0+cGl0Y2hlc1swXSk7CiAJbGluZWFyX29mZnNldCAtPSBkdnNzdXJmX29mZnNldDsK IAorCWlmIChpbnRlbF9wbGFuZS0+cm90YXRpb24gPT0gQklUKERSTV9ST1RBVEVfMTgwKSkgewor CQlkdnNjbnRyIHw9IERWU19ST1RBVEVfMTgwOworCisJCXggKz0gc3JjX3c7CisJCXkgKz0gc3Jj X2g7CisJCWxpbmVhcl9vZmZzZXQgKz0gc3JjX2ggKiBmYi0+cGl0Y2hlc1swXSArIHNyY193ICog cGl4ZWxfc2l6ZTsKKwl9CisKIAlJOTE1X1dSSVRFKERWU1NUUklERShwaXBlKSwgZmItPnBpdGNo ZXNbMF0pOwogCUk5MTVfV1JJVEUoRFZTUE9TKHBpcGUpLCAoY3J0Y195IDw8IDE2KSB8IGNydGNf eCk7CiAKQEAgLTczOSw2ICs3NjksOSBAQCBpbnRlbF91cGRhdGVfcGxhbmUoc3RydWN0IGRybV9w bGFuZSAqcGxhbmUsIHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAltYXhfc2NhbGUgPSBpbnRlbF9w bGFuZS0+bWF4X2Rvd25zY2FsZSA8PCAxNjsKIAltaW5fc2NhbGUgPSBpbnRlbF9wbGFuZS0+Y2Fu X3NjYWxlID8gMSA6ICgxIDw8IDE2KTsKIAorCWRybV9yZWN0X3JvdGF0ZSgmc3JjLCBmYi0+d2lk dGggPDwgMTYsIGZiLT5oZWlnaHQgPDwgMTYsCisJCQlpbnRlbF9wbGFuZS0+cm90YXRpb24pOwor CiAJaHNjYWxlID0gZHJtX3JlY3RfY2FsY19oc2NhbGVfcmVsYXhlZCgmc3JjLCAmZHN0LCBtaW5f c2NhbGUsIG1heF9zY2FsZSk7CiAJQlVHX09OKGhzY2FsZSA8IDApOwogCkBAIC03NzcsNiArODEw LDkgQEAgaW50ZWxfdXBkYXRlX3BsYW5lKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLCBzdHJ1Y3Qg ZHJtX2NydGMgKmNydGMsCiAJCQkJICAgICBkcm1fcmVjdF93aWR0aCgmZHN0KSAqIGhzY2FsZSAt IGRybV9yZWN0X3dpZHRoKCZzcmMpLAogCQkJCSAgICAgZHJtX3JlY3RfaGVpZ2h0KCZkc3QpICog dnNjYWxlIC0gZHJtX3JlY3RfaGVpZ2h0KCZzcmMpKTsKIAorCQlkcm1fcmVjdF9yb3RhdGVfaW52 KCZzcmMsIGZiLT53aWR0aCA8PCAxNiwgZmItPmhlaWdodCA8PCAxNiwKKwkJCQkgICAgaW50ZWxf cGxhbmUtPnJvdGF0aW9uKTsKKwogCQkvKiBzYW5pdHkgY2hlY2sgdG8gbWFrZSBzdXJlIHRoZSBz cmMgdmlld3BvcnQgd2Fzbid0IGVubGFyZ2VkICovCiAJCVdBUk5fT04oc3JjLngxIDwgKGludCkg c3JjX3ggfHwKIAkJCXNyYy55MSA8IChpbnQpIHNyY195IHx8CkBAIC0xMTQxLDYgKzExNzcsNyBA QCBpbnRlbF9wbGFuZV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGVudW0gcGlwZSBwaXBl LCBpbnQgcGxhbmUpCiAKIAlpbnRlbF9wbGFuZS0+cGlwZSA9IHBpcGU7CiAJaW50ZWxfcGxhbmUt PnBsYW5lID0gcGxhbmU7CisJaW50ZWxfcGxhbmUtPnJvdGF0aW9uID0gQklUKERSTV9ST1RBVEVf MCk7CiAJcG9zc2libGVfY3J0Y3MgPSAoMSA8PCBwaXBlKTsKIAlyZXQgPSBkcm1fcGxhbmVfaW5p dChkZXYsICZpbnRlbF9wbGFuZS0+YmFzZSwgcG9zc2libGVfY3J0Y3MsCiAJCQkgICAgICZpbnRl bF9wbGFuZV9mdW5jcywKLS0gCjEuOC41CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2ludGVsLWdmeAo=