From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vidya Srinivas Subject: [PATCH v13 05/17] drm/i915/skl+: NV12 related changes for WM Date: Fri, 9 Mar 2018 14:18:52 +0530 Message-ID: <1520585344-10094-6-git-send-email-vidya.srinivas@intel.com> References: <1520585344-10094-1-git-send-email-vidya.srinivas@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 ESMTPS id B6C1B6EB7B for ; Fri, 9 Mar 2018 08:51:36 +0000 (UTC) In-Reply-To: <1520585344-10094-1-git-send-email-vidya.srinivas@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: ville.syrjala@intel.com, Vidya Srinivas , maarten.lankhorst@intel.com List-Id: intel-gfx@lists.freedesktop.org RnJvbTogTWFoZXNoIEt1bWFyIDxtYWhlc2gxLmt1bWFyQGludGVsLmNvbT4KCk5WMTIgcmVxdWly ZXMgV00gY2FsY3VsYXRpb24gZm9yIFVWIHBsYW5lIGFzIHdlbGwuClVWIHBsYW5lIFdNIHNob3Vs ZCBhbHNvIGZ1bGZpbGwgYWxsIHRoZSBXTSByZWxhdGVkIHJlc3RyaWN0aW9ucy4KCnYyOiBBZGRy ZXNzZWQgcmV2aWV3IGNvbW1lbnRzIGZyb20gU2hhc2hhbmsgU2hhcm1hLgoKdjM6IEFkZHJlc3Nl ZCByZXZpZXcgY29tbWVudHMgZnJvbSBTaGFzaGFuayBTaGFybWEKQ2hhbmdlZCBwbGFuZV9udW0g dG8gcGxhbmVfaWQgaW4gc2tsX2NvbXB1dGVfcGxhbmVfd21fcGFyYW1zCmFuZCBza2xfY29tcHV0 ZV9wbGFuZV93bS4KQWRkaW5nIHJldmlld2VkIGJ5IHRhZyBmcm9tIFNoYXNoYW5rIFNoYXJtYQoK UmV2aWV3ZWQtYnk6IFNoYXNoYW5rIFNoYXJtYSA8c2hhc2hhbmsuc2hhcm1hQGludGVsLmNvbT4K U2lnbmVkLW9mZi1ieTogTWFoZXNoIEt1bWFyIDxtYWhlc2gxLmt1bWFyQGludGVsLmNvbT4KU2ln bmVkLW9mZi1ieTogVmlkeWEgU3Jpbml2YXMgPHZpZHlhLnNyaW5pdmFzQGludGVsLmNvbT4KLS0t CiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICB8ICAxICsKIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rydi5oIHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0u YyAgfCA1MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tCiAzIGZpbGVz IGNoYW5nZWQsIDQ0IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZHJ2LmgKaW5kZXggNWFiYmQwNC4uMTE1NTFmNyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5o CkBAIC0xNDcxLDYgKzE0NzEsNyBAQCBzdHJ1Y3Qgc2tsX3dtX2xldmVsIHsKIHN0cnVjdCBza2xf d21fcGFyYW1zIHsKIAlib29sIHhfdGlsZWQsIHlfdGlsZWQ7CiAJYm9vbCByY19zdXJmYWNlOwor CWJvb2wgaXNfcGxhbmFyOwogCXVpbnQzMl90IHdpZHRoOwogCXVpbnQ4X3QgY3BwOwogCXVpbnQz Ml90IHBsYW5lX3BpeGVsX3JhdGU7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCmluZGV4IGRmZmU4 NzUuLmU1YzE3ZjUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5o CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCkBAIC01OTgsNiArNTk4LDcg QEAgc3RydWN0IGludGVsX3BpcGVfd20gewogCiBzdHJ1Y3Qgc2tsX3BsYW5lX3dtIHsKIAlzdHJ1 Y3Qgc2tsX3dtX2xldmVsIHdtWzhdOworCXN0cnVjdCBza2xfd21fbGV2ZWwgdXZfd21bOF07CiAJ c3RydWN0IHNrbF93bV9sZXZlbCB0cmFuc193bTsKIAlib29sIGlzX3BsYW5hcjsKIH07CmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfcG0uYwppbmRleCBhZTkxYzdhLi44YzYxMmFlIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX3BtLmMKQEAgLTQ0MTksNyArNDQxOSw3IEBAIHN0YXRpYyBpbnQKIHNrbF9jb21wdXRlX3Bs YW5lX3dtX3BhcmFtcyhjb25zdCBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJ CQkgICAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNzdGF0ZSwKIAkJCSAgICBjb25zdCBzdHJ1 Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKmludGVsX3BzdGF0ZSwKLQkJCSAgICBzdHJ1Y3Qgc2tsX3dt X3BhcmFtcyAqd3ApCisJCQkgICAgc3RydWN0IHNrbF93bV9wYXJhbXMgKndwLCBpbnQgcGxhbmVf aWQpCiB7CiAJc3RydWN0IGludGVsX3BsYW5lICpwbGFuZSA9IHRvX2ludGVsX3BsYW5lKGludGVs X3BzdGF0ZS0+YmFzZS5wbGFuZSk7CiAJY29uc3Qgc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqcHN0 YXRlID0gJmludGVsX3BzdGF0ZS0+YmFzZTsKQEAgLTQ0MzIsNiArNDQzMiwxMiBAQCBza2xfY29t cHV0ZV9wbGFuZV93bV9wYXJhbXMoY29uc3Qgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2LAogCWlmICghaW50ZWxfd21fcGxhbmVfdmlzaWJsZShjc3RhdGUsIGludGVsX3BzdGF0ZSkp CiAJCXJldHVybiAwOwogCisJLyogb25seSBOVjEyIGZvcm1hdCBoYXMgdHdvIHBsYW5lcyAqLwor CWlmIChwbGFuZV9pZCA9PSAxICYmIGZiLT5mb3JtYXQtPmZvcm1hdCAhPSBEUk1fRk9STUFUX05W MTIpIHsKKwkJRFJNX0RFQlVHX0tNUygiTm9uIE5WMTIgZm9ybWF0IGhhdmUgc2luZ2xlIHBsYW5l XG4iKTsKKwkJcmV0dXJuIC1FSU5WQUw7CisJfQorCiAJd3AtPnlfdGlsZWQgPSBmYi0+bW9kaWZp ZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lfVElMRUQgfHwKIAkJICAgICAgZmItPm1vZGlmaWVyID09 IEk5MTVfRk9STUFUX01PRF9ZZl9USUxFRCB8fAogCQkgICAgICBmYi0+bW9kaWZpZXIgPT0gSTkx NV9GT1JNQVRfTU9EX1lfVElMRURfQ0NTIHx8CkBAIC00NDM5LDYgKzQ0NDUsNyBAQCBza2xfY29t cHV0ZV9wbGFuZV93bV9wYXJhbXMoY29uc3Qgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2LAogCXdwLT54X3RpbGVkID0gZmItPm1vZGlmaWVyID09IEk5MTVfRk9STUFUX01PRF9YX1RJ TEVEOwogCXdwLT5yY19zdXJmYWNlID0gZmItPm1vZGlmaWVyID09IEk5MTVfRk9STUFUX01PRF9Z X1RJTEVEX0NDUyB8fAogCQkJIGZiLT5tb2RpZmllciA9PSBJOTE1X0ZPUk1BVF9NT0RfWWZfVElM RURfQ0NTOworCXdwLT5pc19wbGFuYXIgPSBmYi0+Zm9ybWF0LT5mb3JtYXQgPT0gRFJNX0ZPUk1B VF9OVjEyOwogCiAJaWYgKHBsYW5lLT5pZCA9PSBQTEFORV9DVVJTT1IpIHsKIAkJd3AtPndpZHRo ID0gaW50ZWxfcHN0YXRlLT5iYXNlLmNydGNfdzsKQEAgLTQ0NTEsNyArNDQ1OCwxMCBAQCBza2xf Y29tcHV0ZV9wbGFuZV93bV9wYXJhbXMoY29uc3Qgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2LAogCQl3cC0+d2lkdGggPSBkcm1fcmVjdF93aWR0aCgmaW50ZWxfcHN0YXRlLT5iYXNl LnNyYykgPj4gMTY7CiAJfQogCi0Jd3AtPmNwcCA9IGZiLT5mb3JtYXQtPmNwcFswXTsKKwlpZiAo cGxhbmVfaWQgPT0gMSAmJiB3cC0+aXNfcGxhbmFyKQorCQl3cC0+d2lkdGggLz0gMjsKKworCXdw LT5jcHAgPSBmYi0+Zm9ybWF0LT5jcHBbcGxhbmVfaWRdOwogCXdwLT5wbGFuZV9waXhlbF9yYXRl ID0gc2tsX2FkanVzdGVkX3BsYW5lX3BpeGVsX3JhdGUoY3N0YXRlLAogCQkJCQkJCSAgICAgaW50 ZWxfcHN0YXRlKTsKIApAQCAtNDY0OSw3ICs0NjU5LDggQEAgc2tsX2NvbXB1dGVfd21fbGV2ZWxz KGNvbnN0IHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAkJICAgICAgc3RydWN0 IGludGVsX2NydGNfc3RhdGUgKmNzdGF0ZSwKIAkJICAgICAgY29uc3Qgc3RydWN0IGludGVsX3Bs YW5lX3N0YXRlICppbnRlbF9wc3RhdGUsCiAJCSAgICAgIGNvbnN0IHN0cnVjdCBza2xfd21fcGFy YW1zICp3bV9wYXJhbXMsCi0JCSAgICAgIHN0cnVjdCBza2xfcGxhbmVfd20gKndtKQorCQkgICAg ICBzdHJ1Y3Qgc2tsX3BsYW5lX3dtICp3bSwKKwkJICAgICAgaW50IHBsYW5lX2lkKQogewogCXN0 cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0Yyhjc3RhdGUtPmJhc2Uu Y3J0Yyk7CiAJc3RydWN0IGRybV9wbGFuZSAqcGxhbmUgPSBpbnRlbF9wc3RhdGUtPmJhc2UucGxh bmU7CkBAIC00NjU3LDE1ICs0NjY4LDE5IEBAIHNrbF9jb21wdXRlX3dtX2xldmVscyhjb25zdCBz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJdWludDE2X3QgZGRiX2Jsb2NrczsK IAllbnVtIHBpcGUgcGlwZSA9IGludGVsX2NydGMtPnBpcGU7CiAJaW50IGxldmVsLCBtYXhfbGV2 ZWwgPSBpbGtfd21fbWF4X2xldmVsKGRldl9wcml2KTsKKwllbnVtIHBsYW5lX2lkIGludGVsX3Bs YW5lX2lkID0gaW50ZWxfcGxhbmUtPmlkOwogCWludCByZXQ7CiAKIAlpZiAoV0FSTl9PTighaW50 ZWxfcHN0YXRlLT5iYXNlLmZiKSkKIAkJcmV0dXJuIC1FSU5WQUw7CiAKLQlkZGJfYmxvY2tzID0g c2tsX2RkYl9lbnRyeV9zaXplKCZkZGItPnBsYW5lW3BpcGVdW2ludGVsX3BsYW5lLT5pZF0pOwor CWRkYl9ibG9ja3MgPSBwbGFuZV9pZCA/CisJCSAgICAgc2tsX2RkYl9lbnRyeV9zaXplKCZkZGIt PnV2X3BsYW5lW3BpcGVdW2ludGVsX3BsYW5lX2lkXSkgOgorCQkgICAgIHNrbF9kZGJfZW50cnlf c2l6ZSgmZGRiLT5wbGFuZVtwaXBlXVtpbnRlbF9wbGFuZV9pZF0pOwogCiAJZm9yIChsZXZlbCA9 IDA7IGxldmVsIDw9IG1heF9sZXZlbDsgbGV2ZWwrKykgewotCQlzdHJ1Y3Qgc2tsX3dtX2xldmVs ICpyZXN1bHQgPSAmd20tPndtW2xldmVsXTsKKwkJc3RydWN0IHNrbF93bV9sZXZlbCAqcmVzdWx0 ID0gcGxhbmVfaWQgPyAmd20tPnV2X3dtW2xldmVsXSA6CisJCQkJCQkJICAmd20tPndtW2xldmVs XTsKIAogCQlyZXQgPSBza2xfY29tcHV0ZV9wbGFuZV93bShkZXZfcHJpdiwKIAkJCQkJICAgY3N0 YXRlLApAQCAtNDc5MiwyMCArNDgwNywzOSBAQCBzdGF0aWMgaW50IHNrbF9idWlsZF9waXBlX3dt KHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjc3RhdGUsCiAKIAkJd20gPSAmcGlwZV93bS0+cGxh bmVzW3BsYW5lX2lkXTsKIAkJZGRiX2Jsb2NrcyA9IHNrbF9kZGJfZW50cnlfc2l6ZSgmZGRiLT5w bGFuZVtwaXBlXVtwbGFuZV9pZF0pOwotCQltZW1zZXQoJndtX3BhcmFtcywgMCwgc2l6ZW9mKHN0 cnVjdCBza2xfd21fcGFyYW1zKSk7CiAKIAkJcmV0ID0gc2tsX2NvbXB1dGVfcGxhbmVfd21fcGFy YW1zKGRldl9wcml2LCBjc3RhdGUsCi0JCQkJCQkgIGludGVsX3BzdGF0ZSwgJndtX3BhcmFtcyk7 CisJCQkJCQkgIGludGVsX3BzdGF0ZSwgJndtX3BhcmFtcywgMCk7CiAJCWlmIChyZXQpCiAJCQly ZXR1cm4gcmV0OwogCiAJCXJldCA9IHNrbF9jb21wdXRlX3dtX2xldmVscyhkZXZfcHJpdiwgZGRi LCBjc3RhdGUsCi0JCQkJCSAgICBpbnRlbF9wc3RhdGUsICZ3bV9wYXJhbXMsIHdtKTsKKwkJCQkJ ICAgIGludGVsX3BzdGF0ZSwgJndtX3BhcmFtcywgd20sIDApOwogCQlpZiAocmV0KQogCQkJcmV0 dXJuIHJldDsKKwogCQlza2xfY29tcHV0ZV90cmFuc2l0aW9uX3dtKGNzdGF0ZSwgJndtX3BhcmFt cywgJndtLT53bVswXSwKIAkJCQkJICBkZGJfYmxvY2tzLCAmd20tPnRyYW5zX3dtKTsKKworCQkv KiB1diBwbGFuZSB3YXRlcm1hcmtzIG11c3QgYWxzbyBiZSB2YWxpZGF0ZWQgZm9yIE5WMTIvUGxh bmFyICovCisJCWlmICh3bV9wYXJhbXMuaXNfcGxhbmFyKSB7CisJCQltZW1zZXQoJndtX3BhcmFt cywgMCwgc2l6ZW9mKHN0cnVjdCBza2xfd21fcGFyYW1zKSk7CisJCQl3bS0+aXNfcGxhbmFyID0g dHJ1ZTsKKworCQkJcmV0ID0gc2tsX2NvbXB1dGVfcGxhbmVfd21fcGFyYW1zKGRldl9wcml2LCBj c3RhdGUsCisJCQkJCQkJICBpbnRlbF9wc3RhdGUsCisJCQkJCQkJICAmd21fcGFyYW1zLCAxKTsK KwkJCWlmIChyZXQpCisJCQkJcmV0dXJuIHJldDsKKworCQkJcmV0ID0gc2tsX2NvbXB1dGVfd21f bGV2ZWxzKGRldl9wcml2LCBkZGIsIGNzdGF0ZSwKKwkJCQkJCSAgICBpbnRlbF9wc3RhdGUsICZ3 bV9wYXJhbXMsCisJCQkJCQkgICAgd20sIDEpOworCQkJaWYgKHJldCkKKwkJCQlyZXR1cm4gcmV0 OworCQl9CiAJfQorCiAJcGlwZV93bS0+bGluZXRpbWUgPSBza2xfY29tcHV0ZV9saW5ldGltZV93 bShjc3RhdGUpOwogCiAJcmV0dXJuIDA7Ci0tIAoyLjcuNAoKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1n ZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21h aWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==