From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bhupinder Thakur Subject: [PATCH 06/25 v6] xen/arm: vpl011: Add a new domctl API to initialize vpl011 Date: Mon, 17 Jul 2017 18:36:36 +0530 Message-ID: <1500296815-10243-7-git-send-email-bhupinder.thakur@linaro.org> References: <1500296815-10243-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 1dX5kB-0004Ac-8L for xen-devel@lists.xenproject.org; Mon, 17 Jul 2017 13:07:23 +0000 Received: by mail-pg0-f49.google.com with SMTP id 123so6564917pgj.1 for ; Mon, 17 Jul 2017 06:07:21 -0700 (PDT) In-Reply-To: <1500296815-10243-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: Wei Liu , Julien Grall , Stefano Stabellini , Ian Jackson List-Id: xen-devel@lists.xenproject.org QWRkIGEgbmV3IGRvbWN0bCBBUEkgdG8gaW5pdGlhbGl6ZSB2cGwwMTEuIEl0IHRha2VzIHRoZSBH Rk4gYW5kIGNvbnNvbGUKYmFja2VuZCBkb21pZCBhcyBpbnB1dCBhbmQgcmV0dXJucyBhbiBldmVu dCBjaGFubmVsIHRvIGJlIHVzZWQgZm9yCnNlbmRpbmcgYW5kIHJlY2VpdmluZyBldmVudHMgZnJv bSBYZW4uCgpYZW4gd2lsbCBjb21tdW5pY2F0ZSB3aXRoIHhlbmNvbnNvbGUgdXNpbmcgR0ZOIGFz IHRoZSByaW5nIGJ1ZmZlciBhbmQKdGhlIGV2ZW50IGNoYW5uZWwgdG8gdHJhbnNtaXQgYW5kIHJl Y2VpdmUgcGwwMTEgZGF0YSBvbiB0aGUgZ3Vlc3QgZG9tYWluJ3MKYmVoYWxmLgoKU2lnbmVkLW9m Zi1ieTogQmh1cGluZGVyIFRoYWt1ciA8Ymh1cGluZGVyLnRoYWt1ckBsaW5hcm8ub3JnPgotLS0K Q0M6IElhbiBKYWNrc29uIDxpYW4uamFja3NvbkBldS5jaXRyaXguY29tPgpDQzogV2VpIExpdSA8 d2VpLmxpdTJAY2l0cml4LmNvbT4KQ0M6IFN0ZWZhbm8gU3RhYmVsbGluaSA8c3N0YWJlbGxpbmlA a2VybmVsLm9yZz4KQ0M6IEp1bGllbiBHcmFsbCA8anVsaWVuLmdyYWxsQGFybS5jb20+CgpDaGFu Z2VzIHNpbmNlIHY1OgotIHhjX2RvbV92cGwwMTFfaW5pdCgpIHdpbGwgYmUgY29tcGlsZWQgZm9y IGJvdGggeDg2L2FybSBhcmNoaXRlY3R1cmVzIGFzIHRoZXJlCiAgaXMgbm90aGluZyBhcmNoaXRl Y3R1cmUgc3BlY2lmaWMgaW4gdGhpcyBmdW5jdGlvbi4gVGhpcyBmdW5jdGlvbiB3aWxsIHJldHVy biAKICBlcnJvciB3aGVuIGNhbGxlZCBmb3IgeDg2LgotIEZpeGVkIGNvZGluZyBzdHlsZSBpc3N1 ZXMgaW4gbGlieGwuCgpDaGFuZ2VzIHNpbmNlIHY0OgotIFJlbW92ZWQgbGlieGxfX2FyY2hfZG9t YWluX2NyZWF0ZV9maW5pc2goKS4KLSBBZGRlZCBhIG5ldyBmdW5jdGlvbiBsaWJ4bF9fYXJjaF9i dWlsZF9kb21fZmluaXNoKCksIHdoaWNoIGlzIGNhbGxlZCBhdCB0aGUgbGFzdAogIGluIGxpYnhs X19idWlsZF9kb20oKS4gVGhpcyBmdW5jdGlvbiBjYWxscyB0aGUgdnBsMDExIGluaXRpYWxpemF0 aW9uIGZ1bmN0aW9uIG5vdy4KCkNoYW5nZXMgc2luY2UgdjM6Ci0gQWRkZWQgYSBuZXcgYXJjaCBz cGVjaWZpYyBmdW5jdGlvbiBsaWJ4bF9fYXJjaF9kb21haW5fY3JlYXRlX2ZpbmlzaCgpLCB3aGlj aAogIGNhbGxzIHRoZSB2cGwwMTEgaW5pdGlhbGl6YXRpb24gZnVuY3Rpb24uIEZvciB4ODYgdGhp cyBmdW5jdGlvbiBkb2VzIG5vdCBkbwogIGFueXRoaW5nLgotIGRvbWFpbl92cGwwMTFfaW5pdCgp IHRha2VzIGEgcG9pbnRlciB0byBhIHN0cnVjdHVyZSB3aGljaCBjb250YWlucyBhbGwgdGhlIAog IHJlcXVpcmVkIGluZm9ybWF0aW9uIHN1Y2ggYXMgY29uc29sZV9kb21pZCwgZ2ZuIGluc3RlYWQg b2YgcGFzc2luZyBwYXJhbWV0ZXJzCiAgc2VwYXJhdGVseS4KLSBEcm9wcGVkIGEgRE9NQ1RMIEFQ SSBkZWZpbmVkIGZvciBkZS1pbml0aWFsaXppbmcgdnBsMDExIGFzIHRoYXQgc2hvdWxkIGJlCiAg dGFrZW4gY2FyZSB3aGVuIHRoZSBkb21haW4gaXMgZGVzdHJveWVkIChhbmQgbm90IGRlcGVuZGVu dCBvbiB1c2Vyc3BhY2UgCiAgbGlicmFyaWVzL2FwcGxpY2F0aW9ucykuCgpDaGFuZ2VzIHNpbmNl IHYyOgotIFJlcGxhY2VkIHRoZSBET01DVEwgQVBJcyBkZWZpbmVkIGZvciBnZXQvc2V0IG9mIGV2 ZW50IGNoYW5uZWwgYW5kIEdGTiB3aXRoIAogIGEgc2V0IG9mIERPTUNUTCBBUElzIGZvciBpbml0 aWFsaXppbmcgYW5kIGRlLWluaXRpYWxpemluZyB2cGwwMTEgZW11bGF0aW9uLgoKIHRvb2xzL2xp YnhjL2luY2x1ZGUveGVuY3RybC5oIHwgMTggKysrKysrKysrKysrKysrKysrCiB0b29scy9saWJ4 Yy94Y19kb21haW4uYyAgICAgICB8IDI0ICsrKysrKysrKysrKysrKysrKysrKysrKwogdG9vbHMv bGlieGwvbGlieGxfYXJjaC5oICAgICAgfCAgNiArKysrKysKIHRvb2xzL2xpYnhsL2xpYnhsX2Fy bS5jICAgICAgIHwgMjAgKysrKysrKysrKysrKysrKysrKysKIHRvb2xzL2xpYnhsL2xpYnhsX2Rv bS5jICAgICAgIHwgIDQgKysrKwogdG9vbHMvbGlieGwvbGlieGxfeDg2LmMgICAgICAgfCAgOCAr KysrKysrKwogeGVuL2FyY2gvYXJtL2RvbWFpbi5jICAgICAgICAgfCAgNSArKysrKwogeGVuL2Fy Y2gvYXJtL2RvbWN0bC5jICAgICAgICAgfCAzNyArKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrCiB4ZW4vaW5jbHVkZS9wdWJsaWMvZG9tY3RsLmggICB8IDIxICsrKysrKysrKysr KysrKysrKysrKwogOSBmaWxlcyBjaGFuZ2VkLCAxNDMgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdp dCBhL3Rvb2xzL2xpYnhjL2luY2x1ZGUveGVuY3RybC5oIGIvdG9vbHMvbGlieGMvaW5jbHVkZS94 ZW5jdHJsLmgKaW5kZXggYzUxYmIzYi4uNDIzYzZmMyAxMDA2NDQKLS0tIGEvdG9vbHMvbGlieGMv aW5jbHVkZS94ZW5jdHJsLmgKKysrIGIvdG9vbHMvbGlieGMvaW5jbHVkZS94ZW5jdHJsLmgKQEAg LTg4Niw2ICs4ODYsMjQgQEAgaW50IHhjX3ZjcHVfZ2V0Y29udGV4dCh4Y19pbnRlcmZhY2UgKnhj aCwKICAgICAgICAgICAgICAgICAgICAgICAgdmNwdV9ndWVzdF9jb250ZXh0X2FueV90ICpjdHh0 KTsKIAogLyoqCisgKiBUaGlzIGZ1bmN0aW9uIGluaXRpYWxpemVzIHRoZSB2cGwwMTEgZW11bGF0 aW9uIGFuZCByZXR1cm5zCisgKiB0aGUgZXZlbnQgdG8gYmUgdXNlZCBieSB0aGUgYmFja2VuZCBm b3IgY29tbXVuaWNhdGluZyB3aXRoCisgKiB0aGUgZW11bGF0aW9uIGNvZGUuCisgKgorICogQHBh cm0geGNoIGEgaGFuZGxlIHRvIGFuIG9wZW4gaHlwZXJ2aXNvciBpbnRlcmZhY2UKKyAqIEBwYXJt IGRvbWlkIHRoZSBkb21haW4gdG8gZ2V0IGluZm9ybWF0aW9uIGZyb20KKyAqIEBwYXJtIGNvbnNv bGVfZG9taWQgdGhlIGRvbWlkIG9mIHRoZSBiYWNrZW5kIGNvbnNvbGUKKyAqIEBwYXJtIGdmbiB0 aGUgZ3Vlc3QgcGZuIHRvIGJlIHVzZWQgYXMgdGhlIHJpbmcgYnVmZmVyCisgKiBAcGFybSBldnRj aG4gdGhlIGV2ZW50IGNoYW5uZWwgdG8gYmUgdXNlZCBmb3IgZXZlbnRzCisgKiBAcmV0dXJuIDAg b24gc3VjY2VzcywgbmVnYXRpdmUgZXJyb3Igb24gZmFpbHVyZQorICovCitpbnQgeGNfZG9tX3Zw bDAxMV9pbml0KHhjX2ludGVyZmFjZSAqeGNoLAorICAgICAgICAgICAgICAgICAgICAgICBkb21p ZF90IGRvbWlkLAorICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBjb25zb2xlX2RvbWlk LAorICAgICAgICAgICAgICAgICAgICAgICB4ZW5fcGZuX3QgZ2ZuLAorICAgICAgICAgICAgICAg ICAgICAgICBldnRjaG5fcG9ydF90ICpldnRjaG4pOworCisvKioKICAqIFRoaXMgZnVuY3Rpb24g cmV0dXJucyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgWFNBVkUgc3RhdGUgb2YgYSBwYXJ0aWN1bGFy CiAgKiB2Y3B1IG9mIGEgZG9tYWluLiBJZiBleHRzdGF0ZS0+c2l6ZSBhbmQgZXh0c3RhdGUtPnhm ZWF0dXJlX21hc2sgYXJlIDAsCiAgKiB0aGUgY2FsbCBpcyBjb25zaWRlcmVkIGEgcXVlcnkgdG8g cmV0cmlldmUgdGhlbSBhbmQgdGhlIGJ1ZmZlciBpcyBub3QKZGlmZiAtLWdpdCBhL3Rvb2xzL2xp YnhjL3hjX2RvbWFpbi5jIGIvdG9vbHMvbGlieGMveGNfZG9tYWluLmMKaW5kZXggM2JhYjRlOC4u ZmFiM2M1ZSAxMDA2NDQKLS0tIGEvdG9vbHMvbGlieGMveGNfZG9tYWluLmMKKysrIGIvdG9vbHMv bGlieGMveGNfZG9tYWluLmMKQEAgLTM0Myw2ICszNDMsMzAgQEAgaW50IHhjX2RvbWFpbl9nZXRf Z3Vlc3Rfd2lkdGgoeGNfaW50ZXJmYWNlICp4Y2gsIHVpbnQzMl90IGRvbWlkLAogICAgIHJldHVy biAwOwogfQogCitpbnQgeGNfZG9tX3ZwbDAxMV9pbml0KHhjX2ludGVyZmFjZSAqeGNoLAorICAg ICAgICAgICAgICAgICAgICAgICBkb21pZF90IGRvbWlkLAorICAgICAgICAgICAgICAgICAgICAg ICB1aW50MzJfdCBjb25zb2xlX2RvbWlkLAorICAgICAgICAgICAgICAgICAgICAgICB4ZW5fcGZu X3QgZ2ZuLAorICAgICAgICAgICAgICAgICAgICAgICBldnRjaG5fcG9ydF90ICpldnRjaG4pCit7 CisgICAgREVDTEFSRV9ET01DVEw7CisgICAgaW50IHJjID0gMDsKKworICAgIGRvbWN0bC5jbWQg PSBYRU5fRE9NQ1RMX3Z1YXJ0X29wOworICAgIGRvbWN0bC5kb21haW4gPSAoZG9taWRfdClkb21p ZDsKKyAgICBkb21jdGwudS52dWFydF9vcC5jbWQgPSBYRU5fRE9NQ1RMX1ZVQVJUX09QX0lOSVQ7 CisgICAgZG9tY3RsLnUudnVhcnRfb3AudHlwZSA9IFhFTl9ET01DVExfVlVBUlRfVFlQRV9WUEww MTE7CisgICAgZG9tY3RsLnUudnVhcnRfb3AuY29uc29sZV9kb21pZCA9IGNvbnNvbGVfZG9taWQ7 CisgICAgZG9tY3RsLnUudnVhcnRfb3AuZ2ZuID0gZ2ZuOworCisgICAgaWYgKCAocmMgPSBkb19k b21jdGwoeGNoLCAmZG9tY3RsKSkgPCAwICkKKyAgICAgICAgcmV0dXJuIHJjOworCisgICAgKmV2 dGNobiA9IGRvbWN0bC51LnZ1YXJ0X29wLmV2dGNobjsKKworICAgIHJldHVybiByYzsKK30KKwog aW50IHhjX2RvbWFpbl9nZXRpbmZvKHhjX2ludGVyZmFjZSAqeGNoLAogICAgICAgICAgICAgICAg ICAgICAgIHVpbnQzMl90IGZpcnN0X2RvbWlkLAogICAgICAgICAgICAgICAgICAgICAgIHVuc2ln bmVkIGludCBtYXhfZG9tcywKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsX2FyY2guaCBi L3Rvb2xzL2xpYnhsL2xpYnhsX2FyY2guaAppbmRleCA1ZTFmYzYwLi4xMThiOTJjIDEwMDY0NAot LS0gYS90b29scy9saWJ4bC9saWJ4bF9hcmNoLmgKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfYXJj aC5oCkBAIC00NCw2ICs0NCwxMiBAQCBpbnQgbGlieGxfX2FyY2hfZG9tYWluX2ZpbmFsaXNlX2h3 X2Rlc2NyaXB0aW9uKGxpYnhsX19nYyAqZ2MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGxpYnhsX2RvbWFpbl9idWlsZF9pbmZvICppbmZvLAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgeGNfZG9tX2ltYWdlICpkb20pOwogCisvKiBw ZXJmb3JtIGFueSBwZW5kaW5nIGhhcmR3YXJlIGluaXRpYWxpemF0aW9uICovCitpbnQgbGlieGxf X2FyY2hfYnVpbGRfZG9tX2ZpbmlzaChsaWJ4bF9fZ2MgKmdjLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgbGlieGxfZG9tYWluX2J1aWxkX2luZm8gKmluZm8sCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgeGNfZG9tX2ltYWdlICpkb20sCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fZG9tYWluX2J1aWxkX3N0YXRlICpzdGF0 ZSk7CisKIC8qIGJ1aWxkIHZOVU1BIHZtZW1yYW5nZSB3aXRoIGFyY2ggc3BlY2lmaWMgaW5mb3Jt YXRpb24gKi8KIF9oaWRkZW4KIGludCBsaWJ4bF9fYXJjaF92bnVtYV9idWlsZF92bWVtcmFuZ2Uo bGlieGxfX2djICpnYywKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsX2FybS5jIGIvdG9v bHMvbGlieGwvbGlieGxfYXJtLmMKaW5kZXggZDg0MmQ4OC4uZTNlNTc5MSAxMDA2NDQKLS0tIGEv dG9vbHMvbGlieGwvbGlieGxfYXJtLmMKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfYXJtLmMKQEAg LTEwMzgsNiArMTAzOCwyNiBAQCBpbnQgbGlieGxfX2FyY2hfZG9tYWluX2ZpbmFsaXNlX2h3X2Rl c2NyaXB0aW9uKGxpYnhsX19nYyAqZ2MsCiAgICAgcmV0dXJuIDA7CiB9CiAKK2ludCBsaWJ4bF9f YXJjaF9idWlsZF9kb21fZmluaXNoKGxpYnhsX19nYyAqZ2MsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBsaWJ4bF9kb21haW5fYnVpbGRfaW5mbyAqaW5mbywKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCB4Y19kb21faW1hZ2UgKmRvbSwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX19kb21haW5fYnVpbGRfc3RhdGUgKnN0YXRl KQoreworICAgIGludCByZXQgPSAwOworCisgICAgaWYgKGluZm8tPmFyY2hfYXJtLnZ1YXJ0KSB7 CisgICAgICAgIHJldCA9IHhjX2RvbV92cGwwMTFfaW5pdChDVFgtPnhjaCwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGRvbS0+Z3Vlc3RfZG9taWQsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBkb20tPmNvbnNvbGVfZG9taWQsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBkb20tPnZ1YXJ0X2dmbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICZzdGF0ZS0+dnVhcnRfcG9ydCk7CisgICAgICAgIGlmIChyZXQgPCAwKQorICAgICAg ICAgICAgTE9HKEVSUk9SLCAieGNfZG9tX3ZwbDAxMV9pbml0IGZhaWxlZFxuIik7CisgICAgfQor CisgICAgcmV0dXJuIHJldDsKK30KKwogaW50IGxpYnhsX19hcmNoX3ZudW1hX2J1aWxkX3ZtZW1y YW5nZShsaWJ4bF9fZ2MgKmdjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB1aW50MzJfdCBkb21pZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg bGlieGxfZG9tYWluX2J1aWxkX2luZm8gKmluZm8sCmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9s aWJ4bF9kb20uYyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2RvbS5jCmluZGV4IGUwZjBkNzguLjVmOTIw MjMgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnhsL2xpYnhsX2RvbS5jCisrKyBiL3Rvb2xzL2xpYnhs L2xpYnhsX2RvbS5jCkBAIC03MDIsNiArNzAyLDEwIEBAIHN0YXRpYyBpbnQgbGlieGxfX2J1aWxk X2RvbShsaWJ4bF9fZ2MgKmdjLCB1aW50MzJfdCBkb21pZCwKICAgICAgICAgTE9HRShFUlJPUiwg InhjX2RvbV9nbnR0YWJfaW5pdCBmYWlsZWQiKTsKICAgICAgICAgZ290byBvdXQ7CiAgICAgfQor ICAgIGlmICgocmV0ID0gbGlieGxfX2FyY2hfYnVpbGRfZG9tX2ZpbmlzaChnYywgaW5mbywgZG9t LCBzdGF0ZSkpICE9IDApIHsKKyAgICAgICAgTE9HRShFUlJPUiwgImxpYnhsX19hcmNoX2J1aWxk X2RvbV9maW5pc2ggZmFpbGVkIik7CisgICAgICAgIGdvdG8gb3V0OworICAgIH0KIAogb3V0Ogog ICAgIHJldHVybiByZXQgIT0gMCA/IEVSUk9SX0ZBSUwgOiAwOwpkaWZmIC0tZ2l0IGEvdG9vbHMv bGlieGwvbGlieGxfeDg2LmMgYi90b29scy9saWJ4bC9saWJ4bF94ODYuYwppbmRleCA0NTVmNmYw Li4wYWFlZGVkIDEwMDY0NAotLS0gYS90b29scy9saWJ4bC9saWJ4bF94ODYuYworKysgYi90b29s cy9saWJ4bC9saWJ4bF94ODYuYwpAQCAtMzkxLDYgKzM5MSwxNCBAQCBpbnQgbGlieGxfX2FyY2hf ZG9tYWluX2ZpbmFsaXNlX2h3X2Rlc2NyaXB0aW9uKGxpYnhsX19nYyAqZ2MsCiAgICAgcmV0dXJu IHJjOwogfQogCitpbnQgbGlieGxfX2FyY2hfYnVpbGRfZG9tX2ZpbmlzaChsaWJ4bF9fZ2MgKmdj LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfZG9tYWluX2J1aWxkX2lu Zm8gKmluZm8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgeGNfZG9t X2ltYWdlICpkb20sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fZG9t YWluX2J1aWxkX3N0YXRlICpzdGF0ZSkKK3sKKyAgICByZXR1cm4gMDsKK30KKwogLyogUmV0dXJu IDAgb24gc3VjY2VzcywgRVJST1JfKiBvbiBmYWlsdXJlLiAqLwogaW50IGxpYnhsX19hcmNoX3Zu dW1hX2J1aWxkX3ZtZW1yYW5nZShsaWJ4bF9fZ2MgKmdjLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB1aW50MzJfdCBkb21pZCwKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2Fy bS9kb21haW4uYyBiL3hlbi9hcmNoL2FybS9kb21haW4uYwppbmRleCAyZGM4YjBhLi5hMWNmMGIz IDEwMDY0NAotLS0gYS94ZW4vYXJjaC9hcm0vZG9tYWluLmMKKysrIGIveGVuL2FyY2gvYXJtL2Rv bWFpbi5jCkBAIC02NzIsNiArNjcyLDExIEBAIGZhaWw6CiAKIHZvaWQgYXJjaF9kb21haW5fZGVz dHJveShzdHJ1Y3QgZG9tYWluICpkKQogeworICAgIC8qCisgICAgICogdnBsMDExIGlzIGluaXRp YWxpemVkIHZpYSBhIERPTUNUTCBjYWxsIFhFTl9ET01DVExfdnVhcnRfb3AuCisgICAgICovCisg ICAgZG9tYWluX3ZwbDAxMV9kZWluaXQoZCk7CisKICAgICAvKiBJT01NVSBwYWdlIHRhYmxlIGlz IHNoYXJlZCB3aXRoIFAyTSwgYWx3YXlzIGNhbGwKICAgICAgKiBpb21tdV9kb21haW5fZGVzdHJv eSgpIGJlZm9yZSBwMm1fdGVhcmRvd24oKS4KICAgICAgKi8KZGlmZiAtLWdpdCBhL3hlbi9hcmNo L2FybS9kb21jdGwuYyBiL3hlbi9hcmNoL2FybS9kb21jdGwuYwppbmRleCBkYjY4MzhkLi42NGE0 MzY2IDEwMDY0NAotLS0gYS94ZW4vYXJjaC9hcm0vZG9tY3RsLmMKKysrIGIveGVuL2FyY2gvYXJt L2RvbWN0bC5jCkBAIC01LDkgKzUsMTEgQEAKICAqLwogCiAjaW5jbHVkZSA8eGVuL2Vycm5vLmg+ CisjaW5jbHVkZSA8eGVuL2d1ZXN0X2FjY2Vzcy5oPgogI2luY2x1ZGUgPHhlbi9oeXBlcmNhbGwu aD4KICNpbmNsdWRlIDx4ZW4vaW9jYXAuaD4KICNpbmNsdWRlIDx4ZW4vbGliLmg+CisjaW5jbHVk ZSA8eGVuL21tLmg+CiAjaW5jbHVkZSA8eGVuL3NjaGVkLmg+CiAjaW5jbHVkZSA8eGVuL3R5cGVz Lmg+CiAjaW5jbHVkZSA8eHNtL3hzbS5oPgpAQCAtMTE5LDYgKzEyMSw0MSBAQCBsb25nIGFyY2hf ZG9fZG9tY3RsKHN0cnVjdCB4ZW5fZG9tY3RsICpkb21jdGwsIHN0cnVjdCBkb21haW4gKmQsCiAg ICAgICAgIGQtPmRpc2FibGVfbWlncmF0ZSA9IGRvbWN0bC0+dS5kaXNhYmxlX21pZ3JhdGUuZGlz YWJsZTsKICAgICAgICAgcmV0dXJuIDA7CiAKKyAgICBjYXNlIFhFTl9ET01DVExfdnVhcnRfb3A6 CisgICAgeworICAgICAgICBpbnQgcmM7CisgICAgICAgIHN0cnVjdCB4ZW5fZG9tY3RsX3Z1YXJ0 X29wICp2dWFydF9vcCA9ICZkb21jdGwtPnUudnVhcnRfb3A7CisKKyAgICAgICAgc3dpdGNoKHZ1 YXJ0X29wLT5jbWQpCisgICAgICAgIHsKKyAgICAgICAgY2FzZSBYRU5fRE9NQ1RMX1ZVQVJUX09Q X0lOSVQ6CisKKyAgICAgICAgICAgIGlmICggIWQtPmNyZWF0aW9uX2ZpbmlzaGVkICkKKyAgICAg ICAgICAgIHsKKyAgICAgICAgICAgICAgICBzdHJ1Y3QgdnBsMDExX2luaXRfaW5mbyBpbmZvOwor CisgICAgICAgICAgICAgICAgaW5mby5jb25zb2xlX2RvbWlkID0gdnVhcnRfb3AtPmNvbnNvbGVf ZG9taWQ7CisgICAgICAgICAgICAgICAgaW5mby5nZm4gPSBfZ2ZuKHZ1YXJ0X29wLT5nZm4pOwor CisgICAgICAgICAgICAgICAgcmMgPSBkb21haW5fdnBsMDExX2luaXQoZCwgJmluZm8pOworICAg ICAgICAgICAgICAgIGlmICggIXJjICkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg ICAgICAgIHZ1YXJ0X29wLT5ldnRjaG4gPSBpbmZvLmV2dGNobjsKKyAgICAgICAgICAgICAgICAg ICAgcmMgPSBfX2NvcHlfdG9fZ3Vlc3QodV9kb21jdGwsIGRvbWN0bCwgMSk7CisgICAgICAgICAg ICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAg IHJjID0gLSBFUEVSTTsKKworICAgICAgICAgICAgYnJlYWs7CisKKyAgICAgICAgZGVmYXVsdDoK KyAgICAgICAgICAgIHJjID0gLUVJTlZBTDsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9 CisKKyAgICAgICAgcmV0dXJuIHJjOworICAgIH0KICAgICBkZWZhdWx0OgogICAgIHsKICAgICAg ICAgaW50IHJjOwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvcHVibGljL2RvbWN0bC5oIGIveGVu L2luY2x1ZGUvcHVibGljL2RvbWN0bC5oCmluZGV4IGZmMzk3NjIuLmY3MGI3YTQgMTAwNjQ0Ci0t LSBhL3hlbi9pbmNsdWRlL3B1YmxpYy9kb21jdGwuaAorKysgYi94ZW4vaW5jbHVkZS9wdWJsaWMv ZG9tY3RsLmgKQEAgLTM2LDYgKzM2LDcgQEAKICNpbmNsdWRlICJncmFudF90YWJsZS5oIgogI2lu Y2x1ZGUgImh2bS9zYXZlLmgiCiAjaW5jbHVkZSAibWVtb3J5LmgiCisjaW5jbHVkZSAiZXZlbnRf Y2hhbm5lbC5oIgogCiAjZGVmaW5lIFhFTl9ET01DVExfSU5URVJGQUNFX1ZFUlNJT04gMHgwMDAw MDAwZQogCkBAIC0xMTQ2LDYgKzExNDcsMjQgQEAgc3RydWN0IHhlbl9kb21jdGxfcHNyX2NhdF9v cCB7CiAgICAgdWludDMyX3QgdGFyZ2V0OyAgICAvKiBJTiAqLwogICAgIHVpbnQ2NF90IGRhdGE7 ICAgICAgLyogSU4vT1VUICovCiB9OworCitzdHJ1Y3QgeGVuX2RvbWN0bF92dWFydF9vcCB7Cisj ZGVmaW5lIFhFTl9ET01DVExfVlVBUlRfT1BfSU5JVCAgMAorICAgICAgICB1aW50MzJfdCBjbWQ7 ICAgICAgICAgICAvKiBYRU5fRE9NQ1RMX1ZVQVJUX09QXyogKi8KKyAgICAgICAgdWludDMyX3Qg Y29uc29sZV9kb21pZDsgLyogSU4gKi8KKyNkZWZpbmUgWEVOX0RPTUNUTF9WVUFSVF9UWVBFX1ZQ TDAxMSAwCisgICAgICAgIHVpbnQzMl90IHR5cGU7ICAgICAgICAgIC8qIElOIC0gdHlwZSBvZiB2 dWFydC4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICogICAgICBDdXJyZW50bHkg b25seSB2cGwwMTEgc3VwcG9ydGVkLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Ki8KKyAgICAgICAgeGVuX3Bmbl90IGdmbjsgICAgICAgICAgLyogSU4gLSBndWVzdCBnZm4gdG8g YmUgdXNlZCBhcyBhCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqICAgICAgcmlu ZyBidWZmZXIuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICBl dnRjaG5fcG9ydF90IGV2dGNobjsgICAvKiBPVVQgLSByZW1vdGUgcG9ydCBvZiB0aGUgZXZlbnQK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICogICAgICAgY2hhbm5lbCB1c2VkIGZv ciBzZW5kaW5nCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqICAgICAgIHJpbmcg YnVmZmVyIGV2ZW50cy4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCit9Owor CiB0eXBlZGVmIHN0cnVjdCB4ZW5fZG9tY3RsX3Bzcl9jYXRfb3AgeGVuX2RvbWN0bF9wc3JfY2F0 X29wX3Q7CiBERUZJTkVfWEVOX0dVRVNUX0hBTkRMRSh4ZW5fZG9tY3RsX3Bzcl9jYXRfb3BfdCk7 CiAKQEAgLTEyMjYsNiArMTI0NSw3IEBAIHN0cnVjdCB4ZW5fZG9tY3RsIHsKICNkZWZpbmUgWEVO X0RPTUNUTF9tb25pdG9yX29wICAgICAgICAgICAgICAgICAgICA3NwogI2RlZmluZSBYRU5fRE9N Q1RMX3Bzcl9jYXRfb3AgICAgICAgICAgICAgICAgICAgIDc4CiAjZGVmaW5lIFhFTl9ET01DVExf c29mdF9yZXNldCAgICAgICAgICAgICAgICAgICAgNzkKKyNkZWZpbmUgWEVOX0RPTUNUTF92dWFy dF9vcCAgICAgICAgICAgICAgICAgICAgICA4MAogI2RlZmluZSBYRU5fRE9NQ1RMX2dkYnN4X2d1 ZXN0bWVtaW8gICAgICAgICAgICAxMDAwCiAjZGVmaW5lIFhFTl9ET01DVExfZ2Ric3hfcGF1c2V2 Y3B1ICAgICAgICAgICAgIDEwMDEKICNkZWZpbmUgWEVOX0RPTUNUTF9nZGJzeF91bnBhdXNldmNw dSAgICAgICAgICAgMTAwMgpAQCAtMTI4OCw2ICsxMzA4LDcgQEAgc3RydWN0IHhlbl9kb21jdGwg ewogICAgICAgICBzdHJ1Y3QgeGVuX2RvbWN0bF9wc3JfY210X29wICAgICAgICBwc3JfY210X29w OwogICAgICAgICBzdHJ1Y3QgeGVuX2RvbWN0bF9tb25pdG9yX29wICAgICAgICBtb25pdG9yX29w OwogICAgICAgICBzdHJ1Y3QgeGVuX2RvbWN0bF9wc3JfY2F0X29wICAgICAgICBwc3JfY2F0X29w OworICAgICAgICBzdHJ1Y3QgeGVuX2RvbWN0bF92dWFydF9vcCAgICAgICAgICB2dWFydF9vcDsK ICAgICAgICAgdWludDhfdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkWzEyOF07CiAg ICAgfSB1OwogfTsKLS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVu Lm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==