History

Merge tag 'driver-core-4.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core

Pull driver core fix from Greg KH: "Here's a single driver core fix that resolves an issue a lot of users have been hitting for a while now. It's been tested a lot and has been in linux-next successfully for a while" * tag 'driver-core-4.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: base/platform: Fix platform drivers with no probe callback

Linus Torvalds committed 10 years ago

Commit f3ca9032 parents 510ae0c 25cad691 file · +9 −4Browse files

Unified · Split

drivers/base/platform.c+9−4
@@ -558,10 +558,15 @@ static int platform_drv_probe(struct device *_dev) · 557 unmodified lines
558558 return ret;
559559
560560 ret = dev_pm_domain_attach(_dev, true);
561− if (ret != -EPROBE_DEFER && drv->probe) {
562− ret = drv->probe(dev);
563− if (ret)
564− dev_pm_domain_detach(_dev, true);
561+ if (ret != -EPROBE_DEFER) {
562+ if (drv->probe) {
563+ ret = drv->probe(dev);
564+ if (ret)
565+ dev_pm_domain_detach(_dev, true);
566+ } else {
567+ /* don't fail if just dev_pm_domain_attach failed */
568+ ret = 0;
569+ }
565570 }
566571
567572 if (drv->prevent_deferred_probe && ret == -EPROBE_DEFER) {