From mboxrd@z Thu Jan 1 00:00:00 1970 From: sonika.jindal@intel.com Subject: [PATCH 1/6] drm/i915: Add 180 degree sprite rotation support Date: Wed, 6 Aug 2014 09:55:22 +0530 Message-ID: <1407299127-1453-2-git-send-email-sonika.jindal@intel.com> References: <1407299127-1453-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 mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id 60FBB6E58B for ; Tue, 5 Aug 2014 21:29:31 -0700 (PDT) In-Reply-To: <1407299127-1453-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 Cc: Sagar Kamble List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KClRo ZSBzcHJpdGUgcGxhbmVzIChpbiBmYWN0IGFsbCBkaXNwbGF5IHBsYW5lcyBzdGFydGluZyBmcm9t IGdlbjQpCnN1cHBvcnQgMTgwIGRlZ3JlZSByb3RhdGlvbi4gQWRkIHRoZSByZWxldmFudCBsb3cg bGV2ZWwgYml0cyB0byB0aGUKc3ByaXRlIGNvZGUgdG8gbWFrZSB1c2Ugb2YgdGhhdCBmZWF0dXJl LgoKVGhlIHVwcGVyIGxheWVycyBhcmUgbm90IHlldCBwbHVnZ2VkIGluLgoKdjI6IEhTVyBoYW5k bGVzIHRoZSByb3RhdGVkIGJ1ZmZlciBvZmZzZXQgYXV0b21hZ2ljYWxseQoKdjM6IEJEVyBhbHNv IGhhbmRsZXMgdGhlIHJvdGF0ZWQgYnVmZmVyIG9mZnNldCBhdXRvbWFnaWNhbGx5CgpUZXN0Y2Fz ZTogaWd0L2ttc19yb3RhdGlvbl9jcmMKU2lnbmVkLW9mZi1ieTogVmlsbGUgU3lyasOkbMOkIDx2 aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogU2FnYXIgS2FtYmxl IDxzYWdhci5hLmthbWJsZUBpbnRlbC5jb20+ClJldmlld2VkLWJ5OiBJbXJlIERlYWsgPGltcmUu ZGVha0BpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCAgICAg fCAgICAzICsrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgfCAgICAxICsK IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Nwcml0ZS5jIHwgICAzOCArKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCsp CgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKaW5kZXggZGMxMzk2MS4uMWVjZTBjMyAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X3JlZy5oCkBAIC00MjE4LDYgKzQyMTgsNyBAQCBlbnVtIHB1bml0X3Bvd2VyX3dl bGwgewogI2RlZmluZSAgIERWU19ZVVZfT1JERVJfVVlWWQkoMTw8MTYpCiAjZGVmaW5lICAgRFZT X1lVVl9PUkRFUl9ZVllVCSgyPDwxNikKICNkZWZpbmUgICBEVlNfWVVWX09SREVSX1ZZVVkJKDM8 PDE2KQorI2RlZmluZSAgIERWU19ST1RBVEVfMTgwCSgxPDwxNSkKICNkZWZpbmUgICBEVlNfREVT VF9LRVkJCSgxPDwyKQogI2RlZmluZSAgIERWU19UUklDS0xFX0ZFRURfRElTQUJMRSAoMTw8MTQp CiAjZGVmaW5lICAgRFZTX1RJTEVECQkoMTw8MTApCkBAIC00Mjg4LDYgKzQyODksNyBAQCBlbnVt IHB1bml0X3Bvd2VyX3dlbGwgewogI2RlZmluZSAgIFNQUklURV9ZVVZfT1JERVJfVVlWWQkJKDE8 PDE2KQogI2RlZmluZSAgIFNQUklURV9ZVVZfT1JERVJfWVZZVQkJKDI8PDE2KQogI2RlZmluZSAg IFNQUklURV9ZVVZfT1JERVJfVllVWQkJKDM8PDE2KQorI2RlZmluZSAgIFNQUklURV9ST1RBVEVf MTgwCQkoMTw8MTUpCiAjZGVmaW5lICAgU1BSSVRFX1RSSUNLTEVfRkVFRF9ESVNBQkxFCSgxPDwx NCkKICNkZWZpbmUgICBTUFJJVEVfSU5UX0dBTU1BX0VOQUJMRQkoMTw8MTMpCiAjZGVmaW5lICAg U1BSSVRFX1RJTEVECQkJKDE8PDEwKQpAQCAtNDM2MSw2ICs0MzYzLDcgQEAgZW51bSBwdW5pdF9w b3dlcl93ZWxsIHsKICNkZWZpbmUgICBTUF9ZVVZfT1JERVJfVVlWWQkJKDE8PDE2KQogI2RlZmlu ZSAgIFNQX1lVVl9PUkRFUl9ZVllVCQkoMjw8MTYpCiAjZGVmaW5lICAgU1BfWVVWX09SREVSX1ZZ VVkJCSgzPDwxNikKKyNkZWZpbmUgICBTUF9ST1RBVEVfMTgwCQkJKDE8PDE1KQogI2RlZmluZSAg IFNQX1RJTEVECQkJKDE8PDEwKQogI2RlZmluZSBfU1BBTElOT0ZGCQkoVkxWX0RJU1BMQVlfQkFT RSArIDB4NzIxODQpCiAjZGVmaW5lIF9TUEFTVFJJREUJCShWTFZfRElTUExBWV9CQVNFICsgMHg3 MjE4OCkKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKaW5kZXggMjhkMTg1ZC4uYmQ5MTVmNCAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKQEAgLTQ0Nyw2ICs0NDcsNyBAQCBzdHJ1Y3QgaW50ZWxf cGxhbmUgewogCXVuc2lnbmVkIGludCBjcnRjX3csIGNydGNfaDsKIAl1aW50MzJfdCBzcmNfeCwg c3JjX3k7CiAJdWludDMyX3Qgc3JjX3csIHNyY19oOworCXVuc2lnbmVkIGludCByb3RhdGlvbjsK IAogCS8qIFNpbmNlIHdlIG5lZWQgdG8gY2hhbmdlIHRoZSB3YXRlcm1hcmtzIGJlZm9yZS9hZnRl cgogCSAqIGVuYWJsaW5nL2Rpc2FibGluZyB0aGUgcGxhbmVzLCB3ZSBuZWVkIHRvIHN0b3JlIHRo ZSBwYXJhbWV0ZXJzIGhlcmUKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X3Nwcml0ZS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKaW5kZXggZDM0 YTU2OS4uZjRkMTBjNCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3By aXRlLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKQEAgLTE2NCw2 ICsxNjQsNyBAQCB2bHZfdXBkYXRlX3BsYW5lKHN0cnVjdCBkcm1fcGxhbmUgKmRwbGFuZSwgc3Ry dWN0IGRybV9jcnRjICpjcnRjLAogCXNwcmN0bCAmPSB+U1BfUElYRk9STUFUX01BU0s7CiAJc3By Y3RsICY9IH5TUF9ZVVZfQllURV9PUkRFUl9NQVNLOwogCXNwcmN0bCAmPSB+U1BfVElMRUQ7CisJ c3ByY3RsICY9IH5TUF9ST1RBVEVfMTgwOwogCiAJc3dpdGNoIChmYi0+cGl4ZWxfZm9ybWF0KSB7 CiAJY2FzZSBEUk1fRk9STUFUX1lVWVY6CkBAIC0yMzYsNiArMjM3LDE0IEBAIHZsdl91cGRhdGVf cGxhbmUoc3RydWN0IGRybV9wbGFuZSAqZHBsYW5lLCBzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJ CQkJCQkJZmItPnBpdGNoZXNbMF0pOwogCWxpbmVhcl9vZmZzZXQgLT0gc3Byc3VyZl9vZmZzZXQ7 CiAKKwlpZiAoaW50ZWxfcGxhbmUtPnJvdGF0aW9uID09IEJJVChEUk1fUk9UQVRFXzE4MCkpIHsK KwkJc3ByY3RsIHw9IFNQX1JPVEFURV8xODA7CisKKwkJeCArPSBzcmNfdzsKKwkJeSArPSBzcmNf aDsKKwkJbGluZWFyX29mZnNldCArPSBzcmNfaCAqIGZiLT5waXRjaGVzWzBdICsgc3JjX3cgKiBw aXhlbF9zaXplOworCX0KKwogCWF0b21pY191cGRhdGUgPSBpbnRlbF9waXBlX3VwZGF0ZV9zdGFy dChpbnRlbF9jcnRjLCAmc3RhcnRfdmJsX2NvdW50KTsKIAogCWludGVsX3VwZGF0ZV9wcmltYXJ5 X3BsYW5lKGludGVsX2NydGMpOwpAQCAtMzY1LDYgKzM3NCw3IEBAIGl2Yl91cGRhdGVfcGxhbmUo c3RydWN0IGRybV9wbGFuZSAqcGxhbmUsIHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAlzcHJjdGwg Jj0gflNQUklURV9SR0JfT1JERVJfUkdCWDsKIAlzcHJjdGwgJj0gflNQUklURV9ZVVZfQllURV9P UkRFUl9NQVNLOwogCXNwcmN0bCAmPSB+U1BSSVRFX1RJTEVEOworCXNwcmN0bCAmPSB+U1BSSVRF X1JPVEFURV8xODA7CiAKIAlzd2l0Y2ggKGZiLT5waXhlbF9mb3JtYXQpIHsKIAljYXNlIERSTV9G T1JNQVRfWEJHUjg4ODg6CkBAIC00MjcsNiArNDM3LDE4IEBAIGl2Yl91cGRhdGVfcGxhbmUoc3Ry dWN0IGRybV9wbGFuZSAqcGxhbmUsIHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAkJCQkJICAgICAg IHBpeGVsX3NpemUsIGZiLT5waXRjaGVzWzBdKTsKIAlsaW5lYXJfb2Zmc2V0IC09IHNwcnN1cmZf b2Zmc2V0OwogCisJaWYgKGludGVsX3BsYW5lLT5yb3RhdGlvbiA9PSBCSVQoRFJNX1JPVEFURV8x ODApKSB7CisJCXNwcmN0bCB8PSBTUFJJVEVfUk9UQVRFXzE4MDsKKworCQkvKiBIU1cgYW5kIEJE VyBkb2VzIHRoaXMgYXV0b21hZ2ljYWxseSBpbiBoYXJkd2FyZSAqLworCQlpZiAoIUlTX0hBU1dF TEwoZGV2KSAmJiAhSVNfQlJPQURXRUxMKGRldikpIHsKKwkJCXggKz0gc3JjX3c7CisJCQl5ICs9 IHNyY19oOworCQkJbGluZWFyX29mZnNldCArPSBzcmNfaCAqIGZiLT5waXRjaGVzWzBdICsKKwkJ CQlzcmNfdyAqIHBpeGVsX3NpemU7CisJCX0KKwl9CisKIAlhdG9taWNfdXBkYXRlID0gaW50ZWxf cGlwZV91cGRhdGVfc3RhcnQoaW50ZWxfY3J0YywgJnN0YXJ0X3ZibF9jb3VudCk7CiAKIAlpbnRl bF91cGRhdGVfcHJpbWFyeV9wbGFuZShpbnRlbF9jcnRjKTsKQEAgLTU3Miw2ICs1OTQsNyBAQCBp bGtfdXBkYXRlX3BsYW5lKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLCBzdHJ1Y3QgZHJtX2NydGMg KmNydGMsCiAJZHZzY250ciAmPSB+RFZTX1JHQl9PUkRFUl9YQkdSOwogCWR2c2NudHIgJj0gfkRW U19ZVVZfQllURV9PUkRFUl9NQVNLOwogCWR2c2NudHIgJj0gfkRWU19USUxFRDsKKwlkdnNjbnRy ICY9IH5EVlNfUk9UQVRFXzE4MDsKIAogCXN3aXRjaCAoZmItPnBpeGVsX2Zvcm1hdCkgewogCWNh c2UgRFJNX0ZPUk1BVF9YQkdSODg4ODoKQEAgLTYyOSw2ICs2NTIsMTQgQEAgaWxrX3VwZGF0ZV9w bGFuZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwgc3RydWN0IGRybV9jcnRjICpjcnRjLAogCQkJ CQkgICAgICAgcGl4ZWxfc2l6ZSwgZmItPnBpdGNoZXNbMF0pOwogCWxpbmVhcl9vZmZzZXQgLT0g ZHZzc3VyZl9vZmZzZXQ7CiAKKwlpZiAoaW50ZWxfcGxhbmUtPnJvdGF0aW9uID09IEJJVChEUk1f Uk9UQVRFXzE4MCkpIHsKKwkJZHZzY250ciB8PSBEVlNfUk9UQVRFXzE4MDsKKworCQl4ICs9IHNy Y193OworCQl5ICs9IHNyY19oOworCQlsaW5lYXJfb2Zmc2V0ICs9IHNyY19oICogZmItPnBpdGNo ZXNbMF0gKyBzcmNfdyAqIHBpeGVsX3NpemU7CisJfQorCiAJYXRvbWljX3VwZGF0ZSA9IGludGVs X3BpcGVfdXBkYXRlX3N0YXJ0KGludGVsX2NydGMsICZzdGFydF92YmxfY291bnQpOwogCiAJaW50 ZWxfdXBkYXRlX3ByaW1hcnlfcGxhbmUoaW50ZWxfY3J0Yyk7CkBAIC04OTYsNiArOTI3LDkgQEAg aW50ZWxfdXBkYXRlX3BsYW5lKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLCBzdHJ1Y3QgZHJtX2Ny dGMgKmNydGMsCiAJbWF4X3NjYWxlID0gaW50ZWxfcGxhbmUtPm1heF9kb3duc2NhbGUgPDwgMTY7 CiAJbWluX3NjYWxlID0gaW50ZWxfcGxhbmUtPmNhbl9zY2FsZSA/IDEgOiAoMSA8PCAxNik7CiAK Kwlkcm1fcmVjdF9yb3RhdGUoJnNyYywgZmItPndpZHRoIDw8IDE2LCBmYi0+aGVpZ2h0IDw8IDE2 LAorCQkJaW50ZWxfcGxhbmUtPnJvdGF0aW9uKTsKKwogCWhzY2FsZSA9IGRybV9yZWN0X2NhbGNf aHNjYWxlX3JlbGF4ZWQoJnNyYywgJmRzdCwgbWluX3NjYWxlLCBtYXhfc2NhbGUpOwogCUJVR19P Tihoc2NhbGUgPCAwKTsKIApAQCAtOTM0LDYgKzk2OCw5IEBAIGludGVsX3VwZGF0ZV9wbGFuZShz dHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwgc3RydWN0IGRybV9jcnRjICpjcnRjLAogCQkJCSAgICAg ZHJtX3JlY3Rfd2lkdGgoJmRzdCkgKiBoc2NhbGUgLSBkcm1fcmVjdF93aWR0aCgmc3JjKSwKIAkJ CQkgICAgIGRybV9yZWN0X2hlaWdodCgmZHN0KSAqIHZzY2FsZSAtIGRybV9yZWN0X2hlaWdodCgm c3JjKSk7CiAKKwkJZHJtX3JlY3Rfcm90YXRlX2ludigmc3JjLCBmYi0+d2lkdGggPDwgMTYsIGZi LT5oZWlnaHQgPDwgMTYsCisJCQkJICAgIGludGVsX3BsYW5lLT5yb3RhdGlvbik7CisKIAkJLyog c2FuaXR5IGNoZWNrIHRvIG1ha2Ugc3VyZSB0aGUgc3JjIHZpZXdwb3J0IHdhc24ndCBlbmxhcmdl ZCAqLwogCQlXQVJOX09OKHNyYy54MSA8IChpbnQpIHNyY194IHx8CiAJCQlzcmMueTEgPCAoaW50 KSBzcmNfeSB8fApAQCAtMTMxMSw2ICsxMzQ4LDcgQEAgaW50ZWxfcGxhbmVfaW5pdChzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2LCBlbnVtIHBpcGUgcGlwZSwgaW50IHBsYW5lKQogCiAJaW50ZWxfcGxh bmUtPnBpcGUgPSBwaXBlOwogCWludGVsX3BsYW5lLT5wbGFuZSA9IHBsYW5lOworCWludGVsX3Bs YW5lLT5yb3RhdGlvbiA9IEJJVChEUk1fUk9UQVRFXzApOwogCXBvc3NpYmxlX2NydGNzID0gKDEg PDwgcGlwZSk7CiAJcmV0ID0gZHJtX3BsYW5lX2luaXQoZGV2LCAmaW50ZWxfcGxhbmUtPmJhc2Us IHBvc3NpYmxlX2NydGNzLAogCQkJICAgICAmaW50ZWxfcGxhbmVfZnVuY3MsCi0tIAoxLjcuMTAu NAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwt Z2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK