From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bhupinder Thakur Subject: [PATCH 06/25 v7] xen/arm: vpl011: Add a new domctl API to initialize vpl011 Date: Mon, 7 Aug 2017 14:22:58 +0530 Message-ID: <1502095997-31219-7-git-send-email-bhupinder.thakur@linaro.org> References: <1502095997-31219-1-git-send-email-bhupinder.thakur@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dednK-0004NB-6h for xen-devel@lists.xenproject.org; Mon, 07 Aug 2017 08:53:50 +0000 Received: by mail-pg0-f43.google.com with SMTP id y129so31665265pgy.4 for ; Mon, 07 Aug 2017 01:53:48 -0700 (PDT) In-Reply-To: <1502095997-31219-1-git-send-email-bhupinder.thakur@linaro.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Stefano Stabellini , Wei Liu , George Dunlap , Andrew Cooper , Ian Jackson , Tim Deegan , Julien Grall , Jan Beulich List-Id: xen-devel@lists.xenproject.org QWRkIGEgbmV3IGRvbWN0bCBBUEkgdG8gaW5pdGlhbGl6ZSB2cGwwMTEuIEl0IHRha2VzIHRoZSBH Rk4gYW5kIGNvbnNvbGUKYmFja2VuZCBkb21pZCBhcyBpbnB1dCBhbmQgcmV0dXJucyBhbiBldmVu dCBjaGFubmVsIHRvIGJlIHVzZWQgZm9yCnNlbmRpbmcgYW5kIHJlY2VpdmluZyBldmVudHMgZnJv bSBYZW4uCgpYZW4gd2lsbCBjb21tdW5pY2F0ZSB3aXRoIHhlbmNvbnNvbGUgdXNpbmcgR0ZOIGFz IHRoZSByaW5nIGJ1ZmZlciBhbmQKdGhlIGV2ZW50IGNoYW5uZWwgdG8gdHJhbnNtaXQgYW5kIHJl Y2VpdmUgcGwwMTEgZGF0YSBvbiB0aGUgZ3Vlc3QgZG9tYWluJ3MKYmVoYWxmLgoKU2lnbmVkLW9m Zi1ieTogQmh1cGluZGVyIFRoYWt1ciA8Ymh1cGluZGVyLnRoYWt1ckBsaW5hcm8ub3JnPgotLS0K Q0M6IElhbiBKYWNrc29uIDxpYW4uamFja3NvbkBldS5jaXRyaXguY29tPgpDQzogV2VpIExpdSA8 d2VpLmxpdTJAY2l0cml4LmNvbT4KQ0M6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNp dHJpeC5jb20+CkNDOiBHZW9yZ2UgRHVubGFwIDxHZW9yZ2UuRHVubGFwQGV1LmNpdHJpeC5jb20+ CkNDOiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+CkNDOiBLb25yYWQgUnplc3p1dGVr IFdpbGsgPGtvbnJhZC53aWxrQG9yYWNsZS5jb20+CkNDOiBTdGVmYW5vIFN0YWJlbGxpbmkgPHNz dGFiZWxsaW5pQGtlcm5lbC5vcmc+CkNDOiBUaW0gRGVlZ2FuIDx0aW1AeGVuLm9yZz4KQ0M6IEp1 bGllbiBHcmFsbCA8anVsaWVuLmdyYWxsQGFybS5jb20+CgpDaGFuZ2VzIHNpbmNlIHY2OgotIFJl bmFtZWQgdGhlIHZ1YXJ0IGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uIHRvIGEgZ2VuZXJpYyBuYW1l IHhjX2RvbV92dWFydF9pbml0IAotIFVzZWQgZG9taWRfdCBhcyBhIHR5cGUgaW5zdGVhZCBvZiB1 aW50MzJfdCBmb3IgZG9taWQKLSBDaGVja2luZyB0aGUgdnVhcnQgdHlwZSBleHBsaWNpdGx5IGFn YWluc3QgdnBsMDExIGVudW0gdmFsdWUKCkNoYW5nZXMgc2luY2UgdjU6Ci0geGNfZG9tX3ZwbDAx MV9pbml0KCkgd2lsbCBiZSBjb21waWxlZCBmb3IgYm90aCB4ODYvYXJtIGFyY2hpdGVjdHVyZXMg YXMgdGhlcmUKICBpcyBub3RoaW5nIGFyY2hpdGVjdHVyZSBzcGVjaWZpYyBpbiB0aGlzIGZ1bmN0 aW9uLiBUaGlzIGZ1bmN0aW9uIHdpbGwgcmV0dXJuIAogIGVycm9yIHdoZW4gY2FsbGVkIGZvciB4 ODYuCi0gRml4ZWQgY29kaW5nIHN0eWxlIGlzc3VlcyBpbiBsaWJ4bC4KCkNoYW5nZXMgc2luY2Ug djQ6Ci0gUmVtb3ZlZCBsaWJ4bF9fYXJjaF9kb21haW5fY3JlYXRlX2ZpbmlzaCgpLgotIEFkZGVk IGEgbmV3IGZ1bmN0aW9uIGxpYnhsX19hcmNoX2J1aWxkX2RvbV9maW5pc2goKSwgd2hpY2ggaXMg Y2FsbGVkIGF0IHRoZSBsYXN0CiAgaW4gbGlieGxfX2J1aWxkX2RvbSgpLiBUaGlzIGZ1bmN0aW9u IGNhbGxzIHRoZSB2cGwwMTEgaW5pdGlhbGl6YXRpb24gZnVuY3Rpb24gbm93LgoKQ2hhbmdlcyBz aW5jZSB2MzoKLSBBZGRlZCBhIG5ldyBhcmNoIHNwZWNpZmljIGZ1bmN0aW9uIGxpYnhsX19hcmNo X2RvbWFpbl9jcmVhdGVfZmluaXNoKCksIHdoaWNoCiAgY2FsbHMgdGhlIHZwbDAxMSBpbml0aWFs aXphdGlvbiBmdW5jdGlvbi4gRm9yIHg4NiB0aGlzIGZ1bmN0aW9uIGRvZXMgbm90IGRvCiAgYW55 dGhpbmcuCi0gZG9tYWluX3ZwbDAxMV9pbml0KCkgdGFrZXMgYSBwb2ludGVyIHRvIGEgc3RydWN0 dXJlIHdoaWNoIGNvbnRhaW5zIGFsbCB0aGUgCiAgcmVxdWlyZWQgaW5mb3JtYXRpb24gc3VjaCBh cyBjb25zb2xlX2RvbWlkLCBnZm4gaW5zdGVhZCBvZiBwYXNzaW5nIHBhcmFtZXRlcnMKICBzZXBh cmF0ZWx5LgotIERyb3BwZWQgYSBET01DVEwgQVBJIGRlZmluZWQgZm9yIGRlLWluaXRpYWxpemlu ZyB2cGwwMTEgYXMgdGhhdCBzaG91bGQgYmUKICB0YWtlbiBjYXJlIHdoZW4gdGhlIGRvbWFpbiBp cyBkZXN0cm95ZWQgKGFuZCBub3QgZGVwZW5kZW50IG9uIHVzZXJzcGFjZSAKICBsaWJyYXJpZXMv YXBwbGljYXRpb25zKS4KCkNoYW5nZXMgc2luY2UgdjI6Ci0gUmVwbGFjZWQgdGhlIERPTUNUTCBB UElzIGRlZmluZWQgZm9yIGdldC9zZXQgb2YgZXZlbnQgY2hhbm5lbCBhbmQgR0ZOIHdpdGggCiAg YSBzZXQgb2YgRE9NQ1RMIEFQSXMgZm9yIGluaXRpYWxpemluZyBhbmQgZGUtaW5pdGlhbGl6aW5n IHZwbDAxMSBlbXVsYXRpb24uCgogdG9vbHMvbGlieGMvaW5jbHVkZS94ZW5jdHJsLmggfCAyMCAr KysrKysrKysrKysrKysrKysrKwogdG9vbHMvbGlieGMveGNfZG9tYWluLmMgICAgICAgfCAyNSAr KysrKysrKysrKysrKysrKysrKysrKysrCiB0b29scy9saWJ4bC9saWJ4bF9hcmNoLmggICAgICB8 ICA3ICsrKysrKysKIHRvb2xzL2xpYnhsL2xpYnhsX2FybS5jICAgICAgIHwgMjEgKysrKysrKysr KysrKysrKysrKysrCiB0b29scy9saWJ4bC9saWJ4bF9kb20uYyAgICAgICB8ICA0ICsrKysKIHRv b2xzL2xpYnhsL2xpYnhsX3g4Ni5jICAgICAgIHwgIDggKysrKysrKysKIHhlbi9hcmNoL2FybS9k b21haW4uYyAgICAgICAgIHwgIDYgKysrKysrCiB4ZW4vYXJjaC9hcm0vZG9tY3RsLmMgICAgICAg ICB8IDQyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogeGVuL2lu Y2x1ZGUvcHVibGljL2RvbWN0bC5oICAgfCAyMSArKysrKysrKysrKysrKysrKysrKysKIDkgZmls ZXMgY2hhbmdlZCwgMTU0IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS90b29scy9saWJ4Yy9p bmNsdWRlL3hlbmN0cmwuaCBiL3Rvb2xzL2xpYnhjL2luY2x1ZGUveGVuY3RybC5oCmluZGV4IGM3 NzEwYjguLjM1YmJiM2IgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnhjL2luY2x1ZGUveGVuY3RybC5o CisrKyBiL3Rvb2xzL2xpYnhjL2luY2x1ZGUveGVuY3RybC5oCkBAIC04ODYsNiArODg2LDI2IEBA IGludCB4Y192Y3B1X2dldGNvbnRleHQoeGNfaW50ZXJmYWNlICp4Y2gsCiAgICAgICAgICAgICAg ICAgICAgICAgIHZjcHVfZ3Vlc3RfY29udGV4dF9hbnlfdCAqY3R4dCk7CiAKIC8qKgorICogVGhp cyBmdW5jdGlvbiBpbml0aWFsaXplcyB0aGUgdnVhcnQgZW11bGF0aW9uIGFuZCByZXR1cm5zCisg KiB0aGUgZXZlbnQgdG8gYmUgdXNlZCBieSB0aGUgYmFja2VuZCBmb3IgY29tbXVuaWNhdGluZyB3 aXRoCisgKiB0aGUgZW11bGF0aW9uIGNvZGUuCisgKgorICogQHBhcm0geGNoIGEgaGFuZGxlIHRv IGFuIG9wZW4gaHlwZXJ2aXNvciBpbnRlcmZhY2UKKyAqICNwYXJtIHR5cGUgdHlwZSBvZiB2dWFy dAorICogQHBhcm0gZG9taWQgdGhlIGRvbWFpbiB0byBnZXQgaW5mb3JtYXRpb24gZnJvbQorICog QHBhcm0gY29uc29sZV9kb21pZCB0aGUgZG9taWQgb2YgdGhlIGJhY2tlbmQgY29uc29sZQorICog QHBhcm0gZ2ZuIHRoZSBndWVzdCBwZm4gdG8gYmUgdXNlZCBhcyB0aGUgcmluZyBidWZmZXIKKyAq IEBwYXJtIGV2dGNobiB0aGUgZXZlbnQgY2hhbm5lbCB0byBiZSB1c2VkIGZvciBldmVudHMKKyAq IEByZXR1cm4gMCBvbiBzdWNjZXNzLCBuZWdhdGl2ZSBlcnJvciBvbiBmYWlsdXJlCisgKi8KK2lu dCB4Y19kb21fdnVhcnRfaW5pdCh4Y19pbnRlcmZhY2UgKnhjaCwKKyAgICAgICAgICAgICAgICAg ICAgICB1aW50MzJfdCB0eXBlLAorICAgICAgICAgICAgICAgICAgICAgIGRvbWlkX3QgZG9taWQs CisgICAgICAgICAgICAgICAgICAgICAgZG9taWRfdCBjb25zb2xlX2RvbWlkLAorICAgICAgICAg ICAgICAgICAgICAgIHhlbl9wZm5fdCBnZm4sCisgICAgICAgICAgICAgICAgICAgICAgZXZ0Y2hu X3BvcnRfdCAqZXZ0Y2huKTsKKworLyoqCiAgKiBUaGlzIGZ1bmN0aW9uIHJldHVybnMgaW5mb3Jt YXRpb24gYWJvdXQgdGhlIFhTQVZFIHN0YXRlIG9mIGEgcGFydGljdWxhcgogICogdmNwdSBvZiBh IGRvbWFpbi4gSWYgZXh0c3RhdGUtPnNpemUgYW5kIGV4dHN0YXRlLT54ZmVhdHVyZV9tYXNrIGFy ZSAwLAogICogdGhlIGNhbGwgaXMgY29uc2lkZXJlZCBhIHF1ZXJ5IHRvIHJldHJpZXZlIHRoZW0g YW5kIHRoZSBidWZmZXIgaXMgbm90CmRpZmYgLS1naXQgYS90b29scy9saWJ4Yy94Y19kb21haW4u YyBiL3Rvb2xzL2xpYnhjL3hjX2RvbWFpbi5jCmluZGV4IDNiYWI0ZTguLjg5OWJiZDQgMTAwNjQ0 Ci0tLSBhL3Rvb2xzL2xpYnhjL3hjX2RvbWFpbi5jCisrKyBiL3Rvb2xzL2xpYnhjL3hjX2RvbWFp bi5jCkBAIC0zNDMsNiArMzQzLDMxIEBAIGludCB4Y19kb21haW5fZ2V0X2d1ZXN0X3dpZHRoKHhj X2ludGVyZmFjZSAqeGNoLCB1aW50MzJfdCBkb21pZCwKICAgICByZXR1cm4gMDsKIH0KIAoraW50 IHhjX2RvbV92dWFydF9pbml0KHhjX2ludGVyZmFjZSAqeGNoLAorICAgICAgICAgICAgICAgICAg ICAgIHVpbnQzMl90IHR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgZG9taWRfdCBkb21pZCwK KyAgICAgICAgICAgICAgICAgICAgICBkb21pZF90IGNvbnNvbGVfZG9taWQsCisgICAgICAgICAg ICAgICAgICAgICAgeGVuX3Bmbl90IGdmbiwKKyAgICAgICAgICAgICAgICAgICAgICBldnRjaG5f cG9ydF90ICpldnRjaG4pCit7CisgICAgREVDTEFSRV9ET01DVEw7CisgICAgaW50IHJjID0gMDsK KworICAgIGRvbWN0bC5jbWQgPSBYRU5fRE9NQ1RMX3Z1YXJ0X29wOworICAgIGRvbWN0bC5kb21h aW4gPSAoZG9taWRfdClkb21pZDsKKyAgICBkb21jdGwudS52dWFydF9vcC5jbWQgPSBYRU5fRE9N Q1RMX1ZVQVJUX09QX0lOSVQ7CisgICAgZG9tY3RsLnUudnVhcnRfb3AudHlwZSA9IHR5cGU7Cisg ICAgZG9tY3RsLnUudnVhcnRfb3AuY29uc29sZV9kb21pZCA9IGNvbnNvbGVfZG9taWQ7CisgICAg ZG9tY3RsLnUudnVhcnRfb3AuZ2ZuID0gZ2ZuOworCisgICAgaWYgKCAocmMgPSBkb19kb21jdGwo eGNoLCAmZG9tY3RsKSkgPCAwICkKKyAgICAgICAgcmV0dXJuIHJjOworCisgICAgKmV2dGNobiA9 IGRvbWN0bC51LnZ1YXJ0X29wLmV2dGNobjsKKworICAgIHJldHVybiByYzsKK30KKwogaW50IHhj X2RvbWFpbl9nZXRpbmZvKHhjX2ludGVyZmFjZSAqeGNoLAogICAgICAgICAgICAgICAgICAgICAg IHVpbnQzMl90IGZpcnN0X2RvbWlkLAogICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGlu dCBtYXhfZG9tcywKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsX2FyY2guaCBiL3Rvb2xz L2xpYnhsL2xpYnhsX2FyY2guaAppbmRleCA1ZTFmYzYwLi43ODRlYzdmIDEwMDY0NAotLS0gYS90 b29scy9saWJ4bC9saWJ4bF9hcmNoLmgKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfYXJjaC5oCkBA IC00NCw2ICs0NCwxMyBAQCBpbnQgbGlieGxfX2FyY2hfZG9tYWluX2ZpbmFsaXNlX2h3X2Rlc2Ny aXB0aW9uKGxpYnhsX19nYyAqZ2MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGxpYnhsX2RvbWFpbl9idWlsZF9pbmZvICppbmZvLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBzdHJ1Y3QgeGNfZG9tX2ltYWdlICpkb20pOwogCisvKiBwZXJmb3Jt IGFueSBwZW5kaW5nIGhhcmR3YXJlIGluaXRpYWxpemF0aW9uICovCitfaGlkZGVuCitpbnQgbGli eGxfX2FyY2hfYnVpbGRfZG9tX2ZpbmlzaChsaWJ4bF9fZ2MgKmdjLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgbGlieGxfZG9tYWluX2J1aWxkX2luZm8gKmluZm8sCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgeGNfZG9tX2ltYWdlICpkb20sCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fZG9tYWluX2J1aWxkX3N0YXRlICpz dGF0ZSk7CisKIC8qIGJ1aWxkIHZOVU1BIHZtZW1yYW5nZSB3aXRoIGFyY2ggc3BlY2lmaWMgaW5m b3JtYXRpb24gKi8KIF9oaWRkZW4KIGludCBsaWJ4bF9fYXJjaF92bnVtYV9idWlsZF92bWVtcmFu Z2UobGlieGxfX2djICpnYywKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsX2FybS5jIGIv dG9vbHMvbGlieGwvbGlieGxfYXJtLmMKaW5kZXggZDg0MmQ4OC4uYTMzZDNjOSAxMDA2NDQKLS0t IGEvdG9vbHMvbGlieGwvbGlieGxfYXJtLmMKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfYXJtLmMK QEAgLTEwMzgsNiArMTAzOCwyNyBAQCBpbnQgbGlieGxfX2FyY2hfZG9tYWluX2ZpbmFsaXNlX2h3 X2Rlc2NyaXB0aW9uKGxpYnhsX19nYyAqZ2MsCiAgICAgcmV0dXJuIDA7CiB9CiAKK2ludCBsaWJ4 bF9fYXJjaF9idWlsZF9kb21fZmluaXNoKGxpYnhsX19nYyAqZ2MsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBsaWJ4bF9kb21haW5fYnVpbGRfaW5mbyAqaW5mbywKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCB4Y19kb21faW1hZ2UgKmRvbSwKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX19kb21haW5fYnVpbGRfc3RhdGUgKnN0 YXRlKQoreworICAgIGludCByZXQgPSAwOworCisgICAgaWYgKGluZm8tPmFyY2hfYXJtLnZ1YXJ0 ID09IExJQlhMX1ZVQVJUX1RZUEVfU0JTQV9VQVJUKSB7CisgICAgICAgIHJldCA9IHhjX2RvbV92 dWFydF9pbml0KENUWC0+eGNoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBYRU5f RE9NQ1RMX1ZVQVJUX1RZUEVfVlBMMDExLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBkb20tPmd1ZXN0X2RvbWlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb20t PmNvbnNvbGVfZG9taWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvbS0+dnVh cnRfZ2ZuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc3RhdGUtPnZ1YXJ0X3Bv cnQpOworICAgICAgICBpZiAocmV0IDwgMCkKKyAgICAgICAgICAgIExPRyhFUlJPUiwgInhjX2Rv bV92dWFydF9pbml0IGZhaWxlZFxuIik7CisgICAgfQorCisgICAgcmV0dXJuIHJldDsKK30KKwog aW50IGxpYnhsX19hcmNoX3ZudW1hX2J1aWxkX3ZtZW1yYW5nZShsaWJ4bF9fZ2MgKmdjLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBkb21pZCwKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfZG9tYWluX2J1aWxkX2luZm8g KmluZm8sCmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4bF9kb20uYyBiL3Rvb2xzL2xpYnhs L2xpYnhsX2RvbS5jCmluZGV4IGUwZjBkNzguLjVmOTIwMjMgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xp YnhsL2xpYnhsX2RvbS5jCisrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2RvbS5jCkBAIC03MDIsNiAr NzAyLDEwIEBAIHN0YXRpYyBpbnQgbGlieGxfX2J1aWxkX2RvbShsaWJ4bF9fZ2MgKmdjLCB1aW50 MzJfdCBkb21pZCwKICAgICAgICAgTE9HRShFUlJPUiwgInhjX2RvbV9nbnR0YWJfaW5pdCBmYWls ZWQiKTsKICAgICAgICAgZ290byBvdXQ7CiAgICAgfQorICAgIGlmICgocmV0ID0gbGlieGxfX2Fy Y2hfYnVpbGRfZG9tX2ZpbmlzaChnYywgaW5mbywgZG9tLCBzdGF0ZSkpICE9IDApIHsKKyAgICAg ICAgTE9HRShFUlJPUiwgImxpYnhsX19hcmNoX2J1aWxkX2RvbV9maW5pc2ggZmFpbGVkIik7Cisg ICAgICAgIGdvdG8gb3V0OworICAgIH0KIAogb3V0OgogICAgIHJldHVybiByZXQgIT0gMCA/IEVS Uk9SX0ZBSUwgOiAwOwpkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGlieGxfeDg2LmMgYi90b29s cy9saWJ4bC9saWJ4bF94ODYuYwppbmRleCA0NTVmNmYwLi4wYWFlZGVkIDEwMDY0NAotLS0gYS90 b29scy9saWJ4bC9saWJ4bF94ODYuYworKysgYi90b29scy9saWJ4bC9saWJ4bF94ODYuYwpAQCAt MzkxLDYgKzM5MSwxNCBAQCBpbnQgbGlieGxfX2FyY2hfZG9tYWluX2ZpbmFsaXNlX2h3X2Rlc2Ny aXB0aW9uKGxpYnhsX19nYyAqZ2MsCiAgICAgcmV0dXJuIHJjOwogfQogCitpbnQgbGlieGxfX2Fy Y2hfYnVpbGRfZG9tX2ZpbmlzaChsaWJ4bF9fZ2MgKmdjLAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgbGlieGxfZG9tYWluX2J1aWxkX2luZm8gKmluZm8sCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgeGNfZG9tX2ltYWdlICpkb20sCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fZG9tYWluX2J1aWxkX3N0YXRlICpzdGF0ZSkK K3sKKyAgICByZXR1cm4gMDsKK30KKwogLyogUmV0dXJuIDAgb24gc3VjY2VzcywgRVJST1JfKiBv biBmYWlsdXJlLiAqLwogaW50IGxpYnhsX19hcmNoX3ZudW1hX2J1aWxkX3ZtZW1yYW5nZShsaWJ4 bF9fZ2MgKmdjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJf dCBkb21pZCwKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9kb21haW4uYyBiL3hlbi9hcmNoL2Fy bS9kb21haW4uYwppbmRleCAyZGM4YjBhLi4yZmY4ZjQzIDEwMDY0NAotLS0gYS94ZW4vYXJjaC9h cm0vZG9tYWluLmMKKysrIGIveGVuL2FyY2gvYXJtL2RvbWFpbi5jCkBAIC04NjIsNiArODYyLDEy IEBAIGludCBkb21haW5fcmVsaW5xdWlzaF9yZXNvdXJjZXMoc3RydWN0IGRvbWFpbiAqZCkKICAg ICAgICAgaWYgKCByZXQgKQogICAgICAgICAgICAgcmV0dXJuIHJldDsKIAorICAgICAgICAvKgor ICAgICAgICAgKiBSZWxlYXNlIHRoZSByZXNvdXJjZXMgYWxsb2NhdGVkIGZvciB2cGwwMTEgd2hp Y2ggd2VyZQorICAgICAgICAgKiBhbGxvY2F0ZWQgdmlhIGEgRE9NQ1RMIGNhbGwgWEVOX0RPTUNU TF92dWFydF9vcC4KKyAgICAgICAgICovCisgICAgICAgIGRvbWFpbl92cGwwMTFfZGVpbml0KGQp OworCiAgICAgICAgIGQtPmFyY2gucmVsbWVtID0gUkVMTUVNX3hlbjsKICAgICAgICAgLyogRmFs bHRocm91Z2ggKi8KIApkaWZmIC0tZ2l0IGEveGVuL2FyY2gvYXJtL2RvbWN0bC5jIGIveGVuL2Fy Y2gvYXJtL2RvbWN0bC5jCmluZGV4IGRiNjgzOGQuLmM3ZjY1MGUgMTAwNjQ0Ci0tLSBhL3hlbi9h cmNoL2FybS9kb21jdGwuYworKysgYi94ZW4vYXJjaC9hcm0vZG9tY3RsLmMKQEAgLTUsOSArNSwx MSBAQAogICovCiAKICNpbmNsdWRlIDx4ZW4vZXJybm8uaD4KKyNpbmNsdWRlIDx4ZW4vZ3Vlc3Rf YWNjZXNzLmg+CiAjaW5jbHVkZSA8eGVuL2h5cGVyY2FsbC5oPgogI2luY2x1ZGUgPHhlbi9pb2Nh cC5oPgogI2luY2x1ZGUgPHhlbi9saWIuaD4KKyNpbmNsdWRlIDx4ZW4vbW0uaD4KICNpbmNsdWRl IDx4ZW4vc2NoZWQuaD4KICNpbmNsdWRlIDx4ZW4vdHlwZXMuaD4KICNpbmNsdWRlIDx4c20veHNt Lmg+CkBAIC0xMTksNiArMTIxLDQ2IEBAIGxvbmcgYXJjaF9kb19kb21jdGwoc3RydWN0IHhlbl9k b21jdGwgKmRvbWN0bCwgc3RydWN0IGRvbWFpbiAqZCwKICAgICAgICAgZC0+ZGlzYWJsZV9taWdy YXRlID0gZG9tY3RsLT51LmRpc2FibGVfbWlncmF0ZS5kaXNhYmxlOwogICAgICAgICByZXR1cm4g MDsKIAorICAgIGNhc2UgWEVOX0RPTUNUTF92dWFydF9vcDoKKyAgICB7CisgICAgICAgIGludCBy YzsKKyAgICAgICAgc3RydWN0IHhlbl9kb21jdGxfdnVhcnRfb3AgKnZ1YXJ0X29wID0gJmRvbWN0 bC0+dS52dWFydF9vcDsKKworICAgICAgICBzd2l0Y2godnVhcnRfb3AtPmNtZCkKKyAgICAgICAg eworICAgICAgICBjYXNlIFhFTl9ET01DVExfVlVBUlRfT1BfSU5JVDoKKworICAgICAgICAgICAg aWYgKCAhZC0+Y3JlYXRpb25fZmluaXNoZWQgKQorICAgICAgICAgICAgeworICAgICAgICAgICAg ICAgIGlmICh2dWFydF9vcC0+dHlwZSA9PSBYRU5fRE9NQ1RMX1ZVQVJUX1RZUEVfVlBMMDExKQor ICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCB2cGwwMTFf aW5pdF9pbmZvIGluZm87CisKKyAgICAgICAgICAgICAgICAgICAgICAgIGluZm8uY29uc29sZV9k b21pZCA9IHZ1YXJ0X29wLT5jb25zb2xlX2RvbWlkOworICAgICAgICAgICAgICAgICAgICAgICAg aW5mby5nZm4gPSBfZ2ZuKHZ1YXJ0X29wLT5nZm4pOworCisgICAgICAgICAgICAgICAgICAgICAg ICByYyA9IGRvbWFpbl92cGwwMTFfaW5pdChkLCAmaW5mbyk7CisgICAgICAgICAgICAgICAgICAg ICAgICBpZiAoICFyYyApCisgICAgICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdnVhcnRfb3AtPmV2dGNobiA9IGluZm8uZXZ0Y2huOworICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHJjID0gX19jb3B5X3RvX2d1ZXN0KHVfZG9tY3RsLCBkb21jdGws IDEpOworICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIH0KKyAgICAg ICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICAgICByYyA9IC1FSU5WQUw7Cisg ICAgICAgICAgICB9CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmMgPSAtIEVQ RVJNOworCisgICAgICAgICAgICBicmVhazsKKworICAgICAgICBkZWZhdWx0OgorICAgICAgICAg ICAgcmMgPSAtRUlOVkFMOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKworICAgICAg ICByZXR1cm4gcmM7CisgICAgfQogICAgIGRlZmF1bHQ6CiAgICAgewogICAgICAgICBpbnQgcmM7 CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9wdWJsaWMvZG9tY3RsLmggYi94ZW4vaW5jbHVkZS9w dWJsaWMvZG9tY3RsLmgKaW5kZXggMDY2OWMzMS4uYmUyZDg3NCAxMDA2NDQKLS0tIGEveGVuL2lu Y2x1ZGUvcHVibGljL2RvbWN0bC5oCisrKyBiL3hlbi9pbmNsdWRlL3B1YmxpYy9kb21jdGwuaApA QCAtMzYsNiArMzYsNyBAQAogI2luY2x1ZGUgImdyYW50X3RhYmxlLmgiCiAjaW5jbHVkZSAiaHZt L3NhdmUuaCIKICNpbmNsdWRlICJtZW1vcnkuaCIKKyNpbmNsdWRlICJldmVudF9jaGFubmVsLmgi CiAKICNkZWZpbmUgWEVOX0RPTUNUTF9JTlRFUkZBQ0VfVkVSU0lPTiAweDAwMDAwMDBlCiAKQEAg LTExNDgsNiArMTE0OSwyNCBAQCBzdHJ1Y3QgeGVuX2RvbWN0bF9wc3JfY2F0X29wIHsKICAgICB1 aW50MzJfdCB0YXJnZXQ7ICAgIC8qIElOICovCiAgICAgdWludDY0X3QgZGF0YTsgICAgICAvKiBJ Ti9PVVQgKi8KIH07CisKK3N0cnVjdCB4ZW5fZG9tY3RsX3Z1YXJ0X29wIHsKKyNkZWZpbmUgWEVO X0RPTUNUTF9WVUFSVF9PUF9JTklUICAwCisgICAgICAgIHVpbnQzMl90IGNtZDsgICAgICAgICAg IC8qIFhFTl9ET01DVExfVlVBUlRfT1BfKiAqLworICAgICAgICBkb21pZF90IGNvbnNvbGVfZG9t aWQ7ICAvKiBJTiAqLworI2RlZmluZSBYRU5fRE9NQ1RMX1ZVQVJUX1RZUEVfVlBMMDExIDAKKyAg ICAgICAgdWludDMyX3QgdHlwZTsgICAgICAgICAgLyogSU4gLSB0eXBlIG9mIHZ1YXJ0LgorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKiAgICAgIEN1cnJlbnRseSBvbmx5IHZwbDAx MSBzdXBwb3J0ZWQuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAg ICB4ZW5fcGZuX3QgZ2ZuOyAgICAgICAgICAvKiBJTiAtIGd1ZXN0IGdmbiB0byBiZSB1c2VkIGFz IGEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICogICAgICByaW5nIGJ1ZmZlci4K KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgIGV2dGNobl9wb3J0 X3QgZXZ0Y2huOyAgIC8qIE9VVCAtIHJlbW90ZSBwb3J0IG9mIHRoZSBldmVudAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgKiAgICAgICBjaGFubmVsIHVzZWQgZm9yIHNlbmRpbmcK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICogICAgICAgcmluZyBidWZmZXIgZXZl bnRzLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KK307CisKIHR5cGVkZWYg c3RydWN0IHhlbl9kb21jdGxfcHNyX2NhdF9vcCB4ZW5fZG9tY3RsX3Bzcl9jYXRfb3BfdDsKIERF RklORV9YRU5fR1VFU1RfSEFORExFKHhlbl9kb21jdGxfcHNyX2NhdF9vcF90KTsKIApAQCAtMTIy OCw2ICsxMjQ3LDcgQEAgc3RydWN0IHhlbl9kb21jdGwgewogI2RlZmluZSBYRU5fRE9NQ1RMX21v bml0b3Jfb3AgICAgICAgICAgICAgICAgICAgIDc3CiAjZGVmaW5lIFhFTl9ET01DVExfcHNyX2Nh dF9vcCAgICAgICAgICAgICAgICAgICAgNzgKICNkZWZpbmUgWEVOX0RPTUNUTF9zb2Z0X3Jlc2V0 ICAgICAgICAgICAgICAgICAgICA3OQorI2RlZmluZSBYRU5fRE9NQ1RMX3Z1YXJ0X29wICAgICAg ICAgICAgICAgICAgICAgIDgwCiAjZGVmaW5lIFhFTl9ET01DVExfZ2Ric3hfZ3Vlc3RtZW1pbyAg ICAgICAgICAgIDEwMDAKICNkZWZpbmUgWEVOX0RPTUNUTF9nZGJzeF9wYXVzZXZjcHUgICAgICAg ICAgICAgMTAwMQogI2RlZmluZSBYRU5fRE9NQ1RMX2dkYnN4X3VucGF1c2V2Y3B1ICAgICAgICAg ICAxMDAyCkBAIC0xMjkwLDYgKzEzMTAsNyBAQCBzdHJ1Y3QgeGVuX2RvbWN0bCB7CiAgICAgICAg IHN0cnVjdCB4ZW5fZG9tY3RsX3Bzcl9jbXRfb3AgICAgICAgIHBzcl9jbXRfb3A7CiAgICAgICAg IHN0cnVjdCB4ZW5fZG9tY3RsX21vbml0b3Jfb3AgICAgICAgIG1vbml0b3Jfb3A7CiAgICAgICAg IHN0cnVjdCB4ZW5fZG9tY3RsX3Bzcl9jYXRfb3AgICAgICAgIHBzcl9jYXRfb3A7CisgICAgICAg IHN0cnVjdCB4ZW5fZG9tY3RsX3Z1YXJ0X29wICAgICAgICAgIHZ1YXJ0X29wOwogICAgICAgICB1 aW50OF90ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRbMTI4XTsKICAgICB9IHU7CiB9 OwotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBz Oi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK