From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville Syrjala Subject: [PATCH 5/8] drm/i915: Add CCS capability for sprites Date: Fri, 22 Dec 2017 21:22:28 +0200 Message-ID: <20171222192231.17981-6-ville.syrjala@linux.intel.com> References: <20171222192231.17981-1-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6C0786E784 for ; Fri, 22 Dec 2017 19:22:53 +0000 (UTC) In-Reply-To: <20171222192231.17981-1-ville.syrjala@linux.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: Ben Widawsky , Daniel Stone List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCkFs bG93IHNwcml0ZXMgdG8gc2NhbiBvdXQgY29tcHJlc3NlZCBmcmFtZWJ1ZmZlcnMuCgpTaW5jZSBk aWZmZXJlbnQgcGxhdGZvcm1zIGhhdmUgYSBkaWZmZXJlbnQgc2V0IG9mIHBsYW5lcyB0aGF0CnN1 cHBvcnQgQ0NTIGxldCdzIGFkZCBhIHNtYWxsIGhlbHBlciB0byBkZXRlcm1pbmUgd2hldGhlciBh CnNwZWNpZmljIHBsYW5lIHN1cHBvcnRzIENDUyBvciBub3QuIEN1cnJlbnRseSB0aGF0IGluZm9y bWF0aW9uCmlzIHNwcmVhZCBhcm91bmQgaW4gbWFueSBwbGFjZXMsIGFuZCBub3QgYWxsIHRoZSBw aWVjZXMgb2YKY29kZSBldmVuIGFncmVlIHdpdGggZWFjaCBvdGhlci4KCkluIGFkZGl0aW9uIHRv IGFsbG93aW5nIHNwcml0ZXMgdG8gc2NhbiBvdXQgY29tcHJlc3NlZCBmYnMsCnRoZSBvdGhlciBm aXggaGVyZSBpcyB0aGF0IHdlIHN0b3AgcmVqZWN0aW5nIHRoZW0gb24gcGlwZSBDCm9uIENOTC4K CkNjOiBCZW4gV2lkYXdza3kgPGJlbkBid2lkYXdzay5uZXQ+CkNjOiBKYXNvbiBFa3N0cmFuZCA8 amFzb25Aamxla3N0cmFuZC5uZXQ+CkNjOiBEYW5pZWwgU3RvbmUgPGRhbmllbHNAY29sbGFib3Jh LmNvbT4KU2lnbmVkLW9mZi1ieTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4 LmludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgfCAy NSArKysrLS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oICAg ICB8ICAyICsrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuYyAgfCA1MCArKysr KysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgNDQgaW5z ZXJ0aW9ucygrKSwgMzMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxh eS5jCmluZGV4IDBkZDM3Yzg1NDgyMC4uZGYyOWUzM2EyMzU1IDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGlzcGxheS5jCkBAIC0zMDM0LDYgKzMwMzQsNyBAQCBzdGF0aWMgaW50IHNrbF9jaGVj a19udjEyX2F1eF9zdXJmYWNlKHN0cnVjdCBpbnRlbF9wbGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGUp CiBzdGF0aWMgaW50IHNrbF9jaGVja19jY3NfYXV4X3N1cmZhY2Uoc3RydWN0IGludGVsX3BsYW5l X3N0YXRlICpwbGFuZV9zdGF0ZSkKIHsKIAlzdHJ1Y3QgaW50ZWxfcGxhbmUgKnBsYW5lID0gdG9f aW50ZWxfcGxhbmUocGxhbmVfc3RhdGUtPmJhc2UucGxhbmUpOworCXN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUocGxhbmUtPmJhc2UuZGV2KTsKIAlzdHJ1Y3QgaW50 ZWxfY3J0YyAqY3J0YyA9IHRvX2ludGVsX2NydGMocGxhbmVfc3RhdGUtPmJhc2UuY3J0Yyk7CiAJ Y29uc3Qgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIgPSBwbGFuZV9zdGF0ZS0+YmFzZS5mYjsK IAlpbnQgc3JjX3ggPSBwbGFuZV9zdGF0ZS0+YmFzZS5zcmMueDEgPj4gMTY7CkBAIC0zMDQ0LDE3 ICszMDQ1LDggQEAgc3RhdGljIGludCBza2xfY2hlY2tfY2NzX2F1eF9zdXJmYWNlKHN0cnVjdCBp bnRlbF9wbGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGUpCiAJaW50IHkgPSBzcmNfeSAvIHZzdWI7CiAJ dTMyIG9mZnNldDsKIAotCXN3aXRjaCAocGxhbmUtPmlkKSB7Ci0JY2FzZSBQTEFORV9QUklNQVJZ OgotCWNhc2UgUExBTkVfU1BSSVRFMDoKLQkJYnJlYWs7Ci0JZGVmYXVsdDoKLQkJRFJNX0RFQlVH X0tNUygiUkMgc3VwcG9ydCBvbmx5IG9uIHBsYW5lIDEgYW5kIDJcbiIpOwotCQlyZXR1cm4gLUVJ TlZBTDsKLQl9Ci0KLQlpZiAoY3J0Yy0+cGlwZSA9PSBQSVBFX0MpIHsKLQkJRFJNX0RFQlVHX0tN UygiTm8gUkMgc3VwcG9ydCBvbiBwaXBlIENcbiIpOworCWlmICghc2tsX3BsYW5lX2hhc19jY3Mo ZGV2X3ByaXYsIGNydGMtPnBpcGUsIHBsYW5lLT5pZCkpIHsKKwkJRFJNX0RFQlVHX0tNUygiTm8g UkMgc3VwcG9ydCBvbiAlc1xuIiwgcGxhbmUtPmJhc2UubmFtZSk7CiAJCXJldHVybiAtRUlOVkFM OwogCX0KIApAQCAtMTMxNjEsMTggKzEzMTUzLDExIEBAIGludGVsX3ByaW1hcnlfcGxhbmVfY3Jl YXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgZW51bSBwaXBlIHBpcGUpCiAJ cHJpbWFyeS0+ZnJvbnRidWZmZXJfYml0ID0gSU5URUxfRlJPTlRCVUZGRVJfUFJJTUFSWShwaXBl KTsKIAlwcmltYXJ5LT5jaGVja19wbGFuZSA9IGludGVsX2NoZWNrX3ByaW1hcnlfcGxhbmU7CiAK LQlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+PSAxMCkgeworCWlmIChJTlRFTF9HRU4oZGV2X3By aXYpID49IDkpIHsKIAkJaW50ZWxfcHJpbWFyeV9mb3JtYXRzID0gc2tsX3ByaW1hcnlfZm9ybWF0 czsKIAkJbnVtX2Zvcm1hdHMgPSBBUlJBWV9TSVpFKHNrbF9wcmltYXJ5X2Zvcm1hdHMpOwotCQlt b2RpZmllcnMgPSBza2xfZm9ybWF0X21vZGlmaWVyc19jY3M7CiAKLQkJcHJpbWFyeS0+dXBkYXRl X3BsYW5lID0gc2tsX3VwZGF0ZV9wbGFuZTsKLQkJcHJpbWFyeS0+ZGlzYWJsZV9wbGFuZSA9IHNr bF9kaXNhYmxlX3BsYW5lOwotCQlwcmltYXJ5LT5nZXRfaHdfc3RhdGUgPSBza2xfcGxhbmVfZ2V0 X2h3X3N0YXRlOwotCX0gZWxzZSBpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+PSA5KSB7Ci0JCWlu dGVsX3ByaW1hcnlfZm9ybWF0cyA9IHNrbF9wcmltYXJ5X2Zvcm1hdHM7Ci0JCW51bV9mb3JtYXRz ID0gQVJSQVlfU0laRShza2xfcHJpbWFyeV9mb3JtYXRzKTsKLQkJaWYgKHBpcGUgPCBQSVBFX0Mp CisJCWlmIChza2xfcGxhbmVfaGFzX2NjcyhkZXZfcHJpdiwgcGlwZSwgUExBTkVfUFJJTUFSWSkp CiAJCQltb2RpZmllcnMgPSBza2xfZm9ybWF0X21vZGlmaWVyc19jY3M7CiAJCWVsc2UKIAkJCW1v ZGlmaWVycyA9IHNrbF9mb3JtYXRfbW9kaWZpZXJzX25vY2NzOwpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k cnYuaAppbmRleCAzMGY3OTFmODlkNjQuLjA1OWNhYmRjYzAyNiAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZHJ2LmgKQEAgLTE5MzIsNiArMTkzMiw4IEBAIHZvaWQgc2tsX3VwZGF0ZV9wbGFuZShzdHJ1 Y3QgaW50ZWxfcGxhbmUgKnBsYW5lLAogCQkgICAgICBjb25zdCBzdHJ1Y3QgaW50ZWxfcGxhbmVf c3RhdGUgKnBsYW5lX3N0YXRlKTsKIHZvaWQgc2tsX2Rpc2FibGVfcGxhbmUoc3RydWN0IGludGVs X3BsYW5lICpwbGFuZSwgc3RydWN0IGludGVsX2NydGMgKmNydGMpOwogYm9vbCBza2xfcGxhbmVf Z2V0X2h3X3N0YXRlKHN0cnVjdCBpbnRlbF9wbGFuZSAqcGxhbmUpOworYm9vbCBza2xfcGxhbmVf aGFzX2NjcyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCisJCSAgICAgICBlbnVt IHBpcGUgcGlwZSwgZW51bSBwbGFuZV9pZCBwbGFuZV9pZCk7CiAKIC8qIGludGVsX3R2LmMgKi8K IHZvaWQgaW50ZWxfdHZfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuYwppbmRleCAzNDliZTgxMzRjNzYuLmNiMDZhY2Zm MjgzZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKQEAgLTExNjEsNyArMTE2MSwx NyBAQCBzdGF0aWMgdWludDMyX3Qgc2tsX3BsYW5lX2Zvcm1hdHNbXSA9IHsKIAlEUk1fRk9STUFU X1ZZVVksCiB9OwogCi1zdGF0aWMgY29uc3QgdWludDY0X3Qgc2tsX3BsYW5lX2Zvcm1hdF9tb2Rp ZmllcnNbXSA9IHsKK3N0YXRpYyBjb25zdCB1aW50NjRfdCBza2xfcGxhbmVfZm9ybWF0X21vZGlm aWVyc19ub2Njc1tdID0geworCUk5MTVfRk9STUFUX01PRF9ZZl9USUxFRCwKKwlJOTE1X0ZPUk1B VF9NT0RfWV9USUxFRCwKKwlJOTE1X0ZPUk1BVF9NT0RfWF9USUxFRCwKKwlEUk1fRk9STUFUX01P RF9MSU5FQVIsCisJRFJNX0ZPUk1BVF9NT0RfSU5WQUxJRAorfTsKKworc3RhdGljIGNvbnN0IHVp bnQ2NF90IHNrbF9wbGFuZV9mb3JtYXRfbW9kaWZpZXJzX2Njc1tdID0geworCUk5MTVfRk9STUFU X01PRF9ZZl9USUxFRF9DQ1MsCisJSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfQ0NTLAogCUk5MTVf Rk9STUFUX01PRF9ZZl9USUxFRCwKIAlJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRCwKIAlJOTE1X0ZP Uk1BVF9NT0RfWF9USUxFRCwKQEAgLTEyMzQsNiArMTI0NCwxMCBAQCBzdGF0aWMgYm9vbCBza2xf bW9kX3N1cHBvcnRlZCh1aW50MzJfdCBmb3JtYXQsIHVpbnQ2NF90IG1vZGlmaWVyKQogCWNhc2Ug RFJNX0ZPUk1BVF9YQkdSODg4ODoKIAljYXNlIERSTV9GT1JNQVRfQVJHQjg4ODg6CiAJY2FzZSBE Uk1fRk9STUFUX0FCR1I4ODg4OgorCQlpZiAobW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lm X1RJTEVEX0NDUyB8fAorCQkgICAgbW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lfVElMRURf Q0NTKQorCQkJcmV0dXJuIHRydWU7CisJCS8qIGZhbGwgdGhyb3VnaCAqLwogCWNhc2UgRFJNX0ZP Uk1BVF9SR0I1NjU6CiAJY2FzZSBEUk1fRk9STUFUX1hSR0IyMTAxMDEwOgogCWNhc2UgRFJNX0ZP Uk1BVF9YQkdSMjEwMTAxMDoKQEAgLTEyODksNiArMTMwMywyMyBAQCBzdGF0aWMgY29uc3Qgc3Ry dWN0IGRybV9wbGFuZV9mdW5jcyBpbnRlbF9zcHJpdGVfcGxhbmVfZnVuY3MgPSB7CiAgICAgICAg IC5mb3JtYXRfbW9kX3N1cHBvcnRlZCA9IGludGVsX3Nwcml0ZV9wbGFuZV9mb3JtYXRfbW9kX3N1 cHBvcnRlZCwKIH07CiAKK2Jvb2wgc2tsX3BsYW5lX2hhc19jY3Moc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2LAorCQkgICAgICAgZW51bSBwaXBlIHBpcGUsIGVudW0gcGxhbmVfaWQg cGxhbmVfaWQpCit7CisJaWYgKHBsYW5lX2lkID09IFBMQU5FX0NVUlNPUikKKwkJcmV0dXJuIGZh bHNlOworCisJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gMTApCisJCXJldHVybiB0cnVlOwor CisJaWYgKElTX0dFTUlOSUxBS0UoZGV2X3ByaXYpKQorCQlyZXR1cm4gcGlwZSAhPSBQSVBFX0M7 CisKKwlyZXR1cm4gcGlwZSAhPSBQSVBFX0MgJiYKKwkJKHBsYW5lX2lkID09IFBMQU5FX1BSSU1B UlkgfHwKKwkJIHBsYW5lX2lkID09IFBMQU5FX1NQUklURTApOworfQorCiBzdHJ1Y3QgaW50ZWxf cGxhbmUgKgogaW50ZWxfc3ByaXRlX3BsYW5lX2NyZWF0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYsCiAJCQkgIGVudW0gcGlwZSBwaXBlLCBpbnQgcGxhbmUpCkBAIC0xMzE1LDcg KzEzNDYsNyBAQCBpbnRlbF9zcHJpdGVfcGxhbmVfY3JlYXRlKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiwKIAl9CiAJaW50ZWxfcGxhbmUtPmJhc2Uuc3RhdGUgPSAmc3RhdGUtPmJh c2U7CiAKLQlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+PSAxMCkgeworCWlmIChJTlRFTF9HRU4o ZGV2X3ByaXYpID49IDkpIHsKIAkJaW50ZWxfcGxhbmUtPmNhbl9zY2FsZSA9IHRydWU7CiAJCXN0 YXRlLT5zY2FsZXJfaWQgPSAtMTsKIApAQCAtMTMyNSwxOCArMTM1NiwxMSBAQCBpbnRlbF9zcHJp dGVfcGxhbmVfY3JlYXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAogCQlw bGFuZV9mb3JtYXRzID0gc2tsX3BsYW5lX2Zvcm1hdHM7CiAJCW51bV9wbGFuZV9mb3JtYXRzID0g QVJSQVlfU0laRShza2xfcGxhbmVfZm9ybWF0cyk7Ci0JCW1vZGlmaWVycyA9IHNrbF9wbGFuZV9m b3JtYXRfbW9kaWZpZXJzOwotCX0gZWxzZSBpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+PSA5KSB7 Ci0JCWludGVsX3BsYW5lLT5jYW5fc2NhbGUgPSB0cnVlOwotCQlzdGF0ZS0+c2NhbGVyX2lkID0g LTE7CiAKLQkJaW50ZWxfcGxhbmUtPnVwZGF0ZV9wbGFuZSA9IHNrbF91cGRhdGVfcGxhbmU7Ci0J CWludGVsX3BsYW5lLT5kaXNhYmxlX3BsYW5lID0gc2tsX2Rpc2FibGVfcGxhbmU7Ci0JCWludGVs X3BsYW5lLT5nZXRfaHdfc3RhdGUgPSBza2xfcGxhbmVfZ2V0X2h3X3N0YXRlOwotCi0JCXBsYW5l X2Zvcm1hdHMgPSBza2xfcGxhbmVfZm9ybWF0czsKLQkJbnVtX3BsYW5lX2Zvcm1hdHMgPSBBUlJB WV9TSVpFKHNrbF9wbGFuZV9mb3JtYXRzKTsKLQkJbW9kaWZpZXJzID0gc2tsX3BsYW5lX2Zvcm1h dF9tb2RpZmllcnM7CisJCWlmIChza2xfcGxhbmVfaGFzX2NjcyhkZXZfcHJpdiwgcGlwZSwgUExB TkVfU1BSSVRFMCArIHBsYW5lKSkKKwkJCW1vZGlmaWVycyA9IHNrbF9wbGFuZV9mb3JtYXRfbW9k aWZpZXJzX2NjczsKKwkJZWxzZQorCQkJbW9kaWZpZXJzID0gc2tsX3BsYW5lX2Zvcm1hdF9tb2Rp ZmllcnNfbm9jY3M7CiAJfSBlbHNlIGlmIChJU19WQUxMRVlWSUVXKGRldl9wcml2KSB8fCBJU19D SEVSUllWSUVXKGRldl9wcml2KSkgewogCQlpbnRlbF9wbGFuZS0+Y2FuX3NjYWxlID0gZmFsc2U7 CiAJCWludGVsX3BsYW5lLT5tYXhfZG93bnNjYWxlID0gMTsKLS0gCjIuMTMuNgoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcg bGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==