From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rob Clark Subject: [RFC 1/2] drm/msm: add a5xx specific debugfs Date: Wed, 13 Dec 2017 15:12:56 -0500 Message-ID: <20171213201302.22001-2-robdclark@gmail.com> References: <20171213201302.22001-1-robdclark@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20171213201302.22001-1-robdclark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: David Airlie , linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Rob Clark , freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Jordan Crouse List-Id: linux-arm-msm@vger.kernel.org QWRkIHNvbWUgZGVidWdmcyB0byBkdW1wIG91dCBQRlAgYW5kIE1FIG1pY3JvY29udHJvbGxlciBz dGF0ZSwgYXMgd2VsbAphcyBzb21lIG9mIHRoZSBxdWV1ZXMgKE1FUSBhbmQgUk9RKS4gIEFsc28g YWRkIGEgZGVidWdmcyBmaWxlIHRvIHRyaWdnZXIKYSBHUFUgcmVzZXQgKGFuZCByZWxvYWRpbmcg dGhlIGZpcm13YXJlIG9uIG5leHQgc3VibWl0KS4KClNpZ25lZC1vZmYtYnk6IFJvYiBDbGFyayA8 cm9iZGNsYXJrQGdtYWlsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL01ha2VmaWxlICAg ICAgICAgICAgICAgfCAgIDIgKwogZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYTV4eF9kZWJ1 Z2ZzLmMgIHwgMTg4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9k cm0vbXNtL2FkcmVuby9hNXh4X2dwdS5jICAgICAgfCAgIDEgKwogZHJpdmVycy9ncHUvZHJtL21z bS9hZHJlbm8vYTV4eF9ncHUuaCAgICAgIHwgICA0ICsKIGRyaXZlcnMvZ3B1L2RybS9tc20vYWRy ZW5vL2FkcmVub19kZXZpY2UuYyB8ICAgNiArCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kZWJ1 Z2ZzLmMgICAgICAgICAgfCAgIDUgKy0KIGRyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2dwdS5oICAg ICAgICAgICAgICB8ICAgMiArCiA3IGZpbGVzIGNoYW5nZWQsIDIwNyBpbnNlcnRpb25zKCspLCAx IGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9ncHUvZHJtL21zbS9hZHJl bm8vYTV4eF9kZWJ1Z2ZzLmMKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL01ha2Vm aWxlIGIvZHJpdmVycy9ncHUvZHJtL21zbS9NYWtlZmlsZQppbmRleCA5MmIzODQ0MjAyZDIuLmVi ZTBjM2QwYjEyNiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9NYWtlZmlsZQorKysg Yi9kcml2ZXJzL2dwdS9kcm0vbXNtL01ha2VmaWxlCkBAIC02Miw2ICs2Miw4IEBAIG1zbS15IDo9 IFwKIAltc21fcmluZ2J1ZmZlci5vIFwKIAltc21fc3VibWl0cXVldWUubwogCittc20tJChDT05G SUdfREVCVUdfRlMpICs9IGFkcmVuby9hNXh4X2RlYnVnZnMubworCiBtc20tJChDT05GSUdfRFJN X0ZCREVWX0VNVUxBVElPTikgKz0gbXNtX2ZiZGV2Lm8KIG1zbS0kKENPTkZJR19DT01NT05fQ0xL KSArPSBtZHAvbWRwNC9tZHA0X2x2ZHNfcGxsLm8KIG1zbS0kKENPTkZJR19DT01NT05fQ0xLKSAr PSBoZG1pL2hkbWlfcGxsXzg5NjAubwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9h ZHJlbm8vYTV4eF9kZWJ1Z2ZzLmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNXh4X2Rl YnVnZnMuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmNlZjA5Nzgw ZWYxNwotLS0gL2Rldi9udWxsCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E1eHhf ZGVidWdmcy5jCkBAIC0wLDAgKzEsMTg4IEBACisvKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAxNyBU aGUgTGludXggRm91bmRhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIHBy b2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1v ZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGlj ZW5zZSB2ZXJzaW9uIDIgYW5kCisgKiBvbmx5IHZlcnNpb24gMiBhcyBwdWJsaXNoZWQgYnkgdGhl IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbi4KKyAqCisgKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJp YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VU IEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBN RVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUg dGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoK KyAqLworCisKKyNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgorI2luY2x1ZGUgPGxpbnV4L2RlYnVn ZnMuaD4KKyNpbmNsdWRlIDxkcm0vZHJtX3ByaW50Lmg+CisKKyNpbmNsdWRlICJhNXh4X2dwdS5o IgorCitzdGF0aWMgaW50IHBmcF9wcmludChzdHJ1Y3QgbXNtX2dwdSAqZ3B1LCBzdHJ1Y3QgZHJt X3ByaW50ZXIgKnApCit7CisJaW50IGk7CisKKwlkcm1fcHJpbnRmKHAsICJQRlAgc3RhdGU6XG4i KTsKKworCWZvciAoaSA9IDA7IGkgPCAzNjsgaSsrKSB7CisJCWdwdV93cml0ZShncHUsIFJFR19B NVhYX0NQX1BGUF9TVEFUX0FERFIsIGkpOworCQlkcm1fcHJpbnRmKHAsICIgICUwMng6ICUwOHhc biIsIGksCisJCQlncHVfcmVhZChncHUsIFJFR19BNVhYX0NQX1BGUF9TVEFUX0RBVEEpKTsKKwl9 CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBtZV9wcmludChzdHJ1Y3QgbXNtX2dwdSAq Z3B1LCBzdHJ1Y3QgZHJtX3ByaW50ZXIgKnApCit7CisJaW50IGk7CisKKwlkcm1fcHJpbnRmKHAs ICJNRSBzdGF0ZTpcbiIpOworCisJZm9yIChpID0gMDsgaSA8IDI5OyBpKyspIHsKKwkJZ3B1X3dy aXRlKGdwdSwgUkVHX0E1WFhfQ1BfTUVfU1RBVF9BRERSLCBpKTsKKwkJZHJtX3ByaW50ZihwLCAi ICAlMDJ4OiAlMDh4XG4iLCBpLAorCQkJZ3B1X3JlYWQoZ3B1LCBSRUdfQTVYWF9DUF9NRV9TVEFU X0RBVEEpKTsKKwl9CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBtZXFfcHJpbnQoc3Ry dWN0IG1zbV9ncHUgKmdwdSwgc3RydWN0IGRybV9wcmludGVyICpwKQoreworCWludCBpOworCisJ ZHJtX3ByaW50ZihwLCAiTUVRIHN0YXRlOlxuIik7CisJZ3B1X3dyaXRlKGdwdSwgUkVHX0E1WFhf Q1BfTUVRX0RCR19BRERSLCAwKTsKKworCWZvciAoaSA9IDA7IGkgPCA2NDsgaSsrKSB7CisJCWRy bV9wcmludGYocCwgIiAgJTAyeDogJTA4eFxuIiwgaSwKKwkJCWdwdV9yZWFkKGdwdSwgUkVHX0E1 WFhfQ1BfTUVRX0RCR19EQVRBKSk7CisJfQorCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQg cm9xX3ByaW50KHN0cnVjdCBtc21fZ3B1ICpncHUsIHN0cnVjdCBkcm1fcHJpbnRlciAqcCkKK3sK KwlpbnQgaTsKKworCWRybV9wcmludGYocCwgIlJPUSBzdGF0ZTpcbiIpOworCWdwdV93cml0ZShn cHUsIFJFR19BNVhYX0NQX1JPUV9EQkdfQUREUiwgMCk7CisKKwlmb3IgKGkgPSAwOyBpIDwgNTEy IC8gNDsgaSsrKSB7CisJCXVpbnQzMl90IHZhbFs0XTsKKwkJaW50IGo7CisJCWZvciAoaiA9IDA7 IGogPCA0OyBqKyspCisJCQl2YWxbal0gPSBncHVfcmVhZChncHUsIFJFR19BNVhYX0NQX1JPUV9E QkdfREFUQSk7CisJCWRybV9wcmludGYocCwgIiAgJTAyeDogJTA4eCAlMDh4ICUwOHggJTA4eFxu IiwgaSwKKwkJCXZhbFswXSwgdmFsWzFdLCB2YWxbMl0sIHZhbFszXSk7CisJfQorCisJcmV0dXJu IDA7Cit9CisKK3N0YXRpYyBpbnQgc2hvdyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHZvaWQgKmFyZykK K3sKKwlzdHJ1Y3QgZHJtX2luZm9fbm9kZSAqbm9kZSA9IChzdHJ1Y3QgZHJtX2luZm9fbm9kZSAq KSBtLT5wcml2YXRlOworCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBub2RlLT5taW5vci0+ZGV2 OworCXN0cnVjdCBtc21fZHJtX3ByaXZhdGUgKnByaXYgPSBkZXYtPmRldl9wcml2YXRlOworCXN0 cnVjdCBkcm1fcHJpbnRlciBwID0gZHJtX3NlcV9maWxlX3ByaW50ZXIobSk7CisJaW50ICgqc2hv dykoc3RydWN0IG1zbV9ncHUgKmdwdSwgc3RydWN0IGRybV9wcmludGVyICpwKSA9CisJCW5vZGUt PmluZm9fZW50LT5kYXRhOworCisJcmV0dXJuIHNob3cocHJpdi0+Z3B1LCAmcCk7Cit9CisKKyNk ZWZpbmUgRU5UKG4pIHsgLm5hbWUgPSAjbiwgLnNob3cgPSBzaG93LCAuZGF0YSA9IG4gIyNfcHJp bnQgfQorc3RhdGljIHN0cnVjdCBkcm1faW5mb19saXN0IGE1eHhfZGVidWdmc19saXN0W10gPSB7 CisJRU5UKHBmcCksCisJRU5UKG1lKSwKKwlFTlQobWVxKSwKKwlFTlQocm9xKSwKK307CisKKy8q IGZvciBkZWJ1Z2ZzIGZpbGVzIHRoYXQgY2FuIGJlIHdyaXR0ZW4gdG8sIHdlIGNhbid0IHVzZSBk cm0gaGVscGVyOiAqLworc3RhdGljIGludAorcmVzZXRfc2V0KHZvaWQgKmRhdGEsIHU2NCB2YWwp Cit7CisJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGRhdGE7CisJc3RydWN0IG1zbV9kcm1fcHJp dmF0ZSAqcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7CisJc3RydWN0IG1zbV9ncHUgKmdwdSA9IHBy aXYtPmdwdTsKKwlzdHJ1Y3QgYWRyZW5vX2dwdSAqYWRyZW5vX2dwdSA9IHRvX2FkcmVub19ncHUo Z3B1KTsKKwlzdHJ1Y3QgYTV4eF9ncHUgKmE1eHhfZ3B1ID0gdG9fYTV4eF9ncHUoYWRyZW5vX2dw dSk7CisKKwlpZiAoIWNhcGFibGUoQ0FQX1NZU19BRE1JTikpCisJCXJldHVybiAtRUlOVkFMOwor CisJLyogVE9ETyBkbyB3ZSBjYXJlIGFib3V0IHRyeWluZyB0byBtYWtlIHN1cmUgdGhlIEdQVSBp cyBpZGxlPworCSAqIFNpbmNlIHRoaXMgaXMganVzdCBhIGRlYnVnIGZlYXR1cmUgbGltaXRlZCB0 byBDQVBfU1lTX0FETUlOLAorCSAqIG1heWJlIGl0IGlzIGZpbmUgdG8gbGV0IHRoZSB1c2VyIGtl ZXAgYm90aCBwaWVjZXMgaWYgdGhleQorCSAqIHRyeSB0byByZXNldCBhbiBhY3RpdmUgR1BVLgor CSAqLworCisJbXV0ZXhfbG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCisJaWYgKGFkcmVub19n cHUtPnBtNCkgeworCQlyZWxlYXNlX2Zpcm13YXJlKGFkcmVub19ncHUtPnBtNCk7CisJCWFkcmVu b19ncHUtPnBtNCA9IE5VTEw7CisJfQorCisJaWYgKGFkcmVub19ncHUtPnBmcCkgeworCQlyZWxl YXNlX2Zpcm13YXJlKGFkcmVub19ncHUtPnBmcCk7CisJCWFkcmVub19ncHUtPnBmcCA9IE5VTEw7 CisJfQorCWlmIChhNXh4X2dwdS0+cG00X2JvKSB7CisJCWlmIChhNXh4X2dwdS0+cG00X2lvdmEp CisJCQltc21fZ2VtX3B1dF9pb3ZhKGE1eHhfZ3B1LT5wbTRfYm8sIGdwdS0+YXNwYWNlKTsKKwkJ ZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVuY2UoYTV4eF9ncHUtPnBtNF9ibyk7CisJCWE1eHhfZ3B1 LT5wbTRfYm8gPSBOVUxMOworCX0KKworCWlmIChhNXh4X2dwdS0+cGZwX2JvKSB7CisJCWlmIChh NXh4X2dwdS0+cGZwX2lvdmEpCisJCQltc21fZ2VtX3B1dF9pb3ZhKGE1eHhfZ3B1LT5wZnBfYm8s IGdwdS0+YXNwYWNlKTsKKwkJZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVuY2UoYTV4eF9ncHUtPnBm cF9ibyk7CisJCWE1eHhfZ3B1LT5wZnBfYm8gPSBOVUxMOworCX0KKworCWdwdS0+bmVlZHNfaHdf aW5pdCA9IHRydWU7CisKKwlwbV9ydW50aW1lX2dldF9zeW5jKCZncHUtPnBkZXYtPmRldik7CisJ Z3B1LT5mdW5jcy0+cmVjb3ZlcihncHUpOworCisJcG1fcnVudGltZV9wdXRfc3luYygmZ3B1LT5w ZGV2LT5kZXYpOworCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCisJcmV0dXJu IDA7Cit9CisKK0RFRklORV9TSU1QTEVfQVRUUklCVVRFKHJlc2V0X2ZvcHMsIE5VTEwsIHJlc2V0 X3NldCwgIiVsbHhcbiIpOworCisKK2ludCBhNXh4X2RlYnVnZnNfaW5pdChzdHJ1Y3QgbXNtX2dw dSAqZ3B1LCBzdHJ1Y3QgZHJtX21pbm9yICptaW5vcikKK3sKKwlzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2ID0gbWlub3ItPmRldjsKKwlzdHJ1Y3QgZGVudHJ5ICplbnQ7CisJaW50IHJldDsKKworCWlm ICghbWlub3IpCisJCXJldHVybiAwOworCisJcmV0ID0gZHJtX2RlYnVnZnNfY3JlYXRlX2ZpbGVz KGE1eHhfZGVidWdmc19saXN0LAorCQkJQVJSQVlfU0laRShhNXh4X2RlYnVnZnNfbGlzdCksCisJ CQltaW5vci0+ZGVidWdmc19yb290LCBtaW5vcik7CisKKwlpZiAocmV0KSB7CisJCWRldl9lcnIo ZGV2LT5kZXYsICJjb3VsZCBub3QgaW5zdGFsbCBhNXh4X2RlYnVnZnNfbGlzdFxuIik7CisJCXJl dHVybiByZXQ7CisJfQorCisJZW50ID0gZGVidWdmc19jcmVhdGVfZmlsZSgicmVzZXQiLCBTX0lX VUdPLAorCQltaW5vci0+ZGVidWdmc19yb290LAorCQlkZXYsICZyZXNldF9mb3BzKTsKKwlpZiAo IWVudCkKKwkJcmV0dXJuIC1FTk9NRU07CisKKwlyZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E1eHhfZ3B1LmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNt L2FkcmVuby9hNXh4X2dwdS5jCmluZGV4IDYzNDEzZWNiN2E2Yy4uNDRkM2M2YTEyOWM5IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNXh4X2dwdS5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9tc20vYWRyZW5vL2E1eHhfZ3B1LmMKQEAgLTExNzksNiArMTE3OSw3IEBAIHN0 YXRpYyBjb25zdCBzdHJ1Y3QgYWRyZW5vX2dwdV9mdW5jcyBmdW5jcyA9IHsKIAkJLmRlc3Ryb3kg PSBhNXh4X2Rlc3Ryb3ksCiAjaWZkZWYgQ09ORklHX0RFQlVHX0ZTCiAJCS5zaG93ID0gYTV4eF9z aG93LAorCQkuZGVidWdmc19pbml0ID0gYTV4eF9kZWJ1Z2ZzX2luaXQsCiAjZW5kaWYKIAl9LAog CS5nZXRfdGltZXN0YW1wID0gYTV4eF9nZXRfdGltZXN0YW1wLApkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL21zbS9hZHJlbm8vYTV4eF9ncHUuaCBiL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRy ZW5vL2E1eHhfZ3B1LmgKaW5kZXggNmZiOGMyZjliOWU0Li43ZDcxODYwYzRiZWUgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E1eHhfZ3B1LmgKKysrIGIvZHJpdmVycy9n cHUvZHJtL21zbS9hZHJlbm8vYTV4eF9ncHUuaApAQCAtNDksNiArNDksMTAgQEAgc3RydWN0IGE1 eHhfZ3B1IHsKIAogI2RlZmluZSB0b19hNXh4X2dwdSh4KSBjb250YWluZXJfb2YoeCwgc3RydWN0 IGE1eHhfZ3B1LCBiYXNlKQogCisjaWZkZWYgQ09ORklHX0RFQlVHX0ZTCitpbnQgYTV4eF9kZWJ1 Z2ZzX2luaXQoc3RydWN0IG1zbV9ncHUgKmdwdSwgc3RydWN0IGRybV9taW5vciAqbWlub3IpOwor I2VuZGlmCisKIC8qCiAgKiBJbiBvcmRlciB0byBkbyBsb2NrbGVzcyBwcmVlbXB0aW9uIHdlIHVz ZSBhIHNpbXBsZSBzdGF0ZSBtYWNoaW5lIHRvIHByb2dyZXNzCiAgKiB0aHJvdWdoIHRoZSBwcm9j ZXNzLgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRyZW5vX2Rldmlj ZS5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRyZW5vX2RldmljZS5jCmluZGV4IDA1 MDIyZWEyYTAwNy4uNGRiYjc4MzdkNWJiIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNt L2FkcmVuby9hZHJlbm9fZGV2aWNlLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8v YWRyZW5vX2RldmljZS5jCkBAIC0xNDMsNiArMTQzLDEyIEBAIHN0cnVjdCBtc21fZ3B1ICphZHJl bm9fbG9hZF9ncHUoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAkJcmV0dXJuIE5VTEw7CiAJfQog CisJaWYgKGdwdS0+ZnVuY3MtPmRlYnVnZnNfaW5pdCkgeworCQlncHUtPmZ1bmNzLT5kZWJ1Z2Zz X2luaXQoZ3B1LCBkZXYtPnByaW1hcnkpOworCQlncHUtPmZ1bmNzLT5kZWJ1Z2ZzX2luaXQoZ3B1 LCBkZXYtPnJlbmRlcik7CisJCWdwdS0+ZnVuY3MtPmRlYnVnZnNfaW5pdChncHUsIGRldi0+Y29u dHJvbCk7CisJfQorCiAJcmV0dXJuIGdwdTsKIH0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL21zbS9tc21fZGVidWdmcy5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZGVidWdmcy5j CmluZGV4IDE4NTUxODJjNzZjZS4uYmE3NGNiNGY5NGRmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vbXNtL21zbV9kZWJ1Z2ZzLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZGVi dWdmcy5jCkBAIC0xNjEsOCArMTYxLDExIEBAIGludCBtc21fZGVidWdmc19pbml0KHN0cnVjdCBk cm1fbWlub3IgKm1pbm9yKQogCQlyZXR1cm4gcmV0OwogCX0KIAotCWlmIChwcml2LT5rbXMtPmZ1 bmNzLT5kZWJ1Z2ZzX2luaXQpCisJaWYgKHByaXYtPmttcy0+ZnVuY3MtPmRlYnVnZnNfaW5pdCkg ewogCQlyZXQgPSBwcml2LT5rbXMtPmZ1bmNzLT5kZWJ1Z2ZzX2luaXQocHJpdi0+a21zLCBtaW5v cik7CisJCWlmIChyZXQpCisJCQlyZXR1cm4gcmV0OworCX0KIAogCXJldHVybiByZXQ7CiB9CmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuaCBiL2RyaXZlcnMvZ3B1L2Ry bS9tc20vbXNtX2dwdS5oCmluZGV4IDljMDljMDViNDY1Zi4uYWNkZGYxZmI5YjgxIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0v bXNtL21zbV9ncHUuaApAQCAtNjYsNiArNjYsOCBAQCBzdHJ1Y3QgbXNtX2dwdV9mdW5jcyB7CiAj aWZkZWYgQ09ORklHX0RFQlVHX0ZTCiAJLyogc2hvdyBHUFUgc3RhdHVzIGluIGRlYnVnZnM6ICov CiAJdm9pZCAoKnNob3cpKHN0cnVjdCBtc21fZ3B1ICpncHUsIHN0cnVjdCBzZXFfZmlsZSAqbSk7 CisJLyogZm9yIGdlbmVyYXRpb24gc3BlY2lmaWMgZGVidWdmczogKi8KKwlpbnQgKCpkZWJ1Z2Zz X2luaXQpKHN0cnVjdCBtc21fZ3B1ICpncHUsIHN0cnVjdCBkcm1fbWlub3IgKm1pbm9yKTsKICNl bmRpZgogfTsKIAotLSAKMi4xMy42CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpGcmVlZHJlbm8gbWFpbGluZyBsaXN0CkZyZWVkcmVub0BsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9mcmVlZHJlbm8K