From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Petr=20=C5=A0tetiar?= Subject: [PATCH net-next v2 1/4] net: ethernet: support of_get_mac_address new ERR_PTR error Date: Mon, 6 May 2019 23:24:44 +0200 Message-ID: <1557177887-30446-2-git-send-email-ynezz@true.cz> References: <1557177887-30446-1-git-send-email-ynezz@true.cz> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1557177887-30446-1-git-send-email-ynezz@true.cz> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: driverdev-devel-bounces@linuxdriverproject.org Sender: "devel" To: netdev@vger.kernel.org, "David S. Miller" , Andreas Larsson , Maxime Ripard , Chen-Yu Tsai , Thor Thayer , Florian Fainelli , Doug Berger , Sunil Goutham , Robert Richter , Fugang Duan , Madalin Bucur , Pantelis Antoniou , Claudiu Manoil , Li Yang , Yisen Zhuang , Salil Mehta , Hauke Mehrtens , Sebastian Hesselbarth , Thomas Petazzoni , Mirko Lindner , Stephen Hemminger , Felix Fietkau Cc: devel@driverdev.osuosl.org, Andrew Lunn , Greg Kroah-Hartman , linuxppc-dev@lists.ozlabs.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, bcm-kernel-feedback-list@broadcom.com, nios2-dev@lists.rocketboards.org, =?UTF-8?q?Petr=20=C5=A0tetiar?= , linux-omap@vger.kernel.org, Frank Rowand , linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, Heiner Kallweit List-Id: linux-mediatek@lists.infradead.org VGhlcmUgd2FzIE5WTUVNIHN1cHBvcnQgYWRkZWQgdG8gb2ZfZ2V0X21hY19hZGRyZXNzLCBzbyBp dCBjb3VsZCBub3cKcmV0dXJuIEVSUl9QVFIgZW5jb2RlZCBlcnJvciB2YWx1ZXMsIHNvIHdlIG5l ZWQgdG8gYWRqdXN0IGFsbCBjdXJyZW50CnVzZXJzIG9mIG9mX2dldF9tYWNfYWRkcmVzcyB0byB0 aGlzIG5ldyBmYWN0LgoKV2hpbGUgYXQgaXQsIHJlbW92ZSBzdXBlcmZsdW91cyBpc192YWxpZF9l dGhlcl9hZGRyIGFzIHRoZSBNQUMgYWRkcmVzcwpyZXR1cm5lZCBmcm9tIG9mX2dldF9tYWNfYWRk cmVzcyBpcyBhbHdheXMgdmFsaWQgYW5kIGNoZWNrZWQgYnkKaXNfdmFsaWRfZXRoZXJfYWRkciBh bnl3YXkuCgpGaXhlczogZDAxZjQ0OWMwMDhhICgib2ZfbmV0OiBhZGQgTlZNRU0gc3VwcG9ydCB0 byBvZl9nZXRfbWFjX2FkZHJlc3MiKQpTaWduZWQtb2ZmLWJ5OiBQZXRyIMWgdGV0aWFyIDx5bmV6 ekB0cnVlLmN6PgotLS0KCiBUaGlzIGlzIGRlZmFjdG8gdjUgb2YgdGhlIHByZXZpb3VzIDA1LzEw IHBhdGNoIGluIHRoZSBzZXJpZXMsIGJ1dCBzaW5jZSB0aGUKIHY0IG9mIHRoaXMgMDUvMTAgcGF0 Y2ggd2Fzbid0IHBpY2tlZCB1cCBieSB0aGUgcGF0Y2h3b3JrIGZvciBzb21lIHVua25vd24KIHJl YXNvbiwgdGhpcyBwYXRjaCB3YXNuJ3QgYXBwbGllZCB3aXRoIHRoZSBvdGhlciA5IHBhdGNoZXMg aW4gdGhlIHNlcmllcywgc28KIEknbSByZXNlbmRpbmcgaXQgYXMgYSBzZXBhcmF0ZSBwYXRjaCBv ZiB0aGlzIGZpeHVwIHNlcmllcy4KCiBDaGFuZ2VzIHNpbmNlIHYxOgoKICAqIGFkZGVkIEZpeGVz OiB0YWcKCiBQcmV2aW91cyBjaGFuZ2Vsb2cgKFBhdGNoIDA1LzEwKToKCiAgQ2hhbmdlcyBzaW5j ZSB2MzoKCiAgICogSVNfRVJSX09SX05VTEwgLT4gSVNfRVJSCgogIENoYW5nZXMgc2luY2UgdjQ6 CgogICAqIEkndmUganVzdCBibGluZGx5IHJlcGxhY2VkIElTX0VSUl9PUl9OVUxMIHdpdGggSVNf RVJSLCBidXQgSSd2ZSBqdXN0CiAgICAgcmVhbGl6ZWQsIHRoYXQgaW4gc29tZSBjYXNlcyB3ZSBz dGlsbCBuZWVkIHRvIGNoZWNrIGZvciBOVUxMLCBzbyBJJ3ZlCiAgICAgY29ycmVjdGVkIGl0IGlu IGZvbGxvd2luZyBkcml2ZXJzL2ZpbGVzOgoKICAgICAgLSBicm9hZGNvbS9iZ21hYy1iY21hLmMK ICAgICAgLSBtYXJ2ZWxsL3B4YTE2OF9ldGguYwogICAgICAtIHNhbXN1bmcvc3hnYmUvc3hnYmVf cGxhdGZvcm0uYwogICAgICAtIHN0bWljcm8vc3RtbWFjL3N0bW1hY19tYWluLmMKICAgICAgLSB3 aXpuZXQvdzUxMDAuYwogICAgICAtIGV0aGVybmV0L2V0aC5jCgogZHJpdmVycy9uZXQvZXRoZXJu ZXQvYWVyb2ZsZXgvZ3JldGguYyAgICAgICAgICAgICAgICAgfCAyICstCiBkcml2ZXJzL25ldC9l dGhlcm5ldC9hbGx3aW5uZXIvc3VuNGktZW1hYy5jICAgICAgICAgICB8IDIgKy0KIGRyaXZlcnMv bmV0L2V0aGVybmV0L2FsdGVyYS9hbHRlcmFfdHNlX21haW4uYyAgICAgICAgIHwgMiArLQogZHJp dmVycy9uZXQvZXRoZXJuZXQvYXJjL2VtYWNfbWFpbi5jICAgICAgICAgICAgICAgICAgfCAyICst CiBkcml2ZXJzL25ldC9ldGhlcm5ldC9hdXJvcmEvbmI4ODAwLmMgICAgICAgICAgICAgICAgICB8 IDIgKy0KIGRyaXZlcnMvbmV0L2V0aGVybmV0L2Jyb2FkY29tL2JjbXN5c3BvcnQuYyAgICAgICAg ICAgIHwgMiArLQogZHJpdmVycy9uZXQvZXRoZXJuZXQvYnJvYWRjb20vYmdtYWMtYmNtYS5jICAg ICAgICAgICAgfCAyICstCiBkcml2ZXJzL25ldC9ldGhlcm5ldC9icm9hZGNvbS9iZ21hYy1wbGF0 Zm9ybS5jICAgICAgICB8IDIgKy0KIGRyaXZlcnMvbmV0L2V0aGVybmV0L2Jyb2FkY29tL2dlbmV0 L2JjbWdlbmV0LmMgICAgICAgIHwgMiArLQogZHJpdmVycy9uZXQvZXRoZXJuZXQvY2F2aXVtL29j dGVvbi9vY3Rlb25fbWdtdC5jICAgICAgfCAyICstCiBkcml2ZXJzL25ldC9ldGhlcm5ldC9jYXZp dW0vdGh1bmRlci90aHVuZGVyX2JneC5jICAgICB8IDIgKy0KIGRyaXZlcnMvbmV0L2V0aGVybmV0 L2Rhdmljb20vZG05MDAwLmMgICAgICAgICAgICAgICAgIHwgMiArLQogZHJpdmVycy9uZXQvZXRo ZXJuZXQvZXRob2MuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAyICstCiBkcml2ZXJzL25l dC9ldGhlcm5ldC9lemNoaXAvbnBzX2VuZXQuYyAgICAgICAgICAgICAgICB8IDIgKy0KIGRyaXZl cnMvbmV0L2V0aGVybmV0L2ZyZWVzY2FsZS9mZWNfbWFpbi5jICAgICAgICAgICAgIHwgMiArLQog ZHJpdmVycy9uZXQvZXRoZXJuZXQvZnJlZXNjYWxlL2ZlY19tcGM1Mnh4LmMgICAgICAgICAgfCAy ICstCiBkcml2ZXJzL25ldC9ldGhlcm5ldC9mcmVlc2NhbGUvZm1hbi9tYWMuYyAgICAgICAgICAg ICB8IDIgKy0KIGRyaXZlcnMvbmV0L2V0aGVybmV0L2ZyZWVzY2FsZS9mc19lbmV0L2ZzX2VuZXQt bWFpbi5jIHwgMiArLQogZHJpdmVycy9uZXQvZXRoZXJuZXQvZnJlZXNjYWxlL2dpYW5mYXIuYyAg ICAgICAgICAgICAgfCAyICstCiBkcml2ZXJzL25ldC9ldGhlcm5ldC9mcmVlc2NhbGUvdWNjX2dl dGguYyAgICAgICAgICAgICB8IDIgKy0KIGRyaXZlcnMvbmV0L2V0aGVybmV0L2hpc2lsaWNvbi9o aXNpX2ZlbWFjLmMgICAgICAgICAgIHwgMiArLQogZHJpdmVycy9uZXQvZXRoZXJuZXQvaGlzaWxp Y29uL2hpeDVoZDJfZ21hYy5jICAgICAgICAgfCAyICstCiBkcml2ZXJzL25ldC9ldGhlcm5ldC9s YW50aXFfeHJ4MjAwLmMgICAgICAgICAgICAgICAgICB8IDIgKy0KIGRyaXZlcnMvbmV0L2V0aGVy bmV0L21hcnZlbGwvbXY2NDN4eF9ldGguYyAgICAgICAgICAgIHwgMiArLQogZHJpdmVycy9uZXQv ZXRoZXJuZXQvbWFydmVsbC9tdm5ldGEuYyAgICAgICAgICAgICAgICAgfCAyICstCiBkcml2ZXJz L25ldC9ldGhlcm5ldC9tYXJ2ZWxsL3B4YTE2OF9ldGguYyAgICAgICAgICAgICB8IDIgKy0KIGRy aXZlcnMvbmV0L2V0aGVybmV0L21hcnZlbGwvc2t5Mi5jICAgICAgICAgICAgICAgICAgIHwgMiAr LQogZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVkaWF0ZWsvbXRrX2V0aF9zb2MuYyAgICAgICAgICAg fCAyICstCiBkcml2ZXJzL25ldC9ldGhlcm5ldC9taWNyZWwva3M4ODUxLmMgICAgICAgICAgICAg ICAgICB8IDIgKy0KIGRyaXZlcnMvbmV0L2V0aGVybmV0L21pY3JlbC9rczg4NTFfbWxsLmMgICAg ICAgICAgICAgIHwgMiArLQogZHJpdmVycy9uZXQvZXRoZXJuZXQvbnhwL2xwY19ldGguYyAgICAg ICAgICAgICAgICAgICAgfCAyICstCiBkcml2ZXJzL25ldC9ldGhlcm5ldC9xdWFsY29tbS9xY2Ff c3BpLmMgICAgICAgICAgICAgICB8IDIgKy0KIGRyaXZlcnMvbmV0L2V0aGVybmV0L3F1YWxjb21t L3FjYV91YXJ0LmMgICAgICAgICAgICAgIHwgMiArLQogZHJpdmVycy9uZXQvZXRoZXJuZXQvcmVu ZXNhcy9yYXZiX21haW4uYyAgICAgICAgICAgICAgfCAyICstCiBkcml2ZXJzL25ldC9ldGhlcm5l dC9yZW5lc2FzL3NoX2V0aC5jICAgICAgICAgICAgICAgICB8IDIgKy0KIGRyaXZlcnMvbmV0L2V0 aGVybmV0L3NhbXN1bmcvc3hnYmUvc3hnYmVfcGxhdGZvcm0uYyAgIHwgMiArLQogZHJpdmVycy9u ZXQvZXRoZXJuZXQvc29jaW9uZXh0L3NuaV9hdmUuYyAgICAgICAgICAgICAgfCAyICstCiBkcml2 ZXJzL25ldC9ldGhlcm5ldC9zdG1pY3JvL3N0bW1hYy9zdG1tYWNfbWFpbi5jICAgICB8IDIgKy0K IGRyaXZlcnMvbmV0L2V0aGVybmV0L3RpL2Nwc3cuYyAgICAgICAgICAgICAgICAgICAgICAgIHwg MiArLQogZHJpdmVycy9uZXQvZXRoZXJuZXQvdGkvbmV0Y3BfY29yZS5jICAgICAgICAgICAgICAg ICAgfCAyICstCiBkcml2ZXJzL25ldC9ldGhlcm5ldC93aXpuZXQvdzUxMDAuYyAgICAgICAgICAg ICAgICAgICB8IDIgKy0KIGRyaXZlcnMvbmV0L2V0aGVybmV0L3hpbGlueC9sbF90ZW1hY19tYWlu LmMgICAgICAgICAgIHwgMiArLQogZHJpdmVycy9uZXQvZXRoZXJuZXQveGlsaW54L3hpbGlueF9h eGllbmV0X21haW4uYyAgICAgfCAyICstCiBkcml2ZXJzL25ldC9ldGhlcm5ldC94aWxpbngveGls aW54X2VtYWNsaXRlLmMgICAgICAgICB8IDIgKy0KIG5ldC9ldGhlcm5ldC9ldGguYyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMiArLQogNDUgZmlsZXMgY2hhbmdlZCwgNDUg aW5zZXJ0aW9ucygrKSwgNDUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQv ZXRoZXJuZXQvYWVyb2ZsZXgvZ3JldGguYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L2Flcm9mbGV4 L2dyZXRoLmMKaW5kZXggNDdlNTk4NC4uN2M1Y2YwMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9uZXQv ZXRoZXJuZXQvYWVyb2ZsZXgvZ3JldGguYworKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9hZXJv ZmxleC9ncmV0aC5jCkBAIC0xNDU5LDcgKzE0NTksNyBAQCBzdGF0aWMgaW50IGdyZXRoX29mX3By b2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKm9mZGV2KQogCQljb25zdCB1OCAqYWRkcjsKIAog CQlhZGRyID0gb2ZfZ2V0X21hY19hZGRyZXNzKG9mZGV2LT5kZXYub2Zfbm9kZSk7Ci0JCWlmIChh ZGRyKSB7CisJCWlmICghSVNfRVJSKGFkZHIpKSB7CiAJCQlmb3IgKGkgPSAwOyBpIDwgNjsgaSsr KQogCQkJCW1hY2FkZHJbaV0gPSAodW5zaWduZWQgaW50KSBhZGRyW2ldOwogCQl9IGVsc2Ugewpk aWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvYWxsd2lubmVyL3N1bjRpLWVtYWMuYyBi L2RyaXZlcnMvbmV0L2V0aGVybmV0L2FsbHdpbm5lci9zdW40aS1lbWFjLmMKaW5kZXggZTFhY2Fm YS4uMzdlYmQ4OSAxMDA2NDQKLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvYWxsd2lubmVyL3N1 bjRpLWVtYWMuYworKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9hbGx3aW5uZXIvc3VuNGktZW1h Yy5jCkBAIC04NzAsNyArODcwLDcgQEAgc3RhdGljIGludCBlbWFjX3Byb2JlKHN0cnVjdCBwbGF0 Zm9ybV9kZXZpY2UgKnBkZXYpCiAKIAkvKiBSZWFkIE1BQy1hZGRyZXNzIGZyb20gRFQgKi8KIAlt YWNfYWRkciA9IG9mX2dldF9tYWNfYWRkcmVzcyhucCk7Ci0JaWYgKG1hY19hZGRyKQorCWlmICgh SVNfRVJSKG1hY19hZGRyKSkKIAkJbWVtY3B5KG5kZXYtPmRldl9hZGRyLCBtYWNfYWRkciwgRVRI X0FMRU4pOwogCiAJLyogQ2hlY2sgaWYgdGhlIE1BQyBhZGRyZXNzIGlzIHZhbGlkLCBpZiBub3Qg Z2V0IGEgcmFuZG9tIG9uZSAqLwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvYWx0 ZXJhL2FsdGVyYV90c2VfbWFpbi5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvYWx0ZXJhL2FsdGVy YV90c2VfbWFpbi5jCmluZGV4IGFhMWQxZjUuLjg3N2U2N2YgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv bmV0L2V0aGVybmV0L2FsdGVyYS9hbHRlcmFfdHNlX21haW4uYworKysgYi9kcml2ZXJzL25ldC9l dGhlcm5ldC9hbHRlcmEvYWx0ZXJhX3RzZV9tYWluLmMKQEAgLTE1MzcsNyArMTUzNyw3IEBAIHN0 YXRpYyBpbnQgYWx0ZXJhX3RzZV9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQog CiAJLyogZ2V0IGRlZmF1bHQgTUFDIGFkZHJlc3MgZnJvbSBkZXZpY2UgdHJlZSAqLwogCW1hY2Fk ZHIgPSBvZl9nZXRfbWFjX2FkZHJlc3MocGRldi0+ZGV2Lm9mX25vZGUpOwotCWlmIChtYWNhZGRy KQorCWlmICghSVNfRVJSKG1hY2FkZHIpKQogCQlldGhlcl9hZGRyX2NvcHkobmRldi0+ZGV2X2Fk ZHIsIG1hY2FkZHIpOwogCWVsc2UKIAkJZXRoX2h3X2FkZHJfcmFuZG9tKG5kZXYpOwpkaWZmIC0t Z2l0IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvYXJjL2VtYWNfbWFpbi5jIGIvZHJpdmVycy9uZXQv ZXRoZXJuZXQvYXJjL2VtYWNfbWFpbi5jCmluZGV4IGZmM2Q2ODUuLjdmODlhZDUgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L2FyYy9lbWFjX21haW4uYworKysgYi9kcml2ZXJzL25l dC9ldGhlcm5ldC9hcmMvZW1hY19tYWluLmMKQEAgLTk2MCw3ICs5NjAsNyBAQCBpbnQgYXJjX2Vt YWNfcHJvYmUoc3RydWN0IG5ldF9kZXZpY2UgKm5kZXYsIGludCBpbnRlcmZhY2UpCiAJLyogR2V0 IE1BQyBhZGRyZXNzIGZyb20gZGV2aWNlIHRyZWUgKi8KIAltYWNfYWRkciA9IG9mX2dldF9tYWNf YWRkcmVzcyhkZXYtPm9mX25vZGUpOwogCi0JaWYgKG1hY19hZGRyKQorCWlmICghSVNfRVJSKG1h Y19hZGRyKSkKIAkJbWVtY3B5KG5kZXYtPmRldl9hZGRyLCBtYWNfYWRkciwgRVRIX0FMRU4pOwog CWVsc2UKIAkJZXRoX2h3X2FkZHJfcmFuZG9tKG5kZXYpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9u ZXQvZXRoZXJuZXQvYXVyb3JhL25iODgwMC5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvYXVyb3Jh L25iODgwMC5jCmluZGV4IGY2MmRlZWIuLjNjNDk2N2UgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0 L2V0aGVybmV0L2F1cm9yYS9uYjg4MDAuYworKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9hdXJv cmEvbmI4ODAwLmMKQEAgLTE0NjMsNyArMTQ2Myw3IEBAIHN0YXRpYyBpbnQgbmI4ODAwX3Byb2Jl KHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCiAJZGV2LT5pcnEgPSBpcnE7CiAKIAltYWMg PSBvZl9nZXRfbWFjX2FkZHJlc3MocGRldi0+ZGV2Lm9mX25vZGUpOwotCWlmIChtYWMpCisJaWYg KCFJU19FUlIobWFjKSkKIAkJZXRoZXJfYWRkcl9jb3B5KGRldi0+ZGV2X2FkZHIsIG1hYyk7CiAK IAlpZiAoIWlzX3ZhbGlkX2V0aGVyX2FkZHIoZGV2LT5kZXZfYWRkcikpCmRpZmYgLS1naXQgYS9k cml2ZXJzL25ldC9ldGhlcm5ldC9icm9hZGNvbS9iY21zeXNwb3J0LmMgYi9kcml2ZXJzL25ldC9l dGhlcm5ldC9icm9hZGNvbS9iY21zeXNwb3J0LmMKaW5kZXggNGU4N2EzMC4uYzYyMzg5NiAxMDA2 NDQKLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvYnJvYWRjb20vYmNtc3lzcG9ydC5jCisrKyBi L2RyaXZlcnMvbmV0L2V0aGVybmV0L2Jyb2FkY29tL2JjbXN5c3BvcnQuYwpAQCAtMjUwNSw3ICsy NTA1LDcgQEAgc3RhdGljIGludCBiY21fc3lzcG9ydF9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2 aWNlICpwZGV2KQogCiAJLyogSW5pdGlhbGl6ZSBuZXRkZXZpY2UgbWVtYmVycyAqLwogCW1hY2Fk ZHIgPSBvZl9nZXRfbWFjX2FkZHJlc3MoZG4pOwotCWlmICghbWFjYWRkciB8fCAhaXNfdmFsaWRf ZXRoZXJfYWRkcihtYWNhZGRyKSkgeworCWlmIChJU19FUlIobWFjYWRkcikpIHsKIAkJZGV2X3dh cm4oJnBkZXYtPmRldiwgInVzaW5nIHJhbmRvbSBFdGhlcm5ldCBNQUNcbiIpOwogCQlldGhfaHdf YWRkcl9yYW5kb20oZGV2KTsKIAl9IGVsc2UgewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRo ZXJuZXQvYnJvYWRjb20vYmdtYWMtYmNtYS5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvYnJvYWRj b20vYmdtYWMtYmNtYS5jCmluZGV4IDZmZTA3NGMuLjM0ZDE4MzAgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvbmV0L2V0aGVybmV0L2Jyb2FkY29tL2JnbWFjLWJjbWEuYworKysgYi9kcml2ZXJzL25ldC9l dGhlcm5ldC9icm9hZGNvbS9iZ21hYy1iY21hLmMKQEAgLTEzMiw3ICsxMzIsNyBAQCBzdGF0aWMg aW50IGJnbWFjX3Byb2JlKHN0cnVjdCBiY21hX2RldmljZSAqY29yZSkKIAkJbWFjID0gb2ZfZ2V0 X21hY19hZGRyZXNzKGJnbWFjLT5kZXYtPm9mX25vZGUpOwogCiAJLyogSWYgbm8gTUFDIGFkZHJl c3MgYXNzaWduZWQgdmlhIGRldmljZSB0cmVlLCBjaGVjayBTUFJPTSAqLwotCWlmICghbWFjKSB7 CisJaWYgKElTX0VSUl9PUl9OVUxMKG1hYykpIHsKIAkJc3dpdGNoIChjb3JlLT5jb3JlX3VuaXQp IHsKIAkJY2FzZSAwOgogCQkJbWFjID0gc3Byb20tPmV0MG1hYzsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvbmV0L2V0aGVybmV0L2Jyb2FkY29tL2JnbWFjLXBsYXRmb3JtLmMgYi9kcml2ZXJzL25ldC9l dGhlcm5ldC9icm9hZGNvbS9iZ21hYy1wbGF0Zm9ybS5jCmluZGV4IDg5NGVkYTUuLjZkYzBkZDkg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L2Jyb2FkY29tL2JnbWFjLXBsYXRmb3Jt LmMKKysrIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvYnJvYWRjb20vYmdtYWMtcGxhdGZvcm0uYwpA QCAtMTkzLDcgKzE5Myw3IEBAIHN0YXRpYyBpbnQgYmdtYWNfcHJvYmUoc3RydWN0IHBsYXRmb3Jt X2RldmljZSAqcGRldikKIAliZ21hYy0+ZG1hX2RldiA9ICZwZGV2LT5kZXY7CiAKIAltYWNfYWRk ciA9IG9mX2dldF9tYWNfYWRkcmVzcyhucCk7Ci0JaWYgKG1hY19hZGRyKQorCWlmICghSVNfRVJS KG1hY19hZGRyKSkKIAkJZXRoZXJfYWRkcl9jb3B5KGJnbWFjLT5uZXRfZGV2LT5kZXZfYWRkciwg bWFjX2FkZHIpOwogCWVsc2UKIAkJZGV2X3dhcm4oJnBkZXYtPmRldiwgIk1BQyBhZGRyZXNzIG5v dCBwcmVzZW50IGluIGRldmljZSB0cmVlXG4iKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0 aGVybmV0L2Jyb2FkY29tL2dlbmV0L2JjbWdlbmV0LmMgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9i cm9hZGNvbS9nZW5ldC9iY21nZW5ldC5jCmluZGV4IDRmZDk3MzUuLjM3NGI5ZmYgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L2Jyb2FkY29tL2dlbmV0L2JjbWdlbmV0LmMKKysrIGIv ZHJpdmVycy9uZXQvZXRoZXJuZXQvYnJvYWRjb20vZ2VuZXQvYmNtZ2VuZXQuYwpAQCAtMzQ3Niw3 ICszNDc2LDcgQEAgc3RhdGljIGludCBiY21nZW5ldF9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2 aWNlICpwZGV2KQogCiAJaWYgKGRuKSB7CiAJCW1hY2FkZHIgPSBvZl9nZXRfbWFjX2FkZHJlc3Mo ZG4pOwotCQlpZiAoIW1hY2FkZHIpIHsKKwkJaWYgKElTX0VSUihtYWNhZGRyKSkgewogCQkJZGV2 X2VycigmcGRldi0+ZGV2LCAiY2FuJ3QgZmluZCBNQUMgYWRkcmVzc1xuIik7CiAJCQllcnIgPSAt RUlOVkFMOwogCQkJZ290byBlcnI7CmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9j YXZpdW0vb2N0ZW9uL29jdGVvbl9tZ210LmMgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9jYXZpdW0v b2N0ZW9uL29jdGVvbl9tZ210LmMKaW5kZXggNTM1OWMxMC4uMTViMTEzMCAxMDA2NDQKLS0tIGEv ZHJpdmVycy9uZXQvZXRoZXJuZXQvY2F2aXVtL29jdGVvbi9vY3Rlb25fbWdtdC5jCisrKyBiL2Ry aXZlcnMvbmV0L2V0aGVybmV0L2Nhdml1bS9vY3Rlb24vb2N0ZW9uX21nbXQuYwpAQCAtMTUwMyw3 ICsxNTAzLDcgQEAgc3RhdGljIGludCBvY3Rlb25fbWdtdF9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1f ZGV2aWNlICpwZGV2KQogCiAJbWFjID0gb2ZfZ2V0X21hY19hZGRyZXNzKHBkZXYtPmRldi5vZl9u b2RlKTsKIAotCWlmIChtYWMpCisJaWYgKCFJU19FUlIobWFjKSkKIAkJbWVtY3B5KG5ldGRldi0+ ZGV2X2FkZHIsIG1hYywgRVRIX0FMRU4pOwogCWVsc2UKIAkJZXRoX2h3X2FkZHJfcmFuZG9tKG5l dGRldik7CmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9jYXZpdW0vdGh1bmRlci90 aHVuZGVyX2JneC5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvY2F2aXVtL3RodW5kZXIvdGh1bmRl cl9iZ3guYwppbmRleCA4MWMyODFhLi5hNjViZTg1IDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC9l dGhlcm5ldC9jYXZpdW0vdGh1bmRlci90aHVuZGVyX2JneC5jCisrKyBiL2RyaXZlcnMvbmV0L2V0 aGVybmV0L2Nhdml1bS90aHVuZGVyL3RodW5kZXJfYmd4LmMKQEAgLTE0ODQsNyArMTQ4NCw3IEBA IHN0YXRpYyBpbnQgYmd4X2luaXRfb2ZfcGh5KHN0cnVjdCBiZ3ggKmJneCkKIAkJCWJyZWFrOwog CiAJCW1hYyA9IG9mX2dldF9tYWNfYWRkcmVzcyhub2RlKTsKLQkJaWYgKG1hYykKKwkJaWYgKCFJ U19FUlIobWFjKSkKIAkJCWV0aGVyX2FkZHJfY29weShiZ3gtPmxtYWNbbG1hY10ubWFjLCBtYWMp OwogCiAJCVNFVF9ORVRERVZfREVWKCZiZ3gtPmxtYWNbbG1hY10ubmV0ZGV2LCAmYmd4LT5wZGV2 LT5kZXYpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvZGF2aWNvbS9kbTkwMDAu YyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L2Rhdmljb20vZG05MDAwLmMKaW5kZXggYzI1ODZmNC4u OTUzZWU1NiAxMDA2NDQKLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvZGF2aWNvbS9kbTkwMDAu YworKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9kYXZpY29tL2RtOTAwMC5jCkBAIC0xNDEyLDcg KzE0MTIsNyBAQCBzdGF0aWMgc3RydWN0IGRtOTAwMF9wbGF0X2RhdGEgKmRtOTAwMF9wYXJzZV9k dChzdHJ1Y3QgZGV2aWNlICpkZXYpCiAJCXBkYXRhLT5mbGFncyB8PSBETTkwMDBfUExBVEZfTk9f RUVQUk9NOwogCiAJbWFjX2FkZHIgPSBvZl9nZXRfbWFjX2FkZHJlc3MobnApOwotCWlmIChtYWNf YWRkcikKKwlpZiAoIUlTX0VSUihtYWNfYWRkcikpCiAJCW1lbWNweShwZGF0YS0+ZGV2X2FkZHIs IG1hY19hZGRyLCBzaXplb2YocGRhdGEtPmRldl9hZGRyKSk7CiAKIAlyZXR1cm4gcGRhdGE7CmRp ZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9ldGhvYy5jIGIvZHJpdmVycy9uZXQvZXRo ZXJuZXQvZXRob2MuYwppbmRleCAwZjNlN2YyLi43MWRhMDQ5IDEwMDY0NAotLS0gYS9kcml2ZXJz L25ldC9ldGhlcm5ldC9ldGhvYy5jCisrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L2V0aG9jLmMK QEAgLTExNTMsNyArMTE1Myw3IEBAIHN0YXRpYyBpbnQgZXRob2NfcHJvYmUoc3RydWN0IHBsYXRm b3JtX2RldmljZSAqcGRldikKIAkJY29uc3Qgdm9pZCAqbWFjOwogCiAJCW1hYyA9IG9mX2dldF9t YWNfYWRkcmVzcyhwZGV2LT5kZXYub2Zfbm9kZSk7Ci0JCWlmIChtYWMpCisJCWlmICghSVNfRVJS KG1hYykpCiAJCQlldGhlcl9hZGRyX2NvcHkobmV0ZGV2LT5kZXZfYWRkciwgbWFjKTsKIAkJcHJp di0+cGh5X2lkID0gLTE7CiAJfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvZXpj aGlwL25wc19lbmV0LmMgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9lemNoaXAvbnBzX2VuZXQuYwpp bmRleCA2NTlmMWFkLi5iNGNlMjYxIDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9l emNoaXAvbnBzX2VuZXQuYworKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9lemNoaXAvbnBzX2Vu ZXQuYwpAQCAtNjE2LDcgKzYxNiw3IEBAIHN0YXRpYyBzMzIgbnBzX2VuZXRfcHJvYmUoc3RydWN0 IHBsYXRmb3JtX2RldmljZSAqcGRldikKIAogCS8qIHNldCBrZXJuZWwgTUFDIGFkZHJlc3MgdG8g ZGV2ICovCiAJbWFjX2FkZHIgPSBvZl9nZXRfbWFjX2FkZHJlc3MoZGV2LT5vZl9ub2RlKTsKLQlp ZiAobWFjX2FkZHIpCisJaWYgKCFJU19FUlIobWFjX2FkZHIpKQogCQlldGhlcl9hZGRyX2NvcHko bmRldi0+ZGV2X2FkZHIsIG1hY19hZGRyKTsKIAllbHNlCiAJCWV0aF9od19hZGRyX3JhbmRvbShu ZGV2KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L2ZyZWVzY2FsZS9mZWNfbWFp bi5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvZnJlZXNjYWxlL2ZlY19tYWluLmMKaW5kZXggYTk2 YWQyMC4uYWE3ZDRlMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvZnJlZXNjYWxl L2ZlY19tYWluLmMKKysrIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvZnJlZXNjYWxlL2ZlY19tYWlu LmMKQEAgLTE2NTUsNyArMTY1NSw3IEBAIHN0YXRpYyB2b2lkIGZlY19nZXRfbWFjKHN0cnVjdCBu ZXRfZGV2aWNlICpuZGV2KQogCQlzdHJ1Y3QgZGV2aWNlX25vZGUgKm5wID0gZmVwLT5wZGV2LT5k ZXYub2Zfbm9kZTsKIAkJaWYgKG5wKSB7CiAJCQljb25zdCBjaGFyICptYWMgPSBvZl9nZXRfbWFj X2FkZHJlc3MobnApOwotCQkJaWYgKG1hYykKKwkJCWlmICghSVNfRVJSKG1hYykpCiAJCQkJaWFw ID0gKHVuc2lnbmVkIGNoYXIgKikgbWFjOwogCQl9CiAJfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9u ZXQvZXRoZXJuZXQvZnJlZXNjYWxlL2ZlY19tcGM1Mnh4LmMgYi9kcml2ZXJzL25ldC9ldGhlcm5l dC9mcmVlc2NhbGUvZmVjX21wYzUyeHguYwppbmRleCBjMTk2OGIzLi43YjdlNTI2IDEwMDY0NAot LS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9mcmVlc2NhbGUvZmVjX21wYzUyeHguYworKysgYi9k cml2ZXJzL25ldC9ldGhlcm5ldC9mcmVlc2NhbGUvZmVjX21wYzUyeHguYwpAQCAtOTAyLDcgKzkw Miw3IEBAIHN0YXRpYyBpbnQgbXBjNTJ4eF9mZWNfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2Rldmlj ZSAqb3ApCiAJICogRmlyc3QgdHJ5IHRvIHJlYWQgTUFDIGFkZHJlc3MgZnJvbSBEVAogCSAqLwog CW1hY19hZGRyID0gb2ZfZ2V0X21hY19hZGRyZXNzKG5wKTsKLQlpZiAobWFjX2FkZHIpIHsKKwlp ZiAoIUlTX0VSUihtYWNfYWRkcikpIHsKIAkJbWVtY3B5KG5kZXYtPmRldl9hZGRyLCBtYWNfYWRk ciwgRVRIX0FMRU4pOwogCX0gZWxzZSB7CiAJCXN0cnVjdCBtcGM1Mnh4X2ZlYyBfX2lvbWVtICpm ZWMgPSBwcml2LT5mZWM7CmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9mcmVlc2Nh bGUvZm1hbi9tYWMuYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L2ZyZWVzY2FsZS9mbWFuL21hYy5j CmluZGV4IDNjMjE0ODYuLjljZDJjMjggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0 L2ZyZWVzY2FsZS9mbWFuL21hYy5jCisrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L2ZyZWVzY2Fs ZS9mbWFuL21hYy5jCkBAIC03MjQsNyArNzI0LDcgQEAgc3RhdGljIGludCBtYWNfcHJvYmUoc3Ry dWN0IHBsYXRmb3JtX2RldmljZSAqX29mX2RldikKIAogCS8qIEdldCB0aGUgTUFDIGFkZHJlc3Mg Ki8KIAltYWNfYWRkciA9IG9mX2dldF9tYWNfYWRkcmVzcyhtYWNfbm9kZSk7Ci0JaWYgKCFtYWNf YWRkcikgeworCWlmIChJU19FUlIobWFjX2FkZHIpKSB7CiAJCWRldl9lcnIoZGV2LCAib2ZfZ2V0 X21hY19hZGRyZXNzKCVwT0YpIGZhaWxlZFxuIiwgbWFjX25vZGUpOwogCQllcnIgPSAtRUlOVkFM OwogCQlnb3RvIF9yZXR1cm5fb2ZfZ2V0X3BhcmVudDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0 L2V0aGVybmV0L2ZyZWVzY2FsZS9mc19lbmV0L2ZzX2VuZXQtbWFpbi5jIGIvZHJpdmVycy9uZXQv ZXRoZXJuZXQvZnJlZXNjYWxlL2ZzX2VuZXQvZnNfZW5ldC1tYWluLmMKaW5kZXggN2M1NDhlZC4u OTBlYTdhMSAxMDA2NDQKLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvZnJlZXNjYWxlL2ZzX2Vu ZXQvZnNfZW5ldC1tYWluLmMKKysrIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvZnJlZXNjYWxlL2Zz X2VuZXQvZnNfZW5ldC1tYWluLmMKQEAgLTEwMTQsNyArMTAxNCw3IEBAIHN0YXRpYyBpbnQgZnNf ZW5ldF9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpvZmRldikKIAlzcGluX2xvY2tfaW5p dCgmZmVwLT50eF9sb2NrKTsKIAogCW1hY19hZGRyID0gb2ZfZ2V0X21hY19hZGRyZXNzKG9mZGV2 LT5kZXYub2Zfbm9kZSk7Ci0JaWYgKG1hY19hZGRyKQorCWlmICghSVNfRVJSKG1hY19hZGRyKSkK IAkJbWVtY3B5KG5kZXYtPmRldl9hZGRyLCBtYWNfYWRkciwgRVRIX0FMRU4pOwogCiAJcmV0ID0g ZmVwLT5vcHMtPmFsbG9jYXRlX2JkKG5kZXYpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRo ZXJuZXQvZnJlZXNjYWxlL2dpYW5mYXIuYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L2ZyZWVzY2Fs ZS9naWFuZmFyLmMKaW5kZXggNDVmY2M5Ni4uZGYxM2M2OSAxMDA2NDQKLS0tIGEvZHJpdmVycy9u ZXQvZXRoZXJuZXQvZnJlZXNjYWxlL2dpYW5mYXIuYworKysgYi9kcml2ZXJzL25ldC9ldGhlcm5l dC9mcmVlc2NhbGUvZ2lhbmZhci5jCkBAIC04NzIsNyArODcyLDcgQEAgc3RhdGljIGludCBnZmFy X29mX2luaXQoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqb2ZkZXYsIHN0cnVjdCBuZXRfZGV2aWNl ICoqcGRldikKIAogCW1hY19hZGRyID0gb2ZfZ2V0X21hY19hZGRyZXNzKG5wKTsKIAotCWlmICht YWNfYWRkcikKKwlpZiAoIUlTX0VSUihtYWNfYWRkcikpCiAJCW1lbWNweShkZXYtPmRldl9hZGRy LCBtYWNfYWRkciwgRVRIX0FMRU4pOwogCiAJaWYgKG1vZGVsICYmICFzdHJjYXNlY21wKG1vZGVs LCAiVFNFQyIpKQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvZnJlZXNjYWxlL3Vj Y19nZXRoLmMgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9mcmVlc2NhbGUvdWNjX2dldGguYwppbmRl eCBlYjNlNjVlLi4yMTZlOTlhIDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9mcmVl c2NhbGUvdWNjX2dldGguYworKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9mcmVlc2NhbGUvdWNj X2dldGguYwpAQCAtMzkxMCw3ICszOTEwLDcgQEAgc3RhdGljIGludCB1Y2NfZ2V0aF9wcm9iZShz dHJ1Y3QgcGxhdGZvcm1fZGV2aWNlKiBvZmRldikKIAl9CiAKIAltYWNfYWRkciA9IG9mX2dldF9t YWNfYWRkcmVzcyhucCk7Ci0JaWYgKG1hY19hZGRyKQorCWlmICghSVNfRVJSKG1hY19hZGRyKSkK IAkJbWVtY3B5KGRldi0+ZGV2X2FkZHIsIG1hY19hZGRyLCBFVEhfQUxFTik7CiAKIAl1Z2V0aC0+ dWdfaW5mbyA9IHVnX2luZm87CmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9oaXNp bGljb24vaGlzaV9mZW1hYy5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvaGlzaWxpY29uL2hpc2lf ZmVtYWMuYwppbmRleCAyYzI4MDg4Li45NmMzMmFlIDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC9l dGhlcm5ldC9oaXNpbGljb24vaGlzaV9mZW1hYy5jCisrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0 L2hpc2lsaWNvbi9oaXNpX2ZlbWFjLmMKQEAgLTg3MCw3ICs4NzAsNyBAQCBzdGF0aWMgaW50IGhp c2lfZmVtYWNfZHJ2X3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCiAJCQkgICBw aHlfbW9kZXMocGh5LT5pbnRlcmZhY2UpKTsKIAogCW1hY19hZGRyID0gb2ZfZ2V0X21hY19hZGRy ZXNzKG5vZGUpOwotCWlmIChtYWNfYWRkcikKKwlpZiAoIUlTX0VSUihtYWNfYWRkcikpCiAJCWV0 aGVyX2FkZHJfY29weShuZGV2LT5kZXZfYWRkciwgbWFjX2FkZHIpOwogCWlmICghaXNfdmFsaWRf ZXRoZXJfYWRkcihuZGV2LT5kZXZfYWRkcikpIHsKIAkJZXRoX2h3X2FkZHJfcmFuZG9tKG5kZXYp OwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvaGlzaWxpY29uL2hpeDVoZDJfZ21h Yy5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvaGlzaWxpY29uL2hpeDVoZDJfZ21hYy5jCmluZGV4 IGU1ZDg1M2IuLmIxY2I1OGYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L2hpc2ls aWNvbi9oaXg1aGQyX2dtYWMuYworKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9oaXNpbGljb24v aGl4NWhkMl9nbWFjLmMKQEAgLTEyMjksNyArMTIyOSw3IEBAIHN0YXRpYyBpbnQgaGl4NWhkMl9k ZXZfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKIAl9CiAKIAltYWNfYWRkciA9 IG9mX2dldF9tYWNfYWRkcmVzcyhub2RlKTsKLQlpZiAobWFjX2FkZHIpCisJaWYgKCFJU19FUlIo bWFjX2FkZHIpKQogCQlldGhlcl9hZGRyX2NvcHkobmRldi0+ZGV2X2FkZHIsIG1hY19hZGRyKTsK IAlpZiAoIWlzX3ZhbGlkX2V0aGVyX2FkZHIobmRldi0+ZGV2X2FkZHIpKSB7CiAJCWV0aF9od19h ZGRyX3JhbmRvbShuZGV2KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L2xhbnRp cV94cngyMDAuYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L2xhbnRpcV94cngyMDAuYwppbmRleCBk MjkxMDRkLi5jZGE2NDFlIDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9sYW50aXFf eHJ4MjAwLmMKKysrIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvbGFudGlxX3hyeDIwMC5jCkBAIC00 NzgsNyArNDc4LDcgQEAgc3RhdGljIGludCB4cngyMDBfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2Rl dmljZSAqcGRldikKIAl9CiAKIAltYWMgPSBvZl9nZXRfbWFjX2FkZHJlc3MobnApOwotCWlmICht YWMgJiYgaXNfdmFsaWRfZXRoZXJfYWRkcihtYWMpKQorCWlmICghSVNfRVJSKG1hYykpCiAJCWV0 aGVyX2FkZHJfY29weShuZXRfZGV2LT5kZXZfYWRkciwgbWFjKTsKIAllbHNlCiAJCWV0aF9od19h ZGRyX3JhbmRvbShuZXRfZGV2KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L21h cnZlbGwvbXY2NDN4eF9ldGguYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L21hcnZlbGwvbXY2NDN4 eF9ldGguYwppbmRleCAyOTJhNjY4Li4wN2UyNTRmIDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC9l dGhlcm5ldC9tYXJ2ZWxsL212NjQzeHhfZXRoLmMKKysrIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQv bWFydmVsbC9tdjY0M3h4X2V0aC5jCkBAIC0yNzQ5LDcgKzI3NDksNyBAQCBzdGF0aWMgaW50IG12 NjQzeHhfZXRoX3NoYXJlZF9vZl9hZGRfcG9ydChzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2 LAogCX0KIAogCW1hY19hZGRyID0gb2ZfZ2V0X21hY19hZGRyZXNzKHBucCk7Ci0JaWYgKG1hY19h ZGRyKQorCWlmICghSVNfRVJSKG1hY19hZGRyKSkKIAkJbWVtY3B5KHBwZC5tYWNfYWRkciwgbWFj X2FkZHIsIEVUSF9BTEVOKTsKIAogCW12NjQzeHhfZXRoX3Byb3BlcnR5KHBucCwgInR4LXF1ZXVl LXNpemUiLCBwcGQudHhfcXVldWVfc2l6ZSk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhl cm5ldC9tYXJ2ZWxsL212bmV0YS5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWFydmVsbC9tdm5l dGEuYwppbmRleCBhNzE1Mjc3Li44MTg2MTM1IDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC9ldGhl cm5ldC9tYXJ2ZWxsL212bmV0YS5jCisrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L21hcnZlbGwv bXZuZXRhLmMKQEAgLTQ1NjMsNyArNDU2Myw3IEBAIHN0YXRpYyBpbnQgbXZuZXRhX3Byb2JlKHN0 cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCiAJfQogCiAJZHRfbWFjX2FkZHIgPSBvZl9nZXRf bWFjX2FkZHJlc3MoZG4pOwotCWlmIChkdF9tYWNfYWRkcikgeworCWlmICghSVNfRVJSKGR0X21h Y19hZGRyKSkgewogCQltYWNfZnJvbSA9ICJkZXZpY2UgdHJlZSI7CiAJCW1lbWNweShkZXYtPmRl dl9hZGRyLCBkdF9tYWNfYWRkciwgRVRIX0FMRU4pOwogCX0gZWxzZSB7CmRpZmYgLS1naXQgYS9k cml2ZXJzL25ldC9ldGhlcm5ldC9tYXJ2ZWxsL3B4YTE2OF9ldGguYyBiL2RyaXZlcnMvbmV0L2V0 aGVybmV0L21hcnZlbGwvcHhhMTY4X2V0aC5jCmluZGV4IDM1ZjIxNDIuLmNlMDM3ZTggMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L21hcnZlbGwvcHhhMTY4X2V0aC5jCisrKyBiL2Ry aXZlcnMvbmV0L2V0aGVybmV0L21hcnZlbGwvcHhhMTY4X2V0aC5jCkBAIC0xNDYxLDcgKzE0NjEs NyBAQCBzdGF0aWMgaW50IHB4YTE2OF9ldGhfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAq cGRldikKIAlpZiAocGRldi0+ZGV2Lm9mX25vZGUpCiAJCW1hY19hZGRyID0gb2ZfZ2V0X21hY19h ZGRyZXNzKHBkZXYtPmRldi5vZl9ub2RlKTsKIAotCWlmIChtYWNfYWRkciAmJiBpc192YWxpZF9l dGhlcl9hZGRyKG1hY19hZGRyKSkgeworCWlmICghSVNfRVJSX09SX05VTEwobWFjX2FkZHIpKSB7 CiAJCWV0aGVyX2FkZHJfY29weShkZXYtPmRldl9hZGRyLCBtYWNfYWRkcik7CiAJfSBlbHNlIHsK IAkJLyogdHJ5IHJlYWRpbmcgdGhlIG1hYyBhZGRyZXNzLCBpZiBzZXQgYnkgdGhlIGJvb3Rsb2Fk ZXIgKi8KZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L21hcnZlbGwvc2t5Mi5jIGIv ZHJpdmVycy9uZXQvZXRoZXJuZXQvbWFydmVsbC9za3kyLmMKaW5kZXggOGIzNDk1ZS4uYzQwNTBl YyAxMDA2NDQKLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWFydmVsbC9za3kyLmMKKysrIGIv ZHJpdmVycy9uZXQvZXRoZXJuZXQvbWFydmVsbC9za3kyLmMKQEAgLTQ4MDgsNyArNDgwOCw3IEBA IHN0YXRpYyBzdHJ1Y3QgbmV0X2RldmljZSAqc2t5Ml9pbml0X25ldGRldihzdHJ1Y3Qgc2t5Ml9o dyAqaHcsIHVuc2lnbmVkIHBvcnQsCiAJICogMikgZnJvbSBpbnRlcm5hbCByZWdpc3RlcnMgc2V0 IGJ5IGJvb3Rsb2FkZXIKIAkgKi8KIAlpYXAgPSBvZl9nZXRfbWFjX2FkZHJlc3MoaHctPnBkZXYt PmRldi5vZl9ub2RlKTsKLQlpZiAoaWFwKQorCWlmICghSVNfRVJSKGlhcCkpCiAJCW1lbWNweShk ZXYtPmRldl9hZGRyLCBpYXAsIEVUSF9BTEVOKTsKIAllbHNlCiAJCW1lbWNweV9mcm9taW8oZGV2 LT5kZXZfYWRkciwgaHctPnJlZ3MgKyBCMl9NQUNfMSArIHBvcnQgKiA4LApkaWZmIC0tZ2l0IGEv ZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVkaWF0ZWsvbXRrX2V0aF9zb2MuYyBiL2RyaXZlcnMvbmV0 L2V0aGVybmV0L21lZGlhdGVrL210a19ldGhfc29jLmMKaW5kZXggNTNhYmU5Mi4uZjlmYmIzZiAx MDA2NDQKLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVkaWF0ZWsvbXRrX2V0aF9zb2MuYwor KysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWRpYXRlay9tdGtfZXRoX3NvYy5jCkBAIC0yMDI4 LDcgKzIwMjgsNyBAQCBzdGF0aWMgaW50IF9faW5pdCBtdGtfaW5pdChzdHJ1Y3QgbmV0X2Rldmlj ZSAqZGV2KQogCWNvbnN0IGNoYXIgKm1hY19hZGRyOwogCiAJbWFjX2FkZHIgPSBvZl9nZXRfbWFj X2FkZHJlc3MobWFjLT5vZl9ub2RlKTsKLQlpZiAobWFjX2FkZHIpCisJaWYgKCFJU19FUlIobWFj X2FkZHIpKQogCQlldGhlcl9hZGRyX2NvcHkoZGV2LT5kZXZfYWRkciwgbWFjX2FkZHIpOwogCiAJ LyogSWYgdGhlIG1hYyBhZGRyZXNzIGlzIGludmFsaWQsIHVzZSByYW5kb20gbWFjIGFkZHJlc3Mg ICovCmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9taWNyZWwva3M4ODUxLmMgYi9k cml2ZXJzL25ldC9ldGhlcm5ldC9taWNyZWwva3M4ODUxLmMKaW5kZXggNzg0OTExOS4uYjQ0MTcy YSAxMDA2NDQKLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWljcmVsL2tzODg1MS5jCisrKyBi L2RyaXZlcnMvbmV0L2V0aGVybmV0L21pY3JlbC9rczg4NTEuYwpAQCAtNDI1LDcgKzQyNSw3IEBA IHN0YXRpYyB2b2lkIGtzODg1MV9pbml0X21hYyhzdHJ1Y3Qga3M4ODUxX25ldCAqa3MpCiAJY29u c3QgdTggKm1hY19hZGRyOwogCiAJbWFjX2FkZHIgPSBvZl9nZXRfbWFjX2FkZHJlc3Moa3MtPnNw aWRldi0+ZGV2Lm9mX25vZGUpOwotCWlmIChtYWNfYWRkcikgeworCWlmICghSVNfRVJSKG1hY19h ZGRyKSkgewogCQltZW1jcHkoZGV2LT5kZXZfYWRkciwgbWFjX2FkZHIsIEVUSF9BTEVOKTsKIAkJ a3M4ODUxX3dyaXRlX21hY19hZGRyKGRldik7CiAJCXJldHVybjsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvbmV0L2V0aGVybmV0L21pY3JlbC9rczg4NTFfbWxsLmMgYi9kcml2ZXJzL25ldC9ldGhlcm5l dC9taWNyZWwva3M4ODUxX21sbC5jCmluZGV4IGM5NDY4NDEuLmRjNzZiMGQgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvbmV0L2V0aGVybmV0L21pY3JlbC9rczg4NTFfbWxsLmMKKysrIGIvZHJpdmVycy9u ZXQvZXRoZXJuZXQvbWljcmVsL2tzODg1MV9tbGwuYwpAQCAtMTMyNyw3ICsxMzI3LDcgQEAgc3Rh dGljIGludCBrczg4NTFfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKIAkvKiBv dmVyd3JpdGluZyB0aGUgZGVmYXVsdCBNQUMgYWRkcmVzcyAqLwogCWlmIChwZGV2LT5kZXYub2Zf bm9kZSkgewogCQltYWMgPSBvZl9nZXRfbWFjX2FkZHJlc3MocGRldi0+ZGV2Lm9mX25vZGUpOwot CQlpZiAobWFjKQorCQlpZiAoIUlTX0VSUihtYWMpKQogCQkJbWVtY3B5KGtzLT5tYWNfYWRkciwg bWFjLCBFVEhfQUxFTik7CiAJfSBlbHNlIHsKIAkJc3RydWN0IGtzODg1MV9tbGxfcGxhdGZvcm1f ZGF0YSAqcGRhdGE7CmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9ueHAvbHBjX2V0 aC5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvbnhwL2xwY19ldGguYwppbmRleCA4OWQxNzM5Li5k YTEzOGVkIDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9ueHAvbHBjX2V0aC5jCisr KyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L254cC9scGNfZXRoLmMKQEAgLTEzNjgsNyArMTM2OCw3 IEBAIHN0YXRpYyBpbnQgbHBjX2V0aF9kcnZfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAq cGRldikKIAogCWlmICghaXNfdmFsaWRfZXRoZXJfYWRkcihuZGV2LT5kZXZfYWRkcikpIHsKIAkJ Y29uc3QgY2hhciAqbWFjYWRkciA9IG9mX2dldF9tYWNfYWRkcmVzcyhucCk7Ci0JCWlmIChtYWNh ZGRyKQorCQlpZiAoIUlTX0VSUihtYWNhZGRyKSkKIAkJCW1lbWNweShuZGV2LT5kZXZfYWRkciwg bWFjYWRkciwgRVRIX0FMRU4pOwogCX0KIAlpZiAoIWlzX3ZhbGlkX2V0aGVyX2FkZHIobmRldi0+ ZGV2X2FkZHIpKQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvcXVhbGNvbW0vcWNh X3NwaS5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvcXVhbGNvbW0vcWNhX3NwaS5jCmluZGV4IDk3 ZjkyOTUuLmIyODM2MGIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L3F1YWxjb21t L3FjYV9zcGkuYworKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9xdWFsY29tbS9xY2Ffc3BpLmMK QEAgLTk2Niw3ICs5NjYsNyBAQAogCiAJbWFjID0gb2ZfZ2V0X21hY19hZGRyZXNzKHNwaS0+ZGV2 Lm9mX25vZGUpOwogCi0JaWYgKG1hYykKKwlpZiAoIUlTX0VSUihtYWMpKQogCQlldGhlcl9hZGRy X2NvcHkocWNhLT5uZXRfZGV2LT5kZXZfYWRkciwgbWFjKTsKIAogCWlmICghaXNfdmFsaWRfZXRo ZXJfYWRkcihxY2EtPm5ldF9kZXYtPmRldl9hZGRyKSkgewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9u ZXQvZXRoZXJuZXQvcXVhbGNvbW0vcWNhX3VhcnQuYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L3F1 YWxjb21tL3FjYV91YXJ0LmMKaW5kZXggZGI2MDY4Yy4uNTkwNjE2OCAxMDA2NDQKLS0tIGEvZHJp dmVycy9uZXQvZXRoZXJuZXQvcXVhbGNvbW0vcWNhX3VhcnQuYworKysgYi9kcml2ZXJzL25ldC9l dGhlcm5ldC9xdWFsY29tbS9xY2FfdWFydC5jCkBAIC0zNTEsNyArMzUxLDcgQEAgc3RhdGljIGlu dCBxY2FfdWFydF9wcm9iZShzdHJ1Y3Qgc2VyZGV2X2RldmljZSAqc2VyZGV2KQogCiAJbWFjID0g b2ZfZ2V0X21hY19hZGRyZXNzKHNlcmRldi0+ZGV2Lm9mX25vZGUpOwogCi0JaWYgKG1hYykKKwlp ZiAoIUlTX0VSUihtYWMpKQogCQlldGhlcl9hZGRyX2NvcHkocWNhLT5uZXRfZGV2LT5kZXZfYWRk ciwgbWFjKTsKIAogCWlmICghaXNfdmFsaWRfZXRoZXJfYWRkcihxY2EtPm5ldF9kZXYtPmRldl9h ZGRyKSkgewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvcmVuZXNhcy9yYXZiX21h aW4uYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L3JlbmVzYXMvcmF2Yl9tYWluLmMKaW5kZXggOTYx OGM0OC4uZDNmZmNmNSAxMDA2NDQKLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvcmVuZXNhcy9y YXZiX21haW4uYworKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9yZW5lc2FzL3JhdmJfbWFpbi5j CkBAIC0xMTEsNyArMTExLDcgQEAgc3RhdGljIHZvaWQgcmF2Yl9zZXRfYnVmZmVyX2FsaWduKHN0 cnVjdCBza19idWZmICpza2IpCiAgKi8KIHN0YXRpYyB2b2lkIHJhdmJfcmVhZF9tYWNfYWRkcmVz cyhzdHJ1Y3QgbmV0X2RldmljZSAqbmRldiwgY29uc3QgdTggKm1hYykKIHsKLQlpZiAobWFjKSB7 CisJaWYgKCFJU19FUlIobWFjKSkgewogCQlldGhlcl9hZGRyX2NvcHkobmRldi0+ZGV2X2FkZHIs IG1hYyk7CiAJfSBlbHNlIHsKIAkJdTMyIG1haHIgPSByYXZiX3JlYWQobmRldiwgTUFIUik7CmRp ZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9yZW5lc2FzL3NoX2V0aC5jIGIvZHJpdmVy cy9uZXQvZXRoZXJuZXQvcmVuZXNhcy9zaF9ldGguYwppbmRleCBlMzNhZjM3Li40ZDRiZTY2IDEw MDY0NAotLS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9yZW5lc2FzL3NoX2V0aC5jCisrKyBiL2Ry aXZlcnMvbmV0L2V0aGVybmV0L3JlbmVzYXMvc2hfZXRoLmMKQEAgLTMxOTMsNyArMzE5Myw3IEBA IHN0YXRpYyBzdHJ1Y3Qgc2hfZXRoX3BsYXRfZGF0YSAqc2hfZXRoX3BhcnNlX2R0KHN0cnVjdCBk ZXZpY2UgKmRldikKIAlwZGF0YS0+cGh5X2ludGVyZmFjZSA9IHJldDsKIAogCW1hY19hZGRyID0g b2ZfZ2V0X21hY19hZGRyZXNzKG5wKTsKLQlpZiAobWFjX2FkZHIpCisJaWYgKCFJU19FUlIobWFj X2FkZHIpKQogCQltZW1jcHkocGRhdGEtPm1hY19hZGRyLCBtYWNfYWRkciwgRVRIX0FMRU4pOwog CiAJcGRhdGEtPm5vX2V0aGVyX2xpbmsgPQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJu ZXQvc2Ftc3VuZy9zeGdiZS9zeGdiZV9wbGF0Zm9ybS5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQv c2Ftc3VuZy9zeGdiZS9zeGdiZV9wbGF0Zm9ybS5jCmluZGV4IGZiZDAwY2IuLmQyYmM5NDEgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L3NhbXN1bmcvc3hnYmUvc3hnYmVfcGxhdGZv cm0uYworKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9zYW1zdW5nL3N4Z2JlL3N4Z2JlX3BsYXRm b3JtLmMKQEAgLTEyNCw3ICsxMjQsNyBAQCBzdGF0aWMgaW50IHN4Z2JlX3BsYXRmb3JtX3Byb2Jl KHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCiAJfQogCiAJLyogR2V0IE1BQyBhZGRyZXNz IGlmIGF2YWlsYWJsZSAoRFQpICovCi0JaWYgKG1hYykKKwlpZiAoIUlTX0VSUl9PUl9OVUxMKG1h YykpCiAJCWV0aGVyX2FkZHJfY29weShwcml2LT5kZXYtPmRldl9hZGRyLCBtYWMpOwogCiAJLyog R2V0IHRoZSBUWC9SWCBJUlEgbnVtYmVycyAqLwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRo ZXJuZXQvc29jaW9uZXh0L3NuaV9hdmUuYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L3NvY2lvbmV4 dC9zbmlfYXZlLmMKaW5kZXggYmI2ZDVmYi4uNTFhN2I0OCAxMDA2NDQKLS0tIGEvZHJpdmVycy9u ZXQvZXRoZXJuZXQvc29jaW9uZXh0L3NuaV9hdmUuYworKysgYi9kcml2ZXJzL25ldC9ldGhlcm5l dC9zb2Npb25leHQvc25pX2F2ZS5jCkBAIC0xNTk5LDcgKzE1OTksNyBAQCBzdGF0aWMgaW50IGF2 ZV9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQogCW5kZXYtPm1heF9tdHUgPSBB VkVfTUFYX0VUSEZSQU1FIC0gKEVUSF9ITEVOICsgRVRIX0ZDU19MRU4pOwogCiAJbWFjX2FkZHIg PSBvZl9nZXRfbWFjX2FkZHJlc3MobnApOwotCWlmIChtYWNfYWRkcikKKwlpZiAoIUlTX0VSUiht YWNfYWRkcikpCiAJCWV0aGVyX2FkZHJfY29weShuZGV2LT5kZXZfYWRkciwgbWFjX2FkZHIpOwog CiAJLyogaWYgdGhlIG1hYyBhZGRyZXNzIGlzIGludmFsaWQsIHVzZSByYW5kb20gbWFjIGFkZHJl c3MgKi8KZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L3N0bWljcm8vc3RtbWFjL3N0 bW1hY19tYWluLmMgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9zdG1pY3JvL3N0bW1hYy9zdG1tYWNf bWFpbi5jCmluZGV4IDVhYjI3MzMuLjU2NzhiODYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L2V0 aGVybmV0L3N0bWljcm8vc3RtbWFjL3N0bW1hY19tYWluLmMKKysrIGIvZHJpdmVycy9uZXQvZXRo ZXJuZXQvc3RtaWNyby9zdG1tYWMvc3RtbWFjX21haW4uYwpAQCAtNDI2Miw3ICs0MjYyLDcgQEAg aW50IHN0bW1hY19kdnJfcHJvYmUoc3RydWN0IGRldmljZSAqZGV2aWNlLAogCXByaXYtPndvbF9p cnEgPSByZXMtPndvbF9pcnE7CiAJcHJpdi0+bHBpX2lycSA9IHJlcy0+bHBpX2lycTsKIAotCWlm IChyZXMtPm1hYykKKwlpZiAoIUlTX0VSUl9PUl9OVUxMKHJlcy0+bWFjKSkKIAkJbWVtY3B5KHBy aXYtPmRldi0+ZGV2X2FkZHIsIHJlcy0+bWFjLCBFVEhfQUxFTik7CiAKIAlkZXZfc2V0X2RydmRh dGEoZGV2aWNlLCBwcml2LT5kZXYpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQv dGkvY3Bzdy5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvdGkvY3Bzdy5jCmluZGV4IGUzNzY4MDYu LmIxOGVlYjAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L3RpL2Nwc3cuYworKysg Yi9kcml2ZXJzL25ldC9ldGhlcm5ldC90aS9jcHN3LmMKQEAgLTIyMzIsNyArMjIzMiw3IEBAIHN0 YXRpYyBpbnQgY3Bzd19wcm9iZV9kdChzdHJ1Y3QgY3Bzd19wbGF0Zm9ybV9kYXRhICpkYXRhLAog CiBub19waHlfc2xhdmU6CiAJCW1hY19hZGRyID0gb2ZfZ2V0X21hY19hZGRyZXNzKHNsYXZlX25v ZGUpOwotCQlpZiAobWFjX2FkZHIpIHsKKwkJaWYgKCFJU19FUlIobWFjX2FkZHIpKSB7CiAJCQlt ZW1jcHkoc2xhdmVfZGF0YS0+bWFjX2FkZHIsIG1hY19hZGRyLCBFVEhfQUxFTik7CiAJCX0gZWxz ZSB7CiAJCQlyZXQgPSB0aV9jbV9nZXRfbWFjaWQoJnBkZXYtPmRldiwgaSwKZGlmZiAtLWdpdCBh L2RyaXZlcnMvbmV0L2V0aGVybmV0L3RpL25ldGNwX2NvcmUuYyBiL2RyaXZlcnMvbmV0L2V0aGVy bmV0L3RpL25ldGNwX2NvcmUuYwppbmRleCAwMWQ0Y2EzLi42NDI4NDM5IDEwMDY0NAotLS0gYS9k cml2ZXJzL25ldC9ldGhlcm5ldC90aS9uZXRjcF9jb3JlLmMKKysrIGIvZHJpdmVycy9uZXQvZXRo ZXJuZXQvdGkvbmV0Y3BfY29yZS5jCkBAIC0yMDM3LDcgKzIwMzcsNyBAQCBzdGF0aWMgaW50IG5l dGNwX2NyZWF0ZV9pbnRlcmZhY2Uoc3RydWN0IG5ldGNwX2RldmljZSAqbmV0Y3BfZGV2aWNlLAog CQlkZXZtX3JlbGVhc2VfbWVtX3JlZ2lvbihkZXYsIHJlcy5zdGFydCwgc2l6ZSk7CiAJfSBlbHNl IHsKIAkJbWFjX2FkZHIgPSBvZl9nZXRfbWFjX2FkZHJlc3Mobm9kZV9pbnRlcmZhY2UpOwotCQlp ZiAobWFjX2FkZHIpCisJCWlmICghSVNfRVJSKG1hY19hZGRyKSkKIAkJCWV0aGVyX2FkZHJfY29w eShuZGV2LT5kZXZfYWRkciwgbWFjX2FkZHIpOwogCQllbHNlCiAJCQlldGhfcmFuZG9tX2FkZHIo bmRldi0+ZGV2X2FkZHIpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvd2l6bmV0 L3c1MTAwLmMgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC93aXpuZXQvdzUxMDAuYwppbmRleCBkOGJh NTEyLi5iMDA1MjkzMyAxMDA2NDQKLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvd2l6bmV0L3c1 MTAwLmMKKysrIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvd2l6bmV0L3c1MTAwLmMKQEAgLTExNjQs NyArMTE2NCw3IEBAIGludCB3NTEwMF9wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYsIGNvbnN0IHN0 cnVjdCB3NTEwMF9vcHMgKm9wcywKIAlJTklUX1dPUksoJnByaXYtPnNldHJ4X3dvcmssIHc1MTAw X3NldHJ4X3dvcmspOwogCUlOSVRfV09SSygmcHJpdi0+cmVzdGFydF93b3JrLCB3NTEwMF9yZXN0 YXJ0X3dvcmspOwogCi0JaWYgKG1hY19hZGRyKQorCWlmICghSVNfRVJSX09SX05VTEwobWFjX2Fk ZHIpKQogCQltZW1jcHkobmRldi0+ZGV2X2FkZHIsIG1hY19hZGRyLCBFVEhfQUxFTik7CiAJZWxz ZQogCQlldGhfaHdfYWRkcl9yYW5kb20obmRldik7CmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9l dGhlcm5ldC94aWxpbngvbGxfdGVtYWNfbWFpbi5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQveGls aW54L2xsX3RlbWFjX21haW4uYwppbmRleCA5ODUxOTkxLi5mMzg5YTgxIDEwMDY0NAotLS0gYS9k cml2ZXJzL25ldC9ldGhlcm5ldC94aWxpbngvbGxfdGVtYWNfbWFpbi5jCisrKyBiL2RyaXZlcnMv bmV0L2V0aGVybmV0L3hpbGlueC9sbF90ZW1hY19tYWluLmMKQEAgLTEyNTIsNyArMTI1Miw3IEBA IHN0YXRpYyBpbnQgdGVtYWNfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKIAlp ZiAodGVtYWNfbnApIHsKIAkJLyogUmV0cmlldmUgdGhlIE1BQyBhZGRyZXNzICovCiAJCWFkZHIg PSBvZl9nZXRfbWFjX2FkZHJlc3ModGVtYWNfbnApOwotCQlpZiAoIWFkZHIpIHsKKwkJaWYgKElT X0VSUihhZGRyKSkgewogCQkJZGV2X2VycigmcGRldi0+ZGV2LCAiY291bGQgbm90IGZpbmQgTUFD IGFkZHJlc3NcbiIpOwogCQkJcmV0dXJuIC1FTk9ERVY7CiAJCX0KZGlmZiAtLWdpdCBhL2RyaXZl cnMvbmV0L2V0aGVybmV0L3hpbGlueC94aWxpbnhfYXhpZW5ldF9tYWluLmMgYi9kcml2ZXJzL25l dC9ldGhlcm5ldC94aWxpbngveGlsaW54X2F4aWVuZXRfbWFpbi5jCmluZGV4IDQwNDFjNzUuLjEw OGZiYzcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L3hpbGlueC94aWxpbnhfYXhp ZW5ldF9tYWluLmMKKysrIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQveGlsaW54L3hpbGlueF9heGll bmV0X21haW4uYwpAQCAtMTU5Niw3ICsxNTk2LDcgQEAgc3RhdGljIGludCBheGllbmV0X3Byb2Jl KHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCiAKIAkvKiBSZXRyaWV2ZSB0aGUgTUFDIGFk ZHJlc3MgKi8KIAltYWNfYWRkciA9IG9mX2dldF9tYWNfYWRkcmVzcyhwZGV2LT5kZXYub2Zfbm9k ZSk7Ci0JaWYgKCFtYWNfYWRkcikgeworCWlmIChJU19FUlIobWFjX2FkZHIpKSB7CiAJCWRldl9l cnIoJnBkZXYtPmRldiwgImNvdWxkIG5vdCBmaW5kIE1BQyBhZGRyZXNzXG4iKTsKIAkJZ290byBm cmVlX25ldGRldjsKIAl9CmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC94aWxpbngv eGlsaW54X2VtYWNsaXRlLmMgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC94aWxpbngveGlsaW54X2Vt YWNsaXRlLmMKaW5kZXggZmMzODY5Mi4uNjkxMTcwNyAxMDA2NDQKLS0tIGEvZHJpdmVycy9uZXQv ZXRoZXJuZXQveGlsaW54L3hpbGlueF9lbWFjbGl0ZS5jCisrKyBiL2RyaXZlcnMvbmV0L2V0aGVy bmV0L3hpbGlueC94aWxpbnhfZW1hY2xpdGUuYwpAQCAtMTE2NSw3ICsxMTY1LDcgQEAgc3RhdGlj IGludCB4ZW1hY2xpdGVfb2ZfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqb2ZkZXYpCiAJ bHAtPnJ4X3BpbmdfcG9uZyA9IGdldF9ib29sKG9mZGV2LCAieGxueCxyeC1waW5nLXBvbmciKTsK IAltYWNfYWRkcmVzcyA9IG9mX2dldF9tYWNfYWRkcmVzcyhvZmRldi0+ZGV2Lm9mX25vZGUpOwog Ci0JaWYgKG1hY19hZGRyZXNzKSB7CisJaWYgKCFJU19FUlIobWFjX2FkZHJlc3MpKSB7CiAJCS8q IFNldCB0aGUgTUFDIGFkZHJlc3MuICovCiAJCW1lbWNweShuZGV2LT5kZXZfYWRkciwgbWFjX2Fk ZHJlc3MsIEVUSF9BTEVOKTsKIAl9IGVsc2UgewpkaWZmIC0tZ2l0IGEvbmV0L2V0aGVybmV0L2V0 aC5jIGIvbmV0L2V0aGVybmV0L2V0aC5jCmluZGV4IGZkZGNlZTMuLjRiMmIyMjIgMTAwNjQ0Ci0t LSBhL25ldC9ldGhlcm5ldC9ldGguYworKysgYi9uZXQvZXRoZXJuZXQvZXRoLmMKQEAgLTU2MCw3 ICs1NjAsNyBAQCBpbnQgZXRoX3BsYXRmb3JtX2dldF9tYWNfYWRkcmVzcyhzdHJ1Y3QgZGV2aWNl ICpkZXYsIHU4ICptYWNfYWRkcikKIAlhZGRyID0gTlVMTDsKIAlpZiAoZHApCiAJCWFkZHIgPSBv Zl9nZXRfbWFjX2FkZHJlc3MoZHApOwotCWlmICghYWRkcikKKwlpZiAoSVNfRVJSX09SX05VTEwo YWRkcikpCiAJCWFkZHIgPSBhcmNoX2dldF9wbGF0Zm9ybV9tYWNfYWRkcmVzcygpOwogCiAJaWYg KCFhZGRyKQotLSAKMS45LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCmRldmVsIG1haWxpbmcgbGlzdApkZXZlbEBsaW51eGRyaXZlcnByb2plY3Qub3Jn Cmh0dHA6Ly9kcml2ZXJkZXYubGludXhkcml2ZXJwcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZv L2RyaXZlcmRldi1kZXZlbAo=