From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from 7.mo3.mail-out.ovh.net ([46.105.57.200] helo=mo3.mail-out.ovh.net) by merlin.infradead.org with esmtp (Exim 4.76 #1 (Red Hat Linux)) id 1SMDau-0006h9-R0 for barebox@lists.infradead.org; Mon, 23 Apr 2012 07:22:00 +0000 Received: from mail622.ha.ovh.net (b7.ovh.net [213.186.33.57]) by mo3.mail-out.ovh.net (Postfix) with SMTP id 57AD5FFA68A for ; Mon, 23 Apr 2012 09:23:29 +0200 (CEST) From: Jean-Christophe PLAGNIOL-VILLARD Date: Mon, 23 Apr 2012 09:02:11 +0200 Message-Id: <1335164539-2188-2-git-send-email-plagnioj@jcrosoft.com> In-Reply-To: <20120423065650.GM20601@game.jcrosoft.org> References: <20120423065650.GM20601@game.jcrosoft.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: barebox-bounces@lists.infradead.org Errors-To: barebox-bounces+u.kleine-koenig=pengutronix.de@lists.infradead.org Subject: [PATCH 02/10] ARM: Add support for IXP4xx CPU To: barebox@lists.infradead.org Cc: =?UTF-8?q?Krzysztof=20Ha=C5=82asa?= RnJvbTogS3J6eXN6dG9mIEhhxYJhc2EgPGtoY0BwbS53YXcucGw+CgpTaWduZWQtb2ZmLWJ5OiBL cnp5c3p0b2YgSGHFgmFzYSA8a2hjQHBtLndhdy5wbD4KU2lnbmVkLW9mZi1ieTogSmVhbi1DaHJp c3RvcGhlIFBMQUdOSU9MLVZJTExBUkQgPHBsYWduaW9qQGpjcm9zb2Z0LmNvbT4KLS0tCiBhcmNo L2FybS9LY29uZmlnICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDggKwogYXJj aC9hcm0vTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAxICsKIGFy Y2gvYXJtL21hY2gtaXhwNHh4L0tjb25maWcgICAgICAgICAgICAgICAgICAgIHwgICAgOCArCiBh cmNoL2FybS9tYWNoLWl4cDR4eC9NYWtlZmlsZSAgICAgICAgICAgICAgICAgICB8ICAgIDQgKwog YXJjaC9hcm0vbWFjaC1peHA0eHgvZGV2aWNlcy5jICAgICAgICAgICAgICAgICAgfCAgIDYwICsr KysKIGFyY2gvYXJtL21hY2gtaXhwNHh4L2luY2x1ZGUvbWFjaC9jcHUuaCAgICAgICAgIHwgICA3 MCArKysrKwogYXJjaC9hcm0vbWFjaC1peHA0eHgvaW5jbHVkZS9tYWNoL2l4cDR4eC1yZWdzLmgg fCAgMzY1ICsrKysrKysrKysrKysrKysrKysrKysrCiBhcmNoL2FybS9tYWNoLWl4cDR4eC9pbmNs dWRlL21hY2gvcGxhdGZvcm0uaCAgICB8ICAgMjQgKysKIGFyY2gvYXJtL21hY2gtaXhwNHh4L2xv d2xldmVsX2luaXQuUyAgICAgICAgICAgIHwgICAyNSArKwogYXJjaC9hcm0vbWFjaC1peHA0eHgv cmVzZXQuYyAgICAgICAgICAgICAgICAgICAgfCAgIDE1ICsKIGFyY2gvYXJtL21hY2gtaXhwNHh4 L3RpbWVyLmMgICAgICAgICAgICAgICAgICAgIHwgICA0MiArKysKIGRyaXZlcnMvc2VyaWFsL3Nl cmlhbF9uczE2NTUwLmMgICAgICAgICAgICAgICAgIHwgICAgNiArLQogZHJpdmVycy9zZXJpYWwv c2VyaWFsX25zMTY1NTAuaCAgICAgICAgICAgICAgICAgfCAgICAyICsKIDEzIGZpbGVzIGNoYW5n ZWQsIDYyOSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0 IGFyY2gvYXJtL21hY2gtaXhwNHh4L0tjb25maWcKIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL2Fy bS9tYWNoLWl4cDR4eC9NYWtlZmlsZQogY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL21hY2gt aXhwNHh4L2RldmljZXMuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL21hY2gtaXhwNHh4 L2luY2x1ZGUvbWFjaC9jcHUuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gvYXJtL21hY2gtaXhw NHh4L2luY2x1ZGUvbWFjaC9peHA0eHgtcmVncy5oCiBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9h cm0vbWFjaC1peHA0eHgvaW5jbHVkZS9tYWNoL3BsYXRmb3JtLmgKIGNyZWF0ZSBtb2RlIDEwMDY0 NCBhcmNoL2FybS9tYWNoLWl4cDR4eC9sb3dsZXZlbF9pbml0LlMKIGNyZWF0ZSBtb2RlIDEwMDY0 NCBhcmNoL2FybS9tYWNoLWl4cDR4eC9yZXNldC5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9h cm0vbWFjaC1peHA0eHgvdGltZXIuYwoKZGlmZiAtLWdpdCBhL2FyY2gvYXJtL0tjb25maWcgYi9h cmNoL2FybS9LY29uZmlnCmluZGV4IDhhNGUxYTIuLjJjYzNmMmQgMTAwNjQ0Ci0tLSBhL2FyY2gv YXJtL0tjb25maWcKKysrIGIvYXJjaC9hcm0vS2NvbmZpZwpAQCAtNDksNiArNDksMTMgQEAgY29u ZmlnIEFSQ0hfTVhTCiAJYm9vbCAiRnJlZXNjYWxlIGkuTVgyMy8yOCAobXhzKSBiYXNlZCIKIAlz ZWxlY3QgR0VORVJJQ19HUElPCiAKK2NvbmZpZyBBUkNIX0lYUDRYWAorCWJvb2wgIkludGVsIElY UDR4eC1iYXNlZCIKKwlzZWxlY3QgQ1BVX1hTQ0FMRQorCXNlbGVjdCBBUkNIX1NVUFBPUlRTX0JJ R19FTkRJQU4KKwlzZWxlY3QgQ1BVX0JJR19FTkRJQU4KKwlzZWxlY3QgQVJDSF9IQVNfTE9XTEVW RUxfSU5JVAorCiBjb25maWcgQVJDSF9ORVRYCiAJYm9vbCAiSGlsc2NoZXIgTmV0WCBiYXNlZCIK IAlzZWxlY3QgQ1BVX0FSTTkyNlQKQEAgLTg0LDYgKzkxLDcgQEAgc291cmNlIGFyY2gvYXJtL21h Y2gtYXQ5MS9LY29uZmlnCiBzb3VyY2UgYXJjaC9hcm0vbWFjaC1lcDkzeHgvS2NvbmZpZwogc291 cmNlIGFyY2gvYXJtL21hY2gtaW14L0tjb25maWcKIHNvdXJjZSBhcmNoL2FybS9tYWNoLW14cy9L Y29uZmlnCitzb3VyY2UgYXJjaC9hcm0vbWFjaC1peHA0eHgvS2NvbmZpZwogc291cmNlIGFyY2gv YXJtL21hY2gtbmV0eC9LY29uZmlnCiBzb3VyY2UgYXJjaC9hcm0vbWFjaC1ub21hZGlrL0tjb25m aWcKIHNvdXJjZSBhcmNoL2FybS9tYWNoLW9tYXAvS2NvbmZpZwpkaWZmIC0tZ2l0IGEvYXJjaC9h cm0vTWFrZWZpbGUgYi9hcmNoL2FybS9NYWtlZmlsZQppbmRleCBjNjQ0NGJiLi5jYzUyMjNlIDEw MDY0NAotLS0gYS9hcmNoL2FybS9NYWtlZmlsZQorKysgYi9hcmNoL2FybS9NYWtlZmlsZQpAQCAt NTUsNiArNTUsNyBAQCBtYWNoaW5lLSQoQ09ORklHX0FSQ0hfQVQ5MSkJCTo9IGF0OTEKIG1hY2hp bmUtJChDT05GSUdfQVJDSF9FUDkzWFgpCQk6PSBlcDkzeHgKIG1hY2hpbmUtJChDT05GSUdfQVJD SF9JTVgpCQk6PSBpbXgKIG1hY2hpbmUtJChDT05GSUdfQVJDSF9NWFMpCQk6PSBteHMKK21hY2hp bmUtJChDT05GSUdfQVJDSF9JWFA0WFgpCQk6PSBpeHA0eHgKIG1hY2hpbmUtJChDT05GSUdfQVJD SF9OT01BRElLKQkJOj0gbm9tYWRpawogbWFjaGluZS0kKENPTkZJR19BUkNIX05FVFgpCQk6PSBu ZXR4CiBtYWNoaW5lLSQoQ09ORklHX0FSQ0hfT01BUCkJCTo9IG9tYXAKZGlmZiAtLWdpdCBhL2Fy Y2gvYXJtL21hY2gtaXhwNHh4L0tjb25maWcgYi9hcmNoL2FybS9tYWNoLWl4cDR4eC9LY29uZmln Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY1Nzc4YWIKLS0tIC9kZXYvbnVs bAorKysgYi9hcmNoL2FybS9tYWNoLWl4cDR4eC9LY29uZmlnCkBAIC0wLDAgKzEsOCBAQAoraWYg QVJDSF9JWFA0WFgKKworY2hvaWNlCisJcHJvbXB0ICJJWFA0eHggQm9hcmQgVHlwZSIKKworZW5k Y2hvaWNlCisKK2VuZGlmCmRpZmYgLS1naXQgYS9hcmNoL2FybS9tYWNoLWl4cDR4eC9NYWtlZmls ZSBiL2FyY2gvYXJtL21hY2gtaXhwNHh4L01ha2VmaWxlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAuLjZlNTdjOTEKLS0tIC9kZXYvbnVsbAorKysgYi9hcmNoL2FybS9tYWNoLWl4 cDR4eC9NYWtlZmlsZQpAQCAtMCwwICsxLDQgQEAKK29iai15ICs9IGxvd2xldmVsX2luaXQubwor b2JqLXkgKz0gZGV2aWNlcy5vCitvYmoteSArPSB0aW1lci5vCitvYmoteSArPSByZXNldC5vCmRp ZmYgLS1naXQgYS9hcmNoL2FybS9tYWNoLWl4cDR4eC9kZXZpY2VzLmMgYi9hcmNoL2FybS9tYWNo LWl4cDR4eC9kZXZpY2VzLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGE0 OTZkMQotLS0gL2Rldi9udWxsCisrKyBiL2FyY2gvYXJtL21hY2gtaXhwNHh4L2RldmljZXMuYwpA QCAtMCwwICsxLDYwIEBACisjaW5jbHVkZSA8Y29tbW9uLmg+CisjaW5jbHVkZSA8aW5pdC5oPgor I2luY2x1ZGUgPG5zMTY1NTAuaD4KKyNpbmNsdWRlIDxhc20vYXJtbGludXguaD4KKyNpbmNsdWRl IDxhc20vaW8uaD4KKyNpbmNsdWRlIDxtYWNoL2l4cDR4eC1yZWdzLmg+CisKKyNpZmRlZiBDT05G SUdfRFJJVkVSX1NFUklBTF9OUzE2NTUwCisvKioKKyAqIEBicmllZiBVQVJUIHBvcnQgcmVnaXN0 ZXIgcmVhZCBmdW5jdGlvbiBmb3IgSVhQNFhYCisgKgorICogQHBhcmFtIGJhc2UgYmFzZSBhZGRy ZXNzIG9mIFVBUlQKKyAqIEBwYXJhbSByZWdfaWR4IHJlZ2lzdGVyIGluZGV4CisgKgorICogQHJl dHVybiBjaGFyYWN0ZXIgcmVhZCBmcm9tIHJlZ2lzdGVyCisgKi8KK3N0YXRpYyB1bnNpZ25lZCBp bnQgaXhwNHh4X3VhcnRfcmVhZCh1bnNpZ25lZCBsb25nIGJhc2UsIHVuc2lnbmVkIGNoYXIgcmVn X2lkeCkKK3sKKwlyZXR1cm4gcmVhZGIocmVnX2lkeCArIFJFR19PRkZTRVQgKyAodWludDhfdCAq KWJhc2UpOworfQorCisvKioKKyAqIEBicmllZiBVQVJUIHBvcnQgcmVnaXN0ZXIgd3JpdGUgZnVu Y3Rpb24gZm9yIElYUDRYWAorICoKKyAqIEBwYXJhbSB2YWwgdmFsdWUgdG8gd3JpdGUKKyAqIEBw YXJhbSBiYXNlIGJhc2UgYWRkcmVzcyBvZiBVQVJUCisgKiBAcGFyYW0gcmVnX2lkeCByZWdpc3Rl ciBpbmRleAorICoKKyAqIEByZXR1cm4gdm9pZAorICovCitzdGF0aWMgdm9pZCBpeHA0eHhfdWFy dF93cml0ZSh1bnNpZ25lZCBpbnQgdmFsLCB1bnNpZ25lZCBsb25nIGJhc2UsCisJCQkgICAgICB1 bnNpZ25lZCBjaGFyIHJlZ19pZHgpCit7CisJd3JpdGViKHZhbCwgcmVnX2lkeCArIFJFR19PRkZT RVQgKyAodWludDhfdCAqKWJhc2UpOworfQorCitzdGF0aWMgc3RydWN0IE5TMTY1NTBfcGxhdCBz ZXJpYWxfcGxhdCA9IHsKKwkuY2xvY2sgPSAxNDc0NTYwMCwKKwkuc2hpZnQgPSAyLAorCS5yZWdf cmVhZCA9IGl4cDR4eF91YXJ0X3JlYWQsCisJLnJlZ193cml0ZSA9IGl4cDR4eF91YXJ0X3dyaXRl LAorfTsKKworLyoqCisgKiBAYnJpZWYgVUFSVCBzZXJpYWwgcG9ydCBpbml0aWFsaXphdGlvbgor ICoKKyAqIEByZXR1cm4gcmVzdWx0IG9mIGRldmljZSByZWdpc3RyYXRpb24KKyAqLworc3RydWN0 IGRldmljZV9kKiBpeHA0eHhfYWRkX3VhcnQoaW50IGlkLCB1MzIgYmFzZSkKK3sKKwkvKiBSZWdp c3RlciB0aGUgc2VyaWFsIHBvcnQgKi8KKwlyZXR1cm4gYWRkX2dlbmVyaWNfZGV2aWNlKCJzZXJp YWxfbnMxNjU1MCIsIGlkLCBOVUxMLCBiYXNlLCAweGZmZiwKKwkJCSAgIElPUkVTT1VSQ0VfTUVN LCAmc2VyaWFsX3BsYXQpOworfQorI2Vsc2UKK3N0cnVjdCBkZXZpY2VfZCogaXhwNHh4X2FkZF91 YXJ0KGludCBpZCwgdTMyIGJhc2UpCit7CisJcmV0dXJuIE5VTEw7Cit9CisjZW5kaWYgLyogQ09O RklHX0RSSVZFUl9TRVJJQUxfTlMxNjU1MCAqLwpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vbWFjaC1p eHA0eHgvaW5jbHVkZS9tYWNoL2NwdS5oIGIvYXJjaC9hcm0vbWFjaC1peHA0eHgvaW5jbHVkZS9t YWNoL2NwdS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNkZTAyMWUKLS0t IC9kZXYvbnVsbAorKysgYi9hcmNoL2FybS9tYWNoLWl4cDR4eC9pbmNsdWRlL21hY2gvY3B1LmgK QEAgLTAsMCArMSw3MCBAQAorLyoKKyAqIGFyY2gvYXJtL21hY2gtaXhwNHh4L2luY2x1ZGUvbWFj aC9jcHUuaAorICoKKyAqIElYUDRYWCBjcHUgdHlwZSBkZXRlY3Rpb24KKyAqCisgKiBDb3B5cmln aHQgKEMpIDIwMDcgTW9udGFWaXN0YSBTb2Z0d2FyZSwgSW5jLgorICoKKyAqIFRoaXMgcHJvZ3Jh bSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5 CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl IHZlcnNpb24gMiBhcworICogcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b24uCisgKgorICovCisKKyNpZm5kZWYgX19BU01fQVJDSF9DUFVfSF9fCisjZGVmaW5lIF9fQVNN X0FSQ0hfQ1BVX0hfXworCisjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KKworLyogUHJvY2Vzc29y IGlkIHZhbHVlIGluIENQMTUgUmVnaXN0ZXIgMCAqLworI2RlZmluZSBJWFA0MlhfUFJPQ0VTU09S X0lEX1ZBTFVFIDB4NjkwNTQxYzAgLyogaW5jbHVkaW5nIHVudXNlZCAweDY5MDU0MUV4ICovCisj ZGVmaW5lIElYUDQyWF9QUk9DRVNTT1JfSURfTUFTSyAgMHhmZmZmZmZjMAorCisjZGVmaW5lIElY UDQzWF9QUk9DRVNTT1JfSURfVkFMVUUgMHg2OTA1NDA0MAorI2RlZmluZSBJWFA0M1hfUFJPQ0VT U09SX0lEX01BU0sgIDB4ZmZmZmZmZjAKKworI2RlZmluZSBJWFA0NlhfUFJPQ0VTU09SX0lEX1ZB TFVFIDB4NjkwNTQyMDAgLyogaW5jbHVkaW5nIElYUDQ1NSAqLworI2RlZmluZSBJWFA0NlhfUFJP Q0VTU09SX0lEX01BU0sgIDB4ZmZmZmZmZjAKKworI2RlZmluZSBjcHVfaXNfaXhwNDJ4X3Jldl9h MCgpICgocmVhZF9jcHVpZF9pZCgpICYgKElYUDQyWF9QUk9DRVNTT1JfSURfTUFTSyB8IDB4Rikp ID09IFwKKwkJCQlJWFA0MlhfUFJPQ0VTU09SX0lEX1ZBTFVFKQorI2RlZmluZSBjcHVfaXNfaXhw NDJ4KCkgKChyZWFkX2NwdWlkX2lkKCkgJiBJWFA0MlhfUFJPQ0VTU09SX0lEX01BU0spID09IFwK KwkJCSBJWFA0MlhfUFJPQ0VTU09SX0lEX1ZBTFVFKQorI2RlZmluZSBjcHVfaXNfaXhwNDN4KCkg KChyZWFkX2NwdWlkX2lkKCkgJiBJWFA0M1hfUFJPQ0VTU09SX0lEX01BU0spID09IFwKKwkJCSBJ WFA0M1hfUFJPQ0VTU09SX0lEX1ZBTFVFKQorI2RlZmluZSBjcHVfaXNfaXhwNDZ4KCkgKChyZWFk X2NwdWlkX2lkKCkgJiBJWFA0NlhfUFJPQ0VTU09SX0lEX01BU0spID09IFwKKwkJCSBJWFA0Nlhf UFJPQ0VTU09SX0lEX1ZBTFVFKQorCisvKgorICogVGhlIENQVSBJRCBuZXZlciBjaGFuZ2VzIGF0 IHJ1biB0aW1lLCBzbyB3ZSBtaWdodCBhcyB3ZWxsIHRlbGwgdGhlCisgKiBjb21waWxlciB0aGF0 IGl0J3MgY29uc3RhbnQuICBVc2UgdGhpcyBmdW5jdGlvbiB0byByZWFkIHRoZSBDUFUgSUQKKyAq IHJhdGhlciB0aGFuIGRpcmVjdGx5IHJlYWRpbmcgcHJvY2Vzc29yX2lkIG9yIHJlYWRfY3B1aWQo KSBkaXJlY3RseS4KKyAqLworc3RhdGljIGlubGluZSB1MzIgX19hdHRyaWJ1dGVfY29uc3RfXyBy ZWFkX2NwdWlkX2lkKHZvaWQpCit7CisJdTMyIHZhbDsKKwlhc20oIm1yYyBwMTUsIDAsICUwLCBj MCwgYzAsIDAiIDogIj1yIiAodmFsKSA6IDogImNjIik7CisKKwlyZXR1cm4gdmFsOworfQorCitz dGF0aWMgaW5saW5lIHUzMiBpeHA0eHhfcmVhZF9mZWF0dXJlX2JpdHModm9pZCkKK3sKKwl1MzIg dmFsID0gfklYUDRYWF9FWFBfQ0ZHMjsKKworCWlmIChjcHVfaXNfaXhwNDJ4X3Jldl9hMCgpKQor CQlyZXR1cm4gSVhQNDJYX0ZFQVRVUkVfTUFTSyAmIH4oSVhQNFhYX0ZFQVRVUkVfUkNPTVAgfAor CQkJCQkgICAgICAgSVhQNFhYX0ZFQVRVUkVfQUVTKTsKKwlpZiAoY3B1X2lzX2l4cDQyeCgpKQor CQlyZXR1cm4gdmFsICYgSVhQNDJYX0ZFQVRVUkVfTUFTSzsKKwlpZiAoY3B1X2lzX2l4cDQzeCgp KQorCQlyZXR1cm4gdmFsICYgSVhQNDNYX0ZFQVRVUkVfTUFTSzsKKwlyZXR1cm4gdmFsICYgSVhQ NDZYX0ZFQVRVUkVfTUFTSzsKK30KKworc3RhdGljIGlubGluZSB2b2lkIGl4cDR4eF93cml0ZV9m ZWF0dXJlX2JpdHModTMyIHZhbHVlKQoreworCUlYUDRYWF9FWFBfQ0ZHMiA9IH52YWx1ZTsKK30K KworI2VuZGlmICAvKiBfQVNNX0FSQ0hfQ1BVX0ggKi8KZGlmZiAtLWdpdCBhL2FyY2gvYXJtL21h Y2gtaXhwNHh4L2luY2x1ZGUvbWFjaC9peHA0eHgtcmVncy5oIGIvYXJjaC9hcm0vbWFjaC1peHA0 eHgvaW5jbHVkZS9tYWNoL2l4cDR4eC1yZWdzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MDAwMDAwMC4uZGE0ZGM4YQotLS0gL2Rldi9udWxsCisrKyBiL2FyY2gvYXJtL21hY2gtaXhwNHh4 L2luY2x1ZGUvbWFjaC9peHA0eHgtcmVncy5oCkBAIC0wLDAgKzEsMzY1IEBACisvKgorICogUmVn aXN0ZXIgZGVmaW5pdGlvbnMgZm9yIElYUDR4eCBjaGlwc2V0LgorICoKKyAqIENvcHlyaWdodCAo QykgMjAwMiBJbnRlbCBDb3Jwb3JhdGlvbi4KKyAqIENvcHlyaWdodCAoQykgMjAwMy0yMDA0IE1v bnRhVmlzdGEgU29mdHdhcmUsIEluYy4KKyAqCisgKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0 d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIg dGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgYXMK KyAqIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLgorICoKKyAqLwor CisjaWZuZGVmIF9BU01fQVJNX0lYUDRYWF9IXworI2RlZmluZSBfQVNNX0FSTV9JWFA0WFhfSF8K KworI2lmZGVmIF9fQVNTRU1CTEVSX18KKyNkZWZpbmUgSVhQNFhYX1JFRyhyZWcpICAocmVnKQor I2Vsc2UKKyNkZWZpbmUgSVhQNFhYX1JFRyhyZWcpICAoKih2b2xhdGlsZSB1MzIgKikocmVnKSkK KyNkZWZpbmUgSVhQNFhYX0JBU0UocmVnKSAoKHUzMiopKHJlZykpCisjZW5kaWYKKworLyogRXhw YW5zaW9uIEJ1cyByZWdpb24gKi8KKworLyogUXVldWUgTWFuYWdlciAqLworI2RlZmluZSBJWFA0 WFhfUU1HUl9CQVNFICAgICAgICAgICAgICAoMHg2MDAwMDAwMCkKKyNkZWZpbmUgSVhQNFhYX1FN R1JfUkVHSU9OX1NJWkUgICAgICAgKDB4MDAwMDQwMDApCisKKworLyogUENJIENvbmZpZyByZWdp c3RlcnMgKi8KKyNkZWZpbmUgSVhQNFhYX1BDSV9DRkdfQkFTRSAgICAgICAgICAgKDB4QzAwMDAw MDApCisjZGVmaW5lIElYUDRYWF9QQ0lfQ0ZHX1JFR0lPTl9TSVpFICAgICgweDAwMDAxMDAwKQor CisvKiBQZXJpcGhlcmFsIHNwYWNlICovCisjZGVmaW5lIElYUDRYWF9QRVJJUEhFUkFMX0JBU0Ug ICAgICAgICgweEM4MDAwMDAwKQorI2RlZmluZSBJWFA0WFhfUEVSSVBIRVJBTF9SRUdJT05fU0la RSAoMHgwMDAxMzAwMCkKKworLyoKKyAqIERlYnVnIFVBUlQKKyAqCisgKiBUaGlzIGlzIGJhc2lj YWxseSBhIHJlbWFwIG9mIFVBUlQxIGludG8gYSByZWdpb24gdGhhdCBpcyBzZWN0aW9uCisgKiBh bGlnbmVkIHNvIHRoYXQgaXQgY2FuIGJlIHVzZWQgd2l0aCB0aGUgbG93LWxldmVsIGRlYnVnIGNv ZGUuCisgKi8KKyNkZWZpbmUgSVhQNFhYX0RFQlVHX1VBUlRfQkFTRSAgICAgICAgKDB4QzgwMDAw MDApCisjZGVmaW5lIElYUDRYWF9ERUJVR19VQVJUX1JFR0lPTl9TSVpFICgweDAwMDAxMDAwKQor CisvKiBFeHBhbnNpb24gQnVzIENvbnRyb2xsZXIgcmVnaXN0ZXJzLiAqLworI2RlZmluZSBJWFA0 WFhfRVhQX0NTMCAgICAgICBJWFA0WFhfUkVHKDB4QzQwMDAwMDApCisjZGVmaW5lIElYUDRYWF9F WFBfQ1MxICAgICAgIElYUDRYWF9SRUcoMHhDNDAwMDAwNCkKKyNkZWZpbmUgSVhQNFhYX0VYUF9D UzIgICAgICAgSVhQNFhYX1JFRygweEM0MDAwMDA4KQorI2RlZmluZSBJWFA0WFhfRVhQX0NTMyAg ICAgICBJWFA0WFhfUkVHKDB4QzQwMDAwMEMpCisjZGVmaW5lIElYUDRYWF9FWFBfQ1M0ICAgICAg IElYUDRYWF9SRUcoMHhDNDAwMDAxMCkKKyNkZWZpbmUgSVhQNFhYX0VYUF9DUzUgICAgICAgSVhQ NFhYX1JFRygweEM0MDAwMDE0KQorI2RlZmluZSBJWFA0WFhfRVhQX0NTNiAgICAgICBJWFA0WFhf UkVHKDB4QzQwMDAwMTgpCisjZGVmaW5lIElYUDRYWF9FWFBfQ1M3ICAgICAgIElYUDRYWF9SRUco MHhDNDAwMDAxQykKKworI2RlZmluZSBJWFA0WFhfRVhQX0JBU0UobikgICgweDUwMDAwMDAwICsg KG4pICogMTAwMDAwMCkKKworI2RlZmluZSBJWFA0WFhfRVhQX0VOICAgICAgICAweDgwMDAwMDAw CisjZGVmaW5lIElYUDRYWF9FWFBfVDEobikgICAgKDB4MTAwMDAwMDAgKiAobikpIC8qIHZhbGlk OiAwIC0gMyAqLworI2RlZmluZSBJWFA0WFhfRVhQX1QyKG4pICAgICgweDA0MDAwMDAwICogKG4p KSAvKiB2YWxpZDogMCAtIDMgKi8KKyNkZWZpbmUgSVhQNFhYX0VYUF9UMyhuKSAgICAoMHgwMDQw MDAwMCAqIChuKSkgLyogdmFsaWQ6IDAgLSAxNSAqLworI2RlZmluZSBJWFA0WFhfRVhQX1Q0KG4p ICAgICgweDAwMTAwMDAwICogKG4pKSAvKiB2YWxpZDogMCAtIDMgKi8KKyNkZWZpbmUgSVhQNFhY X0VYUF9UNShuKSAgICAoMHgwMDAxMDAwMCAqIChuKSkgLyogdmFsaWQ6IDAgLSAxNSAqLworI2Rl ZmluZSBJWFA0WFhfRVhQX0lOVEVMICAgICAweDAwMDAwMDAwCisjZGVmaW5lIElYUDRYWF9FWFBf TU9UTyAgICAgIDB4MDAwMDQwMDAKKyNkZWZpbmUgSVhQNFhYX0VYUF9IUEkgICAgICAgMHgwMDAw ODAwMAorI2RlZmluZSBJWFA0WFhfRVhQX0JJVFMobikgICgweDAwMDAwNDAwICogKChuKSAtIDkp KSAvKiB2YWxpZDogOSAtIDI0ICovCisjZGVmaW5lIElYUDRYWF9FWFBfQllURV9SRDE2IDB4MDAw MDAwNDAKKyNkZWZpbmUgSVhQNFhYX0VYUF9IUkRZX1BPTCAgMHgwMDAwMDAyMAorI2RlZmluZSBJ WFA0WFhfRVhQX01VWF9FTiAgICAweDAwMDAwMDEwCisjZGVmaW5lIElYUDRYWF9FWFBfU1BMVF9F TiAgIDB4MDAwMDAwMDgKKyNkZWZpbmUgSVhQNFhYX0VYUF9XUl9FTiAgICAgMHgwMDAwMDAwMgor I2RlZmluZSBJWFA0WFhfRVhQX0JZVEVfRU4gICAweDAwMDAwMDAxCisKKyNkZWZpbmUgSVhQNFhY X0VYUF9DRkcwICAgICAgSVhQNFhYX1JFRygweEM0MDAwMDIwKQorI2RlZmluZSBJWFA0WFhfRVhQ X0NGRzEgICAgICBJWFA0WFhfUkVHKDB4QzQwMDAwMjQpCisjZGVmaW5lIElYUDRYWF9FWFBfQ0ZH MiAgICAgIElYUDRYWF9SRUcoMHhDNDAwMDAyOCkKKyNkZWZpbmUgSVhQNFhYX0VYUF9DRkczICAg ICAgSVhQNFhYX1JFRygweEM0MDAwMDJDKQorCisKKy8qIFBlcmlwaGVyYWwgU3BhY2UgUmVnaXN0 ZXIgUmVnaW9uIEJhc2UgQWRkcmVzc2VzICovCisjZGVmaW5lIElYUDRYWF9VQVJUMV9CQVNFICAg IElYUDRYWF9CQVNFKElYUDRYWF9QRVJJUEhFUkFMX0JBU0UgKyAweDAwMDApCisjZGVmaW5lIElY UDRYWF9VQVJUMl9CQVNFICAgIElYUDRYWF9CQVNFKElYUDRYWF9QRVJJUEhFUkFMX0JBU0UgKyAw eDEwMDApCisjZGVmaW5lIElYUDRYWF9QTVVfQkFTRSAgICAgIElYUDRYWF9CQVNFKElYUDRYWF9Q RVJJUEhFUkFMX0JBU0UgKyAweDIwMDApCisjZGVmaW5lIElYUDRYWF9JTlRDX0JBU0UgICAgIElY UDRYWF9CQVNFKElYUDRYWF9QRVJJUEhFUkFMX0JBU0UgKyAweDMwMDApCisjZGVmaW5lIElYUDRY WF9HUElPX0JBU0UgICAgIElYUDRYWF9CQVNFKElYUDRYWF9QRVJJUEhFUkFMX0JBU0UgKyAweDQw MDApCisjZGVmaW5lIElYUDRYWF9OUEVBX0JBU0UgICAgIElYUDRYWF9CQVNFKElYUDRYWF9QRVJJ UEhFUkFMX0JBU0UgKyAweDYwMDApCisjZGVmaW5lIElYUDRYWF9OUEVCX0JBU0UgICAgIElYUDRY WF9CQVNFKElYUDRYWF9QRVJJUEhFUkFMX0JBU0UgKyAweDcwMDApCisjZGVmaW5lIElYUDRYWF9O UEVDX0JBU0UgICAgIElYUDRYWF9CQVNFKElYUDRYWF9QRVJJUEhFUkFMX0JBU0UgKyAweDgwMDAp CisjZGVmaW5lIElYUDRYWF9FdGhCX0JBU0UgICAgIElYUDRYWF9CQVNFKElYUDRYWF9QRVJJUEhF UkFMX0JBU0UgKyAweDkwMDApCisjZGVmaW5lIElYUDRYWF9FdGhDX0JBU0UgICAgIElYUDRYWF9C QVNFKElYUDRYWF9QRVJJUEhFUkFMX0JBU0UgKyAweEEwMDApCisjZGVmaW5lIElYUDRYWF9VU0Jf QkFTRSAgICAgIElYUDRYWF9CQVNFKElYUDRYWF9QRVJJUEhFUkFMX0JBU0UgKyAweEIwMDApCisv KiBJWFA0Nnggb25seSAqLworI2RlZmluZSBJWFA0WFhfRXRoQV9CQVNFICAgICBJWFA0WFhfQkFT RShJWFA0WFhfUEVSSVBIRVJBTF9CQVNFICsgMHhDMDAwKQorI2RlZmluZSBJWFA0WFhfRXRoQjFf QkFTRSAgICBJWFA0WFhfQkFTRShJWFA0WFhfUEVSSVBIRVJBTF9CQVNFICsgMHhEMDAwKQorI2Rl ZmluZSBJWFA0WFhfRXRoQjJfQkFTRSAgICBJWFA0WFhfQkFTRShJWFA0WFhfUEVSSVBIRVJBTF9C QVNFICsgMHhFMDAwKQorI2RlZmluZSBJWFA0WFhfRXRoQjNfQkFTRSAgICBJWFA0WFhfQkFTRShJ WFA0WFhfUEVSSVBIRVJBTF9CQVNFICsgMHhGMDAwKQorI2RlZmluZSBJWFA0WFhfVElNRVNZTkNf QkFTRSBJWFA0WFhfQkFTRShJWFA0WFhfUEVSSVBIRVJBTF9CQVNFICsgMHgxMDAwMCkKKyNkZWZp bmUgSVhQNFhYX0kyQ19CQVNFICAgICAgSVhQNFhYX0JBU0UoSVhQNFhYX1BFUklQSEVSQUxfQkFT RSArIDB4MTEwMDApCisjZGVmaW5lIElYUDRYWF9TU1BfQkFTRSAgICAgIElYUDRYWF9CQVNFKElY UDRYWF9QRVJJUEhFUkFMX0JBU0UgKyAweDEyMDAwKQorCisvKgorICBDb25zdGFudHMgdG8gbWFr ZSBpdCBlYXN5IHRvIGFjY2VzcyBJbnRlcnJ1cHQgQ29udHJvbGxlciByZWdpc3RlcnMKKyAqLwor I2RlZmluZSBJWFA0WFhfSUNQUl9PRkZTRVQgICAweDAwIC8qIEludGVycnVwdCBTdGF0dXMgKi8K KyNkZWZpbmUgSVhQNFhYX0lDTVJfT0ZGU0VUICAgMHgwNCAvKiBJbnRlcnJ1cHQgRW5hYmxlICov CisjZGVmaW5lIElYUDRYWF9JQ0xSX09GRlNFVCAgIDB4MDggLyogSW50ZXJydXB0IElSUS9GSVEg U2VsZWN0ICovCisjZGVmaW5lIElYUDRYWF9JQ0lQX09GRlNFVCAgIDB4MEMgLyogSVJRIFN0YXR1 cyAqLworI2RlZmluZSBJWFA0WFhfSUNGUF9PRkZTRVQgICAweDEwIC8qIEZJUSBTdGF0dXMgKi8K KyNkZWZpbmUgSVhQNFhYX0lDSFJfT0ZGU0VUICAgMHgxNCAvKiBJbnRlcnJ1cHQgUHJpb3JpdHkg Ki8KKyNkZWZpbmUgSVhQNFhYX0lDSUhfT0ZGU0VUICAgMHgxOCAvKiBJUlEgSGlnaGVzdCBQcmkg SW50ICovCisjZGVmaW5lIElYUDRYWF9JQ0ZIX09GRlNFVCAgIDB4MUMgLyogRklRIEhpZ2hlc3Qg UHJpIEludCAqLworCisvKiBJWFA0NjUtb25seSAqLworI2RlZmluZSBJWFA0WFhfSUNQUjJfT0ZG U0VUICAweDIwIC8qIEludGVycnVwdCBTdGF0dXMgMiAqLworI2RlZmluZSBJWFA0WFhfSUNNUjJf T0ZGU0VUICAweDI0IC8qIEludGVycnVwdCBFbmFibGUgMiAqLworI2RlZmluZSBJWFA0WFhfSUNM UjJfT0ZGU0VUICAweDI4IC8qIEludGVycnVwdCBJUlEvRklRIFNlbGVjdCAyICovCisjZGVmaW5l IElYUDRYWF9JQ0lQMl9PRkZTRVQgIDB4MkMgLyogSVJRIFN0YXR1cyAqLworI2RlZmluZSBJWFA0 WFhfSUNGUDJfT0ZGU0VUICAweDMwIC8qIEZJUSBTdGF0dXMgKi8KKyNkZWZpbmUgSVhQNFhYX0lD RUVOX09GRlNFVCAgMHgzNCAvKiBFcnJvciBIaWdoIFByaSBFbmFibGUgKi8KKworCisvKiBJbnRl cnJ1cHQgQ29udHJvbGxlciBSZWdpc3RlciBEZWZpbml0aW9ucy4gKi8KKyNkZWZpbmUgSVhQNFhY X0lOVENfUkVHKHgpICAgKCh2b2xhdGlsZSB1MzIgKikoSVhQNFhYX0lOVENfQkFTRSArICh4KSkp CisKKyNkZWZpbmUgSVhQNFhYX0lDUFIgICAgICAgICAgSVhQNFhYX0lOVENfUkVHKElYUDRYWF9J Q1BSX09GRlNFVCkKKyNkZWZpbmUgSVhQNFhYX0lDTVIgICAgICAgICAgSVhQNFhYX0lOVENfUkVH KElYUDRYWF9JQ01SX09GRlNFVCkKKyNkZWZpbmUgSVhQNFhYX0lDTFIgICAgICAgICAgSVhQNFhY X0lOVENfUkVHKElYUDRYWF9JQ0xSX09GRlNFVCkKKyNkZWZpbmUgSVhQNFhYX0lDSVAgICAgICAg ICAgSVhQNFhYX0lOVENfUkVHKElYUDRYWF9JQ0lQX09GRlNFVCkKKyNkZWZpbmUgSVhQNFhYX0lD RlAgICAgICAgICAgSVhQNFhYX0lOVENfUkVHKElYUDRYWF9JQ0ZQX09GRlNFVCkKKyNkZWZpbmUg SVhQNFhYX0lDSFIgICAgICAgICAgSVhQNFhYX0lOVENfUkVHKElYUDRYWF9JQ0hSX09GRlNFVCkK KyNkZWZpbmUgSVhQNFhYX0lDSUggICAgICAgICAgSVhQNFhYX0lOVENfUkVHKElYUDRYWF9JQ0lI X09GRlNFVCkKKyNkZWZpbmUgSVhQNFhYX0lDRkggICAgICAgICAgSVhQNFhYX0lOVENfUkVHKElY UDRYWF9JQ0ZIX09GRlNFVCkKKyNkZWZpbmUgSVhQNFhYX0lDUFIyICAgICAgICAgSVhQNFhYX0lO VENfUkVHKElYUDRYWF9JQ1BSMl9PRkZTRVQpCisjZGVmaW5lIElYUDRYWF9JQ01SMiAgICAgICAg IElYUDRYWF9JTlRDX1JFRyhJWFA0WFhfSUNNUjJfT0ZGU0VUKQorI2RlZmluZSBJWFA0WFhfSUNM UjIgICAgICAgICBJWFA0WFhfSU5UQ19SRUcoSVhQNFhYX0lDTFIyX09GRlNFVCkKKyNkZWZpbmUg SVhQNFhYX0lDSVAyICAgICAgICAgSVhQNFhYX0lOVENfUkVHKElYUDRYWF9JQ0lQMl9PRkZTRVQp CisjZGVmaW5lIElYUDRYWF9JQ0ZQMiAgICAgICAgIElYUDRYWF9JTlRDX1JFRyhJWFA0WFhfSUNG UDJfT0ZGU0VUKQorI2RlZmluZSBJWFA0WFhfSUNFRU4gICAgICAgICBJWFA0WFhfSU5UQ19SRUco SVhQNFhYX0lDRUVOX09GRlNFVCkKKworLyogQ29uc3RhbnRzIHRvIG1ha2UgaXQgZWFzeSB0byBh Y2Nlc3MgR1BJTyByZWdpc3RlcnMgKi8KKyNkZWZpbmUgSVhQNFhYX0dQSU9fR1BPVVRSX09GRlNF VCAgIDB4MDAKKyNkZWZpbmUgSVhQNFhYX0dQSU9fR1BPRVJfT0ZGU0VUICAgIDB4MDQKKyNkZWZp bmUgSVhQNFhYX0dQSU9fR1BJTlJfT0ZGU0VUICAgIDB4MDgKKyNkZWZpbmUgSVhQNFhYX0dQSU9f R1BJU1JfT0ZGU0VUICAgIDB4MEMKKyNkZWZpbmUgSVhQNFhYX0dQSU9fR1BJVDFSX09GRlNFVCAg IDB4MTAKKyNkZWZpbmUgSVhQNFhYX0dQSU9fR1BJVDJSX09GRlNFVCAgIDB4MTQKKyNkZWZpbmUg SVhQNFhYX0dQSU9fR1BDTEtSX09GRlNFVCAgIDB4MTgKKyNkZWZpbmUgSVhQNFhYX0dQSU9fR1BE QlNFTFJfT0ZGU0VUIDB4MUMKKworLyogR1BJTyBSZWdpc3RlciBEZWZpbml0aW9ucyAtIHBlcmZv cm0gb25seSAzMi1iaXQgcmVhZHMvd3JpdGVzICovCisjZGVmaW5lIElYUDRYWF9HUElPX1JFRyh4 KSAgICgodm9sYXRpbGUgdTMyICopKElYUDRYWF9HUElPX0JBU0UgKyAoeCkpKQorCisjZGVmaW5l IElYUDRYWF9HUElPX0dQT1VUUiAgIElYUDRYWF9HUElPX1JFRyhJWFA0WFhfR1BJT19HUE9VVFJf T0ZGU0VUKQorI2RlZmluZSBJWFA0WFhfR1BJT19HUE9FUiAgICBJWFA0WFhfR1BJT19SRUcoSVhQ NFhYX0dQSU9fR1BPRVJfT0ZGU0VUKQorI2RlZmluZSBJWFA0WFhfR1BJT19HUElOUiAgICBJWFA0 WFhfR1BJT19SRUcoSVhQNFhYX0dQSU9fR1BJTlJfT0ZGU0VUKQorI2RlZmluZSBJWFA0WFhfR1BJ T19HUElTUiAgICBJWFA0WFhfR1BJT19SRUcoSVhQNFhYX0dQSU9fR1BJU1JfT0ZGU0VUKQorI2Rl ZmluZSBJWFA0WFhfR1BJT19HUElUMVIgICBJWFA0WFhfR1BJT19SRUcoSVhQNFhYX0dQSU9fR1BJ VDFSX09GRlNFVCkKKyNkZWZpbmUgSVhQNFhYX0dQSU9fR1BJVDJSICAgSVhQNFhYX0dQSU9fUkVH KElYUDRYWF9HUElPX0dQSVQyUl9PRkZTRVQpCisjZGVmaW5lIElYUDRYWF9HUElPX0dQQ0xLUiAg IElYUDRYWF9HUElPX1JFRyhJWFA0WFhfR1BJT19HUENMS1JfT0ZGU0VUKQorI2RlZmluZSBJWFA0 WFhfR1BJT19HUERCU0VMUiBJWFA0WFhfR1BJT19SRUcoSVhQNFhYX0dQSU9fR1BEQlNFTFJfT0ZG U0VUKQorCisvKiBHUElPIHJlZ2lzdGVyIGJpdCBkZWZpbml0aW9ucyAqLworCisvKiBJbnRlcnJ1 cHQgc3R5bGVzICovCisjZGVmaW5lIElYUDRYWF9HUElPX1NUWUxFX0FDVElWRV9ISUdIICAweDAK KyNkZWZpbmUgSVhQNFhYX0dQSU9fU1RZTEVfQUNUSVZFX0xPVyAgIDB4MQorI2RlZmluZSBJWFA0 WFhfR1BJT19TVFlMRV9SSVNJTkdfRURHRSAgMHgyCisjZGVmaW5lIElYUDRYWF9HUElPX1NUWUxF X0ZBTExJTkdfRURHRSAweDMKKyNkZWZpbmUgSVhQNFhYX0dQSU9fU1RZTEVfVFJBTlNJVElPTkFM IDB4NAorCisvKiBNYXNrIHVzZWQgdG8gY2xlYXIgaW50ZXJydXB0IHN0eWxlcyAqLworI2RlZmlu ZSBJWFA0WFhfR1BJT19TVFlMRV9DTEVBUiAgICAgICAgMHg3CisjZGVmaW5lIElYUDRYWF9HUElP X1NUWUxFX1NJWkUgICAgICAgICAzCisKKy8qIE9wZXJhdGluZyBTeXN0ZW0gVGltZXIgUmVnaXN0 ZXIgRGVmaW5pdGlvbnMuICovCisjZGVmaW5lIElYUDRYWF9PU1RTICAgICAgICAgIElYUDRYWF9S RUcoMHhDODAwNTAwMCkgLyogQ29udGluaW91cyBUaW1lU3RhbXAgKi8KKyNkZWZpbmUgSVhQNFhY X09TVDEgICAgICAgICAgSVhQNFhYX1JFRygweEM4MDA1MDA0KSAvKiBUaW1lciAxIFRpbWVzdGFt cCAqLworI2RlZmluZSBJWFA0WFhfT1NSVDEgICAgICAgICBJWFA0WFhfUkVHKDB4QzgwMDUwMDgp IC8qIFRpbWVyIDEgUmVsb2FkICovCisjZGVmaW5lIElYUDRYWF9PU1QyICAgICAgICAgIElYUDRY WF9SRUcoMHhDODAwNTAwQykgLyogVGltZXIgMiBUaW1lc3RhbXAgKi8KKyNkZWZpbmUgSVhQNFhY X09TUlQyICAgICAgICAgSVhQNFhYX1JFRygweEM4MDA1MDEwKSAvKiBUaW1lciAyIFJlbG9hZCAq LworI2RlZmluZSBJWFA0WFhfT1NXVCAgICAgICAgICBJWFA0WFhfUkVHKDB4QzgwMDUwMTQpIC8q IFdhdGNoZG9nIFRpbWVyICovCisjZGVmaW5lIElYUDRYWF9PU1dFICAgICAgICAgIElYUDRYWF9S RUcoMHhDODAwNTAxOCkgLyogV2F0Y2hkb2cgRW5hYmxlICovCisjZGVmaW5lIElYUDRYWF9PU1dL ICAgICAgICAgIElYUDRYWF9SRUcoMHhDODAwNTAxQykgLyogV2F0Y2hkb2cgS2V5ICovCisjZGVm aW5lIElYUDRYWF9PU1NUICAgICAgICAgIElYUDRYWF9SRUcoMHhDODAwNTAyMCkgLyogVGltZXIg U3RhdHVzICovCisKKy8qIFRpbWVyIHJlZ2lzdGVyIHZhbHVlcyBhbmQgYml0IGRlZmluaXRpb25z ICovCisjZGVmaW5lIElYUDRYWF9PU1RfRU5BQkxFICAgICAgICAgICAgMHgwMDAwMDAwMQorI2Rl ZmluZSBJWFA0WFhfT1NUX09ORV9TSE9UICAgICAgICAgIDB4MDAwMDAwMDIKKy8qIExvdyBvcmRl ciBiaXRzIG9mIHJlbG9hZCB2YWx1ZSBpZ25vcmVkICovCisjZGVmaW5lIElYUDRYWF9PU1RfUkVM T0FEX01BU0sgICAgICAgMHgwMDAwMDAwMworI2RlZmluZSBJWFA0WFhfT1NUX0RJU0FCTEVEICAg ICAgICAgIDB4MDAwMDAwMDAKKyNkZWZpbmUgSVhQNFhYX09TU1RfVElNRVJfMV9QRU5EICAgICAw eDAwMDAwMDAxCisjZGVmaW5lIElYUDRYWF9PU1NUX1RJTUVSXzJfUEVORCAgICAgMHgwMDAwMDAw MgorI2RlZmluZSBJWFA0WFhfT1NTVF9USU1FUl9UU19QRU5EICAgIDB4MDAwMDAwMDQKKyNkZWZp bmUgSVhQNFhYX09TU1RfVElNRVJfV0RPR19QRU5EICAweDAwMDAwMDA4CisjZGVmaW5lIElYUDRY WF9PU1NUX1RJTUVSX1dBUk1fUkVTRVQgMHgwMDAwMDAxMAorCisjZGVmaW5lIElYUDRYWF9XRFRf S0VZICAgICAgICAgICAgICAgMHgwMDAwNDgyRQorCisjZGVmaW5lIElYUDRYWF9XRFRfUkVTRVRf RU5BQkxFICAgICAgMHgwMDAwMDAwMQorI2RlZmluZSBJWFA0WFhfV0RUX0lSUV9FTkFCTEUgICAg ICAgIDB4MDAwMDAwMDIKKyNkZWZpbmUgSVhQNFhYX1dEVF9DT1VOVF9FTkFCTEUgICAgICAweDAw MDAwMDA0CisKKworLyogQ29uc3RhbnRzIHRvIG1ha2UgaXQgZWFzeSB0byBhY2Nlc3MgUENJIENv bnRyb2wvU3RhdHVzIHJlZ2lzdGVycyAqLworI2RlZmluZSBQQ0lfTlBfQURfT0ZGU0VUICAgICAg ICAgICAweDAwCisjZGVmaW5lIFBDSV9OUF9DQkVfT0ZGU0VUICAgICAgICAgIDB4MDQKKyNkZWZp bmUgUENJX05QX1dEQVRBX09GRlNFVCAgICAgICAgMHgwOAorI2RlZmluZSBQQ0lfTlBfUkRBVEFf T0ZGU0VUICAgICAgICAweDBjCisjZGVmaW5lIFBDSV9DUlBfQURfQ0JFX09GRlNFVCAgICAgIDB4 MTAKKyNkZWZpbmUgUENJX0NSUF9XREFUQV9PRkZTRVQgICAgICAgMHgxNAorI2RlZmluZSBQQ0lf Q1JQX1JEQVRBX09GRlNFVCAgICAgICAweDE4CisjZGVmaW5lIFBDSV9DU1JfT0ZGU0VUICAgICAg ICAgICAgIDB4MWMKKyNkZWZpbmUgUENJX0lTUl9PRkZTRVQgICAgICAgICAgICAgMHgyMAorI2Rl ZmluZSBQQ0lfSU5URU5fT0ZGU0VUICAgICAgICAgICAweDI0CisjZGVmaW5lIFBDSV9ETUFDVFJM X09GRlNFVCAgICAgICAgIDB4MjgKKyNkZWZpbmUgUENJX0FIQk1FTUJBU0VfT0ZGU0VUICAgICAg MHgyYworI2RlZmluZSBQQ0lfQUhCSU9CQVNFX09GRlNFVCAgICAgICAweDMwCisjZGVmaW5lIFBD SV9QQ0lNRU1CQVNFX09GRlNFVCAgICAgIDB4MzQKKyNkZWZpbmUgUENJX0FIQkRPT1JCRUxMX09G RlNFVCAgICAgMHgzOAorI2RlZmluZSBQQ0lfUENJRE9PUkJFTExfT0ZGU0VUICAgICAweDNDCisj ZGVmaW5lIFBDSV9BVFBETUEwX0FIQkFERFJfT0ZGU0VUIDB4NDAKKyNkZWZpbmUgUENJX0FUUERN QTBfUENJQUREUl9PRkZTRVQgMHg0NAorI2RlZmluZSBQQ0lfQVRQRE1BMF9MRU5BRERSX09GRlNF VCAweDQ4CisjZGVmaW5lIFBDSV9BVFBETUExX0FIQkFERFJfT0ZGU0VUIDB4NEMKKyNkZWZpbmUg UENJX0FUUERNQTFfUENJQUREUl9PRkZTRVQgMHg1MAorI2RlZmluZSBQQ0lfQVRQRE1BMV9MRU5B RERSX09GRlNFVCAweDU0CisKKy8qIFBDSSBDb250cm9sL1N0YXR1cyBSZWdpc3RlcnMgKi8KKyNk ZWZpbmUgSVhQNFhYX1BDSV9DU1IoeCkgKCh2b2xhdGlsZSB1MzIgKikoSVhQNFhYX1BDSV9DRkdf QkFTRSArICh4KSkpCisKKyNkZWZpbmUgUENJX05QX0FEICAgICAgICAgICAgSVhQNFhYX1BDSV9D U1IoUENJX05QX0FEX09GRlNFVCkKKyNkZWZpbmUgUENJX05QX0NCRSAgICAgICAgICAgSVhQNFhY X1BDSV9DU1IoUENJX05QX0NCRV9PRkZTRVQpCisjZGVmaW5lIFBDSV9OUF9XREFUQSAgICAgICAg IElYUDRYWF9QQ0lfQ1NSKFBDSV9OUF9XREFUQV9PRkZTRVQpCisjZGVmaW5lIFBDSV9OUF9SREFU QSAgICAgICAgIElYUDRYWF9QQ0lfQ1NSKFBDSV9OUF9SREFUQV9PRkZTRVQpCisjZGVmaW5lIFBD SV9DUlBfQURfQ0JFICAgICAgIElYUDRYWF9QQ0lfQ1NSKFBDSV9DUlBfQURfQ0JFX09GRlNFVCkK KyNkZWZpbmUgUENJX0NSUF9XREFUQSAgICAgICAgSVhQNFhYX1BDSV9DU1IoUENJX0NSUF9XREFU QV9PRkZTRVQpCisjZGVmaW5lIFBDSV9DUlBfUkRBVEEgICAgICAgIElYUDRYWF9QQ0lfQ1NSKFBD SV9DUlBfUkRBVEFfT0ZGU0VUKQorI2RlZmluZSBQQ0lfQ1NSICAgICAgICAgICAgICBJWFA0WFhf UENJX0NTUihQQ0lfQ1NSX09GRlNFVCkKKyNkZWZpbmUgUENJX0lTUiAgICAgICAgICAgICAgSVhQ NFhYX1BDSV9DU1IoUENJX0lTUl9PRkZTRVQpCisjZGVmaW5lIFBDSV9JTlRFTiAgICAgICAgICAg IElYUDRYWF9QQ0lfQ1NSKFBDSV9JTlRFTl9PRkZTRVQpCisjZGVmaW5lIFBDSV9ETUFDVFJMICAg ICAgICAgIElYUDRYWF9QQ0lfQ1NSKFBDSV9ETUFDVFJMX09GRlNFVCkKKyNkZWZpbmUgUENJX0FI Qk1FTUJBU0UgICAgICAgSVhQNFhYX1BDSV9DU1IoUENJX0FIQk1FTUJBU0VfT0ZGU0VUKQorI2Rl ZmluZSBQQ0lfQUhCSU9CQVNFICAgICAgICBJWFA0WFhfUENJX0NTUihQQ0lfQUhCSU9CQVNFX09G RlNFVCkKKyNkZWZpbmUgUENJX1BDSU1FTUJBU0UgICAgICAgSVhQNFhYX1BDSV9DU1IoUENJX1BD SU1FTUJBU0VfT0ZGU0VUKQorI2RlZmluZSBQQ0lfQUhCRE9PUkJFTEwgICAgICBJWFA0WFhfUENJ X0NTUihQQ0lfQUhCRE9PUkJFTExfT0ZGU0VUKQorI2RlZmluZSBQQ0lfUENJRE9PUkJFTEwgICAg ICBJWFA0WFhfUENJX0NTUihQQ0lfUENJRE9PUkJFTExfT0ZGU0VUKQorI2RlZmluZSBQQ0lfQVRQ RE1BMF9BSEJBRERSICBJWFA0WFhfUENJX0NTUihQQ0lfQVRQRE1BMF9BSEJBRERSX09GRlNFVCkK KyNkZWZpbmUgUENJX0FUUERNQTBfUENJQUREUiAgSVhQNFhYX1BDSV9DU1IoUENJX0FUUERNQTBf UENJQUREUl9PRkZTRVQpCisjZGVmaW5lIFBDSV9BVFBETUEwX0xFTkFERFIgIElYUDRYWF9QQ0lf Q1NSKFBDSV9BVFBETUEwX0xFTkFERFJfT0ZGU0VUKQorI2RlZmluZSBQQ0lfQVRQRE1BMV9BSEJB RERSICBJWFA0WFhfUENJX0NTUihQQ0lfQVRQRE1BMV9BSEJBRERSX09GRlNFVCkKKyNkZWZpbmUg UENJX0FUUERNQTFfUENJQUREUiAgSVhQNFhYX1BDSV9DU1IoUENJX0FUUERNQTFfUENJQUREUl9P RkZTRVQpCisjZGVmaW5lIFBDSV9BVFBETUExX0xFTkFERFIgIElYUDRYWF9QQ0lfQ1NSKFBDSV9B VFBETUExX0xFTkFERFJfT0ZGU0VUKQorCisvKiBQQ0kgcmVnaXN0ZXIgdmFsdWVzIGFuZCBiaXQg ZGVmaW5pdGlvbnMgKi8KKworLyogQ1NSIGJpdCBkZWZpbml0aW9ucyAqLworI2RlZmluZSBQQ0lf Q1NSX0hPU1QgICAgICAgICAweDAwMDAwMDAxCisjZGVmaW5lIFBDSV9DU1JfQVJCRU4gICAgICAg IDB4MDAwMDAwMDIKKyNkZWZpbmUgUENJX0NTUl9BRFMgICAgICAgICAgMHgwMDAwMDAwNAorI2Rl ZmluZSBQQ0lfQ1NSX1BEUyAgICAgICAgICAweDAwMDAwMDA4CisjZGVmaW5lIFBDSV9DU1JfQUJF ICAgICAgICAgIDB4MDAwMDAwMTAKKyNkZWZpbmUgUENJX0NTUl9EQlQgICAgICAgICAgMHgwMDAw MDAyMAorI2RlZmluZSBQQ0lfQ1NSX0FTRSAgICAgICAgICAweDAwMDAwMTAwCisjZGVmaW5lIFBD SV9DU1JfSUMgICAgICAgICAgIDB4MDAwMDgwMDAKKworLyogSVNSIChJbnRlcnJ1cHQgc3RhdHVz KSBSZWdpc3RlciBiaXQgZGVmaW5pdGlvbnMgKi8KKyNkZWZpbmUgUENJX0lTUl9QU0UgICAgICAg ICAgMHgwMDAwMDAwMQorI2RlZmluZSBQQ0lfSVNSX1BGRSAgICAgICAgICAweDAwMDAwMDAyCisj ZGVmaW5lIFBDSV9JU1JfUFBFICAgICAgICAgIDB4MDAwMDAwMDQKKyNkZWZpbmUgUENJX0lTUl9B SEJFICAgICAgICAgMHgwMDAwMDAwOAorI2RlZmluZSBQQ0lfSVNSX0FQREMgICAgICAgICAweDAw MDAwMDEwCisjZGVmaW5lIFBDSV9JU1JfUEFEQyAgICAgICAgIDB4MDAwMDAwMjAKKyNkZWZpbmUg UENJX0lTUl9BREIgICAgICAgICAgMHgwMDAwMDA0MAorI2RlZmluZSBQQ0lfSVNSX1BEQiAgICAg ICAgICAweDAwMDAwMDgwCisKKy8qIElOVEVOIChJbnRlcnJ1cHQgRW5hYmxlKSBSZWdpc3RlciBi aXQgZGVmaW5pdGlvbnMgKi8KKyNkZWZpbmUgUENJX0lOVEVOX1BTRSAgICAgICAgMHgwMDAwMDAw MQorI2RlZmluZSBQQ0lfSU5URU5fUEZFICAgICAgICAweDAwMDAwMDAyCisjZGVmaW5lIFBDSV9J TlRFTl9QUEUgICAgICAgIDB4MDAwMDAwMDQKKyNkZWZpbmUgUENJX0lOVEVOX0FIQkUgICAgICAg MHgwMDAwMDAwOAorI2RlZmluZSBQQ0lfSU5URU5fQVBEQyAgICAgICAweDAwMDAwMDEwCisjZGVm aW5lIFBDSV9JTlRFTl9QQURDICAgICAgIDB4MDAwMDAwMjAKKyNkZWZpbmUgUENJX0lOVEVOX0FE QiAgICAgICAgMHgwMDAwMDA0MAorI2RlZmluZSBQQ0lfSU5URU5fUERCICAgICAgICAweDAwMDAw MDgwCisKKy8qIFNoaWZ0IHZhbHVlIGZvciBieXRlIGVuYWJsZSBvbiBOUCBjbWQvYnl0ZSBlbmFi bGUgcmVnaXN0ZXIgKi8KKyNkZWZpbmUgSVhQNFhYX1BDSV9OUF9DQkVfQkVTTCA0CisKKy8qIFBD SSBjb21tYW5kcyBzdXBwb3J0ZWQgYnkgTlAgYWNjZXNzIHVuaXQgKi8KKyNkZWZpbmUgTlBfQ01E X0lPUkVBRCAgICAgICAgMHgyCisjZGVmaW5lIE5QX0NNRF9JT1dSSVRFICAgICAgIDB4MworI2Rl ZmluZSBOUF9DTURfQ09ORklHUkVBRCAgICAweEEKKyNkZWZpbmUgTlBfQ01EX0NPTkZJR1dSSVRF ICAgMHhCCisjZGVmaW5lIE5QX0NNRF9NRU1SRUFEICAgICAgIDB4NgorI2RlZmluZSBOUF9DTURf TUVNV1JJVEUgICAgICAweDcKKworLyogQ29uc3RhbnRzIGZvciBDUlAgYWNjZXNzIGludG8gbG9j YWwgY29uZmlnIHNwYWNlICovCisjZGVmaW5lIENSUF9BRF9DQkVfQkVTTCAgICAgIDIwCisjZGVm aW5lIENSUF9BRF9DQkVfV1JJVEUgICAgIDB4MDAwMTAwMDAKKworLyogVVNCIERldmljZSBDb250 cm9sbGVyICovCisjIGRlZmluZSBJWFA0WFhfVVNCX1JFRyh4KSAgICgqKCh2b2xhdGlsZSB1MzIg KikoeCkpKQorCisvKiBTRFJBTSBDb250cm9sbGVyIHJlZ2lzdGVycy4gKi8KKyNkZWZpbmUgSVhQ NFhYX1NEUkFNX0NPTkZJRyAgSVhQNFhYX1JFRygweENDMDAwMDAwKQorI2RlZmluZSBJWFA0WFhf U0RSQU1fUkVGUkVTSCBJWFA0WFhfUkVHKDB4Q0MwMDAwMDQpCisjZGVmaW5lIElYUDRYWF9TRFJB TV9JUiAgICAgIElYUDRYWF9SRUcoMHhDQzAwMDAwOCkKKworLyogImZ1c2UiIGJpdHMgb2YgSVhQ X0VYUF9DRkcyICovCisvKiBBbGwgSVhQNHh4IENQVXMgKi8KKyNkZWZpbmUgSVhQNFhYX0ZFQVRV UkVfUkNPTVAgICAgICAgICAgICAoMSA8PCAwKQorI2RlZmluZSBJWFA0WFhfRkVBVFVSRV9VU0Jf REVWSUNFICAgICAgICgxIDw8IDEpCisjZGVmaW5lIElYUDRYWF9GRUFUVVJFX0hBU0ggICAgICAg ICAgICAgKDEgPDwgMikKKyNkZWZpbmUgSVhQNFhYX0ZFQVRVUkVfQUVTICAgICAgICAgICAgICAo MSA8PCAzKQorI2RlZmluZSBJWFA0WFhfRkVBVFVSRV9ERVMgICAgICAgICAgICAgICgxIDw8IDQp CisjZGVmaW5lIElYUDRYWF9GRUFUVVJFX0hETEMgICAgICAgICAgICAgKDEgPDwgNSkKKyNkZWZp bmUgSVhQNFhYX0ZFQVRVUkVfQUFMICAgICAgICAgICAgICAoMSA8PCA2KQorI2RlZmluZSBJWFA0 WFhfRkVBVFVSRV9IU1MgICAgICAgICAgICAgICgxIDw8IDcpCisjZGVmaW5lIElYUDRYWF9GRUFU VVJFX1VUT1BJQSAgICAgICAgICAgKDEgPDwgOCkKKyNkZWZpbmUgSVhQNFhYX0ZFQVRVUkVfTlBF Ql9FVEgwICAgICAgICAoMSA8PCA5KQorI2RlZmluZSBJWFA0WFhfRkVBVFVSRV9OUEVDX0VUSCAg ICAgICAgICgxIDw8IDEwKQorI2RlZmluZSBJWFA0WFhfRkVBVFVSRV9SRVNFVF9OUEVBICAgICAg ICgxIDw8IDExKQorI2RlZmluZSBJWFA0WFhfRkVBVFVSRV9SRVNFVF9OUEVCICAgICAgICgxIDw8 IDEyKQorI2RlZmluZSBJWFA0WFhfRkVBVFVSRV9SRVNFVF9OUEVDICAgICAgICgxIDw8IDEzKQor I2RlZmluZSBJWFA0WFhfRkVBVFVSRV9QQ0kgICAgICAgICAgICAgICgxIDw8IDE0KQorI2RlZmlu ZSBJWFA0WFhfRkVBVFVSRV9VVE9QSUFfUEhZX0xJTUlUICgzIDw8IDE2KQorI2RlZmluZSBJWFA0 WFhfRkVBVFVSRV9YU0NBTEVfTUFYX0ZSRVEgICgzIDw8IDIyKQorI2RlZmluZSBJWFA0MlhfRkVB VFVSRV9NQVNLIChJWFA0WFhfRkVBVFVSRV9SQ09NUCAgICAgICAgICAgIHwgXAorCQkJICAgICBJ WFA0WFhfRkVBVFVSRV9VU0JfREVWSUNFICAgICAgIHwgXAorCQkJICAgICBJWFA0WFhfRkVBVFVS RV9IQVNIICAgICAgICAgICAgIHwgXAorCQkJICAgICBJWFA0WFhfRkVBVFVSRV9BRVMgICAgICAg ICAgICAgIHwgXAorCQkJICAgICBJWFA0WFhfRkVBVFVSRV9ERVMgICAgICAgICAgICAgIHwgXAor CQkJICAgICBJWFA0WFhfRkVBVFVSRV9IRExDICAgICAgICAgICAgIHwgXAorCQkJICAgICBJWFA0 WFhfRkVBVFVSRV9BQUwgICAgICAgICAgICAgIHwgXAorCQkJICAgICBJWFA0WFhfRkVBVFVSRV9I U1MgICAgICAgICAgICAgIHwgXAorCQkJICAgICBJWFA0WFhfRkVBVFVSRV9VVE9QSUEgICAgICAg ICAgIHwgXAorCQkJICAgICBJWFA0WFhfRkVBVFVSRV9OUEVCX0VUSDAgICAgICAgIHwgXAorCQkJ ICAgICBJWFA0WFhfRkVBVFVSRV9OUEVDX0VUSCAgICAgICAgIHwgXAorCQkJICAgICBJWFA0WFhf RkVBVFVSRV9SRVNFVF9OUEVBICAgICAgIHwgXAorCQkJICAgICBJWFA0WFhfRkVBVFVSRV9SRVNF VF9OUEVCICAgICAgIHwgXAorCQkJICAgICBJWFA0WFhfRkVBVFVSRV9SRVNFVF9OUEVDICAgICAg IHwgXAorCQkJICAgICBJWFA0WFhfRkVBVFVSRV9QQ0kgICAgICAgICAgICAgIHwgXAorCQkJICAg ICBJWFA0WFhfRkVBVFVSRV9VVE9QSUFfUEhZX0xJTUlUIHwgXAorCQkJICAgICBJWFA0WFhfRkVB VFVSRV9YU0NBTEVfTUFYX0ZSRVEpCisKKy8qIElYUDQzeC80NnggQ1BVcyAqLworI2RlZmluZSBJ WFA0WFhfRkVBVFVSRV9FQ0NfVElNRVNZTkMgICAgICgxIDw8IDE1KQorI2RlZmluZSBJWFA0WFhf RkVBVFVSRV9VU0JfSE9TVCAgICAgICAgICgxIDw8IDE4KQorI2RlZmluZSBJWFA0WFhfRkVBVFVS RV9OUEVBX0VUSCAgICAgICAgICgxIDw8IDE5KQorI2RlZmluZSBJWFA0M1hfRkVBVFVSRV9NQVNL IChJWFA0MlhfRkVBVFVSRV9NQVNLICAgICAgICAgICAgIHwgXAorCQkJICAgICBJWFA0WFhfRkVB VFVSRV9FQ0NfVElNRVNZTkMgICAgIHwgXAorCQkJICAgICBJWFA0WFhfRkVBVFVSRV9VU0JfSE9T VCAgICAgICAgIHwgXAorCQkJICAgICBJWFA0WFhfRkVBVFVSRV9OUEVBX0VUSCkKKworLyogSVhQ NDZ4IENQVSAoaW5jbHVkaW5nIElYUDQ1NSkgb25seSAqLworI2RlZmluZSBJWFA0WFhfRkVBVFVS RV9OUEVCX0VUSF8xX1RPXzMgICgxIDw8IDIwKQorI2RlZmluZSBJWFA0WFhfRkVBVFVSRV9SU0Eg ICAgICAgICAgICAgICgxIDw8IDIxKQorI2RlZmluZSBJWFA0NlhfRkVBVFVSRV9NQVNLIChJWFA0 M1hfRkVBVFVSRV9NQVNLICAgICAgICAgICAgIHwgXAorCQkJICAgICBJWFA0WFhfRkVBVFVSRV9O UEVCX0VUSF8xX1RPXzMgIHwgXAorCQkJICAgICBJWFA0WFhfRkVBVFVSRV9SU0EpCisKKyNlbmRp ZgpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vbWFjaC1peHA0eHgvaW5jbHVkZS9tYWNoL3BsYXRmb3Jt LmggYi9hcmNoL2FybS9tYWNoLWl4cDR4eC9pbmNsdWRlL21hY2gvcGxhdGZvcm0uaApuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZTRiNzY3Ci0tLSAvZGV2L251bGwKKysrIGIv YXJjaC9hcm0vbWFjaC1peHA0eHgvaW5jbHVkZS9tYWNoL3BsYXRmb3JtLmgKQEAgLTAsMCArMSwy NCBAQAorI2lmbmRlZiBfX01BQ0hfUExBVEZPUk1fXworI2RlZmluZSBfX01BQ0hfUExBVEZPUk1f XworCisjaW5jbHVkZSA8YXNtL3R5cGVzLmg+CisKKyNpZm5kZWYJX19BUk1FQl9fCisjZGVmaW5l CVJFR19PRkZTRVQJMAorI2Vsc2UKKyNkZWZpbmUJUkVHX09GRlNFVAkzCisjZW5kaWYKKworc3Ry dWN0IGRldmljZV9kKiBpeHA0eHhfYWRkX3VhcnQoaW50IGlkLCB1MzIgYmFzZSk7CisKK3N0YXRp YyBpbmxpbmUgc3RydWN0IGRldmljZV9kKiBpeHA0eHhfYWRkX3VhcnQxKHZvaWQpCit7CisJcmV0 dXJuIGl4cDR4eF9hZGRfdWFydCgwLCAodTMyKUlYUDRYWF9VQVJUMV9CQVNFKTsKK30KKworc3Rh dGljIGlubGluZSBzdHJ1Y3QgZGV2aWNlX2QqIGl4cDR4eF9hZGRfdWFydDIodm9pZCkKK3sKKwly ZXR1cm4gaXhwNHh4X2FkZF91YXJ0KDEsICh1MzIpSVhQNFhYX1VBUlQyX0JBU0UpOworfQorCisj ZW5kaWYgLyogX19NQUNIX1BMQVRGT1JNX18gKi8KZGlmZiAtLWdpdCBhL2FyY2gvYXJtL21hY2gt aXhwNHh4L2xvd2xldmVsX2luaXQuUyBiL2FyY2gvYXJtL21hY2gtaXhwNHh4L2xvd2xldmVsX2lu aXQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lNWQ0ODAyCi0tLSAvZGV2 L251bGwKKysrIGIvYXJjaC9hcm0vbWFjaC1peHA0eHgvbG93bGV2ZWxfaW5pdC5TCkBAIC0wLDAg KzEsMjUgQEAKKyNpbmNsdWRlIDxtYWNoL2l4cDR4eC1yZWdzLmg+CisKKwkuc2VjdGlvbiAiLnRl eHRfYmFyZV9pbml0IiwgImF4IgorCisJLmdsb2JsIGFyY2hfaW5pdF9sb3dsZXZlbAorYXJjaF9p bml0X2xvd2xldmVsOgorCWxkcglyMCwgY2ZnCisJbGRyCXIxLCBbcjBdCisJLyoKKwkgKiBjaGVj ayBpZiBFWFAgYnVzIGFscmVhZHkgdW5tYXAgZnJvbSAweDAKKwkgKiBhcyBleGFtcGxlIHdlIHJ1 biBmcm9tIHJhbQorCSAqLworCWFuZAlyMiwgcjEsICNJWFA0WFhfRVhQX0VOCisJY21wCXIyLCAj MAorCWJlcQkxMGYKKwliaWMJcjEsIHIxLCAjSVhQNFhYX0VYUF9FTiAvKiB1bm1hcCBFWFAgYnVz IGZyb20gMHgwICovCisJc3RyCXIxLCBbcjBdCisKKwkvKiByZXR1cm4gdG8gUk9NICovCisJb3Jy IGxyLCAjMHg1MDAwMDAwMAorMTA6CisJbW92IHBjLCBscgorCitjZmc6CisJLndvcmQgSVhQNFhY X0VYUF9DRkcwCmRpZmYgLS1naXQgYS9hcmNoL2FybS9tYWNoLWl4cDR4eC9yZXNldC5jIGIvYXJj aC9hcm0vbWFjaC1peHA0eHgvcmVzZXQuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwLi5kMGQzODk0Ci0tLSAvZGV2L251bGwKKysrIGIvYXJjaC9hcm0vbWFjaC1peHA0eHgvcmVz ZXQuYwpAQCAtMCwwICsxLDE1IEBACisjaW5jbHVkZSA8Y29tbW9uLmg+CisjaW5jbHVkZSA8YXNt L2lvLmg+CisjaW5jbHVkZSA8bWFjaC9peHA0eHgtcmVncy5oPgorCit2b2lkIHJlc2V0X2NwdSh1 bG9uZyBhZGRyKQoreworCS8qIFVzZSBvbi1jaGlwIHJlc2V0IGNhcGFiaWxpdHkgKi8KKwkvKiBU aGlzIG1heSBub3Qgd29yayBvbiBJWFA0MjUgcmV2LiBBMCAqLworCisJSVhQNFhYX09TV0sgPSBJ WFA0WFhfV0RUX0tFWTsKKwlJWFA0WFhfT1NXVCA9IDA7IC8qIHJlcXVlc3QgaW1tZWRpYXRlIHJl c2V0ICovCisJSVhQNFhYX09TV0UgPSBJWFA0WFhfV0RUX1JFU0VUX0VOQUJMRSB8IElYUDRYWF9X RFRfQ09VTlRfRU5BQkxFOworCXdoaWxlICgxKQorCQk7Cit9CmRpZmYgLS1naXQgYS9hcmNoL2Fy bS9tYWNoLWl4cDR4eC90aW1lci5jIGIvYXJjaC9hcm0vbWFjaC1peHA0eHgvdGltZXIuYwpuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43MjJkMWUyCi0tLSAvZGV2L251bGwKKysr IGIvYXJjaC9hcm0vbWFjaC1peHA0eHgvdGltZXIuYwpAQCAtMCwwICsxLDQyIEBACisjaW5jbHVk ZSA8Y29tbW9uLmg+CisjaW5jbHVkZSA8aW5pdC5oPgorI2luY2x1ZGUgPGFzbS9hcm1saW51eC5o PgorI2luY2x1ZGUgPGFzbS9pby5oPgorI2luY2x1ZGUgPG1hY2gvaXhwNHh4LXJlZ3MuaD4KKyNp bmNsdWRlIDxjbG9jay5oPgorCisjZGVmaW5lIE9TVFNfRlJFUVVFTkNZIDY2NjY2MDAwCisKKy8q KgorICogQGJyaWVmIFByb3ZpZGUgYSBzaW1wbGUgY2xvY2sgcmVhZAorICoKKyAqIE5vdGhpbmcg aXMgc2ltcGxlci4uIHJlYWQgZGlyZWN0IGZyb20gY2xvY2sgYW5kIHByb3ZpZGUgaXQKKyAqIHRv IHRoZSBjYWxsZXIuCisgKgorICogQHJldHVybiBjbG9jayBjb3VudGVyCisgKi8KK3N0YXRpYyB1 aW50NjRfdCBpeHA0eHhfY2xvY2tzb3VyY2VfcmVhZCh2b2lkKQoreworCXJldHVybiBJWFA0WFhf T1NUUzsKK30KKworc3RhdGljIHN0cnVjdCBjbG9ja3NvdXJjZSBjcyA9IHsKKwkucmVhZCA9IGl4 cDR4eF9jbG9ja3NvdXJjZV9yZWFkLAorCS5tYXNrID0gMHhmZmZmZmZmZiwKKwkuc2hpZnQgPSAx MCwKK307CisKKy8qKgorICogQGJyaWVmIEluaXRpYWxpemUgdGhlIENsb2NrCisgKgorICogV2Ug dXNlIHRoZSBUaW1lLVN0YW1wIFRpbWVyCisgKgorICogQHJldHVybiByZXN1bHQgb2YgQHJlZiBp bml0X2Nsb2NrCisgKi8KK3N0YXRpYyBpbnQgaXhwNHh4X2Nsb2Nrc291cmNlX2luaXQodm9pZCkK K3sKKwljcy5tdWx0ID0gY2xvY2tzb3VyY2VfaHoybXVsdChPU1RTX0ZSRVFVRU5DWSwgY3Muc2hp ZnQpOworCisJcmV0dXJuIGluaXRfY2xvY2soJmNzKTsKK30KK2NvcmVfaW5pdGNhbGwoaXhwNHh4 X2Nsb2Nrc291cmNlX2luaXQpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9zZXJpYWwvc2VyaWFsX25z MTY1NTAuYyBiL2RyaXZlcnMvc2VyaWFsL3NlcmlhbF9uczE2NTUwLmMKaW5kZXggODIwYWFjNS4u ZjFmNzU5NSAxMDA2NDQKLS0tIGEvZHJpdmVycy9zZXJpYWwvc2VyaWFsX25zMTY1NTAuYworKysg Yi9kcml2ZXJzL3NlcmlhbC9zZXJpYWxfbnMxNjU1MC5jCkBAIC0xNDEsOCArMTQxLDEyIEBAIHN0 YXRpYyB2b2lkIG5zMTY1NTBfc2VyaWFsX2luaXRfcG9ydChzdHJ1Y3QgY29uc29sZV9kZXZpY2Ug KmNkZXYpCiB7CiAJLyogaW5pdGlhbGl6aW5nIHRoZSBkZXZpY2UgZm9yIHRoZSBmaXJzdCB0aW1l ICovCiAJbnMxNjU1MF93cml0ZShjZGV2LCAweDAwLCBsY3IpOyAvKiBzZWxlY3QgaWVyIHJlZyAq LwotCW5zMTY1NTBfd3JpdGUoY2RldiwgMHgwMCwgaWVyKTsKIAorI2lmZGVmIENPTkZJR19BUkNI X0lYUDRYWAorCW5zMTY1NTBfd3JpdGUoY2RldiwgSUVSX1VVRSwgaWVyKTsgLyogRW5hYmxlIFVB UlQgb3BlcmF0aW9uICovCisjZWxzZQorCW5zMTY1NTBfd3JpdGUoY2RldiwgMHgwMCwgaWVyKTsK KyNlbmRpZgogI2lmZGVmIENPTkZJR19EUklWRVJfU0VSSUFMX05TMTY1NTBfT01BUF9FWFRFTlNJ T05TCiAJbnMxNjU1MF93cml0ZShjZGV2LCAweDA3LCBtZHIxKTsJLyogRGlzYWJsZSAqLwogI2Vu ZGlmCmRpZmYgLS1naXQgYS9kcml2ZXJzL3NlcmlhbC9zZXJpYWxfbnMxNjU1MC5oIGIvZHJpdmVy cy9zZXJpYWwvc2VyaWFsX25zMTY1NTAuaAppbmRleCBkYjhmZTY0Li4xMzJmNDZlIDEwMDY0NAot LS0gYS9kcml2ZXJzL3NlcmlhbC9zZXJpYWxfbnMxNjU1MC5oCisrKyBiL2RyaXZlcnMvc2VyaWFs L3NlcmlhbF9uczE2NTUwLmgKQEAgLTUwLDYgKzUwLDggQEAKICNkZWZpbmUgZGxsCQlyYnIKICNk ZWZpbmUgZGxtCQlpZXIKIAorI2RlZmluZSBJRVJfVVVFCQkweDQwCS8qIFVBUlQgVW5pdCBFbmFi bGUgKFhTY2FsZSkgKi8KKwogI2RlZmluZSBGQ1JfRklGT19FTiAgICAgMHgwMQkvKiBGaWZvIGVu YWJsZSAqLwogI2RlZmluZSBGQ1JfUlhTUiAgICAgICAgMHgwMgkvKiBSZWNlaXZlciBzb2Z0IHJl c2V0ICovCiAjZGVmaW5lIEZDUl9UWFNSICAgICAgICAweDA0CS8qIFRyYW5zbWl0dGVyIHNvZnQg cmVzZXQgKi8KLS0gCjEuNy45LjEKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpiYXJlYm94IG1haWxpbmcgbGlzdApiYXJlYm94QGxpc3RzLmluZnJhZGVh ZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9iYXJlYm94 Cg==