1/* 2 * arch/arm/include/asm/mach/mmc.h 3 */ 4#ifndef ASMARM_MACH_MMC_H 5#define ASMARM_MACH_MMC_H 6 7#include <linux/mmc/host.h> 8#include <linux/mmc/card.h> 9#include <linux/mmc/sdio_func.h> 10 11struct embedded_sdio_data { 12 struct sdio_cis cis; 13 struct sdio_cccr cccr; 14 struct sdio_embedded_func *funcs; 15 int num_funcs; 16}; 17 18struct msm_mmc_gpio { 19 unsigned no; 20 const char *name; 21}; 22 23struct msm_mmc_gpio_data { 24 struct msm_mmc_gpio *gpio; 25 u8 size; 26}; 27 28struct msm_mmc_platform_data { 29 unsigned int ocr_mask; /* available voltages */ 30 u32 (*translate_vdd)(struct device *, unsigned int); 31 unsigned int (*status)(struct device *); 32 struct embedded_sdio_data *embedded_sdio; 33 int (*register_status_notify)(void (*callback)(int card_present, void *dev_id), void *dev_id); 34 struct msm_mmc_gpio_data *gpio_data; 35}; 36 37#endif 38