From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chanwoo Choi Subject: Re: [PATCH v1 2/5] extcon: Return -EPROBE_DEFER when extcon device is not found Date: Wed, 14 Nov 2018 08:52:35 +0900 Message-ID: <5BEB63C3.1020504@samsung.com> References: <20181110181101.24557-1-andriy.shevchenko@linux.intel.com> <20181110181101.24557-2-andriy.shevchenko@linux.intel.com> <5BE8C821.5080002@samsung.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8BIT Return-path: In-reply-to: <5BE8C821.5080002@samsung.com> Sender: linux-kernel-owner@vger.kernel.org To: Andy Shevchenko , MyungJoo Ham , linux-usb@vger.kernel.org, Felipe Balbi , Guenter Roeck , Heikki Krogerus , Roger Quadros , linux-pm@vger.kernel.org, "Rafael J. Wysocki" , Sebastian Reichel , linux-omap@vger.kernel.org, Darren Hart , platform-driver-x86@vger.kernel.org, Greg Kroah-Hartman , linux-kernel@vger.kernel.org, Chen-Yu Tsai , Hans de Goede List-Id: linux-omap@vger.kernel.org Hi Andy, I was thinking about again to change from NULL to EPROBE_DEFER. extcon_get_extcon_dev() function was almost called in the probe function. But, this function might be called on other position instead of probe. ENODEV is more correct error instead of EPROBE_DEFER. Sorry. I'll withdraw my opinion related acked-by tag until we are clarifying it. On 2018년 11월 12일 09:24, Chanwoo Choi wrote: > Hi Andy, > > On 2018년 11월 11일 03:10, Andy Shevchenko wrote: >> All current users of extcon_get_extcon_dev() API considers >> an extcon device a mandatory to appear. Thus, they all convert >> NULL pointer to -EPROBE_DEFER error code. >> >> There is one more caller anticipated with the same requirements. >> >> To decrease a code duplication and a burden to the callers, >> return -EPROBE_DEFER directly from extcon_get_extcon_dev(). >> >> Signed-off-by: Andy Shevchenko >> --- >> drivers/extcon/extcon-axp288.c | 4 ++-- >> drivers/extcon/extcon.c | 2 +- >> drivers/power/supply/axp288_charger.c | 8 ++++---- >> drivers/usb/phy/phy-omap-otg.c | 6 +++--- >> drivers/usb/typec/tcpm/fusb302.c | 4 ++-- >> 5 files changed, 12 insertions(+), 12 deletions(-) > > Acked-by: Chanwoo Choi > > Best Regards, > Chanwoo Choi > >> >> diff --git a/drivers/extcon/extcon-axp288.c b/drivers/extcon/extcon-axp288.c >> index a983708b77a6..3472d3b756ed 100644 >> --- a/drivers/extcon/extcon-axp288.c >> +++ b/drivers/extcon/extcon-axp288.c >> @@ -360,8 +360,8 @@ static int axp288_extcon_probe(struct platform_device *pdev) >> name = acpi_dev_get_first_match_name("INT3496", NULL, -1); >> if (name) { >> info->id_extcon = extcon_get_extcon_dev(name); >> - if (!info->id_extcon) >> - return -EPROBE_DEFER; >> + if (IS_ERR(info->id_extcon)) >> + return PTR_ERR(info->id_extcon); >> >> dev_info(dev, "controlling USB role\n"); >> } else { >> diff --git a/drivers/extcon/extcon.c b/drivers/extcon/extcon.c >> index 5ab0498be652..2bd0f2f33f05 100644 >> --- a/drivers/extcon/extcon.c >> +++ b/drivers/extcon/extcon.c >> @@ -884,7 +884,7 @@ struct extcon_dev *extcon_get_extcon_dev(const char *extcon_name) >> if (!strcmp(sd->name, extcon_name)) >> goto out; >> } >> - sd = NULL; >> + sd = ERR_PTR(-EPROBE_DEFER); (snip) -- Best Regards, Chanwoo Choi Samsung Electronics 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: [v1,2/5] extcon: Return -EPROBE_DEFER when extcon device is not found From: Chanwoo Choi Message-Id: <5BEB63C3.1020504@samsung.com> Date: Wed, 14 Nov 2018 08:52:35 +0900 To: Andy Shevchenko , MyungJoo Ham , linux-usb@vger.kernel.org, Felipe Balbi , Guenter Roeck , Heikki Krogerus , Roger Quadros , linux-pm@vger.kernel.org, "Rafael J. Wysocki" , Sebastian Reichel , linux-omap@vger.kernel.org, Darren Hart , platform-driver-x86@vger.kernel.org, Greg Kroah-Hartman , linux-kernel@vger.kernel.org, Chen-Yu Tsai , Hans de Goede List-ID: SGkgQW5keSwKCkkgd2FzIHRoaW5raW5nIGFib3V0IGFnYWluIHRvIGNoYW5nZSBmcm9tIE5VTEwg dG8gRVBST0JFX0RFRkVSLgoKZXh0Y29uX2dldF9leHRjb25fZGV2KCkgZnVuY3Rpb24gd2FzIGFs bW9zdCBjYWxsZWQgaW4gdGhlIHByb2JlIGZ1bmN0aW9uLgpCdXQsIHRoaXMgZnVuY3Rpb24gbWln aHQgYmUgY2FsbGVkIG9uIG90aGVyIHBvc2l0aW9uIGluc3RlYWQgb2YgcHJvYmUuCgpFTk9ERVYg aXMgbW9yZSBjb3JyZWN0IGVycm9yIGluc3RlYWQgb2YgRVBST0JFX0RFRkVSLgoKU29ycnkuIEkn bGwgd2l0aGRyYXcgbXkgb3BpbmlvbiByZWxhdGVkIGFja2VkLWJ5IHRhZyB1bnRpbCB3ZSBhcmUg Y2xhcmlmeWluZyBpdC4KCk9uIDIwMTjrhYQgMTHsm5QgMTLsnbwgMDk6MjQsIENoYW53b28gQ2hv aSB3cm90ZToKPiBIaSBBbmR5LAo+IAo+IE9uIDIwMTjrhYQgMTHsm5QgMTHsnbwgMDM6MTAsIEFu ZHkgU2hldmNoZW5rbyB3cm90ZToKPj4gQWxsIGN1cnJlbnQgdXNlcnMgb2YgZXh0Y29uX2dldF9l eHRjb25fZGV2KCkgQVBJIGNvbnNpZGVycwo+PiBhbiBleHRjb24gZGV2aWNlIGEgbWFuZGF0b3J5 IHRvIGFwcGVhci4gVGh1cywgdGhleSBhbGwgY29udmVydAo+PiBOVUxMIHBvaW50ZXIgdG8gLUVQ Uk9CRV9ERUZFUiBlcnJvciBjb2RlLgo+Pgo+PiBUaGVyZSBpcyBvbmUgbW9yZSBjYWxsZXIgYW50 aWNpcGF0ZWQgd2l0aCB0aGUgc2FtZSByZXF1aXJlbWVudHMuCj4+Cj4+IFRvIGRlY3JlYXNlIGEg Y29kZSBkdXBsaWNhdGlvbiBhbmQgYSBidXJkZW4gdG8gdGhlIGNhbGxlcnMsCj4+IHJldHVybiAt RVBST0JFX0RFRkVSIGRpcmVjdGx5IGZyb20gZXh0Y29uX2dldF9leHRjb25fZGV2KCkuCj4+Cj4+ IFNpZ25lZC1vZmYtYnk6IEFuZHkgU2hldmNoZW5rbyA8YW5kcml5LnNoZXZjaGVua29AbGludXgu aW50ZWwuY29tPgo+PiAtLS0KPj4gIGRyaXZlcnMvZXh0Y29uL2V4dGNvbi1heHAyODguYyAgICAg ICAgfCA0ICsrLS0KPj4gIGRyaXZlcnMvZXh0Y29uL2V4dGNvbi5jICAgICAgICAgICAgICAgfCAy ICstCj4+ICBkcml2ZXJzL3Bvd2VyL3N1cHBseS9heHAyODhfY2hhcmdlci5jIHwgOCArKysrLS0t LQo+PiAgZHJpdmVycy91c2IvcGh5L3BoeS1vbWFwLW90Zy5jICAgICAgICB8IDYgKysrLS0tCj4+ ICBkcml2ZXJzL3VzYi90eXBlYy90Y3BtL2Z1c2IzMDIuYyAgICAgIHwgNCArKy0tCj4+ICA1IGZp bGVzIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQo+IAo+IEFja2Vk LWJ5OiBDaGFud29vIENob2kgPGN3MDAuY2hvaUBzYW1zdW5nLmNvbT4KPiAKPiBCZXN0IFJlZ2Fy ZHMsCj4gQ2hhbndvbyBDaG9pCj4gCj4+Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2V4dGNvbi9l eHRjb24tYXhwMjg4LmMgYi9kcml2ZXJzL2V4dGNvbi9leHRjb24tYXhwMjg4LmMKPj4gaW5kZXgg YTk4MzcwOGI3N2E2Li4zNDcyZDNiNzU2ZWQgMTAwNjQ0Cj4+IC0tLSBhL2RyaXZlcnMvZXh0Y29u L2V4dGNvbi1heHAyODguYwo+PiArKysgYi9kcml2ZXJzL2V4dGNvbi9leHRjb24tYXhwMjg4LmMK Pj4gQEAgLTM2MCw4ICszNjAsOCBAQCBzdGF0aWMgaW50IGF4cDI4OF9leHRjb25fcHJvYmUoc3Ry dWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKPj4gIAkJbmFtZSA9IGFjcGlfZGV2X2dldF9maXJz dF9tYXRjaF9uYW1lKCJJTlQzNDk2IiwgTlVMTCwgLTEpOwo+PiAgCQlpZiAobmFtZSkgewo+PiAg CQkJaW5mby0+aWRfZXh0Y29uID0gZXh0Y29uX2dldF9leHRjb25fZGV2KG5hbWUpOwo+PiAtCQkJ aWYgKCFpbmZvLT5pZF9leHRjb24pCj4+IC0JCQkJcmV0dXJuIC1FUFJPQkVfREVGRVI7Cj4+ICsJ CQlpZiAoSVNfRVJSKGluZm8tPmlkX2V4dGNvbikpCj4+ICsJCQkJcmV0dXJuIFBUUl9FUlIoaW5m by0+aWRfZXh0Y29uKTsKPj4gIAo+PiAgCQkJZGV2X2luZm8oZGV2LCAiY29udHJvbGxpbmcgVVNC IHJvbGVcbiIpOwo+PiAgCQl9IGVsc2Ugewo+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9leHRjb24v ZXh0Y29uLmMgYi9kcml2ZXJzL2V4dGNvbi9leHRjb24uYwo+PiBpbmRleCA1YWIwNDk4YmU2NTIu LjJiZDBmMmYzM2YwNSAxMDA2NDQKPj4gLS0tIGEvZHJpdmVycy9leHRjb24vZXh0Y29uLmMKPj4g KysrIGIvZHJpdmVycy9leHRjb24vZXh0Y29uLmMKPj4gQEAgLTg4NCw3ICs4ODQsNyBAQCBzdHJ1 Y3QgZXh0Y29uX2RldiAqZXh0Y29uX2dldF9leHRjb25fZGV2KGNvbnN0IGNoYXIgKmV4dGNvbl9u YW1lKQo+PiAgCQlpZiAoIXN0cmNtcChzZC0+bmFtZSwgZXh0Y29uX25hbWUpKQo+PiAgCQkJZ290 byBvdXQ7Cj4+ICAJfQo+PiAtCXNkID0gTlVMTDsKPj4gKwlzZCA9IEVSUl9QVFIoLUVQUk9CRV9E RUZFUik7CgoKKHNuaXApCg==