From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vandita Kulkarni Subject: [PATCHv2 5/5] drm/i915/skl: Add support for blending modes Date: Tue, 26 Apr 2016 15:03:04 +0530 Message-ID: <1461663184-1155-6-git-send-email-vandita.kulkarni@intel.com> References: <20160125161943.GS11240@phenom.ffwll.local> <1461663184-1155-1-git-send-email-vandita.kulkarni@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 6F0966E79B for ; Tue, 26 Apr 2016 09:33:49 +0000 (UTC) In-Reply-To: <1461663184-1155-1-git-send-email-vandita.kulkarni@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: vandita kulkarni List-Id: intel-gfx@lists.freedesktop.org RnJvbTogRGFtaWVuIExlc3BpYXUgPGRhbWllbi5sZXNwaWF1QGludGVsLmNvbT4KClRoaXMgcGF0 Y2ggYWRkcyBzdXBwb3J0IGZvciBibGVuZGluZyBtb2RlcyBpbnZvbHZpbmcKY29sb3IuCgpWMjog QWRkIHN1cHBvcnQgZm9yIHByaW1hcnkgcGxhbmUuClNlcGFyYXRlIG91dCBwbGFuZSBhbHBoYSBk aXNhYmxlIGZ1bmN0aW9uYWxpdHkgZnJvbSBwZXIgcGl4ZWwKZHJvcF9hbHBoYSBibGVuZCBmdW5j dGlvbiBhbmQgYWRkIGFub3RoZXIgYmxlbmQgZnVuY3Rpb24gY2FzZSBmb3IKZGlzYWJsaW5nIHBs YW5lIGFscGhhLgoKU2lnbmVkLW9mZi1ieTogRGFtaWVuIExlc3BpYXUgPGRhbWllbi5sZXNwaWF1 QGludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogdmFuZGl0YSBrdWxrYXJuaSA8dmFuZGl0YS5rdWxr YXJuaUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCAgICAg IHwgIDQgKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgfCA0NyArKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rydi5oICAgICB8ICAzICsrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRl LmMgIHwgIDkgKysrKystLQogNCBmaWxlcyBjaGFuZ2VkLCA2MSBpbnNlcnRpb25zKCspLCAyIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCmluZGV4IDk0NjRiYTMuLjRkMGMzOWQg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaApAQCAtNTUxNSw2ICs1NTE1LDEwIEBAIGVudW0gc2ts X2Rpc3BfcG93ZXJfd2VsbHMgewogI2RlZmluZSBQTEFORV9LRVlNQVgocGlwZSwgcGxhbmUpCVwK IAlfTU1JT19QTEFORShwbGFuZSwgX1BMQU5FX0tFWU1BWF8xKHBpcGUpLCBfUExBTkVfS0VZTUFY XzIocGlwZSkpCiAKKyNkZWZpbmUgUExBTkVfS0VZTUFYX0FMUEhBX01BU0sJCQkweDAwZmZmZmZm CisjZGVmaW5lIFBMQU5FX0tFWV9NQVNLX0FMUEhBX0VOCQkJMzEKKyNkZWZpbmUgUExBTkVfS0VZ X01BWF9BTFBIQV9TSElGVAkJMjQKKwogI2RlZmluZSBfUExBTkVfQlVGX0NGR18xX0IJCQkweDcx MjdjCiAjZGVmaW5lIF9QTEFORV9CVUZfQ0ZHXzJfQgkJCTB4NzEzN2MKICNkZWZpbmUgX1BMQU5F X0JVRl9DRkdfMShwaXBlKQlcCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKaW5kZXgg MDM3NDA3Zi4uMzE3NTVmMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZGlzcGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwpAQCAt MzAzMiw2ICszMDMyLDggQEAgc3RhdGljIHZvaWQgc2t5bGFrZV91cGRhdGVfcHJpbWFyeV9wbGFu ZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKIAlzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0 YyA9IHRvX2ludGVsX2NydGMoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjKTsKIAlzdHJ1Y3QgZHJtX2Zy YW1lYnVmZmVyICpmYiA9IHBsYW5lX3N0YXRlLT5iYXNlLmZiOwogCXN0cnVjdCBkcm1faTkxNV9n ZW1fb2JqZWN0ICpvYmogPSBpbnRlbF9mYl9vYmooZmIpOworCWNvbnN0IHN0cnVjdCBkcm1faW50 ZWxfc3ByaXRlX2NvbG9ya2V5ICprZXkgPQorCQkJJnRvX2ludGVsX3BsYW5lX3N0YXRlKHBsYW5l LT5zdGF0ZSktPmNrZXk7CiAJaW50IHBpcGUgPSBpbnRlbF9jcnRjLT5waXBlOwogCXUzMiBwbGFu ZV9jdGwsIHN0cmlkZV9kaXYsIHN0cmlkZTsKIAl1MzIgdGlsZV9oZWlnaHQsIHBsYW5lX29mZnNl dCwgcGxhbmVfc2l6ZTsKQEAgLTMwNjQsNiArMzA2NiwxNSBAQCBzdGF0aWMgdm9pZCBza3lsYWtl X3VwZGF0ZV9wcmltYXJ5X3BsYW5lKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAogCiAJV0FSTl9P Tihkcm1fcmVjdF93aWR0aCgmcGxhbmVfc3RhdGUtPnNyYykgPT0gMCk7CiAKKwlJOTE1X1dSSVRF KFBMQU5FX0tFWU1BWChwaXBlLCAwKSwgKERSTV9NT0RFX0NPTE9SX0FMUEhBXzgKKwkJCShwbGFu ZV9zdGF0ZS0+YmFzZS5ibGVuZF9tb2RlLmNvbG9yKQorCQkJCTw8IFBMQU5FX0tFWV9NQVhfQUxQ SEFfU0hJRlQpIHwKKwkJCShrZXktPm1heF92YWx1ZSAmIFBMQU5FX0tFWU1BWF9BTFBIQV9NQVNL KSk7CisJSTkxNV9XUklURShQTEFORV9LRVlNU0socGlwZSwgMCksCisJCQkocGxhbmVfc3RhdGUt PnVzZV9wbGFuZV9hbHBoYQorCQkJCTw8IFBMQU5FX0tFWV9NQVNLX0FMUEhBX0VOKSB8CisJCQko a2V5LT5jaGFubmVsX21hc2sgJiBHRU5NQVNLKDAsIDI2KSkpOworCiAJaWYgKGludGVsX3JvdGF0 aW9uXzkwX29yXzI3MChyb3RhdGlvbikpIHsKIAkJaW50IGNwcCA9IGRybV9mb3JtYXRfcGxhbmVf Y3BwKGZiLT5waXhlbF9mb3JtYXQsIDApOwogCkBAIC0zMTQ2LDYgKzMxNTcsNyBAQCBzdGF0aWMg aW50IGludGVsX3BsYW5lX3N0YXRlX2NoZWNrX2JsZW5kKHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUg KnBsYW5lX3N0YXRlKQogCWNhc2UgRFJNX0JMRU5EX0ZVTkMoQVVUTywgQVVUTyk6CiAJCWlmICho YXNfcGVyX3BpeGVsX2JsZW5kaW5nKQogCQkJc3RhdGUtPnBlcl9waXhlbF9hbHBoYSA9IFBSRV9N VUxUSVBMSUVEX0FMUEhBOworCQlzdGF0ZS0+dXNlX3BsYW5lX2FscGhhID0gZmFsc2U7CiAJCWJy ZWFrOwogCS8qIGZicyB3aXRob3V0IGFuIGFscGhhIGNoYW5uZWwsIG9yIGRyb3BwaW5nIHRoZSBh bHBoYSBjaGFubmVsICovCiAJY2FzZSBEUk1fQkxFTkRfRlVOQyhPTkUsIFpFUk8pOgpAQCAtMzE1 OCw2ICszMTcwLDcgQEAgc3RhdGljIGludCBpbnRlbF9wbGFuZV9zdGF0ZV9jaGVja19ibGVuZChz dHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpwbGFuZV9zdGF0ZSkKIAkJCXN0YXRlLT5wZXJfcGl4ZWxf YWxwaGEgPSBEUk9QX0FMUEhBOwogCQllbHNlCiAJCQlzdGF0ZS0+cGVyX3BpeGVsX2FscGhhID0g UFJFX01VTFRJUExJRURfQUxQSEE7CisJCXN0YXRlLT51c2VfcGxhbmVfYWxwaGEgPSBmYWxzZTsK IAkJYnJlYWs7CiAJLyogbm9uIHByZS1tdWx0aXBsaWVkIGFscGhhICovCiAJY2FzZSBEUk1fQkxF TkRfRlVOQyhTUkNfQUxQSEEsIE9ORV9NSU5VU19TUkNfQUxQSEEpOgpAQCAtMzE2NSw2ICszMTc4 LDM0IEBAIHN0YXRpYyBpbnQgaW50ZWxfcGxhbmVfc3RhdGVfY2hlY2tfYmxlbmQoc3RydWN0IGRy bV9wbGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGUpCiAJCQlzdGF0ZS0+cGVyX3BpeGVsX2FscGhhID0g RFJPUF9BTFBIQTsKIAkJZWxzZQogCQkJc3RhdGUtPnBlcl9waXhlbF9hbHBoYSA9IE5PTl9QUkVf TVVMVElQTElFRF9BTFBIQTsKKwkJc3RhdGUtPnVzZV9wbGFuZV9hbHBoYSA9IGZhbHNlOworCQli cmVhazsKKwkvKiBwbGFuZSBhbHBoYSAqLworCWNhc2UgRFJNX0JMRU5EX0ZVTkMoQ09OU1RBTlRf QUxQSEEsIE9ORV9NSU5VU19DT05TVEFOVF9BTFBIQSk6CisJCXN0YXRlLT51c2VfcGxhbmVfYWxw aGEgPSB0cnVlOworCQlicmVhazsKKwkvKiBwbGFuZSBhbHBoYSwgcHJlLW11bHRpcGxpZWQgZmIg Ki8KKwljYXNlIERSTV9CTEVORF9GVU5DKENPTlNUQU5UX0FMUEhBLAorCQkJICAgIE9ORV9NSU5V U19DT05TVEFOVF9BTFBIQV9USU1FU19TUkNfQUxQSEEpOgorCQlpZiAoIWhhc19wZXJfcGl4ZWxf YmxlbmRpbmcpCisJCQlzdGF0ZS0+cGVyX3BpeGVsX2FscGhhID0gRFJPUF9BTFBIQTsKKwkJZWxz ZQorCQkJc3RhdGUtPnBlcl9waXhlbF9hbHBoYSA9IFBSRV9NVUxUSVBMSUVEX0FMUEhBOworCQkv KlRCRCBic3BlYyBjaGVjayovCisJCXN0YXRlLT51c2VfcGxhbmVfYWxwaGEgPSB0cnVlOworCQli cmVhazsKKwkvKiBwbGFuZSBhbHBoYSwgbm9uIHByZS1tdWx0aXBsaWVkIGZiICovCisJY2FzZSBE Uk1fQkxFTkRfRlVOQyhDT05TVEFOVF9BTFBIQV9USU1FU19TUkNfQUxQSEEsCisJCQkgICAgT05F X01JTlVTX0NPTlNUQU5UX0FMUEhBX1RJTUVTX1NSQ19BTFBIQSk6CisJCWlmICghaGFzX3Blcl9w aXhlbF9ibGVuZGluZykKKwkJCXN0YXRlLT5wZXJfcGl4ZWxfYWxwaGEgPSBEUk9QX0FMUEhBOwor CQllbHNlCisJCQlzdGF0ZS0+cGVyX3BpeGVsX2FscGhhID0gTk9OX1BSRV9NVUxUSVBMSUVEX0FM UEhBOworCQlzdGF0ZS0+dXNlX3BsYW5lX2FscGhhID0gdHJ1ZTsKKwkJYnJlYWs7CisJLyogZHJv cCBwbGFuZSBhbHBoYSAqLworCWNhc2UgRFJNX0JMRU5EX0ZVTkMoWkVSTywgT05FKToKKwkJc3Rh dGUtPnVzZV9wbGFuZV9hbHBoYSA9IGZhbHNlOwogCQlicmVhazsKIAlkZWZhdWx0OgogCQlyZXR1 cm4gLUVJTlZBTDsKQEAgLTE0MjI4LDYgKzE0MjY5LDEyIEBAIHZvaWQgaW50ZWxfcGxhbmVfYWRk X2JsZW5kX3Byb3BlcnRpZXMoc3RydWN0IGludGVsX3BsYW5lICpwbGFuZSkKIAlpZiAocHJvcCkK IAkJZHJtX29iamVjdF9hdHRhY2hfcHJvcGVydHkoJnBsYW5lLT5iYXNlLmJhc2UsIHByb3AsCiAJ CQkJCSAgIERSTV9CTEVORF9GVU5DKEFVVE8sIEFVVE8pKTsKKworCXByb3AgPSBkZXYtPm1vZGVf Y29uZmlnLnByb3BfYmxlbmRfY29sb3I7CisJaWYgKHByb3ApCisJCWRybV9vYmplY3RfYXR0YWNo X3Byb3BlcnR5KCZwbGFuZS0+YmFzZS5iYXNlLCBwcm9wLAorCQkJCQkgICBEUk1fTU9ERV9DT0xP UigweGZmZmYsIDB4ZmZmZiwKKwkJCQkJCQkgIDB4ZmZmZiwgMHhmZmZmKSk7CiB9CiAKIHN0YXRp YyBpbnQKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKaW5kZXggMTkzOTQ0MC4uZDNjYjM2ZiAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKQEAgLTM0MSw2ICszNDEsOSBAQCBzdHJ1Y3QgaW50ZWxf cGxhbmVfc3RhdGUgewogCS8qIHBlciBwaXhlbCBhbHBoYSBjaGFubmVsIHN0YXRlICovCiAJZW51 bSBwZXJfcGl4ZWxfYWxwaGFfc3RhdGUgcGVyX3BpeGVsX2FscGhhOwogCisJLyogdXNlIHBlci1w bGFuZSBhbHBoYSAqLworCWJvb2wgdXNlX3BsYW5lX2FscGhhOworCiAJLyogYXN5bmMgZmxpcCBy ZWxhdGVkIHN0cnVjdHVyZXMgKi8KIAlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKndhaXRf cmVxOwogfTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Nwcml0ZS5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKaW5kZXggOTQ3NGI3Ni4uODUx YzA5YSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKQEAgLTIyNiwxMCArMjI2LDE1 IEBAIHNrbF91cGRhdGVfcGxhbmUoc3RydWN0IGRybV9wbGFuZSAqZHJtX3BsYW5lLAogCWNydGNf dy0tOwogCWNydGNfaC0tOwogCisJSTkxNV9XUklURShQTEFORV9LRVlNQVgocGlwZSwgcGxhbmUp LAorCQkgICAoRFJNX01PREVfQ09MT1JfQUxQSEFfOChwbGFuZV9zdGF0ZS0+YmFzZS5ibGVuZF9t b2RlLmNvbG9yKQorCQkJPDwgMjQpIHwgKGtleS0+bWF4X3ZhbHVlICYgMHgwMGZmZmZmZikpOwor CUk5MTVfV1JJVEUoUExBTkVfS0VZTVNLKHBpcGUsIHBsYW5lKSwKKwkJICAgKHBsYW5lX3N0YXRl LT51c2VfcGxhbmVfYWxwaGEgPDwgMzEpIHwKKwkJICAgKGtleS0+Y2hhbm5lbF9tYXNrICYgR0VO TUFTSygwLCAyNikpKTsKKwogCWlmIChrZXktPmZsYWdzKSB7CiAJCUk5MTVfV1JJVEUoUExBTkVf S0VZVkFMKHBpcGUsIHBsYW5lKSwga2V5LT5taW5fdmFsdWUpOwotCQlJOTE1X1dSSVRFKFBMQU5F X0tFWU1BWChwaXBlLCBwbGFuZSksIGtleS0+bWF4X3ZhbHVlKTsKLQkJSTkxNV9XUklURShQTEFO RV9LRVlNU0socGlwZSwgcGxhbmUpLCBrZXktPmNoYW5uZWxfbWFzayk7CiAJfQogCiAJaWYgKGtl eS0+ZmxhZ3MgJiBJOTE1X1NFVF9DT0xPUktFWV9ERVNUSU5BVElPTikKLS0gCjEuOS4xCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFp bGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK