diff options
author | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2016-02-04 22:37:54 -0300 |
---|---|---|
committer | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2016-02-04 22:37:54 -0300 |
commit | ba83d8b4e6285570758da47a1f616ed41aa47fc3 (patch) | |
tree | ab8d2d776eb46964e8f0249dd3f185537a0985e3 /kernels/linux-libre-knock/tpmdd-devel-v3-base-platform-fix-binding-for-drivers-without-probe-callback.patch | |
parent | db19f79500d6727a8870a401103849d86ef05754 (diff) | |
download | abslibre-ba83d8b4e6285570758da47a1f616ed41aa47fc3.tar.gz abslibre-ba83d8b4e6285570758da47a1f616ed41aa47fc3.tar.bz2 abslibre-ba83d8b4e6285570758da47a1f616ed41aa47fc3.zip |
linux-libre-knock-4.4.1_gnu-1: updating version
* disable CONFIG_X86_VERBOSE_BOOTUP - FS#47402 -> https://bugs.archlinux.org/task/47402
* enable CONFIG_VGACON_SOFT_SCROLLBACK - FS#47442 -> https://bugs.archlinux.org/task/47442
* unsetting CONFIG_ACPI_REV_OVERRIDE_POSSIBLE - FS#47710 -> https://bugs.archlinux.org/task/47710
* fix sdhci broken on some boards - FS#47778 -> https://bugs.archlinux.org/task/47778
* fix kernel panics on platform modules - FS#47805 -> https://bugs.archlinux.org/task/47805
* fix debug output - FS#47849 -> https://bugs.archlinux.org/task/47849
* fix FS#47757 -> https://bugs.archlinux.org/task/47757
Diffstat (limited to 'kernels/linux-libre-knock/tpmdd-devel-v3-base-platform-fix-binding-for-drivers-without-probe-callback.patch')
-rw-r--r-- | kernels/linux-libre-knock/tpmdd-devel-v3-base-platform-fix-binding-for-drivers-without-probe-callback.patch | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/kernels/linux-libre-knock/tpmdd-devel-v3-base-platform-fix-binding-for-drivers-without-probe-callback.patch b/kernels/linux-libre-knock/tpmdd-devel-v3-base-platform-fix-binding-for-drivers-without-probe-callback.patch new file mode 100644 index 000000000..691ab79b9 --- /dev/null +++ b/kernels/linux-libre-knock/tpmdd-devel-v3-base-platform-fix-binding-for-drivers-without-probe-callback.patch @@ -0,0 +1,24 @@ +diff --git a/drivers/base/platform.c b/drivers/base/platform.c +index 1dd6d3b..176b59f 100644 +--- a/drivers/base/platform.c ++++ b/drivers/base/platform.c +@@ -513,10 +513,15 @@ static int platform_drv_probe(struct device *_dev) + return ret; + + ret = dev_pm_domain_attach(_dev, true); +- if (ret != -EPROBE_DEFER && drv->probe) { +- ret = drv->probe(dev); +- if (ret) +- dev_pm_domain_detach(_dev, true); ++ if (ret != -EPROBE_DEFER) { ++ if (drv->probe) { ++ ret = drv->probe(dev); ++ if (ret) ++ dev_pm_domain_detach(_dev, true); ++ } else { ++ /* don't fail if just dev_pm_domain_attach failed */ ++ ret = 0; ++ } + } + + if (drv->prevent_deferred_probe && ret == -EPROBE_DEFER) { |