blob: 55aa873c93963011e5f098eed66fc1f012ec88e6 [file] [log] [blame]
Sachin Kamat2a5153a2014-02-25 15:18:26 +05301#ifndef __MMC_MSM_SDCC_H
2#define __MMC_MSM_SDCC_H
Pavel Machek3989d172009-12-08 11:11:36 -08003
4#include <linux/mmc/host.h>
5#include <linux/mmc/card.h>
6#include <linux/mmc/sdio_func.h>
7
Sahitya Tummala7a892482011-01-18 11:22:49 +05308struct msm_mmc_gpio {
9 unsigned no;
10 const char *name;
11};
12
13struct msm_mmc_gpio_data {
14 struct msm_mmc_gpio *gpio;
15 u8 size;
16};
17
Sahitya Tummalab5d643d2010-07-29 16:55:34 +053018struct msm_mmc_platform_data {
Pavel Machek3989d172009-12-08 11:11:36 -080019 unsigned int ocr_mask; /* available voltages */
20 u32 (*translate_vdd)(struct device *, unsigned int);
21 unsigned int (*status)(struct device *);
Pavel Machek3989d172009-12-08 11:11:36 -080022 int (*register_status_notify)(void (*callback)(int card_present, void *dev_id), void *dev_id);
Sahitya Tummala7a892482011-01-18 11:22:49 +053023 struct msm_mmc_gpio_data *gpio_data;
Alexander Tarasikove91957e2011-08-21 15:52:44 +040024 void (*init_card)(struct mmc_card *card);
Pavel Machek3989d172009-12-08 11:11:36 -080025};
26
27#endif