aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorAdrian Hunter <adrian.hunter@nokia.com>2009-09-22 19:44:33 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2009-09-23 10:39:33 -0400
commiteae1aeeed852aae37621b82a9e7f6c05096a18fd (patch)
tree6a1b108032a5cf08ccfa6fffa29c81cccbe8c82d /include
parent9feae246963c648b212abad0f0eb8938de5f5fe5 (diff)
mmc: add ability to save power by powering off cards
Power can be saved by powering off cards that are not in use. This is similar to suspend / resume except it is under the control of the driver, and does not require any power management support. It can only be used when the driver can monitor whether the card is removed, otherwise it is unsafe. This is possible because, unlike suspend, the driver still receives card detect and / or cover switch interrupts. Signed-off-by: Adrian Hunter <adrian.hunter@nokia.com> Acked-by: Matt Fleming <matt@console-pimps.org> Cc: Ian Molton <ian@mnementh.co.uk> Cc: "Roberto A. Foglietta" <roberto.foglietta@gmail.com> Cc: Jarkko Lavinen <jarkko.lavinen@nokia.com> Cc: Denis Karpov <ext-denis.2.karpov@nokia.com> Cc: Pierre Ossman <pierre@ossman.eu> Cc: Philip Langdale <philipl@overt.org> Cc: "Madhusudhan" <madhu.cr@ti.com> Cc: <linux-mmc@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include')
-rw-r--r--include/linux/mmc/host.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/mmc/host.h b/include/linux/mmc/host.h
index bb867d2c26bd..c1cbe598d470 100644
--- a/include/linux/mmc/host.h
+++ b/include/linux/mmc/host.h
@@ -223,6 +223,9 @@ static inline void *mmc_priv(struct mmc_host *host)
223extern int mmc_suspend_host(struct mmc_host *, pm_message_t); 223extern int mmc_suspend_host(struct mmc_host *, pm_message_t);
224extern int mmc_resume_host(struct mmc_host *); 224extern int mmc_resume_host(struct mmc_host *);
225 225
226extern void mmc_power_save_host(struct mmc_host *host);
227extern void mmc_power_restore_host(struct mmc_host *host);
228
226extern void mmc_detect_change(struct mmc_host *, unsigned long delay); 229extern void mmc_detect_change(struct mmc_host *, unsigned long delay);
227extern void mmc_request_done(struct mmc_host *, struct mmc_request *); 230extern void mmc_request_done(struct mmc_host *, struct mmc_request *);
228 231