From mboxrd@z Thu Jan 1 00:00:00 1970 From: Simon Farnsworth Subject: [PATCH v3] drm/dp: Use large transactions for I2C over AUX Date: Tue, 27 Jan 2015 15:43:49 +0000 Message-ID: <1422373429-10137-1-git-send-email-simon.farnsworth@onelan.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from claranet-outbound-smtp06.uk.clara.net (claranet-outbound-smtp06.uk.clara.net [195.8.89.39]) by gabe.freedesktop.org (Postfix) with ESMTP id 10E1F6E351 for ; Tue, 27 Jan 2015 07:44:01 -0800 (PST) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: Thierry Reding List-Id: dri-devel@lists.freedesktop.org RGlzcGxheVBvcnQgdG8gRFZJLUQgRHVhbCBMaW5rIGFkYXB0ZXJzIGRlc2lnbmVkIGJ5IEJpemxp bmsgaGF2ZSBidWdzIGluCnRoZWlyIEkyQyBvdmVyIEFVWCBpbXBsZW1lbnRhdGlvbi4gVGhleSB3 b3JrIGZpbmUgd2l0aCBXaW5kb3dzLCBidXQgZmFpbAp3aXRoIExpbnV4LgoKSXQgdHVybnMgb3V0 IHRoYXQgdGhleSBjYW5ub3Qga2VlcCBhbiBJMkMgdHJhbnNhY3Rpb24gb3BlbiB1bmxlc3MgdGhl CnByZXZpb3VzIHJlYWQgd2FzIDE2IGJ5dGVzOyBzaG9ydGVyIHJlYWRzIGNhbiBvbmx5IGJlIGZv bGxvd2VkIGJ5IGEgemVybwpieXRlIHRyYW5zZmVyIGVuZGluZyB0aGUgSTJDIHRyYW5zYWN0aW9u LgoKQ29weSBXaW5kb3dzJ3MgYmVoYXZpb3VyLCBhbmQgcmVhZCAxNiBieXRlcyBhdCBhIHRpbWUu IElmIHdlIGdldCBhIHNob3J0CnJlcGx5LCBhc3N1bWUgdGhhdCB0aGVyZSdzIGEgaGFyZHdhcmUg Ym90dGxlbmVjaywgYW5kIHNocmluayBvdXIgcmVhZCBzaXplCnRvIG1hdGNoLiBGb3IgdGhpcyBw dXJwb3NlLCB1c2UgdGhlIGFsZ29yaXRobSBpbiB0aGUgRGlzcGxheVBvcnQgMS4yIHNwZWMsCmlu IHRoZSBob3BlcyB0aGF0IGl0J2xsIGJlIGNsb3Nlc3QgdG8gd2hhdCBXaW5kb3dzIGRvZXMsIGFz IG5vIHNpbmsgSSd2ZQpmb3VuZCBhY3R1YWxseSBnaXZlcyBzaG9ydCByZXBsaWVzLgoKQWxzbyBw cm92aWRlIGEgbW9kdWxlIHBhcmFtZXRlciBmb3IgdGVzdGluZyBzbWFsbGVyIHRyYW5zZmVyIHNp emVzLCBpbiBjYXNlCnRoZXJlIGFyZSBzaW5rcyBvdXQgdGhlcmUgdGhhdCBjYW5ub3Qgd29yayB3 aXRoIFdpbmRvd3MuCgpTaWduZWQtb2ZmLWJ5OiBTaW1vbiBGYXJuc3dvcnRoIDxzaW1vbi5mYXJu c3dvcnRoQG9uZWxhbi5jby51az4KLS0tCgp2MyBjaGFuZ2VzLCBhZnRlciBmZWVkYmFjayBmcm9t IFZpbGxlIGFuZCBtb3JlIHRlc3Rpbmcgb2YgV2luZG93czoKCiAqIENoYW5nZSB0aGUgc2hvcnQg cmVwbHkgYWxnb3JpdGhtIHRvIG1hdGNoIFZpbGxlJ3MgZGVzY3JpcHRpb24gb2YgdGhlCiAgIERp c3BsYXlQb3J0IDEuMiBzcGVjIHdvcmRpbmcuCgogKiBBZGQgYSBtb2R1bGUgcGFyYW1ldGVyIHRv IHNldCB0aGUgZGVmYXVsdCB0cmFuc2ZlciBzaXplIGZvcgogICBleHBlcmltZW50cy4gUmVxdWVz dGVkIG92ZXIgSVJDIGJ5IFZpbGxlLgoKTm8tb25lJ3MgYmVlbiBhYmxlIHRvIGZpbmQgYSBkZXZp Y2UgdGhhdCBkb2VzIHNob3J0IHJlcGxpZXMsIGJ1dCBleHBlcmltZW50cwpzaG93IHRoYXQgYmln Z2VyIHJlYWRzIGFyZSBmYXN0ZXIgb24gbW9zdCBkZXZpY2VzLiBWaWxsZSBnb3Q6CgogRFAtPkRW SSAoT1VJIDAwMWNmOCk6ICA0MG1zIC0+IDM1bXMKIERQLT5WR0EgKE9VSSAwMDIyYjkpOiAgNDVt cyAtPiAzOG1zCiBab3RhYyBEUC0+MnhIRE1JOiAgICAgIDI1bXMgLT4gIDRtcwoKdjIgY2hhbmdl cywgYWZ0ZXIgZmVlZGJhY2sgZnJvbSBUaGllcnJ5IGFuZCBWaWxsZToKCiAqIEhhbmRsZSBzaG9y dCByZXBsaWVzLiBJJ3ZlIGRlY2lkZWQgKGFyYml0cmFyaWx5KSB0aGF0IGEgc2hvcnQgcmVwbHkK ICAgcmVzdWx0cyBpbiB1cyBkcm9wcGluZyBiYWNrIHRvIHRoZSBuZXdseSBjaG9zZW4gc2l6ZSBm b3IgdGhlIHJlc3Qgb2YgdGhpcwogICBJMkMgdHJhbnNhY3Rpb24uIFRodXMsIGdpdmVuIGFuIGF0 dGVtcHQgdG8gcmVhZCB0aGUgZmlyc3QgMTYgYnl0ZXMgb2YKICAgRURJRCwgYW5kIGEgc2luayB0 aGF0IG9ubHkgZG9lcyA0IGJ5dGVzIG9mIGJ1ZmZlcmluZywgd2Ugd2lsbCBzZWUgdGhlCiAgIGZv bGxvd2luZyBBVVggdHJhbnNmZXJzIGZvciB0aGUgRURJRCByZWFkIChhZnRlciBhZGRyZXNzIGlz IHNldCk6CgogICA8c2V0IGFkZHJlc3MsIGJsb2NrIGV0Yz4KICAgUmVhZCAxNiBieXRlcyBmcm9t IEkyQyBvdmVyIEFVWC4KICAgUmVwbHkgd2l0aCA0IGJ5dGVzCiAgIFJlYWQgNCBieXRlcwogICBS ZXBseSB3aXRoIDQgYnl0ZXMKICAgUmVhZCA0IGJ5dGVzCiAgIFJlcGx5IHdpdGggNCBieXRlcwog ICBSZWFkIDQgYnl0ZXMKICAgUmVwbHkgd2l0aCA0IGJ5dGVzCiAgIDxlbmQgSTJDIHRyYW5zYWN0 aW9uPgoKTm90ZSB0aGF0IEkndmUgbm90IGxvb2tlZCBhdCBNU1Qgc3VwcG9ydCAtIEkgaGF2ZSBu ZWl0aGVyIHRoZSBEUCAxLjIgc3BlYwpub3IgYW55IE1TVCBicmFuY2ggZGV2aWNlcywgc28gSSBj YW4ndCB0ZXN0IGFueXRoaW5nIEkgd3JpdGUgb3IgY2hlY2sgaXQKYWdhaW5zdCBhIHNwZWMuIEl0 IGxvb2tzIGZyb20gdGhlIGNvZGUsIGhvd2V2ZXIsIGFzIGlmIE1TVCBoYXMgdGhlIGJyYW5jaApk ZXZpY2UgZG8gdGhlIHNwbGl0IGZyb20gYSBiaWcgcmVxdWVzdCBpbnRvIHNtYWxsIHRyYW5zYWN0 aW9ucy4KCiBkcml2ZXJzL2dwdS9kcm0vZHJtX2RwX2hlbHBlci5jIHwgOTEgKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0KIGluY2x1ZGUvZHJtL2RybV9kcF9oZWxwZXIu aCAgICAgfCAgNSArKysKIDIgZmlsZXMgY2hhbmdlZCwgNzcgaW5zZXJ0aW9ucygrKSwgMTkgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9kcF9oZWxwZXIuYyBi L2RyaXZlcnMvZ3B1L2RybS9kcm1fZHBfaGVscGVyLmMKaW5kZXggNzk5NjhlMy4uM2RiMTE2YyAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9kcF9oZWxwZXIuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vZHJtX2RwX2hlbHBlci5jCkBAIC0zOTYsMTEgKzM5NiwxMyBAQCBzdGF0aWMgdTMy IGRybV9kcF9pMmNfZnVuY3Rpb25hbGl0eShzdHJ1Y3QgaTJjX2FkYXB0ZXIgKmFkYXB0ZXIpCiAg KiByZXRyeWluZyB0aGUgdHJhbnNhY3Rpb24gYXMgYXBwcm9wcmlhdGUuICBJdCBpcyBhc3N1bWVk IHRoYXQgdGhlCiAgKiBhdXgtPnRyYW5zZmVyIGZ1bmN0aW9uIGRvZXMgbm90IG1vZGlmeSBhbnl0 aGluZyBpbiB0aGUgbXNnIG90aGVyIHRoYW4gdGhlCiAgKiByZXBseSBmaWVsZC4KKyAqCisgKiBS ZXR1cm5zIGJ5dGVzIHRyYW5zZmVycmVkIG9uIHN1Y2Nlc3MsIG9yIGEgbmVnYXRpdmUgZXJyb3Ig Y29kZSBvbiBmYWlsdXJlLgogICovCiBzdGF0aWMgaW50IGRybV9kcF9pMmNfZG9fbXNnKHN0cnVj dCBkcm1fZHBfYXV4ICphdXgsIHN0cnVjdCBkcm1fZHBfYXV4X21zZyAqbXNnKQogewogCXVuc2ln bmVkIGludCByZXRyeTsKLQlpbnQgZXJyOworCWludCByZXQ7CiAKIAkvKgogCSAqIERQMS4yIHNl Y3Rpb25zIDIuNy43LjEuNS42LjEgYW5kIDIuNy43LjEuNi42LjE6IEEgRFAgU291cmNlIGRldmlj ZQpAQCAtNDA5LDE0ICs0MTEsMTQgQEAgc3RhdGljIGludCBkcm1fZHBfaTJjX2RvX21zZyhzdHJ1 Y3QgZHJtX2RwX2F1eCAqYXV4LCBzdHJ1Y3QgZHJtX2RwX2F1eF9tc2cgKm1zZykKIAkgKi8KIAlm b3IgKHJldHJ5ID0gMDsgcmV0cnkgPCA3OyByZXRyeSsrKSB7CiAJCW11dGV4X2xvY2soJmF1eC0+ aHdfbXV0ZXgpOwotCQllcnIgPSBhdXgtPnRyYW5zZmVyKGF1eCwgbXNnKTsKKwkJcmV0ID0gYXV4 LT50cmFuc2ZlcihhdXgsIG1zZyk7CiAJCW11dGV4X3VubG9jaygmYXV4LT5od19tdXRleCk7Ci0J CWlmIChlcnIgPCAwKSB7Ci0JCQlpZiAoZXJyID09IC1FQlVTWSkKKwkJaWYgKHJldCA8IDApIHsK KwkJCWlmIChyZXQgPT0gLUVCVVNZKQogCQkJCWNvbnRpbnVlOwogCi0JCQlEUk1fREVCVUdfS01T KCJ0cmFuc2FjdGlvbiBmYWlsZWQ6ICVkXG4iLCBlcnIpOwotCQkJcmV0dXJuIGVycjsKKwkJCURS TV9ERUJVR19LTVMoInRyYW5zYWN0aW9uIGZhaWxlZDogJWRcbiIsIHJldCk7CisJCQlyZXR1cm4g cmV0OwogCQl9CiAKIApAQCAtNDU3LDkgKzQ1OSw3IEBAIHN0YXRpYyBpbnQgZHJtX2RwX2kyY19k b19tc2coc3RydWN0IGRybV9kcF9hdXggKmF1eCwgc3RydWN0IGRybV9kcF9hdXhfbXNnICptc2cp CiAJCQkgKiBCb3RoIG5hdGl2ZSBBQ0sgYW5kIEkyQyBBQ0sgcmVwbGllcyByZWNlaXZlZC4gV2UK IAkJCSAqIGNhbiBhc3N1bWUgdGhlIHRyYW5zZmVyIHdhcyBzdWNjZXNzZnVsLgogCQkJICovCi0J CQlpZiAoZXJyIDwgbXNnLT5zaXplKQotCQkJCXJldHVybiAtRVBST1RPOwotCQkJcmV0dXJuIDA7 CisJCQlyZXR1cm4gcmV0OwogCiAJCWNhc2UgRFBfQVVYX0kyQ19SRVBMWV9OQUNLOgogCQkJRFJN X0RFQlVHX0tNUygiSTJDIG5hY2tcbiIpOwpAQCAtNDgyLDE0ICs0ODIsNjcgQEAgc3RhdGljIGlu dCBkcm1fZHBfaTJjX2RvX21zZyhzdHJ1Y3QgZHJtX2RwX2F1eCAqYXV4LCBzdHJ1Y3QgZHJtX2Rw X2F1eF9tc2cgKm1zZykKIAlyZXR1cm4gLUVSRU1PVEVJTzsKIH0KIAorLyoKKyAqIEtlZXAgcmV0 cnlpbmcgZHJtX2RwX2kyY19kb19tc2cgdW50aWwgYWxsIGRhdGEgaGFzIGJlZW4gdHJhbnNmZXJy ZWQuCisgKgorICogUmV0dXJucyBhbiBlcnJvciBjb2RlIG9uIGZhaWx1cmUsIG9yIGEgcmVjb21t ZW5kZWQgdHJhbnNmZXIgc2l6ZSBvbiBzdWNjZXNzLgorICovCitzdGF0aWMgaW50IGRybV9kcF9p MmNfZHJhaW5fbXNnKHN0cnVjdCBkcm1fZHBfYXV4ICphdXgsIHN0cnVjdCBkcm1fZHBfYXV4X21z ZyAqbXNnKQoreworCWludCByZXQ7CisJc3RydWN0IGRybV9kcF9hdXhfbXNnIGRyYWluX21zZzsK KwlpbnQgZHJhaW5fYnl0ZXM7CisKKwlyZXQgPSBkcm1fZHBfaTJjX2RvX21zZyhhdXgsIG1zZyk7 CisKKwlpZiAocmV0ID09IG1zZy0+c2l6ZSB8fCByZXQgPD0gMCkKKwkJcmV0dXJuIHJldCA9PSAw ID8gLUVQUk9UTyA6IHJldDsKKworCS8qCisJICogV2UgaGFkIGEgcGFydGlhbCByZXBseS4gRHJh aW4gb3V0IHRoZSByZXN0IG9mIHRoZSBieXRlcyB3ZQorCSAqIG9yaWdpbmFsbHkgcmVxdWVzdGVk LCB0aGVuIHJldHVybiB0aGUgc2l6ZSBvZiB0aGUgcGFydGlhbAorCSAqIHJlcGx5LiBJbiB0aGVv cnksIHRoaXMgc2hvdWxkIG1hdGNoIERQIDEuMidzIGRlc2lyZWQgYmVoYXZpb3VyCisJICogZm9y IEkyQyBvdmVyIEFVWC4KKwkgKi8KKwlEUk1fREVCVUdfS01TKCJQYXJ0aWFsIEkyQyByZXBseTog cmVxdWVzdGVkICV6dSBieXRlcyBnb3QgJWQgYnl0ZXNcbiIsIG1zZy0+c2l6ZSwgcmV0KTsKKwlk cmFpbl9tc2cgPSAqbXNnOworCWRyYWluX21zZy5zaXplIC09IHJldDsKKwlkcmFpbl9tc2cuYnVm ZmVyICs9IHJldDsKKwl3aGlsZSAoZHJhaW5fbXNnLnNpemUgIT0gMCkgeworCQlkcmFpbl9ieXRl cyA9IGRybV9kcF9pMmNfZG9fbXNnKGF1eCwgJmRyYWluX21zZyk7CisJCWlmIChkcmFpbl9ieXRl cyA8PSAwKQorCQkJcmV0dXJuIGRyYWluX2J5dGVzID09IDAgPyAtRVBST1RPIDogZHJhaW5fYnl0 ZXM7CisJCWRyYWluX21zZy5zaXplIC09IGRyYWluX2J5dGVzOworCQlkcmFpbl9tc2cuYnVmZmVy ICs9IGRyYWluX2J5dGVzOworCX0KKwlyZXR1cm4gcmV0OworfQorCisvKgorICogQml6bGluayBk ZXNpZ25lZCBEUC0+RFZJLUQgRHVhbCBMaW5rIGFkYXB0ZXJzIHJlcXVpcmUgdGhlIEkyQyBvdmVy IEFVWAorICogcGFja2V0cyB0byBiZSBhcyBsYXJnZSBhcyBwb3NzaWJsZS4gSWYgbm90LCB0aGUg STJDIHRyYW5zYWN0aW9ucyBuZXZlcgorICogc3VjY2VlZC4gSGVuY2UgdGhlIGRlZmF1bHQgaXMg bWF4aW11bS4KKyAqLworc3RhdGljIGludCBkcF9hdXhfaTJjX3RyYW5zZmVyX3NpemUgX19yZWFk X21vc3RseSA9IERQX0FVWF9NQVhfUEFZTE9BRF9CWVRFUzsKK21vZHVsZV9wYXJhbV9uYW1lZChk cF9hdXhfaTJjX3RyYW5zZmVyX3NpemUsIGRwX2F1eF9pMmNfdHJhbnNmZXJfc2l6ZSwgaW50LCAw NjAwKTsKK01PRFVMRV9QQVJNX0RFU0MoZHBfYXV4X2kyY190cmFuc2Zlcl9zaXplLAorCQkgIk51 bWJlciBvZiBieXRlcyB0byB0cmFuc2ZlciBpbiBhIHNpbmdsZSBJMkMgb3ZlciBEUCBBVVggQ0gg bWVzc2FnZSwgKDEtMTYsIGRlZmF1bHQgMTYpIik7CisKIHN0YXRpYyBpbnQgZHJtX2RwX2kyY194 ZmVyKHN0cnVjdCBpMmNfYWRhcHRlciAqYWRhcHRlciwgc3RydWN0IGkyY19tc2cgKm1zZ3MsCiAJ CQkgICBpbnQgbnVtKQogewogCXN0cnVjdCBkcm1fZHBfYXV4ICphdXggPSBhZGFwdGVyLT5hbGdv X2RhdGE7CiAJdW5zaWduZWQgaW50IGksIGo7CisJaW50IHRyYW5zZmVyX3NpemU7CiAJc3RydWN0 IGRybV9kcF9hdXhfbXNnIG1zZzsKIAlpbnQgZXJyID0gMDsKIAorCWlmIChkcF9hdXhfaTJjX3Ry YW5zZmVyX3NpemUgPCAxIHx8IGRwX2F1eF9pMmNfdHJhbnNmZXJfc2l6ZSA+IERQX0FVWF9NQVhf UEFZTE9BRF9CWVRFUykgeworCQlEUk1fRVJST1IoImRwX2F1eF9pMmNfdHJhbnNmZXJfc2l6ZSBp bnZhbGlkIC0gY2hhbmdpbmcgZnJvbSAlZCB0byAlZFxuIiwKKwkJCSAgZHBfYXV4X2kyY190cmFu c2Zlcl9zaXplLCBEUF9BVVhfTUFYX1BBWUxPQURfQllURVMpOworCQlkcF9hdXhfaTJjX3RyYW5z ZmVyX3NpemUgPSBEUF9BVVhfTUFYX1BBWUxPQURfQllURVM7CisJfQorCiAJbWVtc2V0KCZtc2cs IDAsIHNpemVvZihtc2cpKTsKIAogCWZvciAoaSA9IDA7IGkgPCBudW07IGkrKykgewpAQCAtNTA3 LDIwICs1NjAsMjAgQEAgc3RhdGljIGludCBkcm1fZHBfaTJjX3hmZXIoc3RydWN0IGkyY19hZGFw dGVyICphZGFwdGVyLCBzdHJ1Y3QgaTJjX21zZyAqbXNncywKIAkJZXJyID0gZHJtX2RwX2kyY19k b19tc2coYXV4LCAmbXNnKTsKIAkJaWYgKGVyciA8IDApCiAJCQlicmVhazsKLQkJLyoKLQkJICog TWFueSBoYXJkd2FyZSBpbXBsZW1lbnRhdGlvbnMgc3VwcG9ydCBGSUZPcyBsYXJnZXIgdGhhbiBh Ci0JCSAqIHNpbmdsZSBieXRlLCBidXQgaXQgaGFzIGJlZW4gZW1waXJpY2FsbHkgZGV0ZXJtaW5l ZCB0aGF0Ci0JCSAqIHRyYW5zZmVycmluZyBkYXRhIGluIGxhcmdlciBjaHVua3MgY2FuIGFjdHVh bGx5IGxlYWQgdG8KLQkJICogZGVjcmVhc2VkIHBlcmZvcm1hbmNlLiBUaGVyZWZvcmUgZWFjaCBt ZXNzYWdlIGlzIHNpbXBseQotCQkgKiB0cmFuc2ZlcnJlZCBieXRlLWJ5LWJ5dGUuCisJCS8qIFdl IHdhbnQgZWFjaCB0cmFuc2FjdGlvbiB0byBiZSBhcyBsYXJnZSBhcyBwb3NzaWJsZSwgYnV0CisJ CSAqIHdlJ2xsIGdvIHRvIHNtYWxsZXIgc2l6ZXMgaWYgdGhlIGhhcmR3YXJlIGdpdmVzIHVzIGEK KwkJICogc2hvcnQgcmVwbHkuCiAJCSAqLwotCQlmb3IgKGogPSAwOyBqIDwgbXNnc1tpXS5sZW47 IGorKykgeworCQl0cmFuc2Zlcl9zaXplID0gZHBfYXV4X2kyY190cmFuc2Zlcl9zaXplOworCQlm b3IgKGogPSAwOyBqIDwgbXNnc1tpXS5sZW47IGogKz0gbXNnLnNpemUpIHsKIAkJCW1zZy5idWZm ZXIgPSBtc2dzW2ldLmJ1ZiArIGo7Ci0JCQltc2cuc2l6ZSA9IDE7CisJCQltc2cuc2l6ZSA9IG1p bigodW5zaWduZWQpdHJhbnNmZXJfc2l6ZSwgbXNnc1tpXS5sZW4gLSBqKTsKIAotCQkJZXJyID0g ZHJtX2RwX2kyY19kb19tc2coYXV4LCAmbXNnKTsKLQkJCWlmIChlcnIgPCAwKQorCQkJdHJhbnNm ZXJfc2l6ZSA9IGRybV9kcF9pMmNfZHJhaW5fbXNnKGF1eCwgJm1zZyk7CisJCQlpZiAodHJhbnNm ZXJfc2l6ZSA8IDApIHsKKwkJCQllcnIgPSB0cmFuc2Zlcl9zaXplOwogCQkJCWJyZWFrOworCQkJ fQogCQl9CiAJCWlmIChlcnIgPCAwKQogCQkJYnJlYWs7CmRpZmYgLS1naXQgYS9pbmNsdWRlL2Ry bS9kcm1fZHBfaGVscGVyLmggYi9pbmNsdWRlL2RybS9kcm1fZHBfaGVscGVyLmgKaW5kZXggMTFm OGM4NC4uNDQ0ZDUxYiAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2RwX2hlbHBlci5oCisr KyBiL2luY2x1ZGUvZHJtL2RybV9kcF9oZWxwZXIuaApAQCAtNDIsNiArNDIsOCBAQAogICogMS4y IGZvcm1hbGx5IGluY2x1ZGVzIGJvdGggZURQIGFuZCBEUEkgZGVmaW5pdGlvbnMuCiAgKi8KIAor I2RlZmluZSBEUF9BVVhfTUFYX1BBWUxPQURfQllURVMJMTYKKwogI2RlZmluZSBEUF9BVVhfSTJD X1dSSVRFCQkweDAKICNkZWZpbmUgRFBfQVVYX0kyQ19SRUFECQkJMHgxCiAjZGVmaW5lIERQX0FV WF9JMkNfU1RBVFVTCQkweDIKQEAgLTUxOSw2ICs1MjEsOSBAQCBzdHJ1Y3QgZHJtX2RwX2F1eF9t c2cgewogICogdHJhbnNhY3Rpb25zLiBUaGUgZHJtX2RwX2F1eF9yZWdpc3Rlcl9pMmNfYnVzKCkg ZnVuY3Rpb24gcmVnaXN0ZXJzIGFuCiAgKiBJMkMgYWRhcHRlciB0aGF0IGNhbiBiZSBwYXNzZWQg dG8gZHJtX3Byb2JlX2RkYygpLiBVcG9uIHJlbW92YWwsIGRyaXZlcnMKICAqIHNob3VsZCBjYWxs IGRybV9kcF9hdXhfdW5yZWdpc3Rlcl9pMmNfYnVzKCkgdG8gcmVtb3ZlIHRoZSBJMkMgYWRhcHRl ci4KKyAqIFRoZSBJMkMgYWRhcHRlciB1c2VzIGxvbmcgdHJhbnNmZXJzIGJ5IGRlZmF1bHQ7IGlm IGEgcGFydGlhbCByZXNwb25zZSBpcworICogcmVjZWl2ZWQsIHRoZSBhZGFwdGVyIHdpbGwgZHJv cCBkb3duIHRvIHRoZSBzaXplIGdpdmVuIGJ5IHRoZSBwYXJ0aWFsCisgKiByZXNwb25zZSBmb3Ig dGhpcyB0cmFuc2FjdGlvbiBvbmx5LgogICoKICAqIE5vdGUgdGhhdCB0aGUgYXV4IGhlbHBlciBj b2RlIGFzc3VtZXMgdGhhdCB0aGUgLnRyYW5zZmVyKCkgZnVuY3Rpb24KICAqIG9ubHkgbW9kaWZp ZXMgdGhlIHJlcGx5IGZpZWxkIG9mIHRoZSBkcm1fZHBfYXV4X21zZyBzdHJ1Y3R1cmUuICBUaGUK LS0gCjIuMS4wCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcK aHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=