blob: 082a736a9bfb3e7e31ed018e6036c4e033af9359 [file] [log] [blame]
Robert P. J. Day100e9182011-05-27 16:04:03 -04001#ifndef LINUX_MMC_SH_MOBILE_SDHI_H
2#define LINUX_MMC_SH_MOBILE_SDHI_H
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +01003
4#include <linux/types.h>
5
Guennadi Liakhovetski25958802011-05-11 16:51:15 +00006struct platform_device;
7struct tmio_mmc_data;
8
Simon Hormand5098cb2011-08-26 10:42:39 +02009#define SH_MOBILE_SDHI_IRQ_CARD_DETECT "card_detect"
10#define SH_MOBILE_SDHI_IRQ_SDCARD "sdcard"
11#define SH_MOBILE_SDHI_IRQ_SDIO "sdio"
12
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +010013struct sh_mobile_sdhi_info {
14 int dma_slave_tx;
15 int dma_slave_rx;
16 unsigned long tmio_flags;
17 unsigned long tmio_caps;
18 u32 tmio_ocr_mask; /* available MMC voltages */
Guennadi Liakhovetski58126c82012-02-09 22:57:10 +010019 unsigned int cd_gpio;
Guennadi Liakhovetski25958802011-05-11 16:51:15 +000020 struct tmio_mmc_data *pdata;
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +010021 void (*set_pwr)(struct platform_device *pdev, int state);
22 int (*get_cd)(struct platform_device *pdev);
23};
24
Robert P. J. Day100e9182011-05-27 16:04:03 -040025#endif /* LINUX_MMC_SH_MOBILE_SDHI_H */