[PATCH] mmc, kernel 4.0.5, SDIO power management error message

From: Greg Alexander
Date: Mon Jun 08 2015 - 09:34:22 EST


On suspend, SDIO (MMC) power management fails and removes a card
("mmc2: card 0001 removed") if any of the card's functions don't support
power management. Then nothing ever resumes it, so the card is lost
forever. With this patch, it will also provide a useful error message
("btsdio mmc2:0001:3: pre_suspend failed (driver has no PM)"). This will
save hours of diagnostic effort for anyone whose SDIO cards disappear on
suspend.

--- drivers/mmc/core/sdio.c.orig 2015-06-06 11:21:22.000000000 -0400
+++ drivers/mmc/core/sdio.c 2015-06-08 09:21:00.000000000 -0400
@@ -918,6 +918,8 @@
const struct dev_pm_ops *pmops = func->dev.driver->pm;
if (!pmops || !pmops->suspend || !pmops->resume) {
/* force removal of entire card in that case */
+ dev_err(&func->dev, "pre_suspend failed "
+ "(driver has no PM)\n");
err = -ENOSYS;
break;
}
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/