From mboxrd@z Thu Jan 1 00:00:00 1970 From: Radhakrishna Sripada Subject: [PATCH 6/6] drm/i915/tgl: Add Clear Color supoort for TGL Render Decompression Date: Tue, 17 Sep 2019 05:11:55 -0700 Message-ID: <20190917121155.13197-7-radhakrishna.sripada@intel.com> References: <20190917121155.13197-1-radhakrishna.sripada@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5310C6EC15 for ; Tue, 17 Sep 2019 12:10:29 +0000 (UTC) In-Reply-To: <20190917121155.13197-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 ZGlmaWVyLgoKQ2M6IERoaW5ha2FyYW4gUGFuZGl5YW4gPGRoaW5ha2FyYW4ucGFuZGl5YW5AaW50 ZWwuY29tPgpDYzogVmlsbGUgU3lyamFsYSA8dmlsbGUuc3lyamFsYUBpbnRlbC5jb20+CkNjOiBT aGFzaGFuayBTaGFybWEgPHNoYXNoYW5rLnNoYXJtYUBpbnRlbC5jb20+CkNjOiBSYWZhZWwgQW50 b2dub2xsaSA8cmFmYWVsLmFudG9nbm9sbGlAaW50ZWwuY29tPgpDYzogTWF0dCBSb3BlciA8bWF0 dGhldy5kLnJvcGVyQGludGVsLmNvbT4KQ2M6IE5hbmxleSBHIENoZXJ5IDxuYW5sZXkuZy5jaGVy eUBpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IFJhZGhha3Jpc2huYSBTcmlwYWRhIDxyYWRoYWty aXNobmEuc3JpcGFkYUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxh eS9pbnRlbF9kaXNwbGF5LmMgIHwgNDcgKysrKysrKysrKysrKysrKystLQogLi4uL2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV90eXBlcy5oICAgIHwgIDMgKysKIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2Rpc3BsYXkvaW50ZWxfc3ByaXRlLmMgICB8IDEwICsrKy0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfcmVnLmggICAgICAgICAgICAgICB8IDEzICsrKysrCiA0IGZpbGVzIGNoYW5n ZWQsIDY5IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwppbmRleCAyZGE3MjFhNmFiYWIuLjcyNWI5NzI0 ZGE0OSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNw bGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMK QEAgLTE5MTMsNiArMTkxMyw3IEBAIGludGVsX3RpbGVfd2lkdGhfYnl0ZXMoY29uc3Qgc3RydWN0 IGRybV9mcmFtZWJ1ZmZlciAqZmIsIGludCBjb2xvcl9wbGFuZSkKIAkJLyogZmFsbCB0aHJvdWdo ICovCiAJY2FzZSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1M6CiAJY2FzZSBJ OTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9NQ19DQ1M6CisJY2FzZSBJOTE1X0ZPUk1BVF9N T0RfWV9USUxFRF9HRU4xMl9SQ19DQ1NfQ0M6CiAJCWlmIChjb2xvcl9wbGFuZSA9PSAxKQogCQkJ cmV0dXJuIGNwcDsKIAkJLyogZmFsbCB0aHJvdWdoICovCkBAIC0yMDUxLDYgKzIwNTIsNyBAQCBz dGF0aWMgdW5zaWduZWQgaW50IGludGVsX3N1cmZfYWxpZ25tZW50KGNvbnN0IHN0cnVjdCBkcm1f ZnJhbWVidWZmZXIgKmZiLAogCQlyZXR1cm4gMDsKIAljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJ TEVEX0dFTjEyX1JDX0NDUzoKIAljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX01D X0NDUzoKKwljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDU19DQzoKIAkJ cmV0dXJuIDQgKiA0ICogMTAyNDsKIAljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0NDUzoK IAljYXNlIEk5MTVfRk9STUFUX01PRF9ZZl9USUxFRF9DQ1M6CkBAIC0yMjU2LDYgKzIyNTgsNyBA QCBzdGF0aWMgYm9vbCBpc19zdXJmYWNlX2xpbmVhcih1NjQgbW9kaWZpZXIsIGludCBjb2xvcl9w bGFuZSkKIAkJcmV0dXJuIHRydWU7CiAJY2FzZSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4x Ml9SQ19DQ1M6CiAJY2FzZSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9NQ19DQ1M6CisJ Y2FzZSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1NfQ0M6CiAJCXJldHVybiBj b2xvcl9wbGFuZSA9PSAxOwogCWRlZmF1bHQ6CiAJCXJldHVybiBmYWxzZTsKQEAgLTI0NDgsNiAr MjQ1MSw3IEBAIHN0YXRpYyB1bnNpZ25lZCBpbnQgaW50ZWxfZmJfbW9kaWZpZXJfdG9fdGlsaW5n KHU2NCBmYl9tb2RpZmllcikKIAljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0NDUzoKIAlj YXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDUzoKIAljYXNlIEk5MTVfRk9S TUFUX01PRF9ZX1RJTEVEX0dFTjEyX01DX0NDUzoKKwljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJ TEVEX0dFTjEyX1JDX0NDU19DQzoKIAkJcmV0dXJuIEk5MTVfVElMSU5HX1k7CiAJZGVmYXVsdDoK IAkJcmV0dXJuIEk5MTVfVElMSU5HX05PTkU7CkBAIC0yNDk3LDYgKzI1MDEsMjEgQEAgc3RhdGlj IGNvbnN0IHN0cnVjdCBkcm1fZm9ybWF0X2luZm8gZ2VuMTJfY2NzX2Zvcm1hdHNbXSA9IHsKIAkg IC5jcHAgPSB7IDQsIDEsIH0sIC5oc3ViID0gMiwgLnZzdWIgPSAzMiwgLmhhc19hbHBoYSA9IHRy dWUgfSwKIH07CiAKKy8qCisgKiBHZW4tMTIgY29tcHJlc3Npb24gdXNlcyA0IGJpdHMgb2YgQ0NT IGRhdGEgZm9yIGVhY2ggY2FjaGUgbGluZSBwYWlyIGluIHRoZQorICogbWFpbiBzdXJmYWNlLiBB bmQgZWFjaCA2NEIgQ0NTIGNhY2hlIGxpbmUgcmVwcmVzZW50cyBhbiBhcmVhIG9mIDR4MSBZLXRp bGVzCisgKiBpbiB0aGUgbWFpbiBzdXJmYWNlLiBXaXRoIDQgYnl0ZSBwaXhlbHMgYW5kIGVhY2gg WS10aWxlIGhhdmluZyBkaW1lbnNpb25zIG9mCisgKiAzMngzMiBwaXhlbHMsIHRoZSByYXRpbyB0 dXJucyBvdXQgdG8gMUIgaW4gdGhlIENDUyBmb3IgZXZlcnkgMiB4IDMyIHBpeGVscyBpbgorICog dGhlIG1haW4gc3VyZmFjZS4gQWRkaXRpb25hbCBzdXJmYWNlIGlzIHVzZWQgdG8gcGFzcyB0aGUg Q2xlYXIgQ29sb3IKKyAqIHN0cnVjdHVyZSBmb3IgdGhlIGRyaXZlciB0byBwcm9ncmFtIHRoZSBE RS4KKyAqLworc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZm9ybWF0X2luZm8gZ2VuMTJfY2NzX2Nj X2Zvcm1hdHNbXSA9IHsKKwl7IC5mb3JtYXQgPSBEUk1fRk9STUFUX1hSR0I4ODg4LCAuZGVwdGgg PSAyNCwgLm51bV9wbGFuZXMgPSAzLCAuY3BwID0geyA0LCAxLCAwfSwgLmhzdWIgPSAyLCAudnN1 YiA9IDMyLCB9LAorCXsgLmZvcm1hdCA9IERSTV9GT1JNQVRfWEJHUjg4ODgsIC5kZXB0aCA9IDI0 LCAubnVtX3BsYW5lcyA9IDMsIC5jcHAgPSB7IDQsIDEsIDB9LCAuaHN1YiA9IDIsIC52c3ViID0g MzIsIH0sCisJeyAuZm9ybWF0ID0gRFJNX0ZPUk1BVF9BUkdCODg4OCwgLmRlcHRoID0gMzIsIC5u dW1fcGxhbmVzID0gMywgLmNwcCA9IHsgNCwgMSwgMH0sIC5oc3ViID0gMiwgLnZzdWIgPSAzMiwg fSwKKwl7IC5mb3JtYXQgPSBEUk1fRk9STUFUX0FCR1I4ODg4LCAuZGVwdGggPSAzMiwgLm51bV9w bGFuZXMgPSAzLCAuY3BwID0geyA0LCAxLCAwfSwgLmhzdWIgPSAyLCAudnN1YiA9IDMyLCB9LAor fTsKKwogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZm9ybWF0X2luZm8gKgogbG9va3VwX2Zvcm1h dF9pbmZvKGNvbnN0IHN0cnVjdCBkcm1fZm9ybWF0X2luZm8gZm9ybWF0c1tdLAogCQkgICBpbnQg bnVtX2Zvcm1hdHMsIHUzMiBmb3JtYXQpCkBAIC0yNTI1LDYgKzI1NDQsMTAgQEAgaW50ZWxfZ2V0 X2Zvcm1hdF9pbmZvKGNvbnN0IHN0cnVjdCBkcm1fbW9kZV9mYl9jbWQyICpjbWQpCiAJCXJldHVy biBsb29rdXBfZm9ybWF0X2luZm8oZ2VuMTJfY2NzX2Zvcm1hdHMsCiAJCQkJCSAgQVJSQVlfU0la RShnZW4xMl9jY3NfZm9ybWF0cyksCiAJCQkJCSAgY21kLT5waXhlbF9mb3JtYXQpOworCWNhc2Ug STkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJfUkNfQ0NTX0NDOgorCQlyZXR1cm4gbG9va3Vw X2Zvcm1hdF9pbmZvKGdlbjEyX2Njc19mb3JtYXRzLAorCQkJCQkgIEFSUkFZX1NJWkUoZ2VuMTJf Y2NzX2NjX2Zvcm1hdHMpLAorCQkJCQkgIGNtZC0+cGl4ZWxfZm9ybWF0KTsKIAlkZWZhdWx0Ogog CQlyZXR1cm4gTlVMTDsKIAl9CkBAIC0yNTM0LDYgKzI1NTcsNyBAQCBib29sIGlzX2Njc19tb2Rp Zmllcih1NjQgbW9kaWZpZXIpCiB7CiAJcmV0dXJuIG1vZGlmaWVyID09IEk5MTVfRk9STUFUX01P RF9ZX1RJTEVEX0dFTjEyX1JDX0NDUyB8fAogCSAgICAgICBtb2RpZmllciA9PSBJOTE1X0ZPUk1B VF9NT0RfWV9USUxFRF9HRU4xMl9NQ19DQ1MgfHwKKwkgICAgICAgbW9kaWZpZXIgPT0gSTkxNV9G T1JNQVRfTU9EX1lfVElMRURfR0VOMTJfUkNfQ0NTX0NDIHx8CiAJICAgICAgIG1vZGlmaWVyID09 IEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0NDUyB8fAogCSAgICAgICBtb2RpZmllciA9PSBJOTE1 X0ZPUk1BVF9NT0RfWWZfVElMRURfQ0NTOwogfQpAQCAtNDEyMCw2ICs0MTQ0LDkgQEAgc3RhdGlj IHUzMiBza2xfcGxhbmVfY3RsX3RpbGluZyh1NjQgZmJfbW9kaWZpZXIpCiAJY2FzZSBJOTE1X0ZP Uk1BVF9NT0RfWV9USUxFRF9DQ1M6CiAJCS8qIGZhbGwgdGhyb3VnaCAqLwogCWNhc2UgSTkxNV9G T1JNQVRfTU9EX1lfVElMRURfR0VOMTJfUkNfQ0NTOgorCQlyZXR1cm4gUExBTkVfQ1RMX1RJTEVE X1kgfCBQTEFORV9DVExfUkVOREVSX0RFQ09NUFJFU1NJT05fRU5BQkxFIHwKKwkJCUlDTF9QTEFO RV9DVExfQ0xFQVJfQ09MT1JfRElTQUJMRTsKKwljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVE X0dFTjEyX1JDX0NDU19DQzoKIAkJcmV0dXJuIFBMQU5FX0NUTF9USUxFRF9ZIHwgUExBTkVfQ1RM X1JFTkRFUl9ERUNPTVBSRVNTSU9OX0VOQUJMRTsKIAljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJ TEVEX0dFTjEyX01DX0NDUzoKIAkJcmV0dXJuIFBMQU5FX0NUTF9USUxFRF9ZIHwgUExBTkVfQ1RM X01FRElBX0RFQ09NUFJFU1NJT05fRU5BQkxFOwpAQCAtOTg5Nyw5ICs5OTI0LDEzIEBAIHNreWxh a2VfZ2V0X2luaXRpYWxfcGxhbmVfY29uZmlnKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAogCWNh c2UgUExBTkVfQ1RMX1RJTEVEX1k6CiAJCXBsYW5lX2NvbmZpZy0+dGlsaW5nID0gSTkxNV9USUxJ TkdfWTsKIAkJaWYgKHZhbCAmIFBMQU5FX0NUTF9SRU5ERVJfREVDT01QUkVTU0lPTl9FTkFCTEUp Ci0JCQlmYi0+bW9kaWZpZXIgPSBJTlRFTF9HRU4oZGV2X3ByaXYpID49IDEyID8KLQkJCQlJOTE1 X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1MgOgotCQkJCUk5MTVfRk9STUFUX01PRF9Z X1RJTEVEX0NDUzsKKwkJCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDEyKQorCQkJCWZiLT5t b2RpZmllciA9IHZhbCAmCisJCQkJCUlDTF9QTEFORV9DVExfQ0xFQVJfQ09MT1JfRElTQUJMRSA/ CisJCQkJCUk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDUyA6CisJCQkJCUk5MTVf Rk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDU19DQzsKKwkJCWVsc2UKKwkJCQlmYi0+bW9k aWZpZXIgPSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9DQ1M7CiAJCWVsc2UgaWYgKHZhbCAmIFBM QU5FX0NUTF9SRU5ERVJfREVDT01QUkVTU0lPTl9FTkFCTEUpCiAJCQlmYi0+bW9kaWZpZXIgPSBJ OTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9NQ19DQ1M7CiAJCWVsc2UKQEAgLTE0MzIyLDYg KzE0MzUzLDE1IEBAIHN0YXRpYyBpbnQgaW50ZWxfcGxhbmVfcGluX2ZiKHN0cnVjdCBpbnRlbF9w bGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGUpCiAKIAlwbGFuZV9zdGF0ZS0+dm1hID0gdm1hOwogCisJ aWYgKGZiLT5tb2RpZmllciA9PSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1Nf Q0MpIHsKKwkJdTMyICpjY2FkZHIgPSBrbWFwX2F0b21pYyhpOTE1X2dlbV9vYmplY3RfZ2V0X3Bh Z2UoaW50ZWxfZmJfb2JqKGZiKSwKKwkJCQkJCQkJICBmYi0+b2Zmc2V0c1syXSA+PiBQQUdFX1NI SUZUKSk7CisKKwkJcGxhbmVfc3RhdGUtPmNjdmFsID0gKCh1NjQpKihjY2FkZHIgKyBDQ19WQUxf SElHSEVSX09GRlNFVCkgPDwgMzIpCisJCQkJICAgICB8ICooY2NhZGRyICsgQ0NfVkFMX0xPV0VS X09GRlNFVCk7CisJCWt1bm1hcF9hdG9taWMoY2NhZGRyKTsKKwl9CisKIAlyZXR1cm4gMDsKIH0K IApAQCAtMTU3MDksNiArMTU3NDksNyBAQCBzdGF0aWMgaW50IGludGVsX2ZyYW1lYnVmZmVyX2lu aXQoc3RydWN0IGludGVsX2ZyYW1lYnVmZmVyICppbnRlbF9mYiwKIAkJICogdGlsZSB3aWR0aHMu CiAJCSAqLwogCQlpZiAoKGZiLT5tb2RpZmllciA9PSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRF9H RU4xMl9SQ19DQ1MgfHwKKwkJICAgICBmYi0+bW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lf VElMRURfR0VOMTJfUkNfQ0NTX0NDIHx8CiAJCSAgICAgZmItPm1vZGlmaWVyID09IEk5MTVfRk9S TUFUX01PRF9ZX1RJTEVEX0dFTjEyX01DX0NDUykgJiYKIAkJICAgIGkgPT0gMCkKIAkJCXN0cmlk ZV9hbGlnbm1lbnQgKj0gNDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3Bs YXkvaW50ZWxfZGlzcGxheV90eXBlcy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9p bnRlbF9kaXNwbGF5X3R5cGVzLmgKaW5kZXggZDVjYzRiODEwZDllLi5hODI2OTVhM2UwYjggMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV90eXBl cy5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV90eXBl cy5oCkBAIC01NzksNiArNTc5LDkgQEAgc3RydWN0IGludGVsX3BsYW5lX3N0YXRlIHsKIAl1MzIg c2xhdmU7CiAKIAlzdHJ1Y3QgZHJtX2ludGVsX3Nwcml0ZV9jb2xvcmtleSBja2V5OworCisJLyog Q2xlYXIgQ29sb3IgVmFsdWUgKi8KKwl1NjQgY2N2YWw7CiB9OwogCiBzdHJ1Y3QgaW50ZWxfaW5p dGlhbF9wbGFuZV9jb25maWcgewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlz cGxheS9pbnRlbF9zcHJpdGUuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxf c3ByaXRlLmMKaW5kZXggMTY1NTk4NDk1NWNhLi4zNjcyZThiOWMwYmMgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfc3ByaXRlLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9zcHJpdGUuYwpAQCAtNTQ5LDYgKzU0OSw3IEBAIHNr bF9wcm9ncmFtX3BsYW5lKHN0cnVjdCBpbnRlbF9wbGFuZSAqcGxhbmUsCiAJdTMyIHBsYW5lX2Nv bG9yX2N0bCA9IDA7CiAJdW5zaWduZWQgbG9uZyBpcnFmbGFnczsKIAl1MzIga2V5bXNrLCBrZXlt YXg7CisJdTY0IGNjdmFsID0gcGxhbmVfc3RhdGUtPmNjdmFsOwogCiAJcGxhbmVfY3RsIHw9IHNr bF9wbGFuZV9jdGxfY3J0YyhjcnRjX3N0YXRlKTsKIApAQCAtNjA5LDYgKzYxMCwxMCBAQCBza2xf cHJvZ3JhbV9wbGFuZShzdHJ1Y3QgaW50ZWxfcGxhbmUgKnBsYW5lLAogCWlmIChmYi0+Zm9ybWF0 LT5pc195dXYgJiYgaWNsX2lzX2hkcl9wbGFuZShkZXZfcHJpdiwgcGxhbmVfaWQpKQogCQlpY2xf cHJvZ3JhbV9pbnB1dF9jc2MocGxhbmUsIGNydGNfc3RhdGUsIHBsYW5lX3N0YXRlKTsKIAorCWlm IChmYi0+bW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJfUkNfQ0NTX0ND KQorCQlpbnRlbF91bmNvcmVfd3JpdGU2NF9mdygmZGV2X3ByaXYtPnVuY29yZSwKKwkJCQkJUExB TkVfQ0NfVkFMKHBpcGUsIHBsYW5lX2lkKSwgY2N2YWwpOworCiAJc2tsX3dyaXRlX3BsYW5lX3dt KHBsYW5lLCBjcnRjX3N0YXRlKTsKIAogCUk5MTVfV1JJVEVfRlcoUExBTkVfS0VZVkFMKHBpcGUs IHBsYW5lX2lkKSwga2V5LT5taW5fdmFsdWUpOwpAQCAtMTczOCw3ICsxNzQzLDggQEAgc3RhdGlj IGludCBza2xfcGxhbmVfY2hlY2tfZmIoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNy dGNfc3RhdGUsCiAJICAgICBmYi0+bW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lfVElMRURf Q0NTIHx8CiAJICAgICBmYi0+bW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lmX1RJTEVEX0ND UyB8fAogCSAgICAgZmItPm1vZGlmaWVyID09IEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEy X1JDX0NDUyB8fAotCSAgICAgZmItPm1vZGlmaWVyID09IEk5MTVfRk9STUFUX01PRF9ZX1RJTEVE X0dFTjEyX01DX0NDUykpIHsKKwkgICAgIGZiLT5tb2RpZmllciA9PSBJOTE1X0ZPUk1BVF9NT0Rf WV9USUxFRF9HRU4xMl9NQ19DQ1MgfHwKKwkgICAgIGZiLT5tb2RpZmllciA9PSBJOTE1X0ZPUk1B VF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1NfQ0MpKSB7CiAJCURSTV9ERUJVR19LTVMoIlkvWWYg dGlsaW5nIG5vdCBzdXBwb3J0ZWQgaW4gSUYtSUQgbW9kZVxuIik7CiAJCXJldHVybiAtRUlOVkFM OwogCX0KQEAgLTIxNTMsNiArMjE1OSw3IEBAIHN0YXRpYyBjb25zdCB1NjQgc2tsX3BsYW5lX2Zv cm1hdF9tb2RpZmllcnNfY2NzW10gPSB7CiBzdGF0aWMgY29uc3QgdTY0IGdlbjEyX3BsYW5lX2Zv cm1hdF9tb2RpZmllcnNfY2NzW10gPSB7CiAJSTkxNV9GT1JNQVRfTU9EX1lfVElMRURfR0VOMTJf UkNfQ0NTLAogCUk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX01DX0NDUywKKwlJOTE1X0ZP Uk1BVF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1NfQ0MsCiAJSTkxNV9GT1JNQVRfTU9EX1lfVElM RUQsCiAJSTkxNV9GT1JNQVRfTU9EX1hfVElMRUQsCiAJRFJNX0ZPUk1BVF9NT0RfTElORUFSLApA QCAtMjMyMSw2ICsyMzI4LDcgQEAgc3RhdGljIGJvb2wgZ2VuMTJfcGxhbmVfZm9ybWF0X21vZF9z dXBwb3J0ZWQoc3RydWN0IGRybV9wbGFuZSAqX3BsYW5lLAogCWNhc2UgSTkxNV9GT1JNQVRfTU9E X1hfVElMRUQ6CiAJY2FzZSBJOTE1X0ZPUk1BVF9NT0RfWV9USUxFRDoKIAljYXNlIEk5MTVfRk9S TUFUX01PRF9ZX1RJTEVEX0dFTjEyX1JDX0NDUzoKKwljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJ TEVEX0dFTjEyX1JDX0NDU19DQzoKIAkJYnJlYWs7CiAJZGVmYXVsdDoKIAkJcmV0dXJuIGZhbHNl OwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKaW5kZXggMDk2YmU5NWVjN2Y5Li4wMGM1OWVkOGIxMTQg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaApAQCAtNjY4MSw2ICs2NjgxLDcgQEAgZW51bSB7CiAj ZGVmaW5lICAgUExBTkVfQ1RMX1lVVjQyMl9WWVVZCQkJKDMgPDwgMTYpCiAjZGVmaW5lICAgUExB TkVfQ1RMX1JFTkRFUl9ERUNPTVBSRVNTSU9OX0VOQUJMRQkoMSA8PCAxNSkKICNkZWZpbmUgICBQ TEFORV9DVExfVFJJQ0tMRV9GRUVEX0RJU0FCTEUJKDEgPDwgMTQpCisjZGVmaW5lCSAgSUNMX1BM QU5FX0NUTF9DTEVBUl9DT0xPUl9ESVNBQkxFCSgxIDw8IDEzKQogI2RlZmluZSAgIFBMQU5FX0NU TF9QTEFORV9HQU1NQV9ESVNBQkxFCQkoMSA8PCAxMykgLyogUHJlLUdMSyAqLwogI2RlZmluZSAg IFBMQU5FX0NUTF9USUxFRF9NQVNLCQkJKDB4NyA8PCAxMCkKICNkZWZpbmUgICBQTEFORV9DVExf VElMRURfTElORUFSCQkoMCA8PCAxMCkKQEAgLTY3MjEsNiArNjcyMiw4IEBAIGVudW0gewogI2Rl ZmluZSBfUExBTkVfS0VZTUFYXzFfQQkJCTB4NzAxYTAKICNkZWZpbmUgX1BMQU5FX0tFWU1BWF8y X0EJCQkweDcwMmEwCiAjZGVmaW5lICBQTEFORV9LRVlNQVhfQUxQSEEoYSkJCQkoKGEpIDw8IDI0 KQorI2RlZmluZSBfUExBTkVfQ0NfVkFMXzFfQQkJCTB4NzAxYjQKKyNkZWZpbmUgX1BMQU5FX0ND X1ZBTF8yX0EJCQkweDcwMmI0CiAjZGVmaW5lIF9QTEFORV9BVVhfRElTVF8xX0EJCQkweDcwMWMw CiAjZGVmaW5lIF9QTEFORV9BVVhfRElTVF8yX0EJCQkweDcwMmMwCiAjZGVmaW5lIF9QTEFORV9B VVhfT0ZGU0VUXzFfQQkJCTB4NzAxYzQKQEAgLTY3NjAsNiArNjc2MywxNiBAQCBlbnVtIHsKICNk ZWZpbmUgX1BMQU5FX05WMTJfQlVGX0NGR18xX0EJCTB4NzAyNzgKICNkZWZpbmUgX1BMQU5FX05W MTJfQlVGX0NGR18yX0EJCTB4NzAzNzgKIAorI2RlZmluZSBfUExBTkVfQ0NfVkFMXzFfQgkJCTB4 NzExYjQKKyNkZWZpbmUgX1BMQU5FX0NDX1ZBTF8yX0IJCQkweDcxMmI0CisjZGVmaW5lIF9QTEFO RV9DQ19WQUxfMShwaXBlKQlfUElQRShwaXBlLCBfUExBTkVfQ0NfVkFMXzFfQSwgX1BMQU5FX0ND X1ZBTF8xX0IpCisjZGVmaW5lIF9QTEFORV9DQ19WQUxfMihwaXBlKQlfUElQRShwaXBlLCBfUExB TkVfQ0NfVkFMXzJfQSwgX1BMQU5FX0NDX1ZBTF8yX0IpCisjZGVmaW5lIFBMQU5FX0NDX1ZBTChw aXBlLCBwbGFuZSkJXAorCV9NTUlPX1BMQU5FKHBsYW5lLCBfUExBTkVfQ0NfVkFMXzEocGlwZSks IF9QTEFORV9DQ19WQUxfMihwaXBlKSkKKworI2RlZmluZSBDQ19WQUxfTE9XRVJfT0ZGU0VUCQk0 CisjZGVmaW5lIENDX1ZBTF9ISUdIRVJfT0ZGU0VUCQk1CisKIC8qIElucHV0IENTQyBSZWdpc3Rl ciBEZWZpbml0aW9ucyAqLwogI2RlZmluZSBfUExBTkVfSU5QVVRfQ1NDX1JZX0dZXzFfQQkweDcw MUUwCiAjZGVmaW5lIF9QTEFORV9JTlBVVF9DU0NfUllfR1lfMl9BCTB4NzAyRTAKLS0gCjIuMjAu MQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwt Z2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4