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:01:14 +0530 Message-ID: <1392017478-4945-8-git-send-email-sagar.a.kamble@intel.com> References: <1392017478-4945-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: In-Reply-To: <1392017478-4945-1-git-send-email-sagar.a.kamble@intel.com> 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, Sagar Kamble List-Id: dri-devel@lists.freedesktop.org RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KClRo ZSBzcHJpdGUgcGxhbmVzIChpbiBmYWN0IGFsbCBkaXNwbGF5IHBsYW5lcyBzdGFydGluZyBmcm9t IGdlbjQpCnN1cHBvcnQgMTgwIGRlZ3JlZSByb3RhdGlvbi4gQWRkIHRoZSByZWxldmFudCBsb3cg bGV2ZWwgYml0cyB0byB0aGUKc3ByaXRlIGNvZGUgdG8gbWFrZSB1c2Ugb2YgdGhhdCBmZWF0dXJl LgoKVGhlIHVwcGVyIGxheWVycyBhcmUgbm90IHlldCBwbHVnZ2VkIGluLgoKdjI6IEhTVyBoYW5k bGVzIHRoZSByb3RhdGVkIGJ1ZmZlciBvZmZzZXQgYXV0b21hZ2ljYWxseQoKQ2M6IERhbmllbCBW ZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+CkNjOiBKYW5pIE5pa3VsYSA8amFuaS5uaWt1 bGFAbGludXguaW50ZWwuY29tPgpDYzogRGF2aWQgQWlybGllIDxhaXJsaWVkQGxpbnV4LmllPgpD YzogZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpDYzogbGludXgta2VybmVsQHZnZXIu a2VybmVsLm9yZwpTaWduZWQtb2ZmLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFA bGludXguaW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBTYWdhciBLYW1ibGUgPHNhZ2FyLmEua2Ft YmxlQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oICAgICB8 ICAzICsrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgfCAgMSArCiBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuYyB8IDM3ICsrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgNDEgaW5zZXJ0aW9ucygrKQoKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X3JlZy5oCmluZGV4IGFiZDE4Y2QuLjU3OTA2YzUgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9yZWcuaApAQCAtMzYzNyw2ICszNjM3LDcgQEAKICNkZWZpbmUgICBEVlNfWVVWX09SREVS X1VZVlkJKDE8PDE2KQogI2RlZmluZSAgIERWU19ZVVZfT1JERVJfWVZZVQkoMjw8MTYpCiAjZGVm aW5lICAgRFZTX1lVVl9PUkRFUl9WWVVZCSgzPDwxNikKKyNkZWZpbmUgICBEVlNfUk9UQVRFXzE4 MAkoMTw8MTUpCiAjZGVmaW5lICAgRFZTX0RFU1RfS0VZCQkoMTw8MikKICNkZWZpbmUgICBEVlNf VFJJQ0tMRV9GRUVEX0RJU0FCTEUgKDE8PDE0KQogI2RlZmluZSAgIERWU19USUxFRAkJKDE8PDEw KQpAQCAtMzcwNyw2ICszNzA4LDcgQEAKICNkZWZpbmUgICBTUFJJVEVfWVVWX09SREVSX1VZVlkJ CSgxPDwxNikKICNkZWZpbmUgICBTUFJJVEVfWVVWX09SREVSX1lWWVUJCSgyPDwxNikKICNkZWZp bmUgICBTUFJJVEVfWVVWX09SREVSX1ZZVVkJCSgzPDwxNikKKyNkZWZpbmUgICBTUFJJVEVfUk9U QVRFXzE4MAkJKDE8PDE1KQogI2RlZmluZSAgIFNQUklURV9UUklDS0xFX0ZFRURfRElTQUJMRQko MTw8MTQpCiAjZGVmaW5lICAgU1BSSVRFX0lOVF9HQU1NQV9FTkFCTEUJKDE8PDEzKQogI2RlZmlu ZSAgIFNQUklURV9USUxFRAkJCSgxPDwxMCkKQEAgLTM3ODAsNiArMzc4Miw3IEBACiAjZGVmaW5l ICAgU1BfWVVWX09SREVSX1VZVlkJCSgxPDwxNikKICNkZWZpbmUgICBTUF9ZVVZfT1JERVJfWVZZ VQkJKDI8PDE2KQogI2RlZmluZSAgIFNQX1lVVl9PUkRFUl9WWVVZCQkoMzw8MTYpCisjZGVmaW5l ICAgU1BfUk9UQVRFXzE4MAkJCSgxPDwxNSkKICNkZWZpbmUgICBTUF9USUxFRAkJCSgxPDwxMCkK ICNkZWZpbmUgX1NQQUxJTk9GRgkJKFZMVl9ESVNQTEFZX0JBU0UgKyAweDcyMTg0KQogI2RlZmlu ZSBfU1BBU1RSSURFCQkoVkxWX0RJU1BMQVlfQkFTRSArIDB4NzIxODgpCmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rydi5oCmluZGV4IDQ0MDY3YmMuLjg1ODY0ZmMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Ry di5oCkBAIC0zOTcsNiArMzk3LDcgQEAgc3RydWN0IGludGVsX3BsYW5lIHsKIAl1bnNpZ25lZCBp bnQgY3J0Y193LCBjcnRjX2g7CiAJdWludDMyX3Qgc3JjX3gsIHNyY195OwogCXVpbnQzMl90IHNy Y193LCBzcmNfaDsKKwl1bnNpZ25lZCBpbnQgcm90YXRpb247CiAKIAkvKiBTaW5jZSB3ZSBuZWVk IHRvIGNoYW5nZSB0aGUgd2F0ZXJtYXJrcyBiZWZvcmUvYWZ0ZXIKIAkgKiBlbmFibGluZy9kaXNh YmxpbmcgdGhlIHBsYW5lcywgd2UgbmVlZCB0byBzdG9yZSB0aGUgcGFyYW1ldGVycyBoZXJlCmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuYyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX3Nwcml0ZS5jCmluZGV4IDMzNmFlNmMuLjQ3N2Q0ZDcgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Nwcml0ZS5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX3Nwcml0ZS5jCkBAIC02MCw2ICs2MCw3IEBAIHZsdl91cGRhdGVf cGxhbmUoc3RydWN0IGRybV9wbGFuZSAqZHBsYW5lLCBzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJ c3ByY3RsICY9IH5TUF9QSVhGT1JNQVRfTUFTSzsKIAlzcHJjdGwgJj0gflNQX1lVVl9CWVRFX09S REVSX01BU0s7CiAJc3ByY3RsICY9IH5TUF9USUxFRDsKKwlzcHJjdGwgJj0gflNQX1JPVEFURV8x ODA7CiAKIAlzd2l0Y2ggKGZiLT5waXhlbF9mb3JtYXQpIHsKIAljYXNlIERSTV9GT1JNQVRfWVVZ VjoKQEAgLTEzMSw2ICsxMzIsMTQgQEAgdmx2X3VwZGF0ZV9wbGFuZShzdHJ1Y3QgZHJtX3BsYW5l ICpkcGxhbmUsIHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAkJCQkJCQlmYi0+cGl0Y2hlc1swXSk7 CiAJbGluZWFyX29mZnNldCAtPSBzcHJzdXJmX29mZnNldDsKIAorCWlmIChpbnRlbF9wbGFuZS0+ cm90YXRpb24gPT0gQklUKERSTV9ST1RBVEVfMTgwKSkgeworCQlzcHJjdGwgfD0gU1BfUk9UQVRF XzE4MDsKKworCQl4ICs9IHNyY193OworCQl5ICs9IHNyY19oOworCQlsaW5lYXJfb2Zmc2V0ICs9 IHNyY19oICogZmItPnBpdGNoZXNbMF0gKyBzcmNfdyAqIHBpeGVsX3NpemU7CisJfQorCiAJSTkx NV9XUklURShTUFNUUklERShwaXBlLCBwbGFuZSksIGZiLT5waXRjaGVzWzBdKTsKIAlJOTE1X1dS SVRFKFNQUE9TKHBpcGUsIHBsYW5lKSwgKGNydGNfeSA8PCAxNikgfCBjcnRjX3gpOwogCkBAIC0y MzgsNiArMjQ3LDcgQEAgaXZiX3VwZGF0ZV9wbGFuZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwg c3RydWN0IGRybV9jcnRjICpjcnRjLAogCXNwcmN0bCAmPSB+U1BSSVRFX1JHQl9PUkRFUl9SR0JY OwogCXNwcmN0bCAmPSB+U1BSSVRFX1lVVl9CWVRFX09SREVSX01BU0s7CiAJc3ByY3RsICY9IH5T UFJJVEVfVElMRUQ7CisJc3ByY3RsICY9IH5TUFJJVEVfUk9UQVRFXzE4MDsKIAogCXN3aXRjaCAo ZmItPnBpeGVsX2Zvcm1hdCkgewogCWNhc2UgRFJNX0ZPUk1BVF9YQkdSODg4ODoKQEAgLTI5OSw2 ICszMDksMTcgQEAgaXZiX3VwZGF0ZV9wbGFuZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwgc3Ry dWN0IGRybV9jcnRjICpjcnRjLAogCQkJCQkgICAgICAgcGl4ZWxfc2l6ZSwgZmItPnBpdGNoZXNb MF0pOwogCWxpbmVhcl9vZmZzZXQgLT0gc3Byc3VyZl9vZmZzZXQ7CiAKKwlpZiAoaW50ZWxfcGxh bmUtPnJvdGF0aW9uID09IEJJVChEUk1fUk9UQVRFXzE4MCkpIHsKKwkJc3ByY3RsIHw9IFNQUklU RV9ST1RBVEVfMTgwOworCisJCS8qIEhTVyBkb2VzIHRoaXMgYXV0b21hZ2ljYWxseSBpbiBoYXJk d2FyZSAqLworCQlpZiAoIUlTX0hBU1dFTEwoZGV2KSkgeworCQkJeCArPSBzcmNfdzsKKwkJCXkg Kz0gc3JjX2g7CisJCQlsaW5lYXJfb2Zmc2V0ICs9IHNyY19oICogZmItPnBpdGNoZXNbMF0gKyBz cmNfdyAqIHBpeGVsX3NpemU7CisJCX0KKwl9CisKIAlJOTE1X1dSSVRFKFNQUlNUUklERShwaXBl KSwgZmItPnBpdGNoZXNbMF0pOwogCUk5MTVfV1JJVEUoU1BSUE9TKHBpcGUpLCAoY3J0Y195IDw8 IDE2KSB8IGNydGNfeCk7CiAKQEAgLTQyMiw2ICs0NDMsNyBAQCBpbGtfdXBkYXRlX3BsYW5lKHN0 cnVjdCBkcm1fcGxhbmUgKnBsYW5lLCBzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJZHZzY250ciAm PSB+RFZTX1JHQl9PUkRFUl9YQkdSOwogCWR2c2NudHIgJj0gfkRWU19ZVVZfQllURV9PUkRFUl9N QVNLOwogCWR2c2NudHIgJj0gfkRWU19USUxFRDsKKwlkdnNjbnRyICY9IH5EVlNfUk9UQVRFXzE4 MDsKIAogCXN3aXRjaCAoZmItPnBpeGVsX2Zvcm1hdCkgewogCWNhc2UgRFJNX0ZPUk1BVF9YQkdS ODg4ODoKQEAgLTQ3OCw2ICs1MDAsMTQgQEAgaWxrX3VwZGF0ZV9wbGFuZShzdHJ1Y3QgZHJtX3Bs YW5lICpwbGFuZSwgc3RydWN0IGRybV9jcnRjICpjcnRjLAogCQkJCQkgICAgICAgcGl4ZWxfc2l6 ZSwgZmItPnBpdGNoZXNbMF0pOwogCWxpbmVhcl9vZmZzZXQgLT0gZHZzc3VyZl9vZmZzZXQ7CiAK KwlpZiAoaW50ZWxfcGxhbmUtPnJvdGF0aW9uID09IEJJVChEUk1fUk9UQVRFXzE4MCkpIHsKKwkJ ZHZzY250ciB8PSBEVlNfUk9UQVRFXzE4MDsKKworCQl4ICs9IHNyY193OworCQl5ICs9IHNyY19o OworCQlsaW5lYXJfb2Zmc2V0ICs9IHNyY19oICogZmItPnBpdGNoZXNbMF0gKyBzcmNfdyAqIHBp eGVsX3NpemU7CisJfQorCiAJSTkxNV9XUklURShEVlNTVFJJREUocGlwZSksIGZiLT5waXRjaGVz WzBdKTsKIAlJOTE1X1dSSVRFKERWU1BPUyhwaXBlKSwgKGNydGNfeSA8PCAxNikgfCBjcnRjX3gp OwogCkBAIC03MzksNiArNzY5LDkgQEAgaW50ZWxfdXBkYXRlX3BsYW5lKHN0cnVjdCBkcm1fcGxh bmUgKnBsYW5lLCBzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJbWF4X3NjYWxlID0gaW50ZWxfcGxh bmUtPm1heF9kb3duc2NhbGUgPDwgMTY7CiAJbWluX3NjYWxlID0gaW50ZWxfcGxhbmUtPmNhbl9z Y2FsZSA/IDEgOiAoMSA8PCAxNik7CiAKKwlkcm1fcmVjdF9yb3RhdGUoJnNyYywgZmItPndpZHRo IDw8IDE2LCBmYi0+aGVpZ2h0IDw8IDE2LAorCQkJaW50ZWxfcGxhbmUtPnJvdGF0aW9uKTsKKwog CWhzY2FsZSA9IGRybV9yZWN0X2NhbGNfaHNjYWxlX3JlbGF4ZWQoJnNyYywgJmRzdCwgbWluX3Nj YWxlLCBtYXhfc2NhbGUpOwogCUJVR19PTihoc2NhbGUgPCAwKTsKIApAQCAtNzc3LDYgKzgxMCw5 IEBAIGludGVsX3VwZGF0ZV9wbGFuZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwgc3RydWN0IGRy bV9jcnRjICpjcnRjLAogCQkJCSAgICAgZHJtX3JlY3Rfd2lkdGgoJmRzdCkgKiBoc2NhbGUgLSBk cm1fcmVjdF93aWR0aCgmc3JjKSwKIAkJCQkgICAgIGRybV9yZWN0X2hlaWdodCgmZHN0KSAqIHZz Y2FsZSAtIGRybV9yZWN0X2hlaWdodCgmc3JjKSk7CiAKKwkJZHJtX3JlY3Rfcm90YXRlX2ludigm c3JjLCBmYi0+d2lkdGggPDwgMTYsIGZiLT5oZWlnaHQgPDwgMTYsCisJCQkJICAgIGludGVsX3Bs YW5lLT5yb3RhdGlvbik7CisKIAkJLyogc2FuaXR5IGNoZWNrIHRvIG1ha2Ugc3VyZSB0aGUgc3Jj IHZpZXdwb3J0IHdhc24ndCBlbmxhcmdlZCAqLwogCQlXQVJOX09OKHNyYy54MSA8IChpbnQpIHNy Y194IHx8CiAJCQlzcmMueTEgPCAoaW50KSBzcmNfeSB8fApAQCAtMTE0MSw2ICsxMTc3LDcgQEAg aW50ZWxfcGxhbmVfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBlbnVtIHBpcGUgcGlwZSwg aW50IHBsYW5lKQogCiAJaW50ZWxfcGxhbmUtPnBpcGUgPSBwaXBlOwogCWludGVsX3BsYW5lLT5w bGFuZSA9IHBsYW5lOworCWludGVsX3BsYW5lLT5yb3RhdGlvbiA9IEJJVChEUk1fUk9UQVRFXzAp OwogCXBvc3NpYmxlX2NydGNzID0gKDEgPDwgcGlwZSk7CiAJcmV0ID0gZHJtX3BsYW5lX2luaXQo ZGV2LCAmaW50ZWxfcGxhbmUtPmJhc2UsIHBvc3NpYmxlX2NydGNzLAogCQkJICAgICAmaW50ZWxf cGxhbmVfZnVuY3MsCi0tIAoxLjguNQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9pbnRlbC1nZngK