diff options
author | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2016-02-04 22:56:21 -0300 |
---|---|---|
committer | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2016-02-04 22:56:21 -0300 |
commit | 94fb9fe08abd52c346407e7194e8e54e099988cb (patch) | |
tree | 76fafa9dbb83612421531575c9116e849ed2be65 /kernels/linux-libre-pae/tpmdd-devel-v3-base-platform-fix-binding-for-drivers-without-probe-callback.patch | |
parent | ddb2e5d1ce26ebe652f96202b96c514b54faf9fd (diff) | |
download | abslibre-94fb9fe08abd52c346407e7194e8e54e099988cb.tar.gz abslibre-94fb9fe08abd52c346407e7194e8e54e099988cb.tar.bz2 abslibre-94fb9fe08abd52c346407e7194e8e54e099988cb.zip |
linux-libre-{pae,xen}-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-pae/tpmdd-devel-v3-base-platform-fix-binding-for-drivers-without-probe-callback.patch')
-rw-r--r-- | kernels/linux-libre-pae/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-pae/tpmdd-devel-v3-base-platform-fix-binding-for-drivers-without-probe-callback.patch b/kernels/linux-libre-pae/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-pae/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) { |