From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from m43-7.mailgun.net ([69.72.43.7]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jr0Aw-00005P-U6 for ath11k@lists.infradead.org; Thu, 02 Jul 2020 14:26:58 +0000 From: Sowmiya Sree Elavalagan Subject: [PATCH] ath11k: cold boot calibration support Date: Thu, 2 Jul 2020 19:54:40 +0530 Message-Id: <1593699880-24946-1-git-send-email-ssreeela@codeaurora.org> MIME-Version: 1.0 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "ath11k" Errors-To: ath11k-bounces+kvalo=adurom.com@lists.infradead.org To: ath11k@lists.infradead.org Cc: Govindaraj Saminathan , Sowmiya Sree Elavalagan , linux-wireless@vger.kernel.org RnJvbTogR292aW5kYXJhaiBTYW1pbmF0aGFuIDxnc2FtaW5AY29kZWF1cm9yYS5vcmc+Cgpjb2xk IGJvb3QgY2FsaWJyYXRpb24gaXMgdGhlIHByb2Nlc3MgdG8gY2FsaWJyYXRlIGFsbCB0aGUgY2hh bm5lbHMKZHVyaW5nIHRoZSBib290LXVwIHRvIGF2b2lkIHRoZSBjYWxpYnJhdGlvbiBkZWxheSBk dXJpbmcgdGhlCmNoYW5uZWwgY2hhbmdlLgpEdXJpbmcgdGhlIGJvb3QtdXAsIGZpcm13YXJlIHN0 YXJ0ZWQgd2l0aCBtb2RlIOKAnGNvbGRfYm9vdF9jYWxpYnJhdGlvbuKAnQpGaXJtd2FyZSBjYWxp YnJhdGUgYWxsIGNoYW5uZWxzIGFuZCBnZW5lcmF0ZSBDYWxEYihERFIpLgpTdWJzZXF1ZW50IFdJ RkkgT04gd2lsbCByZXVzZSB0aGUgc2FtZSBDYWxEYi4KRmlybXdhcmUgcmVzdGFydGVkIHdpdGgg TWlzc2lvbiBtb2RlIHRvIGNvbnRpbnVlIHRoZSBub3JtYWwgb3BlcmF0aW9uLgoKY2FsZGIgbWVt b3J5IGFkZHJlc3Mgc2VuZCB0byBmaXJtd2FyZSB0aHJvdWdoIHRoZSBRTUkgbWVzc2FnZS5GaXJt d2FyZQp1c2UgdGhpcyBhZGRyZXNzIHRvIHN0b3JlIHRoZSBjYWxkYiBkYXRhIGFuZCB1c2UgaXQg dW50aWwgbmV4dCByZWJvb3QuCgpUaGlzIHdpbGwgZ2l2ZSB0aGUgaW1wcm92ZW1lbnQgZHVyaW5n IHRoZSBjaGFubmVsIGNoYW5nZS4gQnV0IGl0IGlzCmluY3JlYXNpbmcgdGhlIGJvb3QtdXAgdGlt ZSh1cCB0byAxNXNlYyBkZXBlbmQgb24gbnVtYmVyIG9mIHJhZGlvcykuClNvIGlmIHRoZSB1c2Vy IHdhbnQgdG8gcmVkdWNlIHRoZSBib290LXVwIHRpbWUgYW5kIGFjY2VwdGluZyBmb3IgY2hhbm5l bApjaGFuZ2UgZGVsYXksIHVzZXIgY2FuIGRpc2FibGUgdGhpcyBmZWF0dXJlIHVzaW5nIHRoZSBt b2R1bGUgcGFyYW0KY29sZF9ib290X2NhbCA9MC4KClNpZ25lZC1vZmYtYnk6IEdvdmluZGFyYWog U2FtaW5hdGhhbiA8Z3NhbWluQGNvZGVhdXJvcmEub3JnPgpDby1kZXZlbG9wZWQtYnk6IFNvd21p eWEgU3JlZSBFbGF2YWxhZ2FuIDxzc3JlZWVsYUBjb2RlYXVyb3JhLm9yZz4KU2lnbmVkLW9mZi1i eTogU293bWl5YSBTcmVlIEVsYXZhbGFnYW4gPHNzcmVlZWxhQGNvZGVhdXJvcmEub3JnPgotLS0K IGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGgxMWsvYWhiLmMgIHwgMjYgKysrKysrKysrKysr KysKIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGgxMWsvY29yZS5jIHwgIDEgKwogZHJpdmVy cy9uZXQvd2lyZWxlc3MvYXRoL2F0aDExay9jb3JlLmggfCAgNSArKysKIGRyaXZlcnMvbmV0L3dp cmVsZXNzL2F0aC9hdGgxMWsvcW1pLmMgIHwgNjYgKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrLS0tLQogZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRoL2F0aDExay9xbWkuaCAgfCAgMyArKwog NSBmaWxlcyBjaGFuZ2VkLCA5NCBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2RyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGgxMWsvYWhiLmMgYi9kcml2ZXJzL25l dC93aXJlbGVzcy9hdGgvYXRoMTFrL2FoYi5jCmluZGV4IDdlOWJmZWEuLjdmMzFhYjAgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGgxMWsvYWhiLmMKKysrIGIvZHJpdmVy cy9uZXQvd2lyZWxlc3MvYXRoL2F0aDExay9haGIuYwpAQCAtNjM4LDYgKzYzOCwzMCBAQCBzdGF0 aWMgdm9pZCBhdGgxMWtfYWhiX3Bvd2VyX2Rvd24oc3RydWN0IGF0aDExa19iYXNlICphYikKIAly cHJvY19zaHV0ZG93bihhYi0+dGd0X3Jwcm9jKTsKIH0KIAoraW50IGF0aDExa19haGJfZndyZXNl dF9mcm9tX2NvbGRfYm9vdChzdHJ1Y3QgYXRoMTFrX2Jhc2UgKmFiKQoreworCWludCB0aW1lb3V0 OworCisJaWYgKGF0aDExa19jb2xkX2Jvb3RfY2FsID09IDAgfHwgYWItPnFtaS5jYWxfZG9uZSkK KwkJcmV0dXJuIDA7CisKKwlhdGgxMWtfZGJnKGFiLCBBVEgxMUtfREJHX0FIQiwgIndhaXQgZm9y IGNvbGQgYm9vdCBkb25lXG4iKTsKKwl0aW1lb3V0ID0gd2FpdF9ldmVudF90aW1lb3V0KGFiLT5x bWkuY29sZF9ib290X3dhaXRxLAorCQkJCSAgICAgKGFiLT5xbWkuY2FsX2RvbmUgID09IDEpLAor CQkJCSAgICAgQVRIMTFLX0NPTERfQk9PVF9GV19SRVNFVF9ERUxBWSk7CisJaWYgKHRpbWVvdXQg PD0gMCkgeworCQlhdGgxMWtfd2FybihhYiwgIkNvbGRib290IENhbGlicmF0aW9uIHRpbWVkIG91 dFxuIik7CisJCXJldHVybiAtRVRJTUVET1VUOworCX0KKworCS8qIHJlc2V0IHRoZSBmaXJtd2Fy ZSAqLworCWF0aDExa19haGJfcG93ZXJfZG93bihhYik7CisJYXRoMTFrX2FoYl9wb3dlcl91cChh Yik7CisKKwlhdGgxMWtfZGJnKGFiLCBBVEgxMUtfREJHX0FIQiwgImV4aXQgd2FpdCBmb3IgY29s ZCBib290IGRvbmVcbiIpOworCXJldHVybiAwOworfQorCiBzdGF0aWMgdm9pZCBhdGgxMWtfYWhi X2luaXRfcW1pX2NlX2NvbmZpZyhzdHJ1Y3QgYXRoMTFrX2Jhc2UgKmFiKQogewogCXN0cnVjdCBh dGgxMWtfcW1pX2NlX2NmZyAqY2ZnID0gJmFiLT5xbWkuY2VfY2ZnOwpAQCAtOTY0LDYgKzk4OCw4 IEBAIHN0YXRpYyBpbnQgYXRoMTFrX2FoYl9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpw ZGV2KQogCQlnb3RvIGVycl9jZV9mcmVlOwogCX0KIAorCWF0aDExa19haGJfZndyZXNldF9mcm9t X2NvbGRfYm9vdChhYik7CisKIAlyZXR1cm4gMDsKIAogZXJyX2NlX2ZyZWU6CmRpZmYgLS1naXQg YS9kcml2ZXJzL25ldC93aXJlbGVzcy9hdGgvYXRoMTFrL2NvcmUuYyBiL2RyaXZlcnMvbmV0L3dp cmVsZXNzL2F0aC9hdGgxMWsvY29yZS5jCmluZGV4IDM4ZTgzMGEuLjUzM2M3YjIgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGgxMWsvY29yZS5jCisrKyBiL2RyaXZlcnMv bmV0L3dpcmVsZXNzL2F0aC9hdGgxMWsvY29yZS5jCkBAIC04MDEsNiArODAxLDcgQEAgc3RydWN0 IGF0aDExa19iYXNlICphdGgxMWtfY29yZV9hbGxvYyhzdHJ1Y3QgZGV2aWNlICpkZXYsIHNpemVf dCBwcml2X3NpemUsCiAJSU5JVF9MSVNUX0hFQUQoJmFiLT5wZWVycyk7CiAJaW5pdF93YWl0cXVl dWVfaGVhZCgmYWItPnBlZXJfbWFwcGluZ193cSk7CiAJaW5pdF93YWl0cXVldWVfaGVhZCgmYWIt PndtaV9hYi50eF9jcmVkaXRzX3dxKTsKKwlpbml0X3dhaXRxdWV1ZV9oZWFkKCZhYi0+cW1pLmNv bGRfYm9vdF93YWl0cSk7CiAJSU5JVF9XT1JLKCZhYi0+cmVzdGFydF93b3JrLCBhdGgxMWtfY29y ZV9yZXN0YXJ0KTsKIAl0aW1lcl9zZXR1cCgmYWItPnJ4X3JlcGxlbmlzaF9yZXRyeSwgYXRoMTFr X2NlX3J4X3JlcGxlbmlzaF9yZXRyeSwgMCk7CiAJYWItPmRldiA9IGRldjsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGgxMWsvY29yZS5oIGIvZHJpdmVycy9uZXQvd2ly ZWxlc3MvYXRoL2F0aDExay9jb3JlLmgKaW5kZXggYjZjY2Q5Zi4uZDczNmZiMCAxMDA2NDQKLS0t IGEvZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRoL2F0aDExay9jb3JlLmgKKysrIGIvZHJpdmVycy9u ZXQvd2lyZWxlc3MvYXRoL2F0aDExay9jb3JlLmgKQEAgLTk4LDggKzk4LDEzIEBAIGVudW0gYXRo MTFrX2Zpcm13YXJlX21vZGUgewogCiAJLyogZmFjdG9yeSB0ZXN0cyBldGMgKi8KIAlBVEgxMUtf RklSTVdBUkVfTU9ERV9GVE0sCisKKwkvKiBDb2xkIGJvb3QgY2FsaWJyYXRpb24gKi8KKwlBVEgx MUtfRklSTVdBUkVfTU9ERV9DT0xEX0JPT1QgPSA3LAogfTsKIAorZXh0ZXJuIGJvb2wgYXRoMTFr X2NvbGRfYm9vdF9jYWw7CisKICNkZWZpbmUgQVRIMTFLX0lSUV9OVU1fTUFYIDUyCiAjZGVmaW5l IEFUSDExS19FWFRfSVJRX0dSUF9OVU1fTUFYIDExCiAjZGVmaW5lIEFUSDExS19FWFRfSVJRX05V TV9NQVgJMTYKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGgxMWsvcW1p LmMgYi9kcml2ZXJzL25ldC93aXJlbGVzcy9hdGgvYXRoMTFrL3FtaS5jCmluZGV4IDUwODEyZGYu LjU5OWEzODkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L3dpcmVsZXNzL2F0aC9hdGgxMWsvcW1p LmMKKysrIGIvZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRoL2F0aDExay9xbWkuYwpAQCAtOSw2ICs5 LDEyIEBACiAjaW5jbHVkZSA8bGludXgvb2YuaD4KICNpbmNsdWRlIDxsaW51eC9maXJtd2FyZS5o PgogCitib29sIGF0aDExa19jb2xkX2Jvb3RfY2FsID0gMTsKK21vZHVsZV9wYXJhbV9uYW1lZChj b2xkX2Jvb3RfY2FsLCBhdGgxMWtfY29sZF9ib290X2NhbCwgYm9vbCwgMDY0NCk7CitNT0RVTEVf UEFSTV9ERVNDKGNvbGRfYm9vdF9jYWwsCisJCSAiQ29sZCBib290IHdpbGwgYnJpbmcgZG93biB0 aGUgY2hhbm5lbCBzd2l0Y2ggdGltZSBidXQgIgorCQkgIml0IHdpbGwgaW5jcmVhc2UgdGhlIGRy aXZlciBsb2FkIHRpbWUgKGVuYWJsZToxLCBkaXNhYmxlOjApIik7CisKIHN0YXRpYyBzdHJ1Y3Qg cW1pX2VsZW1faW5mbyBxbWlfd2xhbmZ3X2hvc3RfY2FwX3JlcV9tc2dfdjAxX2VpW10gPSB7CiAJ ewogCQkuZGF0YV90eXBlCT0gUU1JX09QVF9GTEFHLApAQCAtMTY5Miw5ICsxNjk4LDE2IEBAIHN0 YXRpYyBpbnQgYXRoMTFrX3FtaV9hbGxvY190YXJnZXRfbWVtX2NodW5rKHN0cnVjdCBhdGgxMWtf YmFzZSAqYWIpCiAJCQkJYXRoMTFrX3dhcm4oYWIsICJxbWkgbWVtIHNpemUgaXMgbG93IHRvIGxv YWQgY2FsZGF0YVxuIik7CiAJCQkJcmV0dXJuIC1FSU5WQUw7CiAJCQl9Ci0JCQkvKiBUT0RPIGF0 aDExayBkb2VzIG5vdCBzdXBwb3J0IGNvbGQgYm9vdCBjYWxpYnJhdGlvbiAqLwotCQkJYWItPnFt aS50YXJnZXRfbWVtW2lkeF0ucGFkZHIgPSAwOwotCQkJYWItPnFtaS50YXJnZXRfbWVtW2lkeF0u dmFkZHIgPSAwOworCisJCQlpZiAoYXRoMTFrX2NvbGRfYm9vdF9jYWwpIHsKKwkJCQlhYi0+cW1p LnRhcmdldF9tZW1baWR4XS5wYWRkciA9CisJCQkJCQkgICAgIEFUSDExS19RTUlfQ0FMREJfQURE UkVTUzsKKwkJCQlhYi0+cW1pLnRhcmdldF9tZW1baWR4XS52YWRkciA9CisJCQkJCQkgICAgIEFU SDExS19RTUlfQ0FMREJfQUREUkVTUzsKKwkJCX0gZWxzZSB7CisJCQkJYWItPnFtaS50YXJnZXRf bWVtW2lkeF0ucGFkZHIgPSAwOworCQkJCWFiLT5xbWkudGFyZ2V0X21lbVtpZHhdLnZhZGRyID0g MDsKKwkJCX0KIAkJCWFiLT5xbWkudGFyZ2V0X21lbVtpZHhdLnNpemUgPSBhYi0+cW1pLnRhcmdl dF9tZW1baV0uc2l6ZTsKIAkJCWFiLT5xbWkudGFyZ2V0X21lbVtpZHhdLnR5cGUgPSBhYi0+cW1p LnRhcmdldF9tZW1baV0udHlwZTsKIAkJCWlkeCsrOwpAQCAtMjExMSw2ICsyMTI0LDMyIEBAIGlu dCBhdGgxMWtfcW1pX2Zpcm13YXJlX3N0YXJ0KHN0cnVjdCBhdGgxMWtfYmFzZSAqYWIsCiAJcmV0 dXJuIDA7CiB9CiAKK2ludCBhdGgxMWtfcW1pX3Byb2Nlc3NfY29sZGJvb3RfY2FsaWJyYXRpb24o c3RydWN0IGF0aDExa19iYXNlICphYikKK3sKKwlpbnQgdGltZW91dDsKKwlpbnQgcmV0OworCisJ cmV0ID0gYXRoMTFrX3FtaV93bGFuZndfbW9kZV9zZW5kKGFiLCBBVEgxMUtfRklSTVdBUkVfTU9E RV9DT0xEX0JPT1QpOworCWlmIChyZXQgPCAwKSB7CisJCWF0aDExa193YXJuKGFiLCAicW1pIGZh aWxlZCB0byBzZW5kIHdsYW4gZncgbW9kZTolZFxuIiwgcmV0KTsKKwkJcmV0dXJuIHJldDsKKwl9 CisKKwlhdGgxMWtfd2FybihhYiwgIkNvbGRib290IGNhbGlicmF0aW9uIHdhaXQgc3RhcnRlZFxu Iik7CisKKwl0aW1lb3V0ID0gd2FpdF9ldmVudF90aW1lb3V0KGFiLT5xbWkuY29sZF9ib290X3dh aXRxLAorCQkJCSAgICAgKGFiLT5xbWkuY2FsX2RvbmUgID09IDEpLAorCQkJCSAgICAgQVRIMTFL X0NPTERfQk9PVF9GV19SRVNFVF9ERUxBWSk7CisJaWYgKHRpbWVvdXQgPD0gMCkgeworCQlhdGgx MWtfd2FybihhYiwgIkNvbGRib290IENhbGlicmF0aW9uIHRpbWVkIG91dFxuIik7CisJCXJldHVy biAtRVRJTUVET1VUOworCX0KKworCWF0aDExa193YXJuKGFiLCAiQ29sZGJvb3QgY2FsaWJyYXRp b24gd2FpdCBlbmRlZFxuIik7CisKKwlyZXR1cm4gMDsKK30KKwogc3RhdGljIGludAogYXRoMTFr X3FtaV9kcml2ZXJfZXZlbnRfcG9zdChzdHJ1Y3QgYXRoMTFrX3FtaSAqcW1pLAogCQkJICAgICBl bnVtIGF0aDExa19xbWlfZXZlbnRfdHlwZSB0eXBlLApAQCAtMjI0NywxMSArMjI4NiwxOCBAQCBz dGF0aWMgdm9pZCBhdGgxMWtfcW1pX21zZ19md19yZWFkeV9jYihzdHJ1Y3QgcW1pX2hhbmRsZSAq cW1pX2hkbCwKIAlhdGgxMWtfcW1pX2RyaXZlcl9ldmVudF9wb3N0KHFtaSwgQVRIMTFLX1FNSV9F VkVOVF9GV19SRUFEWSwgTlVMTCk7CiB9CiAKLXN0YXRpYyB2b2lkIGF0aDExa19xbWlfbXNnX2Nv bGRfYm9vdF9jYWxfZG9uZV9jYihzdHJ1Y3QgcW1pX2hhbmRsZSAqcW1pLAorc3RhdGljIHZvaWQg YXRoMTFrX3FtaV9tc2dfY29sZF9ib290X2NhbF9kb25lX2NiKHN0cnVjdCBxbWlfaGFuZGxlICpx bWlfaGRsLAogCQkJCQkJIHN0cnVjdCBzb2NrYWRkcl9xcnRyICpzcSwKIAkJCQkJCSBzdHJ1Y3Qg cW1pX3R4biAqdHhuLAogCQkJCQkJIGNvbnN0IHZvaWQgKmRlY29kZWQpCiB7CisJc3RydWN0IGF0 aDExa19xbWkgKnFtaSA9IGNvbnRhaW5lcl9vZihxbWlfaGRsLAorCQkJCQkgICAgICBzdHJ1Y3Qg YXRoMTFrX3FtaSwgaGFuZGxlKTsKKwlzdHJ1Y3QgYXRoMTFrX2Jhc2UgKmFiID0gcW1pLT5hYjsK KworCWFiLT5xbWkuY2FsX2RvbmUgPSAxOworCXdha2VfdXAoJmFiLT5xbWkuY29sZF9ib290X3dh aXRxKTsKKwlhdGgxMWtfZGJnKGFiLCBBVEgxMUtfREJHX1FNSSwgInFtaSBjb2xkIGJvb3QgY2Fs aWJyYXRpb24gZG9uZVxuIik7CiB9CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgcW1pX21zZ19oYW5k bGVyIGF0aDExa19xbWlfbXNnX2hhbmRsZXJzW10gPSB7CkBAIC0yMzY0LDkgKzI0MTAsMTUgQEAg c3RhdGljIHZvaWQgYXRoMTFrX3FtaV9kcml2ZXJfZXZlbnRfd29yayhzdHJ1Y3Qgd29ya19zdHJ1 Y3QgKndvcmspCiAJCQkJYnJlYWs7CiAJCQl9CiAKLQkJCWF0aDExa19jb3JlX3FtaV9maXJtd2Fy ZV9yZWFkeShhYik7Ci0JCQlhYi0+cW1pLmNhbF9kb25lID0gMTsKLQkJCXNldF9iaXQoQVRIMTFL X0ZMQUdfUkVHSVNURVJFRCwgJmFiLT5kZXZfZmxhZ3MpOworCQkJaWYgKGF0aDExa19jb2xkX2Jv b3RfY2FsICYmIGFiLT5xbWkuY2FsX2RvbmUgPT0gMCkgeworCQkJCWF0aDExa19xbWlfcHJvY2Vz c19jb2xkYm9vdF9jYWxpYnJhdGlvbihhYik7CisJCQl9IGVsc2UgeworCQkJCWNsZWFyX2JpdChB VEgxMUtfRkxBR19DUkFTSF9GTFVTSCwKKwkJCQkJICAmYWItPmRldl9mbGFncyk7CisJCQkJY2xl YXJfYml0KEFUSDExS19GTEFHX1JFQ09WRVJZLCAmYWItPmRldl9mbGFncyk7CisJCQkJYXRoMTFr X2NvcmVfcW1pX2Zpcm13YXJlX3JlYWR5KGFiKTsKKwkJCQlzZXRfYml0KEFUSDExS19GTEFHX1JF R0lTVEVSRUQsICZhYi0+ZGV2X2ZsYWdzKTsKKwkJCX0KIAogCQkJYnJlYWs7CiAJCWNhc2UgQVRI MTFLX1FNSV9FVkVOVF9DT0xEX0JPT1RfQ0FMX0RPTkU6CmRpZmYgLS1naXQgYS9kcml2ZXJzL25l dC93aXJlbGVzcy9hdGgvYXRoMTFrL3FtaS5oIGIvZHJpdmVycy9uZXQvd2lyZWxlc3MvYXRoL2F0 aDExay9xbWkuaAppbmRleCAzMzA3YmU1Li4wMmMwNWNjIDEwMDY0NAotLS0gYS9kcml2ZXJzL25l dC93aXJlbGVzcy9hdGgvYXRoMTFrL3FtaS5oCisrKyBiL2RyaXZlcnMvbmV0L3dpcmVsZXNzL2F0 aC9hdGgxMWsvcW1pLmgKQEAgLTEyLDYgKzEyLDcgQEAKICNkZWZpbmUgQVRIMTFLX0hPU1RfVkVS U0lPTl9TVFJJTkcJCSJXSU4iCiAjZGVmaW5lIEFUSDExS19RTUlfV0xBTkZXX1RJTUVPVVRfTVMJ CTUwMDAKICNkZWZpbmUgQVRIMTFLX1FNSV9NQVhfQkRGX0ZJTEVfTkFNRV9TSVpFCTY0CisjZGVm aW5lIEFUSDExS19RTUlfQ0FMREJfQUREUkVTUwkJMHg0QkEwMDAwMAogI2RlZmluZSBBVEgxMUtf UU1JX0JERl9NQVhfU0laRQkJCSgyNTYgKiAxMDI0KQogI2RlZmluZSBBVEgxMUtfUU1JX0NBTERB VEFfT0ZGU0VUCQkoMTI4ICogMTAyNCkKICNkZWZpbmUgQVRIMTFLX1FNSV9XTEFORldfTUFYX0JV SUxEX0lEX0xFTl9WMDEJMTI4CkBAIC0zMSw2ICszMiw3IEBACiAjZGVmaW5lIFFNSV9XTEFORldf TUFYX0RBVEFfU0laRV9WMDEJCTYxNDQKICNkZWZpbmUgQVRIMTFLX0ZJUk1XQVJFX01PREVfT0ZG CQk0CiAjZGVmaW5lIEFUSDExS19RTUlfVEFSR0VUX01FTV9NT0RFX0RFRkFVTFQJMAorI2RlZmlu ZSBBVEgxMUtfQ09MRF9CT09UX0ZXX1JFU0VUX0RFTEFZCQkoNDAgKiBIWikKIAogc3RydWN0IGF0 aDExa19iYXNlOwogCkBAIC0xMTAsNiArMTEyLDcgQEAgc3RydWN0IGF0aDExa19xbWkgewogCXUz MiB0YXJnZXRfbWVtX21vZGU7CiAJdTggY2FsX2RvbmU7CiAJc3RydWN0IHRhcmdldF9pbmZvIHRh cmdldDsKKwl3YWl0X3F1ZXVlX2hlYWRfdCBjb2xkX2Jvb3Rfd2FpdHE7CiB9OwogCiAjZGVmaW5l IFFNSV9XTEFORldfSE9TVF9DQVBfUkVRX01TR19WMDFfTUFYX0xFTgkJMTg5Ci0tIAoyLjcuNAoK Ci0tIAphdGgxMWsgbWFpbGluZyBsaXN0CmF0aDExa0BsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6 Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vYXRoMTFrCg==