From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [net-next,v2,2/2] drivers: net: Remove device_node checks with of_mdiobus_register() From: Antoine Tenart Message-Id: <20180516064945.GB32746@kwain> Date: Wed, 16 May 2018 08:49:45 +0200 To: Florian Fainelli Cc: netdev@vger.kernel.org, Andrew Lunn , Vivien Didelot , "David S. Miller" , Nicolas Ferre , Fugang Duan , Sergei Shtylyov , Giuseppe Cavallaro , Alexandre Torgue , Jose Abreu , Grygorii Strashko , Woojung Huh , Microchip Linux Driver Support , Rob Herring , Frank Rowand , Antoine Tenart , Tobias Jordan , Russell King , Geert Uytterhoeven , Thomas Petazzoni , Niklas =?iso-8859-1?Q?S=F6derlund?= , Simon Horman , Maxim Uvarov , Sekhar Nori , open list , "open list:RENESAS ETHERNET DRIVERS" , "open list:TI ETHERNET SWITCH DRIVER \(CPSW\)" , "open list:USB NETWORKING DRIVERS" , "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE" List-ID: SGkgRmxvcmlhbiwKCk9uIFR1ZSwgTWF5IDE1LCAyMDE4IGF0IDA0OjU2OjE5UE0gLTA3MDAsIEZs b3JpYW4gRmFpbmVsbGkgd3JvdGU6Cj4gQSBudW1iZXIgb2YgZHJpdmVycyBoYXZlIHRoZSBmb2xs b3dpbmcgcGF0dGVybjoKPiAKPiBpZiAobnApCj4gCW9mX21kaW9idXNfcmVnaXN0ZXIoKQo+IGVs c2UKPiAJbWRpb2J1c19yZWdpc3RlcigpCj4gCj4gd2hpY2ggdGhlIGltcGxlbWVudGF0aW9uIG9m IG9mX21kaW9idXNfcmVnaXN0ZXIoKSBub3cgdGFrZXMgY2FyZSBvZi4KPiBSZW1vdmUgdGhhdCBw YXR0ZXJuIGluIGRyaXZlcnMgdGhhdCBzdHJpY3RseSBhZGhlcmUgdG8gaXQuCj4gCj4gU2lnbmVk LW9mZi1ieTogRmxvcmlhbiBGYWluZWxsaSA8Zi5mYWluZWxsaUBnbWFpbC5jb20+Cj4gLS0tCj4g IGRyaXZlcnMvbmV0L2RzYS9iY21fc2YyLmMgICAgICAgICAgICAgICAgICAgICAgICAgfCAgOCAr Ky0tLS0tLQo+ICBkcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2NoaXAuYyAgICAgICAgICAgICAg ICAgIHwgIDUgKy0tLS0KPiAgZHJpdmVycy9uZXQvZXRoZXJuZXQvY2FkZW5jZS9tYWNiX21haW4u YyAgICAgICAgICB8IDEyICsrKy0tLS0tLS0tLQo+ICBkcml2ZXJzL25ldC9ldGhlcm5ldC9mcmVl c2NhbGUvZmVjX21haW4uYyAgICAgICAgIHwgIDggKystLS0tLS0KPiAgZHJpdmVycy9uZXQvZXRo ZXJuZXQvbWFydmVsbC9tdm1kaW8uYyAgICAgICAgICAgICB8ICA1ICstLS0tCgpGb3IgbXZtZGlv LApSZXZpZXdlZC1ieTogQW50b2luZSBUZW5hcnQgPGFudG9pbmUudGVuYXJ0QGJvb3RsaW4uY29t PgoKVGhhbmtzIQpBbnRvaW5lCgo+ICBkcml2ZXJzL25ldC9ldGhlcm5ldC9yZW5lc2FzL3NoX2V0 aC5jICAgICAgICAgICAgIHwgMTEgKysrLS0tLS0tLS0KPiAgZHJpdmVycy9uZXQvZXRoZXJuZXQv c3RtaWNyby9zdG1tYWMvc3RtbWFjX21kaW8uYyB8ICA1ICstLS0tCj4gIGRyaXZlcnMvbmV0L2V0 aGVybmV0L3RpL2RhdmluY2lfbWRpby5jICAgICAgICAgICAgfCAgOCArKystLS0tLQo+ICBkcml2 ZXJzL25ldC9waHkvbWRpby1ncGlvLmMgICAgICAgICAgICAgICAgICAgICAgIHwgIDYgKy0tLS0t Cj4gIGRyaXZlcnMvbmV0L3BoeS9tZGlvLW1zY2MtbWlpbS5jICAgICAgICAgICAgICAgICAgfCAg NiArLS0tLS0KPiAgZHJpdmVycy9uZXQvdXNiL2xhbjc4eHguYyAgICAgICAgICAgICAgICAgICAg ICAgICB8ICA3ICsrLS0tLS0KPiAgMTEgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwg NjEgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2RzYS9iY21fc2Yy LmMgYi9kcml2ZXJzL25ldC9kc2EvYmNtX3NmMi5jCj4gaW5kZXggYWM2MjFmNDQyMzdhLi4wMmU4 OTgyNTE5Y2UgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9uZXQvZHNhL2JjbV9zZjIuYwo+ICsrKyBi L2RyaXZlcnMvbmV0L2RzYS9iY21fc2YyLmMKPiBAQCAtNDUwLDEyICs0NTAsOCBAQCBzdGF0aWMg aW50IGJjbV9zZjJfbWRpb19yZWdpc3RlcihzdHJ1Y3QgZHNhX3N3aXRjaCAqZHMpCj4gIAlwcml2 LT5zbGF2ZV9taWlfYnVzLT5wYXJlbnQgPSBkcy0+ZGV2LT5wYXJlbnQ7Cj4gIAlwcml2LT5zbGF2 ZV9taWlfYnVzLT5waHlfbWFzayA9IH5wcml2LT5pbmRpcl9waHlfbWFzazsKPiAgCj4gLQlpZiAo ZG4pCj4gLQkJZXJyID0gb2ZfbWRpb2J1c19yZWdpc3Rlcihwcml2LT5zbGF2ZV9taWlfYnVzLCBk bik7Cj4gLQllbHNlCj4gLQkJZXJyID0gbWRpb2J1c19yZWdpc3Rlcihwcml2LT5zbGF2ZV9taWlf YnVzKTsKPiAtCj4gLQlpZiAoZXJyKQo+ICsJZXJyID0gb2ZfbWRpb2J1c19yZWdpc3Rlcihwcml2 LT5zbGF2ZV9taWlfYnVzLCBkbik7Cj4gKwlpZiAoZXJyICYmIGRuKQo+ICAJCW9mX25vZGVfcHV0 KGRuKTsKPiAgCj4gIAlyZXR1cm4gZXJyOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9kc2Ev bXY4OGU2eHh4L2NoaXAuYyBiL2RyaXZlcnMvbmV0L2RzYS9tdjg4ZTZ4eHgvY2hpcC5jCj4gaW5k ZXggYjIzYzExZDlmNGIyLi4yYmIzZjAzZWUxY2IgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9uZXQv ZHNhL212ODhlNnh4eC9jaGlwLmMKPiArKysgYi9kcml2ZXJzL25ldC9kc2EvbXY4OGU2eHh4L2No aXAuYwo+IEBAIC0yNDU0LDEwICsyNDU0LDcgQEAgc3RhdGljIGludCBtdjg4ZTZ4eHhfbWRpb19y ZWdpc3RlcihzdHJ1Y3QgbXY4OGU2eHh4X2NoaXAgKmNoaXAsCj4gIAkJCXJldHVybiBlcnI7Cj4g IAl9Cj4gIAo+IC0JaWYgKG5wKQo+IC0JCWVyciA9IG9mX21kaW9idXNfcmVnaXN0ZXIoYnVzLCBu cCk7Cj4gLQllbHNlCj4gLQkJZXJyID0gbWRpb2J1c19yZWdpc3RlcihidXMpOwo+ICsJZXJyID0g b2ZfbWRpb2J1c19yZWdpc3RlcihidXMsIG5wKTsKPiAgCWlmIChlcnIpIHsKPiAgCQlkZXZfZXJy KGNoaXAtPmRldiwgIkNhbm5vdCByZWdpc3RlciBNRElPIGJ1cyAoJWQpXG4iLCBlcnIpOwo+ICAJ CW12ODhlNnh4eF9nMl9pcnFfbWRpb19mcmVlKGNoaXAsIGJ1cyk7Cj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvbmV0L2V0aGVybmV0L2NhZGVuY2UvbWFjYl9tYWluLmMgYi9kcml2ZXJzL25ldC9ldGhl cm5ldC9jYWRlbmNlL21hY2JfbWFpbi5jCj4gaW5kZXggYjRjOTI2ODEwMGJiLi4zZTkzZGY1ZDRl M2IgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvY2FkZW5jZS9tYWNiX21haW4u Ywo+ICsrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L2NhZGVuY2UvbWFjYl9tYWluLmMKPiBAQCAt NTkxLDE2ICs1OTEsMTAgQEAgc3RhdGljIGludCBtYWNiX21paV9pbml0KHN0cnVjdCBtYWNiICpi cCkKPiAgCWRldl9zZXRfZHJ2ZGF0YSgmYnAtPmRldi0+ZGV2LCBicC0+bWlpX2J1cyk7Cj4gIAo+ ICAJbnAgPSBicC0+cGRldi0+ZGV2Lm9mX25vZGU7Cj4gKwlpZiAocGRhdGEpCj4gKwkJYnAtPm1p aV9idXMtPnBoeV9tYXNrID0gcGRhdGEtPnBoeV9tYXNrOwo+ICAKPiAtCWlmIChucCkgewo+IC0J CWVyciA9IG9mX21kaW9idXNfcmVnaXN0ZXIoYnAtPm1paV9idXMsIG5wKTsKPiAtCX0gZWxzZSB7 Cj4gLQkJaWYgKHBkYXRhKQo+IC0JCQlicC0+bWlpX2J1cy0+cGh5X21hc2sgPSBwZGF0YS0+cGh5 X21hc2s7Cj4gLQo+IC0JCWVyciA9IG1kaW9idXNfcmVnaXN0ZXIoYnAtPm1paV9idXMpOwo+IC0J fQo+IC0KPiArCWVyciA9IG9mX21kaW9idXNfcmVnaXN0ZXIoYnAtPm1paV9idXMsIG5wKTsKPiAg CWlmIChlcnIpCj4gIAkJZ290byBlcnJfb3V0X2ZyZWVfbWRpb2J1czsKPiAgCj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L2ZyZWVzY2FsZS9mZWNfbWFpbi5jIGIvZHJpdmVycy9u ZXQvZXRoZXJuZXQvZnJlZXNjYWxlL2ZlY19tYWluLmMKPiBpbmRleCBkNDYwNGJjOGViNWIuLmYz ZTQzZGIwZDZjYiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9mcmVlc2NhbGUv ZmVjX21haW4uYwo+ICsrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L2ZyZWVzY2FsZS9mZWNfbWFp bi5jCj4gQEAgLTIwNTIsMTMgKzIwNTIsOSBAQCBzdGF0aWMgaW50IGZlY19lbmV0X21paV9pbml0 KHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCj4gIAlmZXAtPm1paV9idXMtPnBhcmVudCA9 ICZwZGV2LT5kZXY7Cj4gIAo+ICAJbm9kZSA9IG9mX2dldF9jaGlsZF9ieV9uYW1lKHBkZXYtPmRl di5vZl9ub2RlLCAibWRpbyIpOwo+IC0JaWYgKG5vZGUpIHsKPiAtCQllcnIgPSBvZl9tZGlvYnVz X3JlZ2lzdGVyKGZlcC0+bWlpX2J1cywgbm9kZSk7Cj4gKwllcnIgPSBvZl9tZGlvYnVzX3JlZ2lz dGVyKGZlcC0+bWlpX2J1cywgbm9kZSk7Cj4gKwlpZiAobm9kZSkKPiAgCQlvZl9ub2RlX3B1dChu b2RlKTsKPiAtCX0gZWxzZSB7Cj4gLQkJZXJyID0gbWRpb2J1c19yZWdpc3RlcihmZXAtPm1paV9i dXMpOwo+IC0JfQo+IC0KPiAgCWlmIChlcnIpCj4gIAkJZ290byBlcnJfb3V0X2ZyZWVfbWRpb2J1 czsKPiAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L21hcnZlbGwvbXZtZGlv LmMgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9tYXJ2ZWxsL212bWRpby5jCj4gaW5kZXggMDQ5NTQ4 N2Y3YjQyLi5jNWRhYzZiZDJiZTQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQv bWFydmVsbC9tdm1kaW8uYwo+ICsrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L21hcnZlbGwvbXZt ZGlvLmMKPiBAQCAtMzQ4LDEwICszNDgsNyBAQCBzdGF0aWMgaW50IG9yaW9uX21kaW9fcHJvYmUo c3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKPiAgCQlnb3RvIG91dF9tZGlvOwo+ICAJfQo+ ICAKPiAtCWlmIChwZGV2LT5kZXYub2Zfbm9kZSkKPiAtCQlyZXQgPSBvZl9tZGlvYnVzX3JlZ2lz dGVyKGJ1cywgcGRldi0+ZGV2Lm9mX25vZGUpOwo+IC0JZWxzZQo+IC0JCXJldCA9IG1kaW9idXNf cmVnaXN0ZXIoYnVzKTsKPiArCXJldCA9IG9mX21kaW9idXNfcmVnaXN0ZXIoYnVzLCBwZGV2LT5k ZXYub2Zfbm9kZSk7Cj4gIAlpZiAocmV0IDwgMCkgewo+ICAJCWRldl9lcnIoJnBkZXYtPmRldiwg IkNhbm5vdCByZWdpc3RlciBNRElPIGJ1cyAoJWQpXG4iLCByZXQpOwo+ICAJCWdvdG8gb3V0X21k aW87Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L3JlbmVzYXMvc2hfZXRoLmMg Yi9kcml2ZXJzL25ldC9ldGhlcm5ldC9yZW5lc2FzL3NoX2V0aC5jCj4gaW5kZXggNTk3MGQ5ZTVk ZGYxLi44ZGQ0MWUwOGE2YzYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvcmVu ZXNhcy9zaF9ldGguYwo+ICsrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L3JlbmVzYXMvc2hfZXRo LmMKPiBAQCAtMzAyNSwxNSArMzAyNSwxMCBAQCBzdGF0aWMgaW50IHNoX21kaW9faW5pdChzdHJ1 Y3Qgc2hfZXRoX3ByaXZhdGUgKm1kcCwKPiAgCQkgcGRldi0+bmFtZSwgcGRldi0+aWQpOwo+ICAK PiAgCS8qIHJlZ2lzdGVyIE1ESU8gYnVzICovCj4gLQlpZiAoZGV2LT5vZl9ub2RlKSB7Cj4gLQkJ cmV0ID0gb2ZfbWRpb2J1c19yZWdpc3RlcihtZHAtPm1paV9idXMsIGRldi0+b2Zfbm9kZSk7Cj4g LQl9IGVsc2Ugewo+IC0JCWlmIChwZC0+cGh5X2lycSA+IDApCj4gLQkJCW1kcC0+bWlpX2J1cy0+ aXJxW3BkLT5waHldID0gcGQtPnBoeV9pcnE7Cj4gLQo+IC0JCXJldCA9IG1kaW9idXNfcmVnaXN0 ZXIobWRwLT5taWlfYnVzKTsKPiAtCX0KPiArCWlmIChwZC0+cGh5X2lycSA+IDApCj4gKwkJbWRw LT5taWlfYnVzLT5pcnFbcGQtPnBoeV0gPSBwZC0+cGh5X2lycTsKPiAgCj4gKwlyZXQgPSBvZl9t ZGlvYnVzX3JlZ2lzdGVyKG1kcC0+bWlpX2J1cywgZGV2LT5vZl9ub2RlKTsKPiAgCWlmIChyZXQp Cj4gIAkJZ290byBvdXRfZnJlZV9idXM7Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9l dGhlcm5ldC9zdG1pY3JvL3N0bW1hYy9zdG1tYWNfbWRpby5jIGIvZHJpdmVycy9uZXQvZXRoZXJu ZXQvc3RtaWNyby9zdG1tYWMvc3RtbWFjX21kaW8uYwo+IGluZGV4IGY1ZjM3YmZhMWQ1OC4uNWRm MWE2MDhlNTY2IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L3N0bWljcm8vc3Rt bWFjL3N0bW1hY19tZGlvLmMKPiArKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9zdG1pY3JvL3N0 bW1hYy9zdG1tYWNfbWRpby5jCj4gQEAgLTIzMywxMCArMjMzLDcgQEAgaW50IHN0bW1hY19tZGlv X3JlZ2lzdGVyKHN0cnVjdCBuZXRfZGV2aWNlICpuZGV2KQo+ICAJbmV3X2J1cy0+cGh5X21hc2sg PSBtZGlvX2J1c19kYXRhLT5waHlfbWFzazsKPiAgCW5ld19idXMtPnBhcmVudCA9IHByaXYtPmRl dmljZTsKPiAgCj4gLQlpZiAobWRpb19ub2RlKQo+IC0JCWVyciA9IG9mX21kaW9idXNfcmVnaXN0 ZXIobmV3X2J1cywgbWRpb19ub2RlKTsKPiAtCWVsc2UKPiAtCQllcnIgPSBtZGlvYnVzX3JlZ2lz dGVyKG5ld19idXMpOwo+ICsJZXJyID0gb2ZfbWRpb2J1c19yZWdpc3RlcihuZXdfYnVzLCBtZGlv X25vZGUpOwo+ICAJaWYgKGVyciAhPSAwKSB7Cj4gIAkJZGV2X2VycihkZXYsICJDYW5ub3QgcmVn aXN0ZXIgdGhlIE1ESU8gYnVzXG4iKTsKPiAgCQlnb3RvIGJ1c19yZWdpc3Rlcl9mYWlsOwo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC90aS9kYXZpbmNpX21kaW8uYyBiL2RyaXZl cnMvbmV0L2V0aGVybmV0L3RpL2RhdmluY2lfbWRpby5jCj4gaW5kZXggOThhMWM5N2ZiOTVlLi44 YWM3MjgzMWFmMDUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvdGkvZGF2aW5j aV9tZGlvLmMKPiArKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC90aS9kYXZpbmNpX21kaW8uYwo+ IEBAIC00MjksMTIgKzQyOSwxMCBAQCBzdGF0aWMgaW50IGRhdmluY2lfbWRpb19wcm9iZShzdHJ1 Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQo+ICAJICogZGVmaW5lZCB0byBzdXBwb3J0IGJhY2t3 YXJkIGNvbXBhdGliaWxpdHkgd2l0aCBEVHMgd2hpY2ggYXNzdW1lIHRoYXQKPiAgCSAqIERhdmlu Y2kgTURJTyB3aWxsIGFsd2F5cyBzY2FuIHRoZSBidXMgZm9yIFBIWXMgZGV0ZWN0aW9uLgo+ICAJ ICovCj4gLQlpZiAoZGV2LT5vZl9ub2RlICYmIG9mX2dldF9jaGlsZF9jb3VudChkZXYtPm9mX25v ZGUpKSB7Cj4gKwlpZiAoZGV2LT5vZl9ub2RlICYmIG9mX2dldF9jaGlsZF9jb3VudChkZXYtPm9m X25vZGUpKQo+ICAJCWRhdGEtPnNraXBfc2NhbiA9IHRydWU7Cj4gLQkJcmV0ID0gb2ZfbWRpb2J1 c19yZWdpc3RlcihkYXRhLT5idXMsIGRldi0+b2Zfbm9kZSk7Cj4gLQl9IGVsc2Ugewo+IC0JCXJl dCA9IG1kaW9idXNfcmVnaXN0ZXIoZGF0YS0+YnVzKTsKPiAtCX0KPiArCj4gKwlyZXQgPSBvZl9t ZGlvYnVzX3JlZ2lzdGVyKGRhdGEtPmJ1cywgZGV2LT5vZl9ub2RlKTsKPiAgCWlmIChyZXQpCj4g IAkJZ290byBiYWlsX291dDsKPiAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L3BoeS9tZGlv LWdwaW8uYyBiL2RyaXZlcnMvbmV0L3BoeS9tZGlvLWdwaW8uYwo+IGluZGV4IGI1MDEyMjE4MTll MS4uNGU0YzhkYWY0NGMzIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbmV0L3BoeS9tZGlvLWdwaW8u Ywo+ICsrKyBiL2RyaXZlcnMvbmV0L3BoeS9tZGlvLWdwaW8uYwo+IEBAIC0xNzksMTEgKzE3OSw3 IEBAIHN0YXRpYyBpbnQgbWRpb19ncGlvX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBk ZXYpCj4gIAlpZiAoIW5ld19idXMpCj4gIAkJcmV0dXJuIC1FTk9ERVY7Cj4gIAo+IC0JaWYgKHBk ZXYtPmRldi5vZl9ub2RlKQo+IC0JCXJldCA9IG9mX21kaW9idXNfcmVnaXN0ZXIobmV3X2J1cywg cGRldi0+ZGV2Lm9mX25vZGUpOwo+IC0JZWxzZQo+IC0JCXJldCA9IG1kaW9idXNfcmVnaXN0ZXIo bmV3X2J1cyk7Cj4gLQo+ICsJcmV0ID0gb2ZfbWRpb2J1c19yZWdpc3RlcihuZXdfYnVzLCBwZGV2 LT5kZXYub2Zfbm9kZSk7Cj4gIAlpZiAocmV0KQo+ICAJCW1kaW9fZ3Bpb19idXNfZGVpbml0KCZw ZGV2LT5kZXYpOwo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvcGh5L21kaW8tbXNjYy1t aWltLmMgYi9kcml2ZXJzL25ldC9waHkvbWRpby1tc2NjLW1paW0uYwo+IGluZGV4IDhjNjg5Y2Nm ZGJjYS4uYmFkYmM5OWJlZGQzIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbmV0L3BoeS9tZGlvLW1z Y2MtbWlpbS5jCj4gKysrIGIvZHJpdmVycy9uZXQvcGh5L21kaW8tbXNjYy1taWltLmMKPiBAQCAt MTUxLDExICsxNTEsNyBAQCBzdGF0aWMgaW50IG1zY2NfbWlpbV9wcm9iZShzdHJ1Y3QgcGxhdGZv cm1fZGV2aWNlICpwZGV2KQo+ICAJCX0KPiAgCX0KPiAgCj4gLQlpZiAocGRldi0+ZGV2Lm9mX25v ZGUpCj4gLQkJcmV0ID0gb2ZfbWRpb2J1c19yZWdpc3RlcihidXMsIHBkZXYtPmRldi5vZl9ub2Rl KTsKPiAtCWVsc2UKPiAtCQlyZXQgPSBtZGlvYnVzX3JlZ2lzdGVyKGJ1cyk7Cj4gLQo+ICsJcmV0 ID0gb2ZfbWRpb2J1c19yZWdpc3RlcihidXMsIHBkZXYtPmRldi5vZl9ub2RlKTsKPiAgCWlmIChy ZXQgPCAwKSB7Cj4gIAkJZGV2X2VycigmcGRldi0+ZGV2LCAiQ2Fubm90IHJlZ2lzdGVyIE1ESU8g YnVzICglZClcbiIsIHJldCk7Cj4gIAkJcmV0dXJuIHJldDsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9uZXQvdXNiL2xhbjc4eHguYyBiL2RyaXZlcnMvbmV0L3VzYi9sYW43OHh4LmMKPiBpbmRleCA5 MTc2MTQzNjcwOWEuLjhkZmY4N2VjNmQ5OSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL25ldC91c2Iv bGFuNzh4eC5jCj4gKysrIGIvZHJpdmVycy9uZXQvdXNiL2xhbjc4eHguYwo+IEBAIC0xODQzLDEy ICsxODQzLDkgQEAgc3RhdGljIGludCBsYW43OHh4X21kaW9faW5pdChzdHJ1Y3QgbGFuNzh4eF9u ZXQgKmRldikKPiAgCX0KPiAgCj4gIAlub2RlID0gb2ZfZ2V0X2NoaWxkX2J5X25hbWUoZGV2LT51 ZGV2LT5kZXYub2Zfbm9kZSwgIm1kaW8iKTsKPiAtCWlmIChub2RlKSB7Cj4gLQkJcmV0ID0gb2Zf bWRpb2J1c19yZWdpc3RlcihkZXYtPm1kaW9idXMsIG5vZGUpOwo+ICsJcmV0ID0gb2ZfbWRpb2J1 c19yZWdpc3RlcihkZXYtPm1kaW9idXMsIG5vZGUpOwo+ICsJaWYgKG5vZGUpCj4gIAkJb2Zfbm9k ZV9wdXQobm9kZSk7Cj4gLQl9IGVsc2Ugewo+IC0JCXJldCA9IG1kaW9idXNfcmVnaXN0ZXIoZGV2 LT5tZGlvYnVzKTsKPiAtCX0KPiAgCWlmIChyZXQpIHsKPiAgCQluZXRkZXZfZXJyKGRldi0+bmV0 LCAiY2FuJ3QgcmVnaXN0ZXIgTURJTyBidXNcbiIpOwo+ICAJCWdvdG8gZXhpdDE7Cj4gLS0gCj4g Mi4xNC4xCj4K