1 #ifndef LINUX_MMC_SH_MOBILE_SDHI_H
2 #define LINUX_MMC_SH_MOBILE_SDHI_H
4 #include <linux/types.h>
6 struct platform_device;
8 #define SH_MOBILE_SDHI_IRQ_CARD_DETECT "card_detect"
9 #define SH_MOBILE_SDHI_IRQ_SDCARD "sdcard"
10 #define SH_MOBILE_SDHI_IRQ_SDIO "sdio"
13 * struct sh_mobile_sdhi_ops - SDHI driver callbacks
14 * @cd_wakeup: trigger a card-detection run
16 struct sh_mobile_sdhi_ops {
17 void (*cd_wakeup)(const struct platform_device *pdev);
20 struct sh_mobile_sdhi_info {
23 unsigned long tmio_flags;
24 unsigned long tmio_caps;
25 unsigned long tmio_caps2;
26 u32 tmio_ocr_mask; /* available MMC voltages */
29 /* callbacks for board specific setup code */
30 int (*init)(struct platform_device *pdev,
31 const struct sh_mobile_sdhi_ops *ops);
32 void (*cleanup)(struct platform_device *pdev);
35 #endif /* LINUX_MMC_SH_MOBILE_SDHI_H */