Merge git://git.infradead.org/~dwmw2/mtd-2.6.35
[pandora-kernel.git] / arch / arm / mach-davinci / include / mach / mmc.h
1 /*
2  *  Board-specific MMC configuration
3  */
4
5 #ifndef _DAVINCI_MMC_H
6 #define _DAVINCI_MMC_H
7
8 #include <linux/types.h>
9 #include <linux/mmc/host.h>
10
11 struct davinci_mmc_config {
12         /* get_cd()/get_wp() may sleep */
13         int     (*get_cd)(int module);
14         int     (*get_ro)(int module);
15         /* wires == 0 is equivalent to wires == 4 (4-bit parallel) */
16         u8      wires;
17
18         u32     max_freq;
19
20         /* any additional host capabilities: OR'd in to mmc->f_caps */
21         u32     caps;
22
23         /* Version of the MMC/SD controller */
24         u8      version;
25
26         /* Number of sg segments */
27         u8      nr_sg;
28 };
29 void davinci_setup_mmc(int module, struct davinci_mmc_config *config);
30
31 enum {
32         MMC_CTLR_VERSION_1 = 0, /* DM644x and DM355 */
33         MMC_CTLR_VERSION_2,     /* DA830 */
34 };
35
36 #endif