dd498effcf
Support for multi-level dynamic power saving states in omap_hsmmc (ENABLED->DISABLED->OFF). In the "deepest" state (OFF) we switch off the voltage regulators. Signed-off-by: Denis Karpov <ext-denis.2.karpov@nokia.com> 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>
37 lines
1.1 KiB
C
37 lines
1.1 KiB
C
/*
|
|
* MMC definitions for OMAP2
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License version 2 as
|
|
* published by the Free Software Foundation.
|
|
*/
|
|
|
|
struct twl4030_hsmmc_info {
|
|
u8 mmc; /* controller 1/2/3 */
|
|
u8 wires; /* 1/4/8 wires */
|
|
bool transceiver; /* MMC-2 option */
|
|
bool ext_clock; /* use external pin for input clock */
|
|
bool cover_only; /* No card detect - just cover switch */
|
|
bool nonremovable; /* Nonremovable e.g. eMMC */
|
|
bool power_saving; /* Try to sleep or power off when possible */
|
|
int gpio_cd; /* or -EINVAL */
|
|
int gpio_wp; /* or -EINVAL */
|
|
char *name; /* or NULL for default */
|
|
struct device *dev; /* returned: pointer to mmc adapter */
|
|
int ocr_mask; /* temporary HACK */
|
|
};
|
|
|
|
#if defined(CONFIG_REGULATOR) && \
|
|
(defined(CONFIG_MMC_OMAP) || defined(CONFIG_MMC_OMAP_MODULE) || \
|
|
defined(CONFIG_MMC_OMAP_HS) || defined(CONFIG_MMC_OMAP_HS_MODULE))
|
|
|
|
void twl4030_mmc_init(struct twl4030_hsmmc_info *);
|
|
|
|
#else
|
|
|
|
static inline void twl4030_mmc_init(struct twl4030_hsmmc_info *info)
|
|
{
|
|
}
|
|
|
|
#endif
|