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: Andy Shevchenko Message-Id: <20181110181101.24557-2-andriy.shevchenko@linux.intel.com> Date: Sat, 10 Nov 2018 20:10:58 +0200 To: MyungJoo Ham , Chanwoo Choi , 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 Cc: Andy Shevchenko List-ID: QWxsIGN1cnJlbnQgdXNlcnMgb2YgZXh0Y29uX2dldF9leHRjb25fZGV2KCkgQVBJIGNvbnNpZGVy cwphbiBleHRjb24gZGV2aWNlIGEgbWFuZGF0b3J5IHRvIGFwcGVhci4gVGh1cywgdGhleSBhbGwg Y29udmVydApOVUxMIHBvaW50ZXIgdG8gLUVQUk9CRV9ERUZFUiBlcnJvciBjb2RlLgoKVGhlcmUg aXMgb25lIG1vcmUgY2FsbGVyIGFudGljaXBhdGVkIHdpdGggdGhlIHNhbWUgcmVxdWlyZW1lbnRz LgoKVG8gZGVjcmVhc2UgYSBjb2RlIGR1cGxpY2F0aW9uIGFuZCBhIGJ1cmRlbiB0byB0aGUgY2Fs bGVycywKcmV0dXJuIC1FUFJPQkVfREVGRVIgZGlyZWN0bHkgZnJvbSBleHRjb25fZ2V0X2V4dGNv bl9kZXYoKS4KClNpZ25lZC1vZmYtYnk6IEFuZHkgU2hldmNoZW5rbyA8YW5kcml5LnNoZXZjaGVu a29AbGludXguaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZXh0Y29uL2V4dGNvbi1heHAyODguYyAg ICAgICAgfCA0ICsrLS0KIGRyaXZlcnMvZXh0Y29uL2V4dGNvbi5jICAgICAgICAgICAgICAgfCAy ICstCiBkcml2ZXJzL3Bvd2VyL3N1cHBseS9heHAyODhfY2hhcmdlci5jIHwgOCArKysrLS0tLQog ZHJpdmVycy91c2IvcGh5L3BoeS1vbWFwLW90Zy5jICAgICAgICB8IDYgKysrLS0tCiBkcml2ZXJz L3VzYi90eXBlYy90Y3BtL2Z1c2IzMDIuYyAgICAgIHwgNCArKy0tCiA1IGZpbGVzIGNoYW5nZWQs IDEyIGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMv ZXh0Y29uL2V4dGNvbi1heHAyODguYyBiL2RyaXZlcnMvZXh0Y29uL2V4dGNvbi1heHAyODguYwpp bmRleCBhOTgzNzA4Yjc3YTYuLjM0NzJkM2I3NTZlZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9leHRj b24vZXh0Y29uLWF4cDI4OC5jCisrKyBiL2RyaXZlcnMvZXh0Y29uL2V4dGNvbi1heHAyODguYwpA QCAtMzYwLDggKzM2MCw4IEBAIHN0YXRpYyBpbnQgYXhwMjg4X2V4dGNvbl9wcm9iZShzdHJ1Y3Qg cGxhdGZvcm1fZGV2aWNlICpwZGV2KQogCQluYW1lID0gYWNwaV9kZXZfZ2V0X2ZpcnN0X21hdGNo X25hbWUoIklOVDM0OTYiLCBOVUxMLCAtMSk7CiAJCWlmIChuYW1lKSB7CiAJCQlpbmZvLT5pZF9l eHRjb24gPSBleHRjb25fZ2V0X2V4dGNvbl9kZXYobmFtZSk7Ci0JCQlpZiAoIWluZm8tPmlkX2V4 dGNvbikKLQkJCQlyZXR1cm4gLUVQUk9CRV9ERUZFUjsKKwkJCWlmIChJU19FUlIoaW5mby0+aWRf ZXh0Y29uKSkKKwkJCQlyZXR1cm4gUFRSX0VSUihpbmZvLT5pZF9leHRjb24pOwogCiAJCQlkZXZf aW5mbyhkZXYsICJjb250cm9sbGluZyBVU0Igcm9sZVxuIik7CiAJCX0gZWxzZSB7CmRpZmYgLS1n aXQgYS9kcml2ZXJzL2V4dGNvbi9leHRjb24uYyBiL2RyaXZlcnMvZXh0Y29uL2V4dGNvbi5jCmlu ZGV4IDVhYjA0OThiZTY1Mi4uMmJkMGYyZjMzZjA1IDEwMDY0NAotLS0gYS9kcml2ZXJzL2V4dGNv bi9leHRjb24uYworKysgYi9kcml2ZXJzL2V4dGNvbi9leHRjb24uYwpAQCAtODg0LDcgKzg4NCw3 IEBAIHN0cnVjdCBleHRjb25fZGV2ICpleHRjb25fZ2V0X2V4dGNvbl9kZXYoY29uc3QgY2hhciAq ZXh0Y29uX25hbWUpCiAJCWlmICghc3RyY21wKHNkLT5uYW1lLCBleHRjb25fbmFtZSkpCiAJCQln b3RvIG91dDsKIAl9Ci0Jc2QgPSBOVUxMOworCXNkID0gRVJSX1BUUigtRVBST0JFX0RFRkVSKTsK IG91dDoKIAltdXRleF91bmxvY2soJmV4dGNvbl9kZXZfbGlzdF9sb2NrKTsKIAlyZXR1cm4gc2Q7 CmRpZmYgLS1naXQgYS9kcml2ZXJzL3Bvd2VyL3N1cHBseS9heHAyODhfY2hhcmdlci5jIGIvZHJp dmVycy9wb3dlci9zdXBwbHkvYXhwMjg4X2NoYXJnZXIuYwppbmRleCA3MzU2NThlZTFjNjAuLjg1 NTg1NzdmY2NmNSAxMDA2NDQKLS0tIGEvZHJpdmVycy9wb3dlci9zdXBwbHkvYXhwMjg4X2NoYXJn ZXIuYworKysgYi9kcml2ZXJzL3Bvd2VyL3N1cHBseS9heHAyODhfY2hhcmdlci5jCkBAIC03Njgs MTcgKzc2OCwxNyBAQCBzdGF0aWMgaW50IGF4cDI4OF9jaGFyZ2VyX3Byb2JlKHN0cnVjdCBwbGF0 Zm9ybV9kZXZpY2UgKnBkZXYpCiAJaW5mby0+cmVnbWFwX2lycWMgPSBheHAyMHgtPnJlZ21hcF9p cnFjOwogCiAJaW5mby0+Y2FibGUuZWRldiA9IGV4dGNvbl9nZXRfZXh0Y29uX2RldihBWFAyODhf RVhUQ09OX0RFVl9OQU1FKTsKLQlpZiAoaW5mby0+Y2FibGUuZWRldiA9PSBOVUxMKSB7CisJaWYg KElTX0VSUihpbmZvLT5jYWJsZS5lZGV2KSkgewogCQlkZXZfZGJnKCZwZGV2LT5kZXYsICIlcyBp cyBub3QgcmVhZHksIHByb2JlIGRlZmVycmVkXG4iLAogCQkJQVhQMjg4X0VYVENPTl9ERVZfTkFN RSk7Ci0JCXJldHVybiAtRVBST0JFX0RFRkVSOworCQlyZXR1cm4gUFRSX0VSUihpbmZvLT5jYWJs ZS5lZGV2KTsKIAl9CiAKIAlpZiAoYWNwaV9kZXZfcHJlc2VudChVU0JfSE9TVF9FWFRDT05fSElE LCBOVUxMLCAtMSkpIHsKIAkJaW5mby0+b3RnLmNhYmxlID0gZXh0Y29uX2dldF9leHRjb25fZGV2 KFVTQl9IT1NUX0VYVENPTl9OQU1FKTsKLQkJaWYgKGluZm8tPm90Zy5jYWJsZSA9PSBOVUxMKSB7 CisJCWlmIChJU19FUlIoaW5mby0+b3RnLmNhYmxlKSkgewogCQkJZGV2X2RiZyhkZXYsICJFWFRD T05fVVNCX0hPU1QgaXMgbm90IHJlYWR5LCBwcm9iZSBkZWZlcnJlZFxuIik7Ci0JCQlyZXR1cm4g LUVQUk9CRV9ERUZFUjsKKwkJCXJldHVybiBQVFJfRVJSKGluZm8tPm90Zy5jYWJsZSk7CiAJCX0K IAkJZGV2X2luZm8oJnBkZXYtPmRldiwKIAkJCSAiVXNpbmcgIiBVU0JfSE9TVF9FWFRDT05fSElE ICIgZXh0Y29uIGZvciB1c2ItaWRcbiIpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy91c2IvcGh5L3Bo eS1vbWFwLW90Zy5jIGIvZHJpdmVycy91c2IvcGh5L3BoeS1vbWFwLW90Zy5jCmluZGV4IGVlMDg2 M2M2NTUzZS4uNjA1MzE0ZGRjZDNkIDEwMDY0NAotLS0gYS9kcml2ZXJzL3VzYi9waHkvcGh5LW9t YXAtb3RnLmMKKysrIGIvZHJpdmVycy91c2IvcGh5L3BoeS1vbWFwLW90Zy5jCkBAIC05MSwxMiAr OTEsMTIgQEAgc3RhdGljIGludCBvbWFwX290Z19wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNl ICpwZGV2KQogCWludCByZXQ7CiAJdTMyIHJldjsKIAotCWlmICghY29uZmlnIHx8ICFjb25maWct PmV4dGNvbikKKwlpZiAoIWNvbmZpZykKIAkJcmV0dXJuIC1FTk9ERVY7CiAKIAlleHRjb24gPSBl eHRjb25fZ2V0X2V4dGNvbl9kZXYoY29uZmlnLT5leHRjb24pOwotCWlmICghZXh0Y29uKQotCQly ZXR1cm4gLUVQUk9CRV9ERUZFUjsKKwlpZiAoSVNfRVJSKGV4dGNvbikpCisJCXJldHVybiBQVFJf RVJSKGV4dGNvbik7CiAKIAlvdGdfZGV2ID0gZGV2bV9remFsbG9jKCZwZGV2LT5kZXYsIHNpemVv Zigqb3RnX2RldiksIEdGUF9LRVJORUwpOwogCWlmICghb3RnX2RldikKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvdXNiL3R5cGVjL3RjcG0vZnVzYjMwMi5jIGIvZHJpdmVycy91c2IvdHlwZWMvdGNwbS9m dXNiMzAyLmMKaW5kZXggNDNiNjRkOTMwOWQwLi42ZDMzMjA2NjIwMmIgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvdXNiL3R5cGVjL3RjcG0vZnVzYjMwMi5jCisrKyBiL2RyaXZlcnMvdXNiL3R5cGVjL3Rj cG0vZnVzYjMwMi5jCkBAIC0xNzY3LDggKzE3NjcsOCBAQCBzdGF0aWMgaW50IGZ1c2IzMDJfcHJv YmUoc3RydWN0IGkyY19jbGllbnQgKmNsaWVudCwKIAkgKi8KIAlpZiAoZGV2aWNlX3Byb3BlcnR5 X3JlYWRfc3RyaW5nKGRldiwgImZjcyxleHRjb24tbmFtZSIsICZuYW1lKSA9PSAwKSB7CiAJCWNo aXAtPmV4dGNvbiA9IGV4dGNvbl9nZXRfZXh0Y29uX2RldihuYW1lKTsKLQkJaWYgKCFjaGlwLT5l eHRjb24pCi0JCQlyZXR1cm4gLUVQUk9CRV9ERUZFUjsKKwkJaWYgKElTX0VSUihjaGlwLT5leHRj b24pKQorCQkJcmV0dXJuIFBUUl9FUlIoY2hpcC0+ZXh0Y29uKTsKIAl9CiAKIAljaGlwLT52YnVz ID0gZGV2bV9yZWd1bGF0b3JfZ2V0KGNoaXAtPmRldiwgInZidXMiKTsK