Commit | Line | Data |
---|---|---|
100e9186 RD |
1 | #ifndef LINUX_MMC_SH_MOBILE_SDHI_H |
2 | #define LINUX_MMC_SH_MOBILE_SDHI_H | |
42051e8a GL |
3 | |
4 | #include <linux/types.h> | |
5 | ||
25958804 GL |
6 | struct platform_device; |
7 | struct tmio_mmc_data; | |
8 | ||
d5098cb6 SH |
9 | #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 | ||
7f524217 GL |
13 | /** |
14 | * struct sh_mobile_sdhi_ops - SDHI driver callbacks | |
15 | * @cd_wakeup: trigger a card-detection run | |
16 | */ | |
17 | struct sh_mobile_sdhi_ops { | |
18 | void (*cd_wakeup)(const struct platform_device *pdev); | |
19 | }; | |
20 | ||
42051e8a GL |
21 | struct sh_mobile_sdhi_info { |
22 | int dma_slave_tx; | |
23 | int dma_slave_rx; | |
24 | unsigned long tmio_flags; | |
25 | unsigned long tmio_caps; | |
d7d8d500 | 26 | unsigned long tmio_caps2; |
42051e8a | 27 | u32 tmio_ocr_mask; /* available MMC voltages */ |
58126c87 | 28 | unsigned int cd_gpio; |
25958804 | 29 | struct tmio_mmc_data *pdata; |
42051e8a GL |
30 | void (*set_pwr)(struct platform_device *pdev, int state); |
31 | int (*get_cd)(struct platform_device *pdev); | |
e82b4ac9 BH |
32 | |
33 | /* callbacks for board specific setup code */ | |
7f524217 GL |
34 | int (*init)(struct platform_device *pdev, |
35 | const struct sh_mobile_sdhi_ops *ops); | |
e82b4ac9 | 36 | void (*cleanup)(struct platform_device *pdev); |
42051e8a GL |
37 | }; |
38 | ||
100e9186 | 39 | #endif /* LINUX_MMC_SH_MOBILE_SDHI_H */ |