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: [RFC,net-next] net: fixed_phy: Move the DT based link GPIO parsing to of_mdio.c From: Andrew Lunn Message-Id: <20190206215322.GC32483@lunn.ch> Date: Wed, 6 Feb 2019 22:53:22 +0100 To: Moritz Fischer Cc: linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org, netdev@vger.kernel.org, colin.king@canonical.com, linus.walleij@linaro.org, yuehaibing@huawei.com, mcgrof@kernel.org, frowand.list@gmail.com, robh+dt@kernel.org, UNGLinuxDriver@microchip.com, woojung.huh@microchip.com, hkallweit1@gmail.com, davem@davemloft.net, f.fainelli@gmail.com, vivien.didelot@gmail.com, moritz@ettus.com, alex.williams@ni.com List-ID: T24gV2VkLCBGZWIgMDYsIDIwMTkgYXQgMTI6NTE6MDZQTSAtMDgwMCwgTW9yaXR6IEZpc2NoZXIg d3JvdGU6Cj4gTW92ZSB0aGUgRFQgYmFzZWQgbGluayBHUElPIHBhcnNpbmcgdG8gb2ZfbWRpbyBh bmQgbGV0IHRoZSBwbGFjZXMKPiB0aGF0IHJlZ2lzdGVyIGEgZml4ZWRfcGh5IHBhc3MgaW4gYSBH UElPIGRlc2NyaXB0b3Igb3IgTlVMTC4KPiAKPiBUaGlzIGFsbG93cyBmaXhlZF9waHkgb24gbm9u LURUIHBsYXRmb3JtcyB0byBoYXZlIGxpbmsgR1BJT3MsIHRvby4KPiAKPiBTaWduZWQtb2ZmLWJ5 OiBNb3JpdHogRmlzY2hlciA8bWRmQGtlcm5lbC5vcmc+Cj4gLS0tCj4gIGRyaXZlcnMvbmV0L2Rz YS9kc2FfbG9vcC5jICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KPiAgZHJpdmVycy9uZXQvZXRo ZXJuZXQvYnJvYWRjb20vYmdtYWMuYyAgICAgICAgfCAgMiArLQo+ICBkcml2ZXJzL25ldC9ldGhl cm5ldC9icm9hZGNvbS9nZW5ldC9iY21taWkuYyB8ICAyICstCj4gIGRyaXZlcnMvbmV0L3BoeS9m aXhlZF9waHkuYyAgICAgICAgICAgICAgICAgIHwgNDggKystLS0tLS0tLS0tLS0tLS0tLS0KPiAg ZHJpdmVycy9uZXQvdXNiL2xhbjc4eHguYyAgICAgICAgICAgICAgICAgICAgfCAgMiArLQo+ICBk cml2ZXJzL29mL29mX21kaW8uYyAgICAgICAgICAgICAgICAgICAgICAgICB8IDE1ICsrKysrLQo+ ICBpbmNsdWRlL2xpbnV4L3BoeV9maXhlZC5oICAgICAgICAgICAgICAgICAgICB8ICAzICstCj4g IDcgZmlsZXMgY2hhbmdlZCwgMjMgaW5zZXJ0aW9ucygrKSwgNTEgZGVsZXRpb25zKC0pCj4gCj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2RzYS9kc2FfbG9vcC5jIGIvZHJpdmVycy9uZXQvZHNh L2RzYV9sb29wLmMKPiBpbmRleCAxNzQ4MmFlMDlhYTUuLjdmMTI0YzYyMDA5MiAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL25ldC9kc2EvZHNhX2xvb3AuYwo+ICsrKyBiL2RyaXZlcnMvbmV0L2RzYS9k c2FfbG9vcC5jCj4gQEAgLTM0Myw3ICszNDMsNyBAQCBzdGF0aWMgaW50IF9faW5pdCBkc2FfbG9v cF9pbml0KHZvaWQpCj4gIAl1bnNpZ25lZCBpbnQgaTsKPiAgCj4gIAlmb3IgKGkgPSAwOyBpIDwg TlVNX0ZJWEVEX1BIWVM7IGkrKykKPiAtCQlwaHlkZXZzW2ldID0gZml4ZWRfcGh5X3JlZ2lzdGVy KFBIWV9QT0xMLCAmc3RhdHVzLCBOVUxMKTsKPiArCQlwaHlkZXZzW2ldID0gZml4ZWRfcGh5X3Jl Z2lzdGVyKFBIWV9QT0xMLCAmc3RhdHVzLCBOVUxMLCBOVUxMKTsKPiAgCj4gIAlyZXR1cm4gbWRp b19kcml2ZXJfcmVnaXN0ZXIoJmRzYV9sb29wX2Rydik7Cj4gIH0KPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9uZXQvZXRoZXJuZXQvYnJvYWRjb20vYmdtYWMuYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0 L2Jyb2FkY29tL2JnbWFjLmMKPiBpbmRleCA0NjMyZGQ1ZGJhZDEuLmJjZTY0NGRlYzVjMiAxMDA2 NDQKPiAtLS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9icm9hZGNvbS9iZ21hYy5jCj4gKysrIGIv ZHJpdmVycy9uZXQvZXRoZXJuZXQvYnJvYWRjb20vYmdtYWMuYwo+IEBAIC0xNDQ2LDcgKzE0NDYs NyBAQCBpbnQgYmdtYWNfcGh5X2Nvbm5lY3RfZGlyZWN0KHN0cnVjdCBiZ21hYyAqYmdtYWMpCj4g IAlzdHJ1Y3QgcGh5X2RldmljZSAqcGh5X2RldjsKPiAgCWludCBlcnI7Cj4gIAo+IC0JcGh5X2Rl diA9IGZpeGVkX3BoeV9yZWdpc3RlcihQSFlfUE9MTCwgJmZwaHlfc3RhdHVzLCBOVUxMKTsKPiAr CXBoeV9kZXYgPSBmaXhlZF9waHlfcmVnaXN0ZXIoUEhZX1BPTEwsICZmcGh5X3N0YXR1cywgTlVM TCwgTlVMTCk7Cj4gIAlpZiAoIXBoeV9kZXYgfHwgSVNfRVJSKHBoeV9kZXYpKSB7Cj4gIAkJZGV2 X2VycihiZ21hYy0+ZGV2LCAiRmFpbGVkIHRvIHJlZ2lzdGVyIGZpeGVkIFBIWSBkZXZpY2VcbiIp Owo+ICAJCXJldHVybiAtRU5PREVWOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5l dC9icm9hZGNvbS9nZW5ldC9iY21taWkuYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L2Jyb2FkY29t L2dlbmV0L2JjbW1paS5jCj4gaW5kZXggNTE4ODBkODMxMzFhLi43Y2JkNzM3YWJhODAgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvYnJvYWRjb20vZ2VuZXQvYmNtbWlpLmMKPiAr KysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9icm9hZGNvbS9nZW5ldC9iY21taWkuYwo+IEBAIC01 MjUsNyArNTI1LDcgQEAgc3RhdGljIGludCBiY21nZW5ldF9taWlfcGRfaW5pdChzdHJ1Y3QgYmNt Z2VuZXRfcHJpdiAqcHJpdikKPiAgCQkJLmFzeW1fcGF1c2UgPSAwLAo+ICAJCX07Cj4gIAo+IC0J CXBoeWRldiA9IGZpeGVkX3BoeV9yZWdpc3RlcihQSFlfUE9MTCwgJmZwaHlfc3RhdHVzLCBOVUxM KTsKPiArCQlwaHlkZXYgPSBmaXhlZF9waHlfcmVnaXN0ZXIoUEhZX1BPTEwsICZmcGh5X3N0YXR1 cywgTlVMTCwgTlVMTCk7Cj4gIAkJaWYgKCFwaHlkZXYgfHwgSVNfRVJSKHBoeWRldikpIHsKPiAg CQkJZGV2X2VycihrZGV2LCAiZmFpbGVkIHRvIHJlZ2lzdGVyIGZpeGVkIFBIWSBkZXZpY2VcbiIp Owo+ICAJCQlyZXR1cm4gLUVOT0RFVjsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvcGh5L2Zp eGVkX3BoeS5jIGIvZHJpdmVycy9uZXQvcGh5L2ZpeGVkX3BoeS5jCj4gaW5kZXggZDgxMGY5MTRh YWE0Li44NDViZDdjMjA2NWEgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9uZXQvcGh5L2ZpeGVkX3Bo eS5jCj4gKysrIGIvZHJpdmVycy9uZXQvcGh5L2ZpeGVkX3BoeS5jCj4gQEAgLTE4LDYgKzE4LDcg QEAKPiAgI2luY2x1ZGUgPGxpbnV4L2Vyci5oPgo+ICAjaW5jbHVkZSA8bGludXgvc2xhYi5oPgo+ ICAjaW5jbHVkZSA8bGludXgvb2YuaD4KPiArI2luY2x1ZGUgPGxpbnV4L29mX21kaW8uaD4KPiAg I2luY2x1ZGUgPGxpbnV4L2dwaW8vY29uc3VtZXIuaD4KPiAgI2luY2x1ZGUgPGxpbnV4L3NlcWxv Y2suaD4KPiAgI2luY2x1ZGUgPGxpbnV4L2lkci5oPgo+IEBAIC0xOTEsNTAgKzE5MiwxMiBAQCBz dGF0aWMgdm9pZCBmaXhlZF9waHlfZGVsKGludCBwaHlfYWRkcikKPiAgCX0KPiAgfQo+ICAKPiAt I2lmZGVmIENPTkZJR19PRl9HUElPCj4gLXN0YXRpYyBzdHJ1Y3QgZ3Bpb19kZXNjICpmaXhlZF9w aHlfZ2V0X2dwaW9kKHN0cnVjdCBkZXZpY2Vfbm9kZSAqbnApCj4gLXsKPiAtCXN0cnVjdCBkZXZp Y2Vfbm9kZSAqZml4ZWRfbGlua19ub2RlOwo+IC0Jc3RydWN0IGdwaW9fZGVzYyAqZ3Bpb2Q7Cj4g LQo+IC0JaWYgKCFucCkKPiAtCQlyZXR1cm4gTlVMTDsKPiAtCj4gLQlmaXhlZF9saW5rX25vZGUg PSBvZl9nZXRfY2hpbGRfYnlfbmFtZShucCwgImZpeGVkLWxpbmsiKTsKPiAtCWlmICghZml4ZWRf bGlua19ub2RlKQo+IC0JCXJldHVybiBOVUxMOwo+IC0KPiAtCS8qCj4gLQkgKiBBcyB0aGUgZml4 ZWQgbGluayBpcyBqdXN0IGEgZGV2aWNlIHRyZWUgbm9kZSB3aXRob3V0IGFueQo+IC0JICogTGlu dXggZGV2aWNlIGFzc29jaWF0ZWQgd2l0aCBpdCwgd2Ugc2ltcGx5IGhhdmUgb2J0YWluCj4gLQkg KiB0aGUgR1BJTyBkZXNjcmlwdG9yIGZyb20gdGhlIGRldmljZSB0cmVlIGxpa2UgdGhpcy4KPiAt CSAqLwo+IC0JZ3Bpb2QgPSBncGlvZF9nZXRfZnJvbV9vZl9ub2RlKGZpeGVkX2xpbmtfbm9kZSwg ImxpbmstZ3Bpb3MiLCAwLAo+IC0JCQkJICAgICAgIEdQSU9EX0lOLCAibWRpbyIpOwo+IC0Jb2Zf bm9kZV9wdXQoZml4ZWRfbGlua19ub2RlKTsKPiAtCWlmIChJU19FUlIoZ3Bpb2QpKSB7Cj4gLQkJ aWYgKFBUUl9FUlIoZ3Bpb2QpID09IC1FUFJPQkVfREVGRVIpCj4gLQkJCXJldHVybiBncGlvZDsK PiAtCQlwcl9lcnIoImVycm9yIGdldHRpbmcgR1BJTyBmb3IgZml4ZWQgbGluayAlcE9GLCBwcm9j ZWVkIHdpdGhvdXRcbiIsCj4gLQkJICAgICAgIGZpeGVkX2xpbmtfbm9kZSk7Cj4gLQkJZ3Bpb2Qg PSBOVUxMOwo+IC0JfQo+IC0KPiAtCXJldHVybiBncGlvZDsKPiAtfQo+IC0jZWxzZQo+IC1zdGF0 aWMgc3RydWN0IGdwaW9fZGVzYyAqZml4ZWRfcGh5X2dldF9ncGlvZChzdHJ1Y3QgZGV2aWNlX25v ZGUgKm5wKQo+IC17Cj4gLQlyZXR1cm4gTlVMTDsKPiAtfQo+IC0jZW5kaWYKPiAtCj4gIHN0cnVj dCBwaHlfZGV2aWNlICpmaXhlZF9waHlfcmVnaXN0ZXIodW5zaWduZWQgaW50IGlycSwKPiAgCQkJ CSAgICAgIHN0cnVjdCBmaXhlZF9waHlfc3RhdHVzICpzdGF0dXMsCj4gLQkJCQkgICAgICBzdHJ1 Y3QgZGV2aWNlX25vZGUgKm5wKQo+ICsJCQkJICAgICAgc3RydWN0IGRldmljZV9ub2RlICpucCwK PiArCQkJCSAgICAgIHN0cnVjdCBncGlvX2Rlc2MgKmdwaW9kKQo+ICB7Cj4gIAlzdHJ1Y3QgZml4 ZWRfbWRpb19idXMgKmZtYiA9ICZwbGF0Zm9ybV9mbWI7Cj4gLQlzdHJ1Y3QgZ3Bpb19kZXNjICpn cGlvZCA9IE5VTEw7Cj4gIAlzdHJ1Y3QgcGh5X2RldmljZSAqcGh5Owo+ICAJaW50IHBoeV9hZGRy Owo+ICAJaW50IHJldDsKPiBAQCAtMjQyLDExICsyMDUsNiBAQCBzdHJ1Y3QgcGh5X2RldmljZSAq Zml4ZWRfcGh5X3JlZ2lzdGVyKHVuc2lnbmVkIGludCBpcnEsCj4gIAlpZiAoIWZtYi0+bWlpX2J1 cyB8fCBmbWItPm1paV9idXMtPnN0YXRlICE9IE1ESU9CVVNfUkVHSVNURVJFRCkKPiAgCQlyZXR1 cm4gRVJSX1BUUigtRVBST0JFX0RFRkVSKTsKPiAgCj4gLQkvKiBDaGVjayBpZiB3ZSBoYXZlIGEg R1BJTyBhc3NvY2lhdGVkIHdpdGggdGhpcyBmaXhlZCBwaHkgKi8KPiAtCWdwaW9kID0gZml4ZWRf cGh5X2dldF9ncGlvZChucCk7Cj4gLQlpZiAoSVNfRVJSKGdwaW9kKSkKPiAtCQlyZXR1cm4gRVJS X0NBU1QoZ3Bpb2QpOwo+IC0KPiAgCS8qIEdldCB0aGUgbmV4dCBhdmFpbGFibGUgUEhZIGFkZHJl c3MsIHVwIHRvIFBIWV9NQVhfQUREUiAqLwo+ICAJcGh5X2FkZHIgPSBpZGFfc2ltcGxlX2dldCgm cGh5X2ZpeGVkX2lkYSwgMCwgUEhZX01BWF9BRERSLCBHRlBfS0VSTkVMKTsKPiAgCWlmIChwaHlf YWRkciA8IDApCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L3VzYi9sYW43OHh4LmMgYi9kcml2 ZXJzL25ldC91c2IvbGFuNzh4eC5jCj4gaW5kZXggM2Q5MmVhNmZjYzAyLi5iZDg4ZjBhZWYyZmEg MTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9uZXQvdXNiL2xhbjc4eHguYwo+ICsrKyBiL2RyaXZlcnMv bmV0L3VzYi9sYW43OHh4LmMKPiBAQCAtMjA1MSw3ICsyMDUxLDcgQEAgc3RhdGljIHN0cnVjdCBw aHlfZGV2aWNlICpsYW43ODAxX3BoeV9pbml0KHN0cnVjdCBsYW43OHh4X25ldCAqZGV2KQo+ICAJ cGh5ZGV2ID0gcGh5X2ZpbmRfZmlyc3QoZGV2LT5tZGlvYnVzKTsKPiAgCWlmICghcGh5ZGV2KSB7 Cj4gIAkJbmV0ZGV2X2RiZyhkZXYtPm5ldCwgIlBIWSBOb3QgRm91bmQhISBSZWdpc3RlcmluZyBG aXhlZCBQSFlcbiIpOwo+IC0JCXBoeWRldiA9IGZpeGVkX3BoeV9yZWdpc3RlcihQSFlfUE9MTCwg JmZwaHlfc3RhdHVzLCBOVUxMKTsKPiArCQlwaHlkZXYgPSBmaXhlZF9waHlfcmVnaXN0ZXIoUEhZ X1BPTEwsICZmcGh5X3N0YXR1cywgTlVMTCwgTlVMTCk7Cj4gIAkJaWYgKElTX0VSUihwaHlkZXYp KSB7Cj4gIAkJCW5ldGRldl9lcnIoZGV2LT5uZXQsICJObyBQSFkvZml4ZWRfUEhZIGZvdW5kXG4i KTsKPiAgCQkJcmV0dXJuIE5VTEw7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvb2Yvb2ZfbWRpby5j IGIvZHJpdmVycy9vZi9vZl9tZGlvLmMKPiBpbmRleCBkZTYxNTczNTdlMjYuLjZiZTIxMjBiNWYw MyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL29mL29mX21kaW8uYwo+ICsrKyBiL2RyaXZlcnMvb2Yv b2ZfbWRpby5jCj4gQEAgLTIwLDYgKzIwLDcgQEAKPiAgI2luY2x1ZGUgPGxpbnV4L29mX21kaW8u aD4KPiAgI2luY2x1ZGUgPGxpbnV4L29mX25ldC5oPgo+ICAjaW5jbHVkZSA8bGludXgvbW9kdWxl Lmg+Cj4gKyNpbmNsdWRlIDxsaW51eC9ncGlvL2NvbnN1bWVyLmg+Cj4gIAo+ICAjZGVmaW5lIERF RkFVTFRfR1BJT19SRVNFVF9ERUxBWQkxMAkvKiBpbiBtaWNyb3NlY29uZHMgKi8KPiAgCj4gQEAg LTQ2MCw2ICs0NjEsNyBAQCBpbnQgb2ZfcGh5X3JlZ2lzdGVyX2ZpeGVkX2xpbmsoc3RydWN0IGRl dmljZV9ub2RlICpucCkKPiAgewo+ICAJc3RydWN0IGZpeGVkX3BoeV9zdGF0dXMgc3RhdHVzID0g e307Cj4gIAlzdHJ1Y3QgZGV2aWNlX25vZGUgKmZpeGVkX2xpbmtfbm9kZTsKPiArCXN0cnVjdCBn cGlvX2Rlc2MgKmdwaW9kID0gTlVMTDsKPiAgCXUzMiBmaXhlZF9saW5rX3Byb3BbNV07Cj4gIAlj b25zdCBjaGFyICptYW5hZ2VkOwo+ICAKPiBAQCAtNDgzLDcgKzQ4NSwxNyBAQCBpbnQgb2ZfcGh5 X3JlZ2lzdGVyX2ZpeGVkX2xpbmsoc3RydWN0IGRldmljZV9ub2RlICpucCkKPiAgCQlzdGF0dXMu cGF1c2UgPSBvZl9wcm9wZXJ0eV9yZWFkX2Jvb2woZml4ZWRfbGlua19ub2RlLCAicGF1c2UiKTsK PiAgCQlzdGF0dXMuYXN5bV9wYXVzZSA9IG9mX3Byb3BlcnR5X3JlYWRfYm9vbChmaXhlZF9saW5r X25vZGUsCj4gIAkJCQkJCQkgICJhc3ltLXBhdXNlIik7Cj4gKwo+ICsJCWdwaW9kID0gZ3Bpb2Rf Z2V0X2Zyb21fb2Zfbm9kZShmaXhlZF9saW5rX25vZGUsICJsaW5rLWdwaW9zIiwgMCwKPiArCQkJ CSAgICAgICBHUElPRF9JTiwgIm1kaW8iKTsKPiAgCQlvZl9ub2RlX3B1dChmaXhlZF9saW5rX25v ZGUpOwo+ICsJCWlmIChJU19FUlIoZ3Bpb2QpKSB7Cj4gKwkJCWlmIChQVFJfRVJSKGdwaW9kKSA9 PSAtRVBST0JFX0RFRkVSKQo+ICsJCQkJcmV0dXJuIFBUUl9FUlIoZ3Bpb2QpOwo+ICsJCQlwcl9l cnIoImVycm9yIGdldHRpbmcgR1BJTyBmb3IgZml4ZWQgbGluayAlcE9GLCBwcm9jZWVkIHdpdGhv dXRcbiIsCj4gKwkJCSAgICAgICBmaXhlZF9saW5rX25vZGUpOwo+ICsJCQlncGlvZCA9IE5VTEw7 Cj4gIGV4dGVybiBzdHJ1Y3QgcGh5X2RldmljZSAqZml4ZWRfcGh5X3JlZ2lzdGVyKHVuc2lnbmVk IGludCBpcnEsCj4gIAkJCQkJICAgICBzdHJ1Y3QgZml4ZWRfcGh5X3N0YXR1cyAqc3RhdHVzLAo+ IC0JCQkJCSAgICAgc3RydWN0IGRldmljZV9ub2RlICpucCk7Cj4gKwkJCQkJICAgICBzdHJ1Y3Qg ZGV2aWNlX25vZGUgKm5wLAo+ICsJCQkJCSAgICAgc3RydWN0IGdwaW9fZGVzYyAqZ3Bpb2QpOwoK SGkgTW9yaXR6CgpJIHRoaW5rIGl0IHdvdWxkIGJlIGJldHRlciB0byBhZGQgYSAKCmV4dGVybiBz dHJ1Y3QgcGh5X2RldmljZSAqZml4ZWRfcGh5X3JlZ2lzdGVyX2dwaW9kKHVuc2lnbmVkIGludCBp cnEsCiAgICAgCQkJCQkgICAgIHN0cnVjdCBmaXhlZF9waHlfc3RhdHVzICpzdGF0dXMsCgkJCQkJ ICAgICBzdHJ1Y3QgZ3Bpb19kZXNjICpncGlvZCk7CgpJZiB5b3UgYXJlIG5vdCB1c2luZyBEVCwg dGhlIG5wIGlzIHBvaW50bGVzcy4gU28gbGV0cyBrZWVwIHRoZSBBUEkKc2ltcGxlLgoKCUFuZHJl dwo=