From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ben Widawsky Subject: [PATCH 6/6] [v4] drm/i915: Add support for CCS modifiers Date: Tue, 1 Aug 2017 09:58:17 -0700 Message-ID: <20170801165817.7063-6-ben@bwidawsk.net> References: <20170801165817.7063-1-ben@bwidawsk.net> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170801165817.7063-1-ben@bwidawsk.net> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Intel GFX , DRI Development Cc: Ben Widawsky , Daniel Stone List-Id: dri-devel@lists.freedesktop.org djI6CiAgLSBTdXBwb3J0IHNwcml0ZSBwbGFuZS4KICAtIFN1cHBvcnQgcGlwZSBDL0QgbGltaXRh dGlvbiBvbiBHRU45LgoKdjM6CiAgLSBSZW5hbWUgc3RydWN0dXJlIChWaWxsZSkKICAtIEhhbmRs ZSBHTEsgKFZpbGxlKQoKdjQ6CiAgLSBGaXggUElQRV9DIGNoZWNrLCBpbnRyb2R1Y2VkIGluIHYy IChEYW5pZWwpCiAgLSBXaGl0ZXNwYWNlIGZpeCAoRGFuaWVsKQoKQ2M6IERhbmllbCBTdG9uZSA8 ZGFuaWVsc0Bjb2xsYWJvcmEuY29tPgpDYzogS3Jpc3RpYW4gSMO4Z3NiZXJnIDxrcmhAYml0cGxh bmV0Lm5ldD4KU2lnbmVkLW9mZi1ieTogQmVuIFdpZGF3c2t5IDxiZW5AYndpZGF3c2submV0Pgot LS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8IDMwICsrKysrKysrKysr KysrKysrKysrKysrKysrKy0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMg IHwgMjggKysrKysrKysrKysrKysrKysrKysrKysrKysrLQogMiBmaWxlcyBjaGFuZ2VkLCA1NCBp bnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3Bs YXkuYwppbmRleCBhZDQ5Yjk5ZWYyNWYuLjBkYzlmNDBlZGM3ZSAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2Rpc3BsYXkuYwpAQCAtOTMsNyArOTMsMTcgQEAgc3RhdGljIGNvbnN0IHVpbnQzMl90 IHNrbF9wcmltYXJ5X2Zvcm1hdHNbXSA9IHsKIAlEUk1fRk9STUFUX1ZZVVksCiB9OwogCi1zdGF0 aWMgY29uc3QgdWludDY0X3Qgc2tsX2Zvcm1hdF9tb2RpZmllcnNbXSA9IHsKK3N0YXRpYyBjb25z dCB1aW50NjRfdCBza2xfZm9ybWF0X21vZGlmaWVyc19ub2Njc1tdID0geworCUk5MTVfRk9STUFU X01PRF9ZZl9USUxFRCwKKwlJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRCwKKwlJOTE1X0ZPUk1BVF9N T0RfWF9USUxFRCwKKwlEUk1fRk9STUFUX01PRF9MSU5FQVIsCisJRFJNX0ZPUk1BVF9NT0RfSU5W QUxJRAorfTsKKworc3RhdGljIGNvbnN0IHVpbnQ2NF90IHNrbF9mb3JtYXRfbW9kaWZpZXJzX2Nj c1tdID0geworCUk5MTVfRk9STUFUX01PRF9ZZl9USUxFRF9DQ1MsCisJSTkxNV9GT1JNQVRfTU9E X1lfVElMRURfQ0NTLAogCUk5MTVfRk9STUFUX01PRF9ZZl9USUxFRCwKIAlJOTE1X0ZPUk1BVF9N T0RfWV9USUxFRCwKIAlJOTE1X0ZPUk1BVF9NT0RfWF9USUxFRCwKQEAgLTEzODUzLDYgKzEzODYz LDEwIEBAIHN0YXRpYyBib29sIHNrbF9tb2Rfc3VwcG9ydGVkKHVpbnQzMl90IGZvcm1hdCwgdWlu dDY0X3QgbW9kaWZpZXIpCiAJY2FzZSBEUk1fRk9STUFUX1hCR1I4ODg4OgogCWNhc2UgRFJNX0ZP Uk1BVF9BUkdCODg4ODoKIAljYXNlIERSTV9GT1JNQVRfQUJHUjg4ODg6CisJCWlmIChtb2RpZmll ciA9PSBJOTE1X0ZPUk1BVF9NT0RfWWZfVElMRURfQ0NTIHx8CisJCSAgICBtb2RpZmllciA9PSBJ OTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9DQ1MpCisJCQlyZXR1cm4gdHJ1ZTsKKwkJLyogZmFsbCB0 aHJvdWdoICovCiAJY2FzZSBEUk1fRk9STUFUX1JHQjU2NToKIAljYXNlIERSTV9GT1JNQVRfWFJH QjIxMDEwMTA6CiAJY2FzZSBEUk1fRk9STUFUX1hCR1IyMTAxMDEwOgpAQCAtMTQwOTksMTAgKzE0 MTEzLDIwIEBAIGludGVsX3ByaW1hcnlfcGxhbmVfY3JlYXRlKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiwgZW51bSBwaXBlIHBpcGUpCiAJcHJpbWFyeS0+ZnJvbnRidWZmZXJfYml0 ID0gSU5URUxfRlJPTlRCVUZGRVJfUFJJTUFSWShwaXBlKTsKIAlwcmltYXJ5LT5jaGVja19wbGFu ZSA9IGludGVsX2NoZWNrX3ByaW1hcnlfcGxhbmU7CiAKLQlpZiAoSU5URUxfR0VOKGRldl9wcml2 KSA+PSA5KSB7CisJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gMTAgfHwgSVNfR0VNSU5JTEFL RShkZXZfcHJpdikpIHsKKwkJaW50ZWxfcHJpbWFyeV9mb3JtYXRzID0gc2tsX3ByaW1hcnlfZm9y bWF0czsKKwkJbnVtX2Zvcm1hdHMgPSBBUlJBWV9TSVpFKHNrbF9wcmltYXJ5X2Zvcm1hdHMpOwor CQltb2RpZmllcnMgPSBza2xfZm9ybWF0X21vZGlmaWVyc19jY3M7CisKKwkJcHJpbWFyeS0+dXBk YXRlX3BsYW5lID0gc2t5bGFrZV91cGRhdGVfcHJpbWFyeV9wbGFuZTsKKwkJcHJpbWFyeS0+ZGlz YWJsZV9wbGFuZSA9IHNreWxha2VfZGlzYWJsZV9wcmltYXJ5X3BsYW5lOworCX0gZWxzZSBpZiAo SU5URUxfR0VOKGRldl9wcml2KSA+PSA5KSB7CiAJCWludGVsX3ByaW1hcnlfZm9ybWF0cyA9IHNr bF9wcmltYXJ5X2Zvcm1hdHM7CiAJCW51bV9mb3JtYXRzID0gQVJSQVlfU0laRShza2xfcHJpbWFy eV9mb3JtYXRzKTsKLQkJbW9kaWZpZXJzID0gc2tsX2Zvcm1hdF9tb2RpZmllcnM7CisJCWlmIChw aXBlIDwgUElQRV9DKQorCQkJbW9kaWZpZXJzID0gc2tsX2Zvcm1hdF9tb2RpZmllcnNfY2NzOwor CQllbHNlCisJCQltb2RpZmllcnMgPSBza2xfZm9ybWF0X21vZGlmaWVyc19ub2NjczsKIAogCQlw cmltYXJ5LT51cGRhdGVfcGxhbmUgPSBza3lsYWtlX3VwZGF0ZV9wcmltYXJ5X3BsYW5lOwogCQlw cmltYXJ5LT5kaXNhYmxlX3BsYW5lID0gc2t5bGFrZV9kaXNhYmxlX3ByaW1hcnlfcGxhbmU7CmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuYyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX3Nwcml0ZS5jCmluZGV4IGIxY2M0ODM1Yjk2My4uNWEyYjNmMzY5 M2E2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuYwpAQCAtMTA4NSw3ICsxMDg1LDE3 IEBAIHN0YXRpYyB1aW50MzJfdCBza2xfcGxhbmVfZm9ybWF0c1tdID0gewogCURSTV9GT1JNQVRf VllVWSwKIH07CiAKK3N0YXRpYyBjb25zdCB1aW50NjRfdCBza2xfcGxhbmVfZm9ybWF0X21vZGlm aWVyc19ub2Njc1tdID0geworCUk5MTVfRk9STUFUX01PRF9ZZl9USUxFRCwKKwlJOTE1X0ZPUk1B VF9NT0RfWV9USUxFRCwKKwlJOTE1X0ZPUk1BVF9NT0RfWF9USUxFRCwKKwlEUk1fRk9STUFUX01P RF9MSU5FQVIsCisJRFJNX0ZPUk1BVF9NT0RfSU5WQUxJRAorfTsKKwogc3RhdGljIGNvbnN0IHVp bnQ2NF90IHNrbF9wbGFuZV9mb3JtYXRfbW9kaWZpZXJzW10gPSB7CisJSTkxNV9GT1JNQVRfTU9E X1lmX1RJTEVEX0NDUywKKwlJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9DQ1MsCiAJSTkxNV9GT1JN QVRfTU9EX1lmX1RJTEVELAogCUk5MTVfRk9STUFUX01PRF9ZX1RJTEVELAogCUk5MTVfRk9STUFU X01PRF9YX1RJTEVELApAQCAtMTE0OCw2ICsxMTU4LDkgQEAgc3RhdGljIGJvb2wgc2tsX3Nwcml0 ZV9wbGFuZV9mb3JtYXRfbW9kX3N1cHBvcnRlZChzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKIAlj YXNlIERSTV9GT1JNQVRfWEJHUjg4ODg6CiAJY2FzZSBEUk1fRk9STUFUX0FSR0I4ODg4OgogCWNh c2UgRFJNX0ZPUk1BVF9BQkdSODg4ODoKKwkJaWYgKG1vZGlmaWVyID09IEk5MTVfRk9STUFUX01P RF9ZX1RJTEVEX0NDUyB8fAorCQkgICAgbW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lmX1RJ TEVEX0NDUykKKwkJCXJldHVybiB0cnVlOwogCWNhc2UgRFJNX0ZPUk1BVF9SR0I1NjU6CiAJY2Fz ZSBEUk1fRk9STUFUX1hSR0IyMTAxMDEwOgogCWNhc2UgRFJNX0ZPUk1BVF9YQkdSMjEwMTAxMDoK QEAgLTEyMzAsNyArMTI0Myw3IEBAIGludGVsX3Nwcml0ZV9wbGFuZV9jcmVhdGUoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCX0KIAlpbnRlbF9wbGFuZS0+YmFzZS5zdGF0ZSA9 ICZzdGF0ZS0+YmFzZTsKIAotCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDkpIHsKKwlpZiAo SU5URUxfR0VOKGRldl9wcml2KSA+PSAxMCkgewogCQlpbnRlbF9wbGFuZS0+Y2FuX3NjYWxlID0g dHJ1ZTsKIAkJc3RhdGUtPnNjYWxlcl9pZCA9IC0xOwogCkBAIC0xMjQwLDYgKzEyNTMsMTkgQEAg aW50ZWxfc3ByaXRlX3BsYW5lX2NyZWF0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYsCiAJCXBsYW5lX2Zvcm1hdHMgPSBza2xfcGxhbmVfZm9ybWF0czsKIAkJbnVtX3BsYW5lX2Zv cm1hdHMgPSBBUlJBWV9TSVpFKHNrbF9wbGFuZV9mb3JtYXRzKTsKIAkJbW9kaWZpZXJzID0gc2ts X3BsYW5lX2Zvcm1hdF9tb2RpZmllcnM7CisJfSBlbHNlIGlmIChJTlRFTF9HRU4oZGV2X3ByaXYp ID49IDkpIHsKKwkJaW50ZWxfcGxhbmUtPmNhbl9zY2FsZSA9IHRydWU7CisJCXN0YXRlLT5zY2Fs ZXJfaWQgPSAtMTsKKworCQlpbnRlbF9wbGFuZS0+dXBkYXRlX3BsYW5lID0gc2tsX3VwZGF0ZV9w bGFuZTsKKwkJaW50ZWxfcGxhbmUtPmRpc2FibGVfcGxhbmUgPSBza2xfZGlzYWJsZV9wbGFuZTsK KworCQlwbGFuZV9mb3JtYXRzID0gc2tsX3BsYW5lX2Zvcm1hdHM7CisJCW51bV9wbGFuZV9mb3Jt YXRzID0gQVJSQVlfU0laRShza2xfcGxhbmVfZm9ybWF0cyk7CisJCWlmIChwaXBlID49IFBJUEVf QykKKwkJCW1vZGlmaWVycyA9IHNrbF9wbGFuZV9mb3JtYXRfbW9kaWZpZXJzX25vY2NzOworCQll bHNlCisJCQltb2RpZmllcnMgPSBza2xfcGxhbmVfZm9ybWF0X21vZGlmaWVyczsKIAl9IGVsc2Ug aWYgKElTX1ZBTExFWVZJRVcoZGV2X3ByaXYpIHx8IElTX0NIRVJSWVZJRVcoZGV2X3ByaXYpKSB7 CiAJCWludGVsX3BsYW5lLT5jYW5fc2NhbGUgPSBmYWxzZTsKIAkJaW50ZWxfcGxhbmUtPm1heF9k b3duc2NhbGUgPSAxOwotLSAKMi4xMy4zCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9kcmktZGV2ZWwK