From mboxrd@z Thu Jan 1 00:00:00 1970 From: Radhakrishna Sripada Subject: [PATCH v7 7/7] drm/i915/tgl: Add Clear Color support for TGL Render Decompression Date: Mon, 25 Nov 2019 16:26:35 -0800 Message-ID: <20191126002635.5779-8-radhakrishna.sripada@intel.com> References: <20191126002635.5779-1-radhakrishna.sripada@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 87F5889E47 for ; Tue, 26 Nov 2019 00:25:08 +0000 (UTC) In-Reply-To: <20191126002635.5779-1-radhakrishna.sripada@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: nanley.g.chery@intel.com, dhinakaran.pandiyan@intel.com, ville.syrjala@intel.com List-Id: intel-gfx@lists.freedesktop.org UmVuZGVyIERlY29tcHJlc3Npb24gaXMgc3VwcG9ydGVkIHdpdGggWS1UaWxlZCBtYWluIHN1cmZh Y2UuIFRoZSBDQ1MgaXMKbGluZWFyIGFuZCBoYXMgNCBiaXRzIG9mIGRhdGEgZm9yIGVhY2ggbWFp biBzdXJmYWNlIGNhY2hlIGxpbmUgcGFpciwgYQpyYXRpbyBvZiAxOjI1Ni4gQWRkaXRpb25hbCBD bGVhciBDb2xvciBpbmZvcm1hdGlvbiBpcyBwYXNzZWQgZnJvbSB0aGUKdXNlci1zcGFjZSB0aHJv dWdoIGFuIG9mZnNldCBpbiB0aGUgR0VNIEJPLiBBZGQgYSBuZXcgbW9kaWZpZXIgdG8gaWRlbnRp ZnkKYW5kIHBhcnNlIG5ldyBDbGVhciBDb2xvciBpbmZvcm1hdGlvbiBhbmQgZXh0ZW5kIEdlbjEy IHJlbmRlciBkZWNvbXByZXNzaW9uCmZ1bmN0aW9uYWxpdHkgdG8gdGhlIG5ld2x5IGFkZGVkIG1v ZGlmaWVyLgoKdjI6IEZpeCBoYXNfYWxwaGEgZmxhZyBmb3IgbW9kaWZpZXJzLCBvbWl0IENDIG1v ZGlmaWVyIGR1cmluZyBpbml0aWFsCiAgICBwbGFuZSBjb25maWcoTWF0dCkuIEZpeCBMb29rdXAg ZXJyb3IuCnYzOiBGaXggdGhlIHBhbmljIHdoaWxlIHJ1bm5pbmcga21zX2N1YmUKdjQ6IEFkZCBh bGlnbm1lbnQgY2hlY2sgYW5kIHJldXNlIHRoZSBjb21tZW50cyBmb3IgZ2UxMl9jY3NfZm9ybWF0 cyhNYXR0KQp2NTogRml4IHR5cG9zIGFuZCB3cmFwIGNvbW1lbnRzKE1hdHQpCnY2OiBSZWJhc2UK djc6IFJlYmFzZSwgQWRkIG1pc3NpbmcgY2FzZSBpbiBpbnRlbF90aWxlX2hlaWdodChSSykKCkNj OiBEaGluYWthcmFuIFBhbmRpeWFuIDxkaGluYWthcmFuLnBhbmRpeWFuQGludGVsLmNvbT4KQ2M6 IFZpbGxlIFN5cmphbGEgPHZpbGxlLnN5cmphbGFAaW50ZWwuY29tPgpDYzogU2hhc2hhbmsgU2hh cm1hIDxzaGFzaGFuay5zaGFybWFAaW50ZWwuY29tPgpDYzogUmFmYWVsIEFudG9nbm9sbGkgPHJh ZmFlbC5hbnRvZ25vbGxpQGludGVsLmNvbT4KQ2M6IE5hbmxleSBHIENoZXJ5IDxuYW5sZXkuZy5j aGVyeUBpbnRlbC5jb20+CkNjOiBNYXR0IFJvcGVyIDxtYXR0aGV3LmQucm9wZXJAaW50ZWwuY29t PgpTaWduZWQtb2ZmLWJ5OiBSYWRoYWtyaXNobmEgU3JpcGFkYSA8cmFkaGFrcmlzaG5hLnNyaXBh ZGFAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlz cGxheS5jICB8IDY0ICsrKysrKysrKysrKysrKysrKy0KIC4uLi9kcm0vaTkxNS9kaXNwbGF5L2lu dGVsX2Rpc3BsYXlfdHlwZXMuaCAgICB8ICAzICsKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3Bs YXkvaW50ZWxfc3ByaXRlLmMgICB8IDEwICsrLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9y ZWcuaCAgICAgICAgICAgICAgIHwgMTIgKysrKwogNCBmaWxlcyBjaGFuZ2VkLCA4NiBpbnNlcnRp b25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9p bnRlbF9kaXNwbGF5LmMKaW5kZXggNmM0Mjc0YzE1NjRkLi42OWU3MGJlODZmNTcgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jCkBAIC0xOTc1LDYgKzE5 NzUsMTAgQEAgaW50ZWxfdGlsZV93aWR0aF9ieXRlcyhjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVm ZmVyICpmYiwgaW50IGNvbG9yX3BsYW5lKQogCQlpZiAoY29sb3JfcGxhbmUgPT0gMSkKIAkJCXJl dHVybiA2NDsKIAkJLyogZmFsbCB0aHJvdWdoICovCisJY2FzZSBJOTE1X0ZPUk1BVF9NT0RfWV9U SUxFRF9HRU4xMl9SQ19DQ1NfQ0M6CisJCWlmIChjb2xvcl9wbGFuZSA9PSAxIHx8IGNvbG9yX3Bs YW5lID09IDIpCisJCQlyZXR1cm4gNjQ7CisJCS8qIGZhbGwgdGhyb3VnaCAqLwogCWNhc2UgSTkx NV9GT1JNQVRfTU9EX1lfVElMRUQ6CiAJCWlmIChJU19HRU4oZGV2X3ByaXYsIDIpIHx8IEhBU18x MjhfQllURV9ZX1RJTElORyhkZXZfcHJpdikpCiAJCQlyZXR1cm4gMTI4OwpAQCAtMjAxMyw2ICsy MDE3LDEwIEBAIGludGVsX3RpbGVfaGVpZ2h0KGNvbnN0IHN0cnVjdCBkcm1fZnJhbWVidWZmZXIg KmZiLCBpbnQgY29sb3JfcGxhbmUpCiAJCWlmIChjb2xvcl9wbGFuZSA9PSAxKQogCQkJcmV0dXJu IDE7CiAJCS8qIGZhbGwgdGhyb3VnaCAqLworCWNhc2UgSTkxNV9GT1JNQVRfTU9EX1lfVElMRURf R0VOMTJfUkNfQ0NTX0NDOgorCQlpZiAoY29sb3JfcGxhbmUgPT0gMSB8fCBjb2xvcl9wbGFuZSA9 PSAyKQorCQkJcmV0dXJuIDE7CisJCS8qIGZhbGwgdGhyb3VnaCAqLwogCWRlZmF1bHQ6CiAJCXJl dHVybiBpbnRlbF90aWxlX3NpemUodG9faTkxNShmYi0+ZGV2KSkgLwogCQkJaW50ZWxfdGlsZV93 aWR0aF9ieXRlcyhmYiwgY29sb3JfcGxhbmUpOwpAQCAtMjExNiw2ICsyMTI0LDcgQEAgc3RhdGlj IHVuc2lnbmVkIGludCBpbnRlbF9zdXJmX2FsaWdubWVudChjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1l YnVmZmVyICpmYiwKIAkJCXJldHVybiAyNTYgKiAxMDI0OwogCQlyZXR1cm4gMDsKIAljYXNlIEk5 MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDUzoKKwljYXNlIEk5MTVfRk9STUFUX01P RF9ZX1RJTEVEX0dFTjEyX1JDX0NDU19DQzoKIAkJcmV0dXJuIDE2ICogMTAyNDsKIAljYXNlIEk5 MTVfRk9STUFUX01PRF9ZX1RJTEVEX0NDUzoKIAljYXNlIEk5MTVfRk9STUFUX01PRF9ZZl9USUxF RF9DQ1M6CkBAIC0yMzEzLDggKzIzMjIsMTYgQEAgc3RhdGljIHUzMiBpbnRlbF9hZGp1c3RfdGls ZV9vZmZzZXQoaW50ICp4LCBpbnQgKnksCiAKIHN0YXRpYyBib29sIGlzX3N1cmZhY2VfbGluZWFy KHU2NCBtb2RpZmllciwgaW50IGNvbG9yX3BsYW5lKQogewotCXJldHVybiBtb2RpZmllciA9PSBE Uk1fRk9STUFUX01PRF9MSU5FQVIgfHwKLQkgICAgICAgKG1vZGlmaWVyID09IEk5MTVfRk9STUFU X01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDUyAmJiBjb2xvcl9wbGFuZSA9PSAxKTsKKwlzd2l0Y2gg KG1vZGlmaWVyKSB7CisJY2FzZSBEUk1fRk9STUFUX01PRF9MSU5FQVI6CisJCXJldHVybiB0cnVl OworCWNhc2UgSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJfUkNfQ0NTOgorCQlyZXR1cm4g Y29sb3JfcGxhbmUgPT0gMTsKKwljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JD X0NDU19DQzoKKwkJcmV0dXJuIGNvbG9yX3BsYW5lID09IDEgfHwgY29sb3JfcGxhbmUgPT0gMjsK KwlkZWZhdWx0OgorCQlyZXR1cm4gZmFsc2U7CisJfQogfQogCiBzdGF0aWMgdTMyIGludGVsX2Fk anVzdF9hbGlnbmVkX29mZnNldChpbnQgKngsIGludCAqeSwKQEAgLTI1MDIsNiArMjUxOSw3IEBA IHN0YXRpYyB1bnNpZ25lZCBpbnQgaW50ZWxfZmJfbW9kaWZpZXJfdG9fdGlsaW5nKHU2NCBmYl9t b2RpZmllcikKIAljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEOgogCWNhc2UgSTkxNV9GT1JN QVRfTU9EX1lfVElMRURfQ0NTOgogCWNhc2UgSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJf UkNfQ0NTOgorCWNhc2UgSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJfUkNfQ0NTX0NDOgog CQlyZXR1cm4gSTkxNV9USUxJTkdfWTsKIAlkZWZhdWx0OgogCQlyZXR1cm4gSTkxNV9USUxJTkdf Tk9ORTsKQEAgLTI1NTEsNiArMjU2OSwyMSBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9mb3Jt YXRfaW5mbyBnZW4xMl9jY3NfZm9ybWF0c1tdID0gewogCSAgLmNwcCA9IHsgNCwgMSwgfSwgLmhz dWIgPSAyLCAudnN1YiA9IDMyLCAuaGFzX2FscGhhID0gdHJ1ZSB9LAogfTsKIAorLyoKKyAqIFNh bWUgYXMgZ2VuMTJfY2NzX2Zvcm1hdHNbXSBhYm92ZSwgYnV0IHdpdGggYWRkaXRpb25hbCBzdXJm YWNlIHVzZWQKKyAqIHRvIHBhc3MgQ2xlYXIgQ29sb3IgaW5mb3JtYXRpb24gaW4gcGxhbmUgMiB3 aXRoIDY0IGJpdHMgb2YgZGF0YS4KKyAqLworc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZm9ybWF0 X2luZm8gZ2VuMTJfY2NzX2NjX2Zvcm1hdHNbXSA9IHsKKwl7IC5mb3JtYXQgPSBEUk1fRk9STUFU X1hSR0I4ODg4LCAuZGVwdGggPSAyNCwgLm51bV9wbGFuZXMgPSAzLAorCSAgLmNwcCA9IHsgNCwg MSwgMCwgfSwgLmhzdWIgPSAyLCAudnN1YiA9IDMyLCB9LAorCXsgLmZvcm1hdCA9IERSTV9GT1JN QVRfWEJHUjg4ODgsIC5kZXB0aCA9IDI0LCAubnVtX3BsYW5lcyA9IDMsCisJICAuY3BwID0geyA0 LCAxLCAwLCB9LCAuaHN1YiA9IDIsIC52c3ViID0gMzIsIH0sCisJeyAuZm9ybWF0ID0gRFJNX0ZP Uk1BVF9BUkdCODg4OCwgLmRlcHRoID0gMzIsIC5udW1fcGxhbmVzID0gMywKKwkgIC5jcHAgPSB7 IDQsIDEsIDAsIH0sIC5oc3ViID0gMiwgLnZzdWIgPSAzMiwgLmhhc19hbHBoYSA9IHRydWUgfSwK Kwl7IC5mb3JtYXQgPSBEUk1fRk9STUFUX0FCR1I4ODg4LCAuZGVwdGggPSAzMiwgLm51bV9wbGFu ZXMgPSAzLAorCSAgLmNwcCA9IHsgNCwgMSwgMCwgfSwgLmhzdWIgPSAyLCAudnN1YiA9IDMyLCAu aGFzX2FscGhhID0gdHJ1ZSB9LAorfTsKKwogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZm9ybWF0 X2luZm8gKgogbG9va3VwX2Zvcm1hdF9pbmZvKGNvbnN0IHN0cnVjdCBkcm1fZm9ybWF0X2luZm8g Zm9ybWF0c1tdLAogCQkgICBpbnQgbnVtX2Zvcm1hdHMsIHUzMiBmb3JtYXQpCkBAIC0yNTc4LDYg KzI2MTEsMTAgQEAgaW50ZWxfZ2V0X2Zvcm1hdF9pbmZvKGNvbnN0IHN0cnVjdCBkcm1fbW9kZV9m Yl9jbWQyICpjbWQpCiAJCXJldHVybiBsb29rdXBfZm9ybWF0X2luZm8oZ2VuMTJfY2NzX2Zvcm1h dHMsCiAJCQkJCSAgQVJSQVlfU0laRShnZW4xMl9jY3NfZm9ybWF0cyksCiAJCQkJCSAgY21kLT5w aXhlbF9mb3JtYXQpOworCWNhc2UgSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJfUkNfQ0NT X0NDOgorCQlyZXR1cm4gbG9va3VwX2Zvcm1hdF9pbmZvKGdlbjEyX2Njc19jY19mb3JtYXRzLAor CQkJCQkgIEFSUkFZX1NJWkUoZ2VuMTJfY2NzX2NjX2Zvcm1hdHMpLAorCQkJCQkgIGNtZC0+cGl4 ZWxfZm9ybWF0KTsKIAlkZWZhdWx0OgogCQlyZXR1cm4gTlVMTDsKIAl9CkBAIC0yNTg2LDYgKzI2 MjMsNyBAQCBpbnRlbF9nZXRfZm9ybWF0X2luZm8oY29uc3Qgc3RydWN0IGRybV9tb2RlX2ZiX2Nt ZDIgKmNtZCkKIGJvb2wgaXNfY2NzX21vZGlmaWVyKHU2NCBtb2RpZmllcikKIHsKIAlyZXR1cm4g bW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJfUkNfQ0NTIHx8CisJICAg ICAgIG1vZGlmaWVyID09IEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDU19DQyB8 fAogCSAgICAgICBtb2RpZmllciA9PSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9DQ1MgfHwKIAkg ICAgICAgbW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lmX1RJTEVEX0NDUzsKIH0KQEAgLTI3 OTgsNiArMjgzNiwxOCBAQCBpbnRlbF9maWxsX2ZiX2luZm8oc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2LAogCQlpbnQgeCwgeTsKIAkJaW50IHJldDsKIAorCQkvKgorCQkgKiBQbGFu ZSAyIG9mIFJlbmRlciBDb21wcmVzc2lvbiB3aXRoIENsZWFyIENvbG9yIGZiIG1vZGlmaWVyCisJ CSAqIGlzIGNvbnN1bWVkIGJ5IHRoZSBkcml2ZXIgYW5kIG5vdCBwYXNzZWQgdG8gREUuIFNraXAg dGhlCisJCSAqIGFyaXRobWV0aWMgcmVsYXRlZCB0byBhbGlnbm1lbnQgYW5kIG9mZnNldCBjYWxj dWxhdGlvbi4KKwkJICovCisJCWlmIChpID09IDIgJiYgZmItPm1vZGlmaWVyID09IEk5MTVfRk9S TUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDU19DQykgeworCQkJaWYgKElTX0FMSUdORUQoZmIt Pm9mZnNldHNbMl0sIFBBR0VfU0laRSkpCisJCQkJY29udGludWU7CisJCQllbHNlCisJCQkJcmV0 dXJuIC1FSU5WQUw7CisJCX0KKwogCQljcHAgPSBmYi0+Zm9ybWF0LT5jcHBbaV07CiAJCXdpZHRo ID0gZHJtX2ZyYW1lYnVmZmVyX3BsYW5lX3dpZHRoKGZiLT53aWR0aCwgZmIsIGkpOwogCQloZWln aHQgPSBkcm1fZnJhbWVidWZmZXJfcGxhbmVfaGVpZ2h0KGZiLT5oZWlnaHQsIGZiLCBpKTsKQEAg LTQyOTUsNiArNDM0NSw3IEBAIHN0YXRpYyB1MzIgc2tsX3BsYW5lX2N0bF90aWxpbmcodTY0IGZi X21vZGlmaWVyKQogCWNhc2UgSTkxNV9GT1JNQVRfTU9EX1lfVElMRUQ6CiAJCXJldHVybiBQTEFO RV9DVExfVElMRURfWTsKIAljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0NDUzoKKwljYXNl IEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDU19DQzoKIAkJcmV0dXJuIFBMQU5F X0NUTF9USUxFRF9ZIHwgUExBTkVfQ1RMX1JFTkRFUl9ERUNPTVBSRVNTSU9OX0VOQUJMRTsKIAlj YXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDUzoKIAkJcmV0dXJuIFBMQU5F X0NUTF9USUxFRF9ZIHwKQEAgLTE1MjQ1LDYgKzE1Mjk2LDE1IEBAIHN0YXRpYyBpbnQgaW50ZWxf cGxhbmVfcGluX2ZiKHN0cnVjdCBpbnRlbF9wbGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGUpCiAKIAlw bGFuZV9zdGF0ZS0+dm1hID0gdm1hOwogCisJaWYgKGZiLT5tb2RpZmllciA9PSBJOTE1X0ZPUk1B VF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1NfQ0MpIHsKKwkJdTMyICpjY2FkZHIgPSBrbWFwX2F0 b21pYyhpOTE1X2dlbV9vYmplY3RfZ2V0X3BhZ2UoaW50ZWxfZmJfb2JqKGZiKSwKKwkJCQkJCQkJ ICBmYi0+b2Zmc2V0c1syXSA+PiBQQUdFX1NISUZUKSk7CisKKwkJcGxhbmVfc3RhdGUtPmNjdmFs ID0gKCh1NjQpKihjY2FkZHIgKyBDQ19WQUxfSElHSEVSX09GRlNFVCkgPDwgMzIpCisJCQkJICAg ICB8ICooY2NhZGRyICsgQ0NfVkFMX0xPV0VSX09GRlNFVCk7CisJCWt1bm1hcF9hdG9taWMoY2Nh ZGRyKTsKKwl9CisKIAlyZXR1cm4gMDsKIH0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3R5cGVzLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfdHlwZXMuaAppbmRleCA4M2VhMDQxNDliNzcuLmUxYmQx ODEyMmNlNiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9k aXNwbGF5X3R5cGVzLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9k aXNwbGF5X3R5cGVzLmgKQEAgLTYwNyw2ICs2MDcsOSBAQCBzdHJ1Y3QgaW50ZWxfcGxhbmVfc3Rh dGUgewogCXUzMiBwbGFuYXJfc2xhdmU7CiAKIAlzdHJ1Y3QgZHJtX2ludGVsX3Nwcml0ZV9jb2xv cmtleSBja2V5OworCisJLyogQ2xlYXIgQ29sb3IgVmFsdWUgKi8KKwl1NjQgY2N2YWw7CiB9Owog CiBzdHJ1Y3QgaW50ZWxfaW5pdGlhbF9wbGFuZV9jb25maWcgewpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9zcHJpdGUuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfc3ByaXRlLmMKaW5kZXggNjdhOTAwNTk5MDBmLi44OWY3ZmJjODdh ZDkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfc3ByaXRl LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9zcHJpdGUuYwpAQCAt NTk3LDYgKzU5Nyw3IEBAIHNrbF9wcm9ncmFtX3BsYW5lKHN0cnVjdCBpbnRlbF9wbGFuZSAqcGxh bmUsCiAJdW5zaWduZWQgbG9uZyBpcnFmbGFnczsKIAl1MzIga2V5bXNrLCBrZXltYXg7CiAJdTMy IHBsYW5lX2N0bCA9IHBsYW5lX3N0YXRlLT5jdGw7CisJdTY0IGNjdmFsID0gcGxhbmVfc3RhdGUt PmNjdmFsOwogCiAJcGxhbmVfY3RsIHw9IHNrbF9wbGFuZV9jdGxfY3J0YyhjcnRjX3N0YXRlKTsK IApAQCAtNjM5LDYgKzY0MCwxMCBAQCBza2xfcHJvZ3JhbV9wbGFuZShzdHJ1Y3QgaW50ZWxfcGxh bmUgKnBsYW5lLAogCWlmIChmYi0+Zm9ybWF0LT5pc195dXYgJiYgaWNsX2lzX2hkcl9wbGFuZShk ZXZfcHJpdiwgcGxhbmVfaWQpKQogCQlpY2xfcHJvZ3JhbV9pbnB1dF9jc2MocGxhbmUsIGNydGNf c3RhdGUsIHBsYW5lX3N0YXRlKTsKIAorCWlmIChmYi0+bW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRf TU9EX1lfVElMRURfR0VOMTJfUkNfQ0NTX0NDKQorCQlpbnRlbF91bmNvcmVfd3JpdGU2NF9mdygm ZGV2X3ByaXYtPnVuY29yZSwKKwkJCQkJUExBTkVfQ0NfVkFMKHBpcGUsIHBsYW5lX2lkKSwgY2N2 YWwpOworCiAJc2tsX3dyaXRlX3BsYW5lX3dtKHBsYW5lLCBjcnRjX3N0YXRlKTsKIAogCUk5MTVf V1JJVEVfRlcoUExBTkVfS0VZVkFMKHBpcGUsIHBsYW5lX2lkKSwga2V5LT5taW5fdmFsdWUpOwpA QCAtMjEwNiw3ICsyMTExLDggQEAgc3RhdGljIGludCBza2xfcGxhbmVfY2hlY2tfZmIoY29uc3Qg c3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCiAJICAgICBmYi0+bW9kaWZpZXIg PT0gSTkxNV9GT1JNQVRfTU9EX1lmX1RJTEVEIHx8CiAJICAgICBmYi0+bW9kaWZpZXIgPT0gSTkx NV9GT1JNQVRfTU9EX1lfVElMRURfQ0NTIHx8CiAJICAgICBmYi0+bW9kaWZpZXIgPT0gSTkxNV9G T1JNQVRfTU9EX1lmX1RJTEVEX0NDUyB8fAotCSAgICAgZmItPm1vZGlmaWVyID09IEk5MTVfRk9S TUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDUykpIHsKKwkgICAgIGZiLT5tb2RpZmllciA9PSBJ OTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1MgfHwKKwkgICAgIGZiLT5tb2RpZmll ciA9PSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1NfQ0MpKSB7CiAJCURSTV9E RUJVR19LTVMoIlkvWWYgdGlsaW5nIG5vdCBzdXBwb3J0ZWQgaW4gSUYtSUQgbW9kZVxuIik7CiAJ CXJldHVybiAtRUlOVkFMOwogCX0KQEAgLTI1NzksNiArMjU4NSw3IEBAIHN0YXRpYyBjb25zdCB1 NjQgc2tsX3BsYW5lX2Zvcm1hdF9tb2RpZmllcnNfY2NzW10gPSB7CiAKIHN0YXRpYyBjb25zdCB1 NjQgZ2VuMTJfcGxhbmVfZm9ybWF0X21vZGlmaWVyc19jY3NbXSA9IHsKIAlJOTE1X0ZPUk1BVF9N T0RfWV9USUxFRF9HRU4xMl9SQ19DQ1MsCisJSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJf UkNfQ0NTX0NDLAogCUk5MTVfRk9STUFUX01PRF9ZX1RJTEVELAogCUk5MTVfRk9STUFUX01PRF9Y X1RJTEVELAogCURSTV9GT1JNQVRfTU9EX0xJTkVBUiwKQEAgLTI3NTAsNiArMjc1Nyw3IEBAIHN0 YXRpYyBib29sIGdlbjEyX3BsYW5lX2Zvcm1hdF9tb2Rfc3VwcG9ydGVkKHN0cnVjdCBkcm1fcGxh bmUgKl9wbGFuZSwKIAljYXNlIEk5MTVfRk9STUFUX01PRF9YX1RJTEVEOgogCWNhc2UgSTkxNV9G T1JNQVRfTU9EX1lfVElMRUQ6CiAJY2FzZSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9S Q19DQ1M6CisJY2FzZSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1NfQ0M6CiAJ CWJyZWFrOwogCWRlZmF1bHQ6CiAJCXJldHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfcmVnLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5o CmluZGV4IDJlNDQ0YTE4ZWQwYi4uNGE2ODNkYjI2N2MxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X3JlZy5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVn LmgKQEAgLTY4NDAsNiArNjg0MCw4IEBAIGVudW0gewogI2RlZmluZSBfUExBTkVfS0VZTUFYXzFf QQkJCTB4NzAxYTAKICNkZWZpbmUgX1BMQU5FX0tFWU1BWF8yX0EJCQkweDcwMmEwCiAjZGVmaW5l ICBQTEFORV9LRVlNQVhfQUxQSEEoYSkJCQkoKGEpIDw8IDI0KQorI2RlZmluZSBfUExBTkVfQ0Nf VkFMXzFfQQkJCTB4NzAxYjQKKyNkZWZpbmUgX1BMQU5FX0NDX1ZBTF8yX0EJCQkweDcwMmI0CiAj ZGVmaW5lIF9QTEFORV9BVVhfRElTVF8xX0EJCQkweDcwMWMwCiAjZGVmaW5lIF9QTEFORV9BVVhf RElTVF8yX0EJCQkweDcwMmMwCiAjZGVmaW5lIF9QTEFORV9BVVhfT0ZGU0VUXzFfQQkJCTB4NzAx YzQKQEAgLTY4NzksNiArNjg4MSwxNiBAQCBlbnVtIHsKICNkZWZpbmUgX1BMQU5FX05WMTJfQlVG X0NGR18xX0EJCTB4NzAyNzgKICNkZWZpbmUgX1BMQU5FX05WMTJfQlVGX0NGR18yX0EJCTB4NzAz NzgKIAorI2RlZmluZSBfUExBTkVfQ0NfVkFMXzFfQgkJCTB4NzExYjQKKyNkZWZpbmUgX1BMQU5F X0NDX1ZBTF8yX0IJCQkweDcxMmI0CisjZGVmaW5lIF9QTEFORV9DQ19WQUxfMShwaXBlKQlfUElQ RShwaXBlLCBfUExBTkVfQ0NfVkFMXzFfQSwgX1BMQU5FX0NDX1ZBTF8xX0IpCisjZGVmaW5lIF9Q TEFORV9DQ19WQUxfMihwaXBlKQlfUElQRShwaXBlLCBfUExBTkVfQ0NfVkFMXzJfQSwgX1BMQU5F X0NDX1ZBTF8yX0IpCisjZGVmaW5lIFBMQU5FX0NDX1ZBTChwaXBlLCBwbGFuZSkJXAorCV9NTUlP X1BMQU5FKHBsYW5lLCBfUExBTkVfQ0NfVkFMXzEocGlwZSksIF9QTEFORV9DQ19WQUxfMihwaXBl KSkKKworI2RlZmluZSBDQ19WQUxfTE9XRVJfT0ZGU0VUCQk0CisjZGVmaW5lIENDX1ZBTF9ISUdI RVJfT0ZGU0VUCQk1CisKIC8qIElucHV0IENTQyBSZWdpc3RlciBEZWZpbml0aW9ucyAqLwogI2Rl ZmluZSBfUExBTkVfSU5QVVRfQ1NDX1JZX0dZXzFfQQkweDcwMUUwCiAjZGVmaW5lIF9QTEFORV9J TlBVVF9DU0NfUllfR1lfMl9BCTB4NzAyRTAKLS0gCjIuMjAuMQoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRl bC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0519BC432C0 for ; Tue, 26 Nov 2019 00:25:20 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id DABE320748 for ; Tue, 26 Nov 2019 00:25:19 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org DABE320748 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 347A76E0C0; Tue, 26 Nov 2019 00:25:17 +0000 (UTC) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 87F5889E47 for ; Tue, 26 Nov 2019 00:25:08 +0000 (UTC) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 25 Nov 2019 16:25:07 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.69,243,1571727600"; d="scan'208";a="291549116" Received: from invictus.jf.intel.com ([10.54.75.159]) by orsmga001.jf.intel.com with ESMTP; 25 Nov 2019 16:25:06 -0800 From: Radhakrishna Sripada To: intel-gfx@lists.freedesktop.org Date: Mon, 25 Nov 2019 16:26:35 -0800 Message-Id: <20191126002635.5779-8-radhakrishna.sripada@intel.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191126002635.5779-1-radhakrishna.sripada@intel.com> References: <20191126002635.5779-1-radhakrishna.sripada@intel.com> MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH v7 7/7] drm/i915/tgl: Add Clear Color support for TGL Render Decompression X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: nanley.g.chery@intel.com, dhinakaran.pandiyan@intel.com, ville.syrjala@intel.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Message-ID: <20191126002635.u_rGntIY2mMZhS2hcpsNDiy_OUNs2Edu576FP_88qjg@z> UmVuZGVyIERlY29tcHJlc3Npb24gaXMgc3VwcG9ydGVkIHdpdGggWS1UaWxlZCBtYWluIHN1cmZh Y2UuIFRoZSBDQ1MgaXMKbGluZWFyIGFuZCBoYXMgNCBiaXRzIG9mIGRhdGEgZm9yIGVhY2ggbWFp biBzdXJmYWNlIGNhY2hlIGxpbmUgcGFpciwgYQpyYXRpbyBvZiAxOjI1Ni4gQWRkaXRpb25hbCBD bGVhciBDb2xvciBpbmZvcm1hdGlvbiBpcyBwYXNzZWQgZnJvbSB0aGUKdXNlci1zcGFjZSB0aHJv dWdoIGFuIG9mZnNldCBpbiB0aGUgR0VNIEJPLiBBZGQgYSBuZXcgbW9kaWZpZXIgdG8gaWRlbnRp ZnkKYW5kIHBhcnNlIG5ldyBDbGVhciBDb2xvciBpbmZvcm1hdGlvbiBhbmQgZXh0ZW5kIEdlbjEy IHJlbmRlciBkZWNvbXByZXNzaW9uCmZ1bmN0aW9uYWxpdHkgdG8gdGhlIG5ld2x5IGFkZGVkIG1v ZGlmaWVyLgoKdjI6IEZpeCBoYXNfYWxwaGEgZmxhZyBmb3IgbW9kaWZpZXJzLCBvbWl0IENDIG1v ZGlmaWVyIGR1cmluZyBpbml0aWFsCiAgICBwbGFuZSBjb25maWcoTWF0dCkuIEZpeCBMb29rdXAg ZXJyb3IuCnYzOiBGaXggdGhlIHBhbmljIHdoaWxlIHJ1bm5pbmcga21zX2N1YmUKdjQ6IEFkZCBh bGlnbm1lbnQgY2hlY2sgYW5kIHJldXNlIHRoZSBjb21tZW50cyBmb3IgZ2UxMl9jY3NfZm9ybWF0 cyhNYXR0KQp2NTogRml4IHR5cG9zIGFuZCB3cmFwIGNvbW1lbnRzKE1hdHQpCnY2OiBSZWJhc2UK djc6IFJlYmFzZSwgQWRkIG1pc3NpbmcgY2FzZSBpbiBpbnRlbF90aWxlX2hlaWdodChSSykKCkNj OiBEaGluYWthcmFuIFBhbmRpeWFuIDxkaGluYWthcmFuLnBhbmRpeWFuQGludGVsLmNvbT4KQ2M6 IFZpbGxlIFN5cmphbGEgPHZpbGxlLnN5cmphbGFAaW50ZWwuY29tPgpDYzogU2hhc2hhbmsgU2hh cm1hIDxzaGFzaGFuay5zaGFybWFAaW50ZWwuY29tPgpDYzogUmFmYWVsIEFudG9nbm9sbGkgPHJh ZmFlbC5hbnRvZ25vbGxpQGludGVsLmNvbT4KQ2M6IE5hbmxleSBHIENoZXJ5IDxuYW5sZXkuZy5j aGVyeUBpbnRlbC5jb20+CkNjOiBNYXR0IFJvcGVyIDxtYXR0aGV3LmQucm9wZXJAaW50ZWwuY29t PgpTaWduZWQtb2ZmLWJ5OiBSYWRoYWtyaXNobmEgU3JpcGFkYSA8cmFkaGFrcmlzaG5hLnNyaXBh ZGFAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlz cGxheS5jICB8IDY0ICsrKysrKysrKysrKysrKysrKy0KIC4uLi9kcm0vaTkxNS9kaXNwbGF5L2lu dGVsX2Rpc3BsYXlfdHlwZXMuaCAgICB8ICAzICsKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3Bs YXkvaW50ZWxfc3ByaXRlLmMgICB8IDEwICsrLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9y ZWcuaCAgICAgICAgICAgICAgIHwgMTIgKysrKwogNCBmaWxlcyBjaGFuZ2VkLCA4NiBpbnNlcnRp b25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9p bnRlbF9kaXNwbGF5LmMKaW5kZXggNmM0Mjc0YzE1NjRkLi42OWU3MGJlODZmNTcgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jCkBAIC0xOTc1LDYgKzE5 NzUsMTAgQEAgaW50ZWxfdGlsZV93aWR0aF9ieXRlcyhjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVm ZmVyICpmYiwgaW50IGNvbG9yX3BsYW5lKQogCQlpZiAoY29sb3JfcGxhbmUgPT0gMSkKIAkJCXJl dHVybiA2NDsKIAkJLyogZmFsbCB0aHJvdWdoICovCisJY2FzZSBJOTE1X0ZPUk1BVF9NT0RfWV9U SUxFRF9HRU4xMl9SQ19DQ1NfQ0M6CisJCWlmIChjb2xvcl9wbGFuZSA9PSAxIHx8IGNvbG9yX3Bs YW5lID09IDIpCisJCQlyZXR1cm4gNjQ7CisJCS8qIGZhbGwgdGhyb3VnaCAqLwogCWNhc2UgSTkx NV9GT1JNQVRfTU9EX1lfVElMRUQ6CiAJCWlmIChJU19HRU4oZGV2X3ByaXYsIDIpIHx8IEhBU18x MjhfQllURV9ZX1RJTElORyhkZXZfcHJpdikpCiAJCQlyZXR1cm4gMTI4OwpAQCAtMjAxMyw2ICsy MDE3LDEwIEBAIGludGVsX3RpbGVfaGVpZ2h0KGNvbnN0IHN0cnVjdCBkcm1fZnJhbWVidWZmZXIg KmZiLCBpbnQgY29sb3JfcGxhbmUpCiAJCWlmIChjb2xvcl9wbGFuZSA9PSAxKQogCQkJcmV0dXJu IDE7CiAJCS8qIGZhbGwgdGhyb3VnaCAqLworCWNhc2UgSTkxNV9GT1JNQVRfTU9EX1lfVElMRURf R0VOMTJfUkNfQ0NTX0NDOgorCQlpZiAoY29sb3JfcGxhbmUgPT0gMSB8fCBjb2xvcl9wbGFuZSA9 PSAyKQorCQkJcmV0dXJuIDE7CisJCS8qIGZhbGwgdGhyb3VnaCAqLwogCWRlZmF1bHQ6CiAJCXJl dHVybiBpbnRlbF90aWxlX3NpemUodG9faTkxNShmYi0+ZGV2KSkgLwogCQkJaW50ZWxfdGlsZV93 aWR0aF9ieXRlcyhmYiwgY29sb3JfcGxhbmUpOwpAQCAtMjExNiw2ICsyMTI0LDcgQEAgc3RhdGlj IHVuc2lnbmVkIGludCBpbnRlbF9zdXJmX2FsaWdubWVudChjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1l YnVmZmVyICpmYiwKIAkJCXJldHVybiAyNTYgKiAxMDI0OwogCQlyZXR1cm4gMDsKIAljYXNlIEk5 MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDUzoKKwljYXNlIEk5MTVfRk9STUFUX01P RF9ZX1RJTEVEX0dFTjEyX1JDX0NDU19DQzoKIAkJcmV0dXJuIDE2ICogMTAyNDsKIAljYXNlIEk5 MTVfRk9STUFUX01PRF9ZX1RJTEVEX0NDUzoKIAljYXNlIEk5MTVfRk9STUFUX01PRF9ZZl9USUxF RF9DQ1M6CkBAIC0yMzEzLDggKzIzMjIsMTYgQEAgc3RhdGljIHUzMiBpbnRlbF9hZGp1c3RfdGls ZV9vZmZzZXQoaW50ICp4LCBpbnQgKnksCiAKIHN0YXRpYyBib29sIGlzX3N1cmZhY2VfbGluZWFy KHU2NCBtb2RpZmllciwgaW50IGNvbG9yX3BsYW5lKQogewotCXJldHVybiBtb2RpZmllciA9PSBE Uk1fRk9STUFUX01PRF9MSU5FQVIgfHwKLQkgICAgICAgKG1vZGlmaWVyID09IEk5MTVfRk9STUFU X01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDUyAmJiBjb2xvcl9wbGFuZSA9PSAxKTsKKwlzd2l0Y2gg KG1vZGlmaWVyKSB7CisJY2FzZSBEUk1fRk9STUFUX01PRF9MSU5FQVI6CisJCXJldHVybiB0cnVl OworCWNhc2UgSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJfUkNfQ0NTOgorCQlyZXR1cm4g Y29sb3JfcGxhbmUgPT0gMTsKKwljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JD X0NDU19DQzoKKwkJcmV0dXJuIGNvbG9yX3BsYW5lID09IDEgfHwgY29sb3JfcGxhbmUgPT0gMjsK KwlkZWZhdWx0OgorCQlyZXR1cm4gZmFsc2U7CisJfQogfQogCiBzdGF0aWMgdTMyIGludGVsX2Fk anVzdF9hbGlnbmVkX29mZnNldChpbnQgKngsIGludCAqeSwKQEAgLTI1MDIsNiArMjUxOSw3IEBA IHN0YXRpYyB1bnNpZ25lZCBpbnQgaW50ZWxfZmJfbW9kaWZpZXJfdG9fdGlsaW5nKHU2NCBmYl9t b2RpZmllcikKIAljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEOgogCWNhc2UgSTkxNV9GT1JN QVRfTU9EX1lfVElMRURfQ0NTOgogCWNhc2UgSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJf UkNfQ0NTOgorCWNhc2UgSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJfUkNfQ0NTX0NDOgog CQlyZXR1cm4gSTkxNV9USUxJTkdfWTsKIAlkZWZhdWx0OgogCQlyZXR1cm4gSTkxNV9USUxJTkdf Tk9ORTsKQEAgLTI1NTEsNiArMjU2OSwyMSBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9mb3Jt YXRfaW5mbyBnZW4xMl9jY3NfZm9ybWF0c1tdID0gewogCSAgLmNwcCA9IHsgNCwgMSwgfSwgLmhz dWIgPSAyLCAudnN1YiA9IDMyLCAuaGFzX2FscGhhID0gdHJ1ZSB9LAogfTsKIAorLyoKKyAqIFNh bWUgYXMgZ2VuMTJfY2NzX2Zvcm1hdHNbXSBhYm92ZSwgYnV0IHdpdGggYWRkaXRpb25hbCBzdXJm YWNlIHVzZWQKKyAqIHRvIHBhc3MgQ2xlYXIgQ29sb3IgaW5mb3JtYXRpb24gaW4gcGxhbmUgMiB3 aXRoIDY0IGJpdHMgb2YgZGF0YS4KKyAqLworc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZm9ybWF0 X2luZm8gZ2VuMTJfY2NzX2NjX2Zvcm1hdHNbXSA9IHsKKwl7IC5mb3JtYXQgPSBEUk1fRk9STUFU X1hSR0I4ODg4LCAuZGVwdGggPSAyNCwgLm51bV9wbGFuZXMgPSAzLAorCSAgLmNwcCA9IHsgNCwg MSwgMCwgfSwgLmhzdWIgPSAyLCAudnN1YiA9IDMyLCB9LAorCXsgLmZvcm1hdCA9IERSTV9GT1JN QVRfWEJHUjg4ODgsIC5kZXB0aCA9IDI0LCAubnVtX3BsYW5lcyA9IDMsCisJICAuY3BwID0geyA0 LCAxLCAwLCB9LCAuaHN1YiA9IDIsIC52c3ViID0gMzIsIH0sCisJeyAuZm9ybWF0ID0gRFJNX0ZP Uk1BVF9BUkdCODg4OCwgLmRlcHRoID0gMzIsIC5udW1fcGxhbmVzID0gMywKKwkgIC5jcHAgPSB7 IDQsIDEsIDAsIH0sIC5oc3ViID0gMiwgLnZzdWIgPSAzMiwgLmhhc19hbHBoYSA9IHRydWUgfSwK Kwl7IC5mb3JtYXQgPSBEUk1fRk9STUFUX0FCR1I4ODg4LCAuZGVwdGggPSAzMiwgLm51bV9wbGFu ZXMgPSAzLAorCSAgLmNwcCA9IHsgNCwgMSwgMCwgfSwgLmhzdWIgPSAyLCAudnN1YiA9IDMyLCAu aGFzX2FscGhhID0gdHJ1ZSB9LAorfTsKKwogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZm9ybWF0 X2luZm8gKgogbG9va3VwX2Zvcm1hdF9pbmZvKGNvbnN0IHN0cnVjdCBkcm1fZm9ybWF0X2luZm8g Zm9ybWF0c1tdLAogCQkgICBpbnQgbnVtX2Zvcm1hdHMsIHUzMiBmb3JtYXQpCkBAIC0yNTc4LDYg KzI2MTEsMTAgQEAgaW50ZWxfZ2V0X2Zvcm1hdF9pbmZvKGNvbnN0IHN0cnVjdCBkcm1fbW9kZV9m Yl9jbWQyICpjbWQpCiAJCXJldHVybiBsb29rdXBfZm9ybWF0X2luZm8oZ2VuMTJfY2NzX2Zvcm1h dHMsCiAJCQkJCSAgQVJSQVlfU0laRShnZW4xMl9jY3NfZm9ybWF0cyksCiAJCQkJCSAgY21kLT5w aXhlbF9mb3JtYXQpOworCWNhc2UgSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJfUkNfQ0NT X0NDOgorCQlyZXR1cm4gbG9va3VwX2Zvcm1hdF9pbmZvKGdlbjEyX2Njc19jY19mb3JtYXRzLAor CQkJCQkgIEFSUkFZX1NJWkUoZ2VuMTJfY2NzX2NjX2Zvcm1hdHMpLAorCQkJCQkgIGNtZC0+cGl4 ZWxfZm9ybWF0KTsKIAlkZWZhdWx0OgogCQlyZXR1cm4gTlVMTDsKIAl9CkBAIC0yNTg2LDYgKzI2 MjMsNyBAQCBpbnRlbF9nZXRfZm9ybWF0X2luZm8oY29uc3Qgc3RydWN0IGRybV9tb2RlX2ZiX2Nt ZDIgKmNtZCkKIGJvb2wgaXNfY2NzX21vZGlmaWVyKHU2NCBtb2RpZmllcikKIHsKIAlyZXR1cm4g bW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJfUkNfQ0NTIHx8CisJICAg ICAgIG1vZGlmaWVyID09IEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDU19DQyB8 fAogCSAgICAgICBtb2RpZmllciA9PSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9DQ1MgfHwKIAkg ICAgICAgbW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lmX1RJTEVEX0NDUzsKIH0KQEAgLTI3 OTgsNiArMjgzNiwxOCBAQCBpbnRlbF9maWxsX2ZiX2luZm8oc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2LAogCQlpbnQgeCwgeTsKIAkJaW50IHJldDsKIAorCQkvKgorCQkgKiBQbGFu ZSAyIG9mIFJlbmRlciBDb21wcmVzc2lvbiB3aXRoIENsZWFyIENvbG9yIGZiIG1vZGlmaWVyCisJ CSAqIGlzIGNvbnN1bWVkIGJ5IHRoZSBkcml2ZXIgYW5kIG5vdCBwYXNzZWQgdG8gREUuIFNraXAg dGhlCisJCSAqIGFyaXRobWV0aWMgcmVsYXRlZCB0byBhbGlnbm1lbnQgYW5kIG9mZnNldCBjYWxj dWxhdGlvbi4KKwkJICovCisJCWlmIChpID09IDIgJiYgZmItPm1vZGlmaWVyID09IEk5MTVfRk9S TUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDU19DQykgeworCQkJaWYgKElTX0FMSUdORUQoZmIt Pm9mZnNldHNbMl0sIFBBR0VfU0laRSkpCisJCQkJY29udGludWU7CisJCQllbHNlCisJCQkJcmV0 dXJuIC1FSU5WQUw7CisJCX0KKwogCQljcHAgPSBmYi0+Zm9ybWF0LT5jcHBbaV07CiAJCXdpZHRo ID0gZHJtX2ZyYW1lYnVmZmVyX3BsYW5lX3dpZHRoKGZiLT53aWR0aCwgZmIsIGkpOwogCQloZWln aHQgPSBkcm1fZnJhbWVidWZmZXJfcGxhbmVfaGVpZ2h0KGZiLT5oZWlnaHQsIGZiLCBpKTsKQEAg LTQyOTUsNiArNDM0NSw3IEBAIHN0YXRpYyB1MzIgc2tsX3BsYW5lX2N0bF90aWxpbmcodTY0IGZi X21vZGlmaWVyKQogCWNhc2UgSTkxNV9GT1JNQVRfTU9EX1lfVElMRUQ6CiAJCXJldHVybiBQTEFO RV9DVExfVElMRURfWTsKIAljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0NDUzoKKwljYXNl IEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDU19DQzoKIAkJcmV0dXJuIFBMQU5F X0NUTF9USUxFRF9ZIHwgUExBTkVfQ1RMX1JFTkRFUl9ERUNPTVBSRVNTSU9OX0VOQUJMRTsKIAlj YXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDUzoKIAkJcmV0dXJuIFBMQU5F X0NUTF9USUxFRF9ZIHwKQEAgLTE1MjQ1LDYgKzE1Mjk2LDE1IEBAIHN0YXRpYyBpbnQgaW50ZWxf cGxhbmVfcGluX2ZiKHN0cnVjdCBpbnRlbF9wbGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGUpCiAKIAlw bGFuZV9zdGF0ZS0+dm1hID0gdm1hOwogCisJaWYgKGZiLT5tb2RpZmllciA9PSBJOTE1X0ZPUk1B VF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1NfQ0MpIHsKKwkJdTMyICpjY2FkZHIgPSBrbWFwX2F0 b21pYyhpOTE1X2dlbV9vYmplY3RfZ2V0X3BhZ2UoaW50ZWxfZmJfb2JqKGZiKSwKKwkJCQkJCQkJ ICBmYi0+b2Zmc2V0c1syXSA+PiBQQUdFX1NISUZUKSk7CisKKwkJcGxhbmVfc3RhdGUtPmNjdmFs ID0gKCh1NjQpKihjY2FkZHIgKyBDQ19WQUxfSElHSEVSX09GRlNFVCkgPDwgMzIpCisJCQkJICAg ICB8ICooY2NhZGRyICsgQ0NfVkFMX0xPV0VSX09GRlNFVCk7CisJCWt1bm1hcF9hdG9taWMoY2Nh ZGRyKTsKKwl9CisKIAlyZXR1cm4gMDsKIH0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3R5cGVzLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfdHlwZXMuaAppbmRleCA4M2VhMDQxNDliNzcuLmUxYmQx ODEyMmNlNiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9k aXNwbGF5X3R5cGVzLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9k aXNwbGF5X3R5cGVzLmgKQEAgLTYwNyw2ICs2MDcsOSBAQCBzdHJ1Y3QgaW50ZWxfcGxhbmVfc3Rh dGUgewogCXUzMiBwbGFuYXJfc2xhdmU7CiAKIAlzdHJ1Y3QgZHJtX2ludGVsX3Nwcml0ZV9jb2xv cmtleSBja2V5OworCisJLyogQ2xlYXIgQ29sb3IgVmFsdWUgKi8KKwl1NjQgY2N2YWw7CiB9Owog CiBzdHJ1Y3QgaW50ZWxfaW5pdGlhbF9wbGFuZV9jb25maWcgewpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9zcHJpdGUuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfc3ByaXRlLmMKaW5kZXggNjdhOTAwNTk5MDBmLi44OWY3ZmJjODdh ZDkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfc3ByaXRl LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9zcHJpdGUuYwpAQCAt NTk3LDYgKzU5Nyw3IEBAIHNrbF9wcm9ncmFtX3BsYW5lKHN0cnVjdCBpbnRlbF9wbGFuZSAqcGxh bmUsCiAJdW5zaWduZWQgbG9uZyBpcnFmbGFnczsKIAl1MzIga2V5bXNrLCBrZXltYXg7CiAJdTMy IHBsYW5lX2N0bCA9IHBsYW5lX3N0YXRlLT5jdGw7CisJdTY0IGNjdmFsID0gcGxhbmVfc3RhdGUt PmNjdmFsOwogCiAJcGxhbmVfY3RsIHw9IHNrbF9wbGFuZV9jdGxfY3J0YyhjcnRjX3N0YXRlKTsK IApAQCAtNjM5LDYgKzY0MCwxMCBAQCBza2xfcHJvZ3JhbV9wbGFuZShzdHJ1Y3QgaW50ZWxfcGxh bmUgKnBsYW5lLAogCWlmIChmYi0+Zm9ybWF0LT5pc195dXYgJiYgaWNsX2lzX2hkcl9wbGFuZShk ZXZfcHJpdiwgcGxhbmVfaWQpKQogCQlpY2xfcHJvZ3JhbV9pbnB1dF9jc2MocGxhbmUsIGNydGNf c3RhdGUsIHBsYW5lX3N0YXRlKTsKIAorCWlmIChmYi0+bW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRf TU9EX1lfVElMRURfR0VOMTJfUkNfQ0NTX0NDKQorCQlpbnRlbF91bmNvcmVfd3JpdGU2NF9mdygm ZGV2X3ByaXYtPnVuY29yZSwKKwkJCQkJUExBTkVfQ0NfVkFMKHBpcGUsIHBsYW5lX2lkKSwgY2N2 YWwpOworCiAJc2tsX3dyaXRlX3BsYW5lX3dtKHBsYW5lLCBjcnRjX3N0YXRlKTsKIAogCUk5MTVf V1JJVEVfRlcoUExBTkVfS0VZVkFMKHBpcGUsIHBsYW5lX2lkKSwga2V5LT5taW5fdmFsdWUpOwpA QCAtMjEwNiw3ICsyMTExLDggQEAgc3RhdGljIGludCBza2xfcGxhbmVfY2hlY2tfZmIoY29uc3Qg c3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCiAJICAgICBmYi0+bW9kaWZpZXIg PT0gSTkxNV9GT1JNQVRfTU9EX1lmX1RJTEVEIHx8CiAJICAgICBmYi0+bW9kaWZpZXIgPT0gSTkx NV9GT1JNQVRfTU9EX1lfVElMRURfQ0NTIHx8CiAJICAgICBmYi0+bW9kaWZpZXIgPT0gSTkxNV9G T1JNQVRfTU9EX1lmX1RJTEVEX0NDUyB8fAotCSAgICAgZmItPm1vZGlmaWVyID09IEk5MTVfRk9S TUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDUykpIHsKKwkgICAgIGZiLT5tb2RpZmllciA9PSBJ OTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1MgfHwKKwkgICAgIGZiLT5tb2RpZmll ciA9PSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1NfQ0MpKSB7CiAJCURSTV9E RUJVR19LTVMoIlkvWWYgdGlsaW5nIG5vdCBzdXBwb3J0ZWQgaW4gSUYtSUQgbW9kZVxuIik7CiAJ CXJldHVybiAtRUlOVkFMOwogCX0KQEAgLTI1NzksNiArMjU4NSw3IEBAIHN0YXRpYyBjb25zdCB1 NjQgc2tsX3BsYW5lX2Zvcm1hdF9tb2RpZmllcnNfY2NzW10gPSB7CiAKIHN0YXRpYyBjb25zdCB1 NjQgZ2VuMTJfcGxhbmVfZm9ybWF0X21vZGlmaWVyc19jY3NbXSA9IHsKIAlJOTE1X0ZPUk1BVF9N T0RfWV9USUxFRF9HRU4xMl9SQ19DQ1MsCisJSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJf UkNfQ0NTX0NDLAogCUk5MTVfRk9STUFUX01PRF9ZX1RJTEVELAogCUk5MTVfRk9STUFUX01PRF9Y X1RJTEVELAogCURSTV9GT1JNQVRfTU9EX0xJTkVBUiwKQEAgLTI3NTAsNiArMjc1Nyw3IEBAIHN0 YXRpYyBib29sIGdlbjEyX3BsYW5lX2Zvcm1hdF9tb2Rfc3VwcG9ydGVkKHN0cnVjdCBkcm1fcGxh bmUgKl9wbGFuZSwKIAljYXNlIEk5MTVfRk9STUFUX01PRF9YX1RJTEVEOgogCWNhc2UgSTkxNV9G T1JNQVRfTU9EX1lfVElMRUQ6CiAJY2FzZSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9S Q19DQ1M6CisJY2FzZSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1NfQ0M6CiAJ CWJyZWFrOwogCWRlZmF1bHQ6CiAJCXJldHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfcmVnLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5o CmluZGV4IDJlNDQ0YTE4ZWQwYi4uNGE2ODNkYjI2N2MxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X3JlZy5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVn LmgKQEAgLTY4NDAsNiArNjg0MCw4IEBAIGVudW0gewogI2RlZmluZSBfUExBTkVfS0VZTUFYXzFf QQkJCTB4NzAxYTAKICNkZWZpbmUgX1BMQU5FX0tFWU1BWF8yX0EJCQkweDcwMmEwCiAjZGVmaW5l ICBQTEFORV9LRVlNQVhfQUxQSEEoYSkJCQkoKGEpIDw8IDI0KQorI2RlZmluZSBfUExBTkVfQ0Nf VkFMXzFfQQkJCTB4NzAxYjQKKyNkZWZpbmUgX1BMQU5FX0NDX1ZBTF8yX0EJCQkweDcwMmI0CiAj ZGVmaW5lIF9QTEFORV9BVVhfRElTVF8xX0EJCQkweDcwMWMwCiAjZGVmaW5lIF9QTEFORV9BVVhf RElTVF8yX0EJCQkweDcwMmMwCiAjZGVmaW5lIF9QTEFORV9BVVhfT0ZGU0VUXzFfQQkJCTB4NzAx YzQKQEAgLTY4NzksNiArNjg4MSwxNiBAQCBlbnVtIHsKICNkZWZpbmUgX1BMQU5FX05WMTJfQlVG X0NGR18xX0EJCTB4NzAyNzgKICNkZWZpbmUgX1BMQU5FX05WMTJfQlVGX0NGR18yX0EJCTB4NzAz NzgKIAorI2RlZmluZSBfUExBTkVfQ0NfVkFMXzFfQgkJCTB4NzExYjQKKyNkZWZpbmUgX1BMQU5F X0NDX1ZBTF8yX0IJCQkweDcxMmI0CisjZGVmaW5lIF9QTEFORV9DQ19WQUxfMShwaXBlKQlfUElQ RShwaXBlLCBfUExBTkVfQ0NfVkFMXzFfQSwgX1BMQU5FX0NDX1ZBTF8xX0IpCisjZGVmaW5lIF9Q TEFORV9DQ19WQUxfMihwaXBlKQlfUElQRShwaXBlLCBfUExBTkVfQ0NfVkFMXzJfQSwgX1BMQU5F X0NDX1ZBTF8yX0IpCisjZGVmaW5lIFBMQU5FX0NDX1ZBTChwaXBlLCBwbGFuZSkJXAorCV9NTUlP X1BMQU5FKHBsYW5lLCBfUExBTkVfQ0NfVkFMXzEocGlwZSksIF9QTEFORV9DQ19WQUxfMihwaXBl KSkKKworI2RlZmluZSBDQ19WQUxfTE9XRVJfT0ZGU0VUCQk0CisjZGVmaW5lIENDX1ZBTF9ISUdI RVJfT0ZGU0VUCQk1CisKIC8qIElucHV0IENTQyBSZWdpc3RlciBEZWZpbml0aW9ucyAqLwogI2Rl ZmluZSBfUExBTkVfSU5QVVRfQ1NDX1JZX0dZXzFfQQkweDcwMUUwCiAjZGVmaW5lIF9QTEFORV9J TlBVVF9DU0NfUllfR1lfMl9BCTB4NzAyRTAKLS0gCjIuMjAuMQoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRl bC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4