[arch-commits] Commit in linux/trunk (3 files)

Tobias Powalowski tpowa at archlinux.org
Tue Jan 19 20:27:32 UTC 2016


    Date: Tuesday, January 19, 2016 @ 21:27:32
  Author: tpowa
Revision: 258421

fix #47805, #47778

Added:
  linux/trunk/0001-sdhci-revert.patch
  linux/trunk/tpmdd-devel-v3-base-platform-fix-binding-for-drivers-without-probe-callback.patch
Modified:
  linux/trunk/PKGBUILD

-----------------------------------------------------------------------------------+
 0001-sdhci-revert.patch                                                           |   25 ++++++++++
 PKGBUILD                                                                          |   19 ++++++-
 tpmdd-devel-v3-base-platform-fix-binding-for-drivers-without-probe-callback.patch |   24 +++++++++
 3 files changed, 65 insertions(+), 3 deletions(-)

Added: 0001-sdhci-revert.patch
===================================================================
--- 0001-sdhci-revert.patch	                        (rev 0)
+++ 0001-sdhci-revert.patch	2016-01-19 20:27:32 UTC (rev 258421)
@@ -0,0 +1,25 @@
+index 2cadf08..b48565e 100644
+--- a/drivers/mmc/host/sdhci.c
++++ b/drivers/mmc/host/sdhci.c
+@@ -1895,9 +1895,9 @@ static int sdhci_execute_tuning(struct mmc_host *mmc, u32 opcode)
+ 		tuning_count = host->tuning_count;
+ 
+ 	/*
+-	 * The Host Controller needs tuning only in case of SDR104 mode
+-	 * and for SDR50 mode when Use Tuning for SDR50 is set in the
+-	 * Capabilities register.
++	 * The Host Controller needs tuning in case of SDR104 and DDR50
++	 * mode, and for SDR50 mode when Use Tuning for SDR50 is set in
++	 * the Capabilities register.
+ 	 * If the Host Controller supports the HS200 mode then the
+ 	 * tuning function has to be executed.
+ 	 */
+@@ -1917,6 +1917,7 @@ static int sdhci_execute_tuning(struct mmc_host *mmc, u32 opcode)
+ 		break;
+ 
+ 	case MMC_TIMING_UHS_SDR104:
++	case MMC_TIMING_UHS_DDR50:
+ 		break;
+ 
+ 	case MMC_TIMING_UHS_SDR50:
+generated by cgit v0.11.2 at 2016-01-01 22:11:38 (GMT)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2016-01-19 19:42:18 UTC (rev 258420)
+++ PKGBUILD	2016-01-19 20:27:32 UTC (rev 258421)
@@ -6,7 +6,7 @@
 #pkgbase=linux-custom       # Build kernel with a different name
 _srcname=linux-4.4
 pkgver=4.4
-pkgrel=3
+pkgrel=4
 arch=('i686' 'x86_64')
 url="http://www.kernel.org/"
 license=('GPL2')
@@ -20,7 +20,9 @@
         'config' 'config.x86_64'
         # standard config files for mkinitcpio ramdisk
         'linux.preset'
-        'change-default-console-loglevel.patch')
+        'change-default-console-loglevel.patch'
+        '0001-sdhci-revert.patch'
+        'tpmdd-devel-v3-base-platform-fix-binding-for-drivers-without-probe-callback.patch')
 
 sha256sums=('401d7c8fef594999a460d10c72c5a94e9c2e1022f16795ec51746b0d165418b2'
             'SKIP'
@@ -27,7 +29,9 @@
             'd402c67f5a7334ac9e242344055ef4ac63fe43a1d8f1cda82eddd59d7242a63e'
             'ddeadf2910deb0803d4d4920c4dc7f07d3fb63bca564073aeb5f6181358f20d7'
             'f0d90e756f14533ee67afda280500511a62465b4f76adcc5effa95a40045179c'
-            '1256b241cd477b265a3c2d64bdc19ffe3c9bbcee82ea3994c590c2c76e767d99')
+            '1256b241cd477b265a3c2d64bdc19ffe3c9bbcee82ea3994c590c2c76e767d99'
+            '5313df7cb5b4d005422bd4cd0dae956b2dadba8f3db904275aaf99ac53894375'
+            'ab57037ecee0a425c612babdff47c831378bca0bff063a1308599989a350226d')
 validpgpkeys=(
               'ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds
               '647F28654894E3BD457199BE38DBBDC86092693E' # Greg Kroah-Hartman
@@ -44,6 +48,15 @@
   # add latest fixes from stable queue, if needed
   # http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git
   
+  # revert http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=9faac7b95ea4f9e83b7a914084cc81ef1632fd91
+  # fixes #47778 sdhci broken on some boards
+  # https://bugzilla.kernel.org/show_bug.cgi?id=106541
+  patch -Rp1 -i "${srcdir}/0001-sdhci-revert.patch"
+
+  # fixes #47805 kernel panics on platform modules
+  # https://bugzilla.kernel.org/show_bug.cgi?id=110751
+  patch -Np1 -i "${srcdir}/tpmdd-devel-v3-base-platform-fix-binding-for-drivers-without-probe-callback.patch"
+
   # set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param)
   # remove this when a Kconfig knob is made available by upstream
   # (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227)

Added: tpmdd-devel-v3-base-platform-fix-binding-for-drivers-without-probe-callback.patch
===================================================================
--- tpmdd-devel-v3-base-platform-fix-binding-for-drivers-without-probe-callback.patch	                        (rev 0)
+++ tpmdd-devel-v3-base-platform-fix-binding-for-drivers-without-probe-callback.patch	2016-01-19 20:27:32 UTC (rev 258421)
@@ -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) {



More information about the arch-commits mailing list