|
@@ -155,6 +155,13 @@ struct mmc_hotplug {
|
|
|
void *handler_priv;
|
|
|
};
|
|
|
|
|
|
+struct regulator;
|
|
|
+
|
|
|
+struct mmc_supply {
|
|
|
+ struct regulator *vmmc; /* Card power supply */
|
|
|
+ struct regulator *vqmmc; /* Optional Vccq supply */
|
|
|
+};
|
|
|
+
|
|
|
struct mmc_host {
|
|
|
struct device *parent;
|
|
|
struct device class_dev;
|
|
@@ -309,6 +316,7 @@ struct mmc_host {
|
|
|
#ifdef CONFIG_REGULATOR
|
|
|
bool regulator_enabled; /* regulator state */
|
|
|
#endif
|
|
|
+ struct mmc_supply supply;
|
|
|
|
|
|
struct dentry *debugfs_root;
|
|
|
|
|
@@ -357,13 +365,12 @@ static inline void mmc_signal_sdio_irq(struct mmc_host *host)
|
|
|
wake_up_process(host->sdio_irq_thread);
|
|
|
}
|
|
|
|
|
|
-struct regulator;
|
|
|
-
|
|
|
#ifdef CONFIG_REGULATOR
|
|
|
int mmc_regulator_get_ocrmask(struct regulator *supply);
|
|
|
int mmc_regulator_set_ocr(struct mmc_host *mmc,
|
|
|
struct regulator *supply,
|
|
|
unsigned short vdd_bit);
|
|
|
+int mmc_regulator_get_supply(struct mmc_host *mmc);
|
|
|
#else
|
|
|
static inline int mmc_regulator_get_ocrmask(struct regulator *supply)
|
|
|
{
|
|
@@ -376,6 +383,11 @@ static inline int mmc_regulator_set_ocr(struct mmc_host *mmc,
|
|
|
{
|
|
|
return 0;
|
|
|
}
|
|
|
+
|
|
|
+static inline int mmc_regulator_get_supply(struct mmc_host *mmc)
|
|
|
+{
|
|
|
+ return 0;
|
|
|
+}
|
|
|
#endif
|
|
|
|
|
|
int mmc_card_awake(struct mmc_host *host);
|